Participando de um projeto de "revitalização" de máquinas caça-níqueis, recebi algumas memórias flash de 64, 128 e 256MB
para que fossem formatadas e recebessem uma instalação do
GNU/Linux. Já havia testado diversas distribuições leves, entre
elas o DSL e Slax, mas lembro que nenhuma delas possuía menos de 64MB. Então lembrei do
SliTaz, uma curiosa
distribuição francesa cujo a imagem ISO possui menos de 30MB.
SliTaz significa "Simple Light Incredible Temporary Autonomous Zone", possuindo em seu nome uma referência ao conceito de
Zona Autônoma Temporária, introduzido pelo filósofo anarquista Hakim Bey. Em abril de 2008 foi considerada a menor distro
com um desktop totalmente funcional. O sistema de janelas X utilizado é o levíssimo
Xvesa (assim como no DSL).
Mas a grande diferença estética do SliTaz está no gerenciador de janelas JWM (Joe's Window Manager) , que lembra um pouco
o XFCE e é baseado em GTK.
Instalação do SliTaz LiveUSB na memória Flash
Memórias Flash Card são dispositivos de armazenamento que vem substituindo o disco rígido em diversas aplicações. Esse tipo
de memória é menos sensível e mais veloz que os HDs, pois, assim como a memória RAM, ela se baseia nos circuitos de
transistores, ao contrário do HD, que é um dispositivo eletromecânico, baseado na magnetização e em cabeças de
leitura/gravação.
A Flash Card é geralmente conectada ao barramento IDE por meio de um adaptador, como mostra a Figura 1.
Dessa forma a memória passa a ser reconhecida pela BIOS como se realmente fosse um disco rígido, da mesma forma o
Kernel/udev irá mapear a memória Flash para uma nomenclatura do tipo /dev/hdX.
É possível também conectar a memória Flash via USB, utilizando por exemplo uma gaveta de HD "hackeada", como demonstra
a Figura 2.
Nesse caso a memória será reconhecida pelo sistema como dispositivo do tipo SATA, com a nomenclatura /dev/sdX.
Para instalar o SliTaz LiveUSB na memória Flash, primeiramente é necessário iniciar o sistema com o live-cd do SliTaz, cuja
imagem está disponível
aqui.
O SliTaz conta com o tazusb, um conjunto de aplicativos para facilitar a instalação do sistema em pendrives e memórias Flash
Card. Antes de se instalar o sistema, a memória precisa ser formatada para o sistema de arquivos EXT3. Isso pode ser feito
com o comando:
# tazusb format /dev/nome
Onde nome (geralmente hda1/sda1 ou similar) é o dispositivo associada à memória flash. Isso pode ser descoberto facilmente
com o comando dmesg, procurando por algo similar a essa saída do Kernel:
[ 1133.812728] sd 2:0:0:0: [sda] 4081152 512-byte hardware sectors (2090 MB)
[ 1133.813460] sd 2:0:0:0: [sda] Write Protect is off
[ 1133.813473] sd 2:0:0:0: [sda] Mode Sense: 3b 00 00 00
[ 1133.813480] sd 2:0:0:0: [sda] Assuming drive cache: write through
[ 1133.816825] sd 2:0:0:0: [sda] 4081152 512-byte hardware sectors (2090 MB)
[ 1133.817455] sd 2:0:0:0: [sda] Write Protect is off
[ 1133.817467] sd 2:0:0:0: [sda] Mode Sense: 3b 00 00 00
[ 1133.817473] sd 2:0:0:0: [sda] Assuming drive cache: write through
[ 1133.817489] sda: sda1
Depois da memória formatada, o sistema pode ser instalado com o comando:
# tazusb gen-liveusb /dev/nome
Esse comando instala uma nova MBR no dispositivo, marca a partição como inicializável e instala syslinux/extlinux dependendo
do sistema de arquivos detectado. Copia, então, o kernel e o sistema de arquivos do live-cd, e os coloca no dispositivo
/dev/name, criando uma cópia inicializável do SliTaz na memória Flash.
Após isso, o sistema é copiado do live-cd para a memória flash, sendo criado um diretório boot na raiz da memória flash,
contendo 3 arquivos:
- bzImage - o kernel de apenas 1.6MB
- rootfs.gz - o diretório raiz comprimido em LZMA
- syslinux - um diretório com arquivos diversos de configuração, como imagem splash de boot
Em cada boot o arquivo
rootfs será descomprimido e copiado para a memoria RAM, necessitando de cerca de
160MB de RAM no momento de inicialização do sistema. O sistema raiz a princípio será imutável, permanecendo sempre
compactado. Porém, se for necessário instalar algum aplicativo ou modificar algo no sistema, é possível gerar um novo sistema
raiz compactado com o comando:
# tazusb writefs lzma
A solução SliTaz LiveUSB é funcional apenas para sistemas que contém pelo menos 256MB de RAM. A próxima sessão aborda o
caso para sistemas em que a memória seja limitada.