NetBSD no Raspberry Pi

NetBSD_RPi_screenshot

O NetBSD é um sistema operacional “Unix-like” de código aberto e altamente portável que é executado numa miríade de equipamentos que vão de minicomputadores VAX da Digital Compaq HP até dispositivos portáteis como os Zaurus da Sharp em um total de 57 plataformas diferentes.

Of course that Raspberry Pi runs NetBSD too! Foi a partir da versão 6 (10/2012) que ele passou a ser suportado e na versão 7 (10/2015) o suporte foi ampliado incluindo até mesmo o Raspberry Pi2.

O jeito rápido (e fácil)

Sem muita complicação e sem entrar em detalhes baixe o arquivo rpi.img.gz (~286 MiB) e transfira seu conteúdo para um cartão SD/microSD de no mínimo 2GiB:

# gunzip -c rpi.img.gz | dd of=/dev/mmcblk0 bs=512

No meu notebook o mmcblk0 é como o leitor de cartões SD é chamado pelo sistema e deve variar de acordo com cada equipamento. Ao terminar, conecte o cartão no Raspberry Pi e ligue-o.

Durante o primeiro boot ele fará as alterações e ajustes necessários, então disponibilizará a tela de login. Use “root” para entrar (a conta está sem senha, logo aproveite para definir uma) e crie um novo usuário com:

# usermod -G whell -m «usuário»
# passwd «usuário»

Pronto, ele já tem até com X11 instalado e como o SSH Dæmon está rodando é possível acessá-lo remotamente, o que é bastante prático para algumas coisas.

Há outro jeito?

Sim, é possível usar o instalador que, mas a documentação ainda é um pouco confusa quanto ao que se precisa fazer. Quem quiser se aventurar pode baixar o rpi_inst.img.gz, copiá-lo para um cartão, ligar o RPi e via console (ou SSH, usuário “sysinst”, senha “netbsd”) fazer a instalação.

Até tentei começar a instalação mas empaquei no particionamento do disco/cartão, fica para outro dia. :-/

Rede sem fio

Uso um adaptador de rede sem fio USB no RPi, modelo TL-WN725N da TP-LINK, que foi corretamente detectado pelo kernel:

# dmesg | grep urtwn0
urtwn0 at uhub1 port 2
urtwn0: Realtek 802.11n NIC, rev 2.00/0.00, addr 4
urtwn0: MAC/BB RTL8188EU, RF 6052 1T1R, address XX:XX:XX:XX:XX:XX
urtwn0: 1 rx pipe, 2 tx pipes
urtwn0: 11b rates: 1Mbps 2Mbps 5.5Mbps 11Mbps
urtwn0: 11g rates: 1Mbps 2Mbps 5.5Mbps 11Mbps 6Mbps 9Mbps 12Mbps
        18Mbps 24Mbps 36Mbps 48Mbps 54Mbps

Para fazê-lo funcionar, de acordo com a documentação, é preciso configurar a rede em “/etc/wpa_supplicant.conf” (havendo outras redes sem fio, basta acrescentá-las):

$ cat /etc/wpa_supplicant.conf 
network={
    ssid="«ssid_da_rede»"
    key_mgmt=WPA-PSK
    psk="«a_tal_senha_do_uai-fai»"
}

Daí inserir no final de “/etc/rc.conf” a configuração da interface de rede:

$ cat /etc/rc.conf
...
sshd=YES
ifconfig_urtwn0=dhcp
dhcpcd=YES
dhcpcd_flags="-q -b"
wpa_supplicant=YES
wpa_supplicant_flags="-B -i urtwn0 -c /etc/wpa_supplicant.conf"
resize_disklabel=YES
...

Coloquei entre o “sshd=YES” e o “resize_disklabel=YES”, substituindo um “dhcpd=YES” que estava entre os dois, daí foi reiniciar e pronto!

O que mais?

Ainda não sei, a princípio o achei mais lento que o Linux mas pode ser só impressão. Preciso aprender como instalar outros programas, por enquanto estou sem Perl, Python, Ruby etc só mesmo o compilador C –o que já é o começo.

NetBSD_RPi_twm_hd

Ao menos foi possível relembrar uma característica do X11 que as vezes esquecemos que existe — A cola está no terminal do lado esquerdo! 😀

Anúncios

Um comentário sobre “NetBSD no Raspberry Pi

  1. Brincado com S.O. de gente grande! Muito bom o tutorial. Só para acrescentar, foi no NetBSD que nasceu o ambiente de virtualização paralelela Xen, pouco tempo depois foi portado para Linux mas não ficou tão bom quanto o seu uso no NetBSD.

    Curtir

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s