Nesta fase vamos ver como preparar um ambiente para customização de uma versão personalizada do Ubuntu. Vamos utilizar um processo manual, pois temos maior flexibilidade do processo do que se utilizarmos ferramentas como Remastersys ou Reconstructor, mas nada impedem de utilizá-las caso seja de vossa vontade.
Pré-requisitos:
- Um PC ou notebook;
- 1 GB ou superior de RAM;
- HD 40 GB ou superior;
- Ubuntu 9.04 instalado dependendo da arquitetura da sua máquina (32 ou 64 bits);
- Acesso a internet de alta velocidade.
Após ter instalado o sistema em sua máquina, vamos instalar alguns pacotes necessários para darmos início ao processo de customização do Ubuntu. Para isso será necessário baixar e instalar os seguintes pacotes:
- squashfs-tools;
- genisoimage;
- build-essential;
- libusplash-dev;
- libbogl-dev.
Abra o terminal e digite o comando:
sudo apt-get install squashfs-tools genisoimage build-essential libusplash-dev libbogl-dev
Terminado a instalação dos pacotes necessários, vamos agora carregar o módulo "squashfs", basta digitar o comando:
sudo modprobe squashfs
P.S.: Este módulo deve ser sempre carregado quando estivemos customizando o sistema, sempre que o sistema for reiniciado verifique se o módulo foi carregado executando o seguinte comando:
lsmod | grep squashfs
Caso o módulo esteja carregado, será apresentado o resultado semelhante a:
squashfs xxxxx x
Antes de iniciarmos a customização do sistema, devemos baixar uma imagem .iso do Ubuntu e criar um diretório e alguns subdiretórios no "/home/usuario", para isto vamos fazer o seguinte.
Obs.: "/home/usuario" deve ser substituído pelo nome de usuário que você usar para entrar no sistema, ou seja, se seu nome de usuário for "fulano" você deve criar o diretório em "/home/fulano".
Abra um terminal e digite o comando:
mkdir Distro
Agora entre no diretório criado.
cd Distro
Vamos criar os subdiretórios.
mkdir mnt extract-cd squashfs edit
Para baixar a imagem .iso clique visite:
http://releases.ubuntu.com/9.04/
Terminado o download, devemos copiar a imagem para o diretório Distro:
cp "/home/usuario/localondesalvouaimagem"/ubuntu-9.04-desktop-i386.iso "/home/usuario/Distro
Montamos a imagem no subdiretório mnt com o comando:
sudo mount -o loop ubuntu-9.04-desktop-i386.iso mnt
Extraímos o conteúdo da imagem .iso:
rsync --exclude=/casper/filesystem.squashfs -a mnt/ extract-cd
Montar o filesystem squashfs:
sudo mount -t squashfs -o loop mnt/casper/filesystem.squashfs squashfs
Extrair o conteúdo do subdiretório squashfs para o edit:
sudo cp -a squashfs/* edit/
Esta etapa demora algum tempo para ser completada...
zzzzzzzzzzzzzzzzz
Pronto! Completada esta etapa, vamos transformar um diretório no diretório-raiz através do comando (chroot). Utilizaremos o subdiretório "edit" para ser nosso diretório-raiz.
Abra um terminal e execute:
sudo mount -t none -o bind /tmp /home/usuario/Distro/edit/tmp
xhost +
Vá para o diretório de trabalho:
cd Distro
Dê permissão de acesso à rede ao chroot:
sudo cp /etc/resolv.conf edit/etc/
sudo cp /etc/hosts edit/etc/
Montar os dispositivos necessários e executar o chroot:
sudo mount --bind /dev/ edit/dev
$ sudo chroot edit
# mount -t proc none /proc
# mount -t sysfs none /sys
Criar as variáveis:
# export HOME=/root
# export LC_ALL=C
Obs.: Se quisermos executar programas gráficos dentro do chroot, devemos executar um comando antes de executar o chroot e declarar uma variável dentro do chroot. Abaixo segue o comando.
# export DISPLAY=:0.0
NÃO FECHE A JANELA DO TERMINAL, pois será utilizada nos procedimentos seguintes.