Esta contribuição está participando do sorteio da Mochila Targus Matrix. Envie seu texto e participe você também, você contribui com outros usuários e ainda pode faturar uma mochila novinha em folha para o seu laptop. Saiba mais sobre como participar.
Sobre o Autor:
Renan Brasil
http://www.renanbrasil.blogspot.com/
Serão necessários pelo menos 3.5GB de espaço em seu disco. Com tudo isso correto, vamos a instalação de pacotes necessários para a customização.
O primeiro pacote é o squashfs-tools (sistema de arquivos do Ubuntu);
O segundo pacote é o mkisofs (cria a imagem ISO da nossa distro).
O terceiro pacote é qemu (opcional, somente para verificar se a nossa distro está funcionando);
No Ubuntu, para instalar um pacote utilizo o seguinte comando:
# apt-get install squashfs-tools mkisofs qemu
Após tudo instalado, vamos agora carregar o módulo squashfs (nesse passo precisamos de senha de root).
$ sudo modprobe squashfs
Agora vamos criar o diretório onde iremos colocar nossa distro:
$ mkdir ~/live
$ mv ubuntu-versão.iso ~/live
$ cd ~/live
O ambiente está pronto!
Montando e extraindo a ISO
Criaremos um diretório para montarmos e extrair nossa distro, isso tudo dentro do diretório que criamos no começo (~/live):
$ mkdir mnt
$ mkdir extract-cd
Agora montaremos nossa distro:
$ sudo mount -o loop ubuntu-versão.iso mnt
Extrairemos a imagem ISO
$ rsync –exclude=/casper/filesystem.squashfs -a mnt/ extract-cd
Vamos extrair o tipo de arquivo do sistema (squashfs). Criaremos o diretório (ainda dentro de ~/live):
$ mkdir squashfs
Montaremos o arquivo do sistema dentro de squashfs
$ sudo mount -t squashfs -o loop mnt/casper/filesystem.squashfs squashfs
criaremos um outro diretório para extrairmos o arquivo de sistema:
$ mkdir edit
Copiaremos tudo do diretório squashfs/ para edit/ com o seguinte comando
$ sudo cp -a squashfs/* edit/
Preparar o chroot
Para preparar o chroot precisamos de conexão com a net.
Copiaremos o resolv.conf do nosso sistema que estamos rodando na nossa máquina para a distro-personalite
$ sudo cp /etc/resolv.conf edit/etc/
Agora entraremos como chroot na distro-personalite (lembrando isso tudo dentro de ~/live)
$ sudo chroot edit/squashfs
(Se tudo estiver certo estamos dentro da distro-personalite)
Agora antes de mexer em qualquer coisa iremos montar o /proc e o /sys, com o seguinte comando
# mount -t proc none /proc
# mount -t sysfs none /sys
Vamos configurar umas variáveis do ambiente
# export HOME=/root
# export LC_ALL=C
Estamos com a distro pronta para ser alterada conforme sua necessidade.
Os pacotes padrões veremos da seguinte maneira
$ dpkg-query -W –showformat=’${Installed-Size} ${Package}\n’ | sort -nr | less
Caso queira remover pacotes use o seguinte comando
# apt-get remove –purge nomedospacotes
Se quiser adicionar pacotes
# apt-get install nomedospacotes
Se somente desejar atualizar os pacotes
# apt-get update e apt-get upgrade
Como a maioria já sabe a distro normalmente é de 698MB e em um CD cabe somente 700MB. Para não termos problemas de espaço iremos limpar algumas coisinhas,
como o apt e os arquivo /tmp e retiraremos o /etc/resolv.conf que usamos para a conexão com net.
# apt-get clean
# rm -rf /tmp/*
# rm /etc/resolv.conf
Agora iremos desmontar o sistema e sair do chroot:
# umount /proc
# umount /sys
# exit
DICA:
Caso você queira mudar o idioma de inicialização do gfxboot, depois de sair do chroot faça o seguinte:
$ touch extract-cd/isolinux/lang (no 7.04 é lang-list eu acho)
$ echo “pt_BR.UTF-8” > extract-cd/isolinux/lang
Finalizando a ISO
Aqui regêramos o mainfest:
$ chmod +w extract-cd/casper/filesystem.manifest
$ sudo chroot edit dpkg-query -W –showformat=’${Package} ${Version}\n’ > extract-cd/casper/filesystem.manifest
$ sudo cp extract-cd/casper/filesystem.manifest extract-cd/casper/filesystem.manifest-desktop
$ sudo sed -ie ‘/ubiquity/d’ extract-cd/casper/filesystem.manifest-desktop
Aqui criaremos a imagem compactada do sistema
$ sudo rm extract-cd/casper/filesystem.squashfs
$ sudo mksquashfs edit extract-cd/casper/filesystem.squashfs (isso demora….)
Caso queira ajustar o nome da imagem
$ sudo vim extract-cd/README.diskdefines
Calcularemos o md5 da imagem
$ sudo -s
# cd extract-cd && find . -type f -print0 | xargs -0 md5sum > md5sum.txt
# exit
Iremos agora compactar pra imagem ISO
$ cd extract-cd
$ sudo mkisofs -r -V “$IMAGE_NAME” -cache-inodes -J -l -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -o ../nome_do_CD.iso
Quem baixou o qemu e gostaria de ver se está funcionando, use o seguinte comando:
$ qemu -cdrom nome_do_CD.iso -boot d
Enxugado da versão original e de alguém que fez esse tutorial (só não me lembro onde peguei esse tutorial para colocar o nome do autor):