Um negócio bem interessante para quem trabalha na área de infra-estrutura de TI é a customização e padronização de sistema operacional. Nesta semana me deparei com uma situação simples, de que era preciso montar um CD de Linux Live (que carregasse o sistema operacional direto do CD, sem precisar instalar no HD) e que após o boot ele acessasse diretamente um servidor Terminal Server, em fullscreen.
A solução mais rápida para este caso foi a ´remasterização´ do Knoppix, um Linux Live criado para esta finalidade. Em linhas gerais, o que foi feito para que isto desse certo foi o seguinte:
1 – Dar boot do Knoppix em um computador, e montar uma partição de trabalho do disco local. Nesta partição iremos copiar e customizar os arquivos do Knoppix, para depois gerar o disco de boot. Neste exemplo, a partição de trabalho é a /dev/hda1 e está montada em /mnt/hda1.
2 – Crie alguns diretórios de trabalho:
-
mkdir -p /mnt/hda1/knx/master/KNOPPIX
-
mkdir -p /mnt/hda1/knx/source/KNOPPIX
3 -Copie o conteúdo do Knoppix para o diretório de trabalho
cp -Rp /KNOPPIX/* /mnt/hda1/knx/source/KNOPPIXcp -ar /cdrom/boot /mnt/hda1/knx/master/bootcp /cdrom/index.html /mnt/hda1/knx/master/cd /cdrom && find . -size -10000k -type f -exec cp -p --parents '{}' /mnt/hda1/knx/master/ \;
4 – Prepare o ambiente de chroot
-
mount --bind /dev /mnt/hda1/knx/source/KNOPPIX/dev
-
mount --bind /proc /mnt/hda1/knx/source/KNOPPIX/proc
-
mount --bind /sys /mnt/hda1/knx/source/KNOPPIX/sys
chroot /mnt/hda1/knx/source/KNOPPIX
5 – Pronto, agora você poderá editar os arquivos para sua versão customizada do Knoppix. No meu caso, em que eu gostaria que ele acessasse diretamente um servidor Terminal Server, eu precisei alterar a configuração de apenas um arquivo, o /etc/X11/xinit/xinitrc. Foi necessario apenas comentar a ultima linha do arquivo ( que que ele chama o /etc/X11/Xsession) e adicionar as seguintes no final do arquivo:
exec /usr/bin/rdesktop -5 -f -a 16 192.168.1.2
halt
6 – Pronto, neste caso, assim que carregar o X, ele ira abrir diretamente a aplicação rdesktop em modo fullscreen. Agora precisamos criar a iso do Knoppix customizado. Rode os seguintes comandos.
mkisofs -R -U -V "KNOPPIX.net filesystem" -publisher "KNOPPIX www.knoppix.net" \
-hide-rr-moved -cache-inodes -no-bak -pad /mnt/hda1/knx/source/KNOPPIX \
| nice -5 /usr/bin/create_compressed_fs - 65536 > /mnt/hda1/knx/master/KNOPPIX/KNOPPIX
cd /mnt/hda1/knx/master
find -type f -not -name sha1sums -not -name boot.cat -not -name isolinux.bin \
-exec sha1sum '{}' \; > KNOPPIX/sha1sums
mkisofs -pad -l -r -J -v -V "KNOPPIX" -no-emul-boot -boot-load-size 4 \
-boot-info-table -b boot/isolinux/isolinux.bin -c boot/isolinux/boot.cat \
-hide-rr-moved -o /mnt/hda1/knx/knoppix.iso /mnt/hda1/knx/master
7 – Pronto, a iso está armazenada em /mnt/hda1/knx/knoppix.iso.
Este texto foi baseado na documentação oficial sobre remasterização do Knoppix, que contém outras informações importantes sobre o assunto.
Place your comment