Raspberry Pi - Instalando Funtoo Linux a partir do stage3 oficial: mudanças entre as edições
Sem resumo de edição |
Sem resumo de edição |
||
Linha 42: | Linha 42: | ||
'''Dica:''' /dev/mmcblk'''0'''p'''1''' equivale a /dev/sda1 | '''Dica:''' /dev/mmcblk'''0'''p'''1''' equivale a /dev/sda1 | ||
=== Crie o arquivo cmdline.txt === | === Crie o arquivo cmdline.txt === | ||
Linha 48: | Linha 49: | ||
Com o seguinte conteúdo: | Com o seguinte conteúdo: | ||
dwc_otg.lpm_enable=0 console=ttyAMA0,115200 kgdboc=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p3 rootfstype=ext4 elevator=deadline rootwait | dwc_otg.lpm_enable=0 console=ttyAMA0,115200 kgdboc=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p3 rootfstype=ext4 elevator=deadline rootwait | ||
=== Desative o console s0 === | |||
Comente a linha do console s0 (serial) para correção da mensagem no dmesg: "INIT: Id "s0" respawning too fast". | Comente a linha do console s0 (serial) para correção da mensagem no dmesg: "INIT: Id "s0" respawning too fast". |
Edição das 17h58min de 8 de fevereiro de 2015
Instalação
Instalando Funtoo Linux em Raspberry Pi a partir do stage3 oficial
Recomendamos que todo o processo seja realizado no disco local, e apenas no final seja copiado para o SD Card em si. Por questões de praticidade e desempenho. ;)
Obtenha o stage3 oficial do Funtoo Linux compilado para ARM
wget http://ftp.osuosl.org/pub/funtoo/funtoo-current/arm-32bit/armv6j_hardfp/stage3-latest.tar.xz
Descompacte o stage 3 oficial
mkdir -p /tmp/funtoo-raspberrypi
tar xavpf stage3-armv6j_hardfp-funtoo-current-*.tar.xz -C /tmp/funtoo-raspberrypi
Instale a última versão do Portage
wget http://distfiles.gentoo.org/snapshots/portage-latest.tar.bz2
tar xjvpf portage-latest.tar.bz2 -C /tmp/funtoo-raspberrypi/usr
Instale o Kernel Linux e os modulos
A Fundação Raspberry Pi mantém uma árvore do kernel do Linux que pode ser executado no Raspberry Pi (hardware), incluindo uma versão pré-compilada que usamos aqui. siga os passos abaixo:
cd /tmp/
git clone --depth 1 git://github.com/raspberrypi/firmware/
cp firmware/boot/* /tmp/funtoo-raspberrypi/boot
cp -r firmware/modules /tmp/funtoo-raspberrypi/lib
Edite o /etc/fstab
Configure o seu de forma parecida. Respeitando o seu esquema de particionamento e o(s) sistema(s) de arquivo(s) utilizado(s).
vi /tmp/funtoo-raspberrypi/etc/fstab
/dev/mmcblk0p1 /boot vfat noauto,noatime 1 2 /dev/mmcblk0p2 none swap sw 0 0 /dev/mmcblk0p3 / ext4 nobarrier,noatime 0 1
Dica: /dev/mmcblk0p1 equivale a /dev/sda1
Crie o arquivo cmdline.txt
Crie a linha com os parâmetros de boot do kernel
vi /tmp/funtoo-raspberrypi/boot/cmdline.txt
Com o seguinte conteúdo:
dwc_otg.lpm_enable=0 console=ttyAMA0,115200 kgdboc=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p3 rootfstype=ext4 elevator=deadline rootwait
Desative o console s0
Comente a linha do console s0 (serial) para correção da mensagem no dmesg: "INIT: Id "s0" respawning too fast".
vi /tmp/funtoo-raspberrypi/etc/inittab
# SERIAL CONSOLES #s0:12345:respawn:/sbin/agetty 9600 ttyS0 vt100 #s1:12345:respawn:/sbin/agetty 9600 ttyS1 vt100
Configure o timezone
Ative o timezone atual:
cp /tmp/funtoo-raspberrypi/usr/share/zoneinfo/America/Sao_Paulo /tmp/funtoo-raspberrypi/etc/localtime
Configure o timezone default:
echo "America/Sao_Paulo" > /tmp/funtoo-raspberrypi/etc/timezone
Ative acesso de root sem senha
vi /tmp/funtoo-raspberrypi/etc/shadow
Remova o asterisco, e deixe dessa forma a linha referente ao usuário root:
root::10770:0:::::
Ou crie uma senha de root (opcional)
Em primeiro lugar, gere um hash de senha. A saída deste comando será usado para modificar o arquivo /etc/shadow. openssl passwd -1
ou
python -c "import crypt, getpass, pwd; print crypt.crypt('password', '\$6\$SALTsalt\$')"
Adicione o hash em SUA_PASSWORD_MD5
vi /tmp/funtoo-raspberrypi/shadow
root:SUA_PASSWORD_MD5:14698:0:::::
Configure a rede (opcional)
Configure seguindo a documentação oficial Funtoo:
http://www.funtoo.org/wiki/Funtoo_Linux_Networking
Copie os arquivos para o SD Card
Monte o SD Card:
mkdir -p /mnt/sdcard
mount /dev/mmcblk0p3 /mnt/sdcard
mount /dev/mmcblk0p1 /mnt/sdcard/boot
Sincronize os arquivos para o cartão:
rsync -avzh /tmp/funtoo-raspberrypi/ /mnt/sdcard/
Desmonte e remova o cartão:
sync && umount /mnt/sdcard/boot /mnt/sdcard
Pós boot
Configure o relógio
Desative o hwclock e ative o swclock:
The Raspberry Pi does not have a hardware clock, so you need to disable the hwclock daemon and enable swclock.
rc-update add swclock boot
rc-update del hwclock boot
Compile algumas ferramentas importantes
Ferramentas do SoC
emerge media-libs/raspberrypi-userland
Crontab
emerge sys-process/vixie-cron
Adicione ao boot:
rc-update add vixie-cron && /etc/init.d/vixie-cron start
Atualização automática de data e hora
emerge net-misc/ntp
Adicione a rotina de atualiação de hora ao crontab:
echo '*/2 00 * * * root sntp -s a.st1.ntp.br b.st1.ntp.br c.st1.ntp.br d.st1.ntp.br a.ntp.br b.ntp.br c.ntp.br gps.ntp.br > /dev/null' >> /etc/crontab
cpufrequtils
Compile o cpufrequtils para gerenciar a frequencia da CPU
emerge --ask cpufrequtils
Adicione ao boot:
rc-update add cpufrequtils default
Configure o arquivo /etc/conf.d/cpufrequtils:
START_OPTS="--governor ondemand" STOP_OPTS="--governor performance"
Confirme se está corretamente configurado:
cpufreq-info
Compilação de kernel (opcional)
Nosso kernel tem suporte aos mais populares hardwares do mercado, porém se você acha necessário recompilar ou adicionar suporte a algum hardware, ou mesmo modificar o código ao seu bel prazer, obtenha o código fonte do nosso kernel oficial compactado (linux-rpi-*.tar.bz2) e o arquivo de configuração (config-linux-rpi-*):
https://sourceforge.net/projects/kankin/files/arm-v6/raspberry-pi/sources/kernel-rpi/3.11.6-area31-hackerspace/
Descompacte o kernel oficial após o download:
mkdir -p /usr/src && tar xjvpf linux-rpi-3.11.y.tar.bz2 -C /usr/src
mv config-linux-rpi-3.11.y /usr/src/linux-rpi-3.11.y/.config
Crie o link simbólico:
cd /usr/src && ln -s linux-rpi-3.11.y linux
Acesse o diretório do kernel e edite suas preferências:
cd /usr/src/linux && make oldconfig && make menuconfig
Saia salvando, e compile o kernel:
make
Instale o kernel e os modulos:
mount /boot && make install && make modules_install
Edite o arquivo de configuração de boot caso seja necessário, e altere a flag kernel= do arquivo:
vi /boot/config.txt
Atualize para uma versão específica do kernel (opcional)
Para atualizar para um ramo em específico da árvore do kernel do projeto oficial do raspberry pi:
cd /opt
git clone --branch rpi-3.11.y git://github.com/raspberrypi/linux.git
Pacotes oficiais do area31 hackerspace
Configure seu /etc/make.conf
PORTAGE_BINHOST="http://packages.funtoo.arm32.area31.net.br/funtoo/portage/packages" FEATURES="-distcc buildpkg parallel-fetch -ccache getbinpkg" EMERGE_DEFAULT_OPTS="--binpkg-respect-use=n"
emerge --sync
Seja feliz! :D
Qualquer dúvida, nos procure no IRC ou na lista de discussão.