Instalando o Kurumin

Na hora de instalar o sistema na memória Interna, temos duas possibilidades. A primeira seria fazer uma instalação normal do sistema, com os arquivos descompactados. Como o Classmate tem apenas 2 GB de armazenamento, você precisaria instalar um sistema minimalista, de forma que ainda sobrasse espaço suficiente para armazenar seus arquivos depois. Esta opção não seria viável no caso do Kurumin 7, já que depois de instalado o sistema ocupa quase 2 GB.

A segunda opção é fazer uma instalação “live”, copiando a imagem compactada do sistema (que ocupa apenas 650 MB ao invés de 2 GB) e usar o UnionFS para salvar as alterações em uma partição separada. Dessa forma, o sistema se comporta de forma muito similar ao de um sistema “instalado” e você fica com muito mais espaço vago na memória interna.

Por incrível que possa parecer, o desempenho do sistema ao rodar a partir da memória compactada é um pouco melhor, pois o ganho de desempenho por ler um volume menor de dados ao abrir os aplicativos (já que são lidos dados comprimidos, que ocupam cerca de um terço do espaço) acaba sendo maior que a perda causada pela necessidade de descomprimí-los.

A instalação nesse caso é similar à instalação do sistema no pendrive, com exceção da partição extra e da configuração adicional para que as alterações sejam salvas.

Comece dando boot através do pendrive que preparamos nos passos anteriores e dividindo o “HD” em duas partições. Uma de 750 MB, para armazenar a imagem compactada do sistema e uma maior para salvar as alterações no sistema, programas e os arquivos do home. Opcionalmente, você pode também criar uma partição swap pequena, de 128 MB, para ser usada pelo sistema no caso de eventualidades. Não se esqueça de formatar as duas primeiras partições em ext3:

index_html_m4423986b

Vale lembrar que no Classmate a memória interna é vista pelo sistema como “/dev/sdb”, o cartão SD como “/dev/sda” e o pendrive como “/dev/sdc”. Se você desativar o leitor de cartões no Setup (a opção vai dentro da seção “Communications”) então a memória interna passa a ser o device “/dev/sda”.

Depois de particionar, monte as duas partições, como em:

# mkdir /mnt/sdb1 /mnt/sdb3
# mount /dev/sdb1 /mnt/sdb1
# mount /dev/sdb3 /mnt/sdb3

Se você instalou o sistema corretamente no pendrive e deu boot através dele, a transferência do sistema para a memória interna é bem simples, basta copiar todo o conteúdo da pasta “/cdrom” (onde a partição do pendrive com o sistema é montada) para a primeira partição do “HD”, como em:

# cp -a /cdrom/* /mnt/sdb1

Em seguida, é necessário instalar o grub na MBR do “HD”, de forma que ele passe a ser bootável. Os passos são similares à quando o instalamos no pendrive.

Rode o comando “grub” para abrir o prompt e use os comandos:

grub> root (hd1,0)

grub> setup (hd1)

grub> quit

Nesse ponto, o Classmate já poderá dar boot através da memória interna, mas o sistema rodará como se estivesse dando boot através do CD, sem salvar as alterações. Falta agora criar as imagens onde serão salvas as alterações na segunda partição e instruir o sistema a utilizá-las.

Comece criando as imagens usando os scripts disponíveis no “Iniciar > Configuração do Sistema”:

index_html_49c8975e

Os dois scripts são complementares. O que salva o home, se encarrega de salvar os arquivos e configurações salvos na sua pasta de usuário, enquanto o do UnionFS salva os programas instalados e outras configurações do sistema. Ambos criam imagens de loopback, arquivos especialmente formatados, que permitem criar um sistema de arquivos Linux dentro de um arquivo armazenado na partição.

Execute os dois scripts e salve ambas as imagens dentro da segunda partição (/mnt/sdb3 no meu caso), dividindo o espaço disponível entre elas. Se você pretende apenas fazer alguns ajustes no sistema e instalar alguns aplicativos simples, pode reservar 300 MB, por exemplo, para o arquivo com as alterações do sistema e deixar o restante para o arquivo referente ao home. Se por outro lado. Se, por outro lado, você pretender instalar um grande volume de programas, então os papéis se invertem.

Abra agora o arquivo “/boot/grub/menu.lst” dentro da partição, como em:

# kwrite /mnt/sdb1/boot/grub/menu.lst

Adicione as opções “union=” e “home=” na linha de opções do Kernel, especificando o device referente à memória interna e os arquivos criados, como em:

default 0
timeout 1

title Kurumin Linux
root (hd0,0)

kernel /boot/isolinux/linux26 ramdisk_size=100000 init=/etc/init vga=785 quiet lang=us union=/dev/sda3/union.img home=/dev/sda3/kurumin.img

initrd /boot/isolinux/minirt.gz

(apesar de dividida por causa da formatação da página, temos uma única linha do “kernel” ao “kurumin.img”).

Depois de terminar, desmonte as partições e reinicie o sistema:

# umount /dev/sdb1
# umount /dev/sdb3
# reboot

Depois de reiniciar, não se esqueça de remover o pendrive e configurar novamente o Setup para dar boot usando a memória interna.

Faltam agora apenas os últimos passos. Em primeiro lugar, adicione o comando do 915resolution no final do arquivo “/usr/local/bin/hwsetup-kurumin”, de forma que ele passe a ser executado a cada boot e a resolução do vídeo passe a ser detectada corretamente:

# echo “915resolution 30 800 480” > /usr/local/bin/hwsetup-kurumin

Para instalar o driver da placa wireless, baixe o arquivo, descompacte e instale da forma usual, rodando os comandos “make” e “make install” dentro da pasta “Module” na pasta que será criada. O Kurumin vem com os compiladores básicos pré-instalados, de forma que não é necessário instalar nenhum componente adicional:

# wget -c http://rt2x00.serialmonkey.com/rt73-cvs-daily.tar.gz
# tar -zxvf rt73-cvs-daily.tar.gz
# cd rt73-cvs-200*/Module/
# make
# make install

Insira agora as linhas abaixo no final do arquivo “/etc/modprobe.d/blacklist“. para que os módulos conflitantes deixem de ser carregados:

blacklist rt73usb
blacklist rt2570
blacklist rt2500usb

Insira também a linha “rt73” no final do arquivo “/etc/modules” para que o driver passe a ser carregado durante o boot:

# echo rt73 >> /etc/modules

Falta agora criar o script que configura a rede wireless. Já falei sobre os comandos básicos na minha dica sobre o driver (https://www.hardware.com.br/dicas/ralink-rt73-linux.html), mas aqui vai um script pronto para uso no Classmate que prevê alguns problemas comuns. A principal dificuldade que tive com este driver (pelo menos na versão testada) é que nem sempre a placa se associa com o ponto de acesso na primeira tentativa.

Em muitos casos é preciso rodar os comandos de configuração três ou quatro vezes para que a placa finalmente consiga se associar (mesmo que o note esteja bem do lado do ponto de acesso), por isso incluí uma função no script para checar a conexão e executar os comandos quantas vezes for necessário:

#!/bin/sh

rede=”REDE”
passphrase=”PASSPHRASE”
ip=”192.168.1.11″
gateway=”192.168.1.1″
dns=”208.67.222.222″

/sbin/modprobe -r rt2570
/sbin/modprobe -r rt73
/sbin/depmod -a
/sbin/modprobe rt73
sleep 1
cd /

/sbin/iwconfig wlan0 mode managed
/sbin/ifconfig wlan0 up
/sbin/iwconfig wlan0 ap $rede
/sbin/iwpriv wlan0 set AuthMode=WPAPSK
/sbin/iwpriv wlan0 set WPAPSK=$passphrase
/sbin/iwpriv wlan0 set EncrypType=TKIP
/sbin/iwconfig wlan0

/sbin/ifconfig wlan0 $ip netmask 255.255.255.0 up
/sbin/route del default
/sbin/route del default
/sbin/route add default gw $gateway dev wlan0
echo “nameserver $dns” > /etc/resolv.conf

ping -c 1 -w 2 google.com 2>/tmp/check
check=`cat /tmp/check`
while [ “$check” = “ping: unknown host google.com” ]; do
/sbin/iwconfig wlan0 mode managed
/sbin/ifconfig wlan0 up
/sbin/iwconfig wlan0 ap $rede
/sbin/iwpriv wlan0 set AuthMode=WPAPSK
/sbin/iwpriv wlan0 set WPAPSK=$passphrase
/sbin/iwpriv wlan0 set EncrypType=TKIP
/sbin/iwconfig wlan0
sleep 1
ping -c 1 -w 2 google.com 2>/tmp/check
check=`cat /tmp/check`
done

ntpdate -u pool.ntp.org

Para usar o script, crie o arquivo “/etc/init.wireless“, cole o conteúdo do script (não se esqueça de ajustar os parâmetros da rede no início do script) e ative a permissão de execução para ele:

# chmod + x /etc/init.wireless

A partir daí, você pode ativar a rede simplesmente chamando o script. Você pode também criar diferentes versões dele para se conectar a diferentes redes ou adaptá-lo da forma como quiser. Se quiser que a rede seja ativada automaticamente durante o boot, crie um link para ele dentro da pasta “/etc/rcS.d”:

# ln -sf /etc/init.d/wireless /etc/rcS.d/S99wireless

Com isso chegamos ao Classmate navegando que mostrei na primeira parte da análise:

index_html_m5fb9be13

Sobre o Autor

Redes Sociais:

Deixe seu comentário

X