Lançado o FreeBSD 8.1-RELEASE, a segunda versão do ramo 8-STABLE que melhora várias funcionalidades e, como sempre, introduz algumas novas. Entre estas, estão:
Adicionado zfsloader
zpool para subsistemas ZFS atualizado para versão 14
NFSv4 ACL incluido em UFS e ZFS; suporte adicionado para os aplicativos cp(1), find(1), getfacl(1), mv(1), e setfacl(1)
Suporte para arquiteturas UltraSPARC IV/IV+, SPARC64 V
Suporte à SMP em PowerPC G5
BIND 9.6.2-P2
sendmail atualizado para 8.14.4
OpenSSH atualizado para 5.4p1
GNOME 2.30.1, KDE 4.4.5
Para ver todas as novas funcionalidades, acesse o link do anúncio de release:
Finalmente tive a oportunidade de pegar uma das placas 3G, com chip da Claro. Uma das vantagens da migração do FreeBSD pro Linux é justamente a facilidade no reconhecimento de novos hardwares. A placa foi identificada de imediato pelo meu OpenSuse 11:
usb usb7: configuration #1 chosen from 1 choice
hub 7-0:1.0: USB hub found
hub 7-0:1.0: 1 port detected
usb usb7: New USB device found, idVendor=1d6b, idProduct=0001
usb usb7: New USB device strings: Mfr=3, Product=2, SerialNumber=1
usb usb7: Product: OHCI Host Controller
usb usb7: Manufacturer: Linux 2.6.25.20-0.4-default ohci_hcd
usb usb7: SerialNumber: 0000:03:00.1
usb 6-1: new full speed USB device using ohci_hcd and address 2
usb 6-1: configuration #2 chosen from 1 choice
usb 6-1: New USB device found, idVendor=0fce, idProduct=d0b2
usb 6-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
usb 6-1: Product: Sony Ericsson PC300
usb 6-1: Manufacturer: Sony Ericsson
usb 6-1: SerialNumber: 3579310101884440
cdc_acm 6-1:2.1: ttyACM0: USB ACM device
cdc_acm 6-1:2.3: ttyACM1: USB ACM device
usbcore: registered new interface driver cdc_acm
drivers/usb/class/cdc-acm.c: v0.25:USB Abstract Control Model driver for USB modems and ISDN adapters
usb0: register 'cdc_ether' at usb-0000:03:00.0-1, CDC Ethernet Device, 02:80:37:0a:03:00
usbcore: registered new interface driver cdc_ether
usb0: no IPv6 routers present
O driver cdc_acm foi carregado automaticamente.
Para fazer a discagem, instalei o aplicativo wvdial, velho companheiro dos tempos de modem discado, à 14400 bps. Utilizando o wvdialconf, a placa 3G é automagicamente identificada:
Editing `/etc/wvdial.conf'.
Scanning your serial ports for a modem.
Modem Port Scan<*1>: S0 S1
ttyS2<*1>: ATQ0 V1 E1 -- failed with 2400 baud, next try: 9600 baud
ttyS2<*1>: ATQ0 V1 E1 -- failed with 9600 baud, next try: 115200 baud
ttyS2<*1>: ATQ0 V1 E1 -- and failed too at 115200, giving up.
Modem Port Scan<*1>: S3
ttyS4: No such device or address
Modem Port Scan<*1>: S4
ttyS5: No such device or address
Modem Port Scan<*1>: S5
ttyS6: No such device or address
Modem Port Scan<*1>: S6
ttyS7: No such device or address
Modem Port Scan<*1>: S7
WvModem<*1>: Cannot get information for serial port.
ttyACM0<*1>: ATQ0 V1 E1 -- OK
ttyACM0<*1>: ATQ0 V1 E1 Z -- OK
ttyACM0<*1>: ATQ0 V1 E1 S0=0 -- OK
ttyACM0<*1>: ATQ0 V1 E1 S0=0 &C1 -- OK
ttyACM0<*1>: ATQ0 V1 E1 S0=0 &C1 &D2 -- OK
ttyACM0<*1>: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0 -- OK
ttyACM0<*1>: Modem Identifier: ATI -- PC300
ttyACM0<*1>: Speed 4800: AT -- OK
ttyACM0<*1>: Speed 9600: AT -- OK
ttyACM0<*1>: Speed 19200: AT -- OK
ttyACM0<*1>: Speed 38400: AT -- OK
ttyACM0<*1>: Speed 57600: AT -- OK
ttyACM0<*1>: Speed 115200: AT -- OK
ttyACM0<*1>: Speed 230400: AT -- OK
ttyACM0<*1>: Speed 460800: AT -- OK
ttyACM0<*1>: Max speed is 460800; that should be safe.
ttyACM0<*1>: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0 -- OK
WvModem<*1>: Cannot get information for serial port.
ttyACM1<*1>: ATQ0 V1 E1 -- OK
ttyACM1<*1>: ATQ0 V1 E1 Z -- OK
ttyACM1<*1>: ATQ0 V1 E1 S0=0 -- OK
ttyACM1<*1>: ATQ0 V1 E1 S0=0 &C1 -- OK
ttyACM1<*1>: ATQ0 V1 E1 S0=0 &C1 &D2 -- OK
ttyACM1<*1>: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0 -- OK
ttyACM1<*1>: Modem Identifier: ATI -- PC300
ttyACM1<*1>: Speed 4800: AT -- OK
ttyACM1<*1>: Speed 9600: AT -- OK
ttyACM1<*1>: Speed 19200: AT -- OK
ttyACM1<*1>: Speed 38400: AT -- OK
ttyACM1<*1>: Speed 57600: AT -- OK
ttyACM1<*1>: Speed 115200: AT -- OK
ttyACM1<*1>: Speed 230400: AT -- OK
ttyACM1<*1>: Speed 460800: AT -- OK
ttyACM1<*1>: Max speed is 460800; that should be safe.
ttyACM1<*1>: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0 -- OK
Found an USB modem on /dev/ttyACM0.
Modem configuration written to /etc/wvdial.conf.
ttyACM0: Speed 460800; init "ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0"
ttyACM1: Speed 460800; init "ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0"
Esperava ver mais velocidade, mas 460k já é melhor que nada. Infelizmente a configuração padrão não funcionou de jeito nenhum. Vasculhando google afora, encontrei o link de configuração para outro tipo de modem, o E-226:
(15:29:18) JR:
helião....tá por ai?
(15:57:28) helio:
to
(15:57:29) helio:
diga
(15:58:36) JR:
então cara...continua a mesma merda...não consigo escrever no disco ntfs...
(16:02:44) JR:
não sei mais o que fazer...
(16:05:43) helio:
vc olhou a manpage?
(16:06:00) JR:
manpage?
(16:06:37) helio:
RTFM
(16:06:46) JR:
o que é isso?
(16:07:06) helio:
man ntfs-3g
(16:07:19) JR:
ah tah
(16:07:20) JR:
hehe
Depois de mais de 3 anos rodando exclusivamente FreeBSD em meu laptop (sempre na versão RELEASE), finalmente resolvi voltar ao universo Linux. Nada contra os BSDs, especialmente o FreeBSD, mas era isso ou usar Windão, e Vista ainda por cima. Preferi ficar com o Suse, ou melhor, OpenSuse.
Realmente a instalação é bem facilitada. Começei com o release 10.3, compatível com a versão do Enterprise Suse em uso na empresa, mas vi que o OpenSuse 11.1 também pode ser usado sem problemas (sempre a revelia do depto. de TI).
Filesystems criptografados, hibernação e uso da webcam no skype foram algumas das melhorias conseguidas com Linux. VirtualBox também está funcionando perfeitamente, o que me permite instalar o FreeBSD em uma máquina virtual.
Em semelhança ao Debian/Ubuntu, Suse/OpenSuse utilizam o aplicativo "zypper" para manter e atualizar o sistema. Bem inferior ao sistema do apt-get, mas ainda assim superior ao RPM por si só. Fui levado a versões não funcionais do xorg várias vezes por conta do uso do zypper. Fora que o sistema se perde quando proxy é habilitado ou desabilitado depois do sistema já em funcionamento. Nem o Yast ajuda muito nesse ponto.
O maior problema que passei, ou melhor, ainda passo, é em relação ao Xorg. O upgrade para o release 11.1 fez com que a interface gráfica ficasse tão lenta que era quase impossível sua utilização. glxgears mostrava por volta de 10, até menos, fps. Pelos links abaixo, foi possível ver que é um problema devido a mudança de arquitetura no xorg, da antiga XAA para EXA, causando vários problemas com chipsets Intel, inclusive o 945GM, que tenho no laptop.
Seguindo as dicas do link, consegui melhorar a performance adicionando "INTEL_BATCH=1" no /etc/environment, e modificando o "/etc/X11/xorg.conf" da seguinte forma:
Sendo 0xe0000000 o endereçamento da placa de vídeo, que pode ser visto com "lspci -v".
Com isso consegui uma performance melhor, como mostra a saída do glxgears:
5630 frames in 5.0 seconds = 1125.839 FPS
5623 frames in 5.0 seconds = 1124.464 FPS
5608 frames in 5.0 seconds = 1121.535 FPS
5598 frames in 5.0 seconds = 1119.583 FPS
5611 frames in 5.0 seconds = 1121.975 FPS
5633 frames in 5.0 seconds = 1126.477 FPS
5631 frames in 5.0 seconds = 1126.196 FPS
5580 frames in 5.0 seconds = 1115.859 FPS
5633 frames in 5.0 seconds = 1126.471 FPS
5519 frames in 5.0 seconds = 1103.767 FPS
5525 frames in 5.0 seconds = 1104.990 FPS
5514 frames in 5.0 seconds = 1102.650 FPS
5468 frames in 5.0 seconds = 1093.563 FPS
5413 frames in 5.0 seconds = 1082.578 FPS
5363 frames in 5.0 seconds = 1072.389 FPS
5516 frames in 5.0 seconds = 1103.187 FPS
5559 frames in 5.0 seconds = 1111.795 FPS
Infelizmente, após o sistema voltar da hibernação, o problema se repete, mas provavelmente deve depender de alguma atualização do próprio xorg. Enquanto isso, longa vida ao OpenSuse!
Uma das vantagens de trabalhar em empresas multinacionais (incluindo gigantes da área de telecomunicações) é a possibilidade de brincar com máquinas de gente grande. T5240 da Sun é uma delas: 98 GB de RAM, 64 CPUs... Só roda Solaris 10, e da versão 10/08 (setembro de 2008) em diante.
T5240, No Keyboard
Copyright 2008 Sun Microsystems, Inc. All rights reserved.
OpenBoot 4.30.0, 98080 MB memory available, Serial #00112233.
Ethernet address 0:21:28:cc:bb:aa, Host ID: 01234567.
Alguns desses gigantes será a base de dados de assinantes pré-pago (uns 3 milhões). Dois para redundância. Outro, um sistema de administração de VPN, para telefonia. Nada relacionado com VPN criptográfica, com túneis, etc de redes de computadores.
Por motivos bizarros e nada claros para ninguém, resolveram fazer alguma "regra de segurança" na empresa para bloquear as máquina que não estejam rodando Windows Vista. Não que eu seja o único fora do padrão, mas existem os consultores externos que, assim como eu, são lembrados dessa limitação de tempos em tempos.
Como resolvi não perder mais tempo com isso, ou ficar bloqueado durante horário de trabalho sem aviso, e não migrar pro "Vista", resolvi fazer um script que altera meu MAC address da placa de rede a cada boot.
Fiz uma função em shell para poder ser utilizado em qualquer Unix, mas estou rodando em bash e não testei seu funcionamento em /bin/sh e /bin/ksh.
make_mac() {
mac=""
for blk in 0 1 2 3 4 5
do
for id in 0 1
do
macid=`jot -r 1 0 15`
case $macid in
10) macid="a";;
11) macid="b";;
12) macid="c";;
13) macid="d";;
14) macid="e";;
15) macid="f";;
esac
mac="$mac$macid"
done
mac="$mac:"
done
mac=`echo $mac | sed 's/:$//'`
if [ ! $mac ]; then
echo "Failed to generate MAC"
exit 1
else
echo "$mac"
fi
}
Para utilizar, basta fazer uma chamada como no código abaixo (já adaptado pra Linux e FreeBSD):
mymac=`make_mac`
echo "Using MAC ADDR: $mymac"
case `uname -s` in
FreeBSD) INTF="bge0"
ifconfig $INTF lladdr $mymac
;;
Linux) INTF="eth0"
ifconfig $INTF hw ether $mymac
;;
*) echo "Operating System not supported"
exit 1
esac