Bem-vindo: Sáb, 23 de Novembro 2024, 11:34 Pesquisa avançada

Criar um Ubuntu personalizado

Secção relativa a ajustes! Divulgue aqui qualquer tipo de ajuste que possa melhorar/agilizar o sistema ou algum programa. Seja o mais detalhado possível na descrição do procedimento! Em caso de dúvida em algum ajuste pergunte nesta secção!

Criar um Ubuntu personalizado

Mensagempor Luis Cardoso » Sáb, 19 de Abril 2014, 1:12

Se é daqueles utilizadores que gostaria de ter um CD/DVD/USB com uma versão de Ubuntu personalizada e se depara com aplicações que só lhe apresentam entraves durante o processo, não tema, porque apresento-lhe de seguida um tutorial que lhe resolverá esse problema.

Para seguir este tutorial, precisa de cumprir os seguintes requisitos:
  • Imagem de Desktop do Ubuntu (que doravante será apelidada de ISO)
  • 10GB de espaço livre no seu disco
  • As seguintes ferramentas instaladas:
    sudo apt-get install squashfs-tools genisoimage
  • E não ter medo de usar o terminal... :p

Como o tutorial é extenso, partiu-se em porções e ficam aqui os links para as partes (tem de seguir a ordem apresentada):
  1. Preparação
  2. Edição
  3. Limpeza
  4. Preparação da nova ISO
  5. Criação da ISO

Resultado final



Como teste, fiz esta modificação, em que retirei algumas coisas do Unity e adicionei o Ubuntued Deskmod.


Referência



ImagemImagem
«Escolhe um trabalho de que gostes, e não terás que trabalhar um só dia na tua vida» - Confúcio
Avatar do usuário
Luis Cardoso
Redator
 
Mensagens: 10455
Registrado em: 26 Maio, 2011
Localização: Portugal

Re: Criar um Ubuntu personalizado

Mensagempor Luis Cardoso » Sáb, 19 de Abril 2014, 1:13

Preparação



Primeiro de tudo, precisamos de criar uma pasta que vai servir de espaço de trabalho para a manipulação da ISO. Para tal, abra o terminal e execute o seguinte comando (a partir deste ponto, o terminal irá permanecer uma constante):
mkdir ~/custom-img

Copie a ISO previamente descarregada através do seguinte comando (o que está a itálico é para ser adaptado à situação do utilizador):
cp /caminho/para/ubuntu.iso ~/custom-img

Em seguida, desloque para o espaço de trabalho:
cd ~/custom-img

Agora precisa de extrair os conteúdos do disco, começando por criar uma pasta para alojar o conteúdo do disco:
mkdir mnt

De seguida monta-se a imagem na pasta criada previamente (o que está a itálico é para ser adaptado à situação do utilizador):
sudo mount -o loop ubuntu.iso mnt

Cria-se a pasta que irá levar com parte do conteúdo do disco (que será comum ao original):
mkdir extract

Faz-se a sincronização com a parte que é comum:
sudo rsync --exclude=/casper/filesystem.squashfs -a mnt/ extract


Agora a coisa começa a ficar interessante, pois vamos extrair o sistema de ficheiros, no qual podemos personalizar (incluindo o skel, que irá afectar as pastas pessoais de cada novo utilizador):
sudo unsquashfs mnt/casper/filesystem.squashfs

E mude o nome da pasta para algo mais sugestivo:
sudo mv squashfs-root edit


Configurações Essenciais



Para poder manipular a ISO, em princípio precisa de ter ligação à Internet para poder actualizar as listas e descarregar os pacotes. Para tal precisa de copiar as suas configurações de Internet:
sudo cp /etc/resolv.conf edit/etc/

Montam-se algumas directorias importantes:
sudo mount --bind /dev/ edit/dev

Efectua-se o login na ISO que estamos a modificar:
sudo chroot edit

E montam-se mais algumas directorias:
mount -t proc none /proc

mount -t sysfs none /sys

mount -t devpts none /dev/pts


Mas antes de poder fazer algumas alterações, precisa de fazer ainda os seguintes passos, como a definição da directoria home:
export HOME=/root

O tipo de configuração linguística:
export LC_ALL=C

Entre outras coisas:
dbus-uuidgen > /var/lib/dbus/machine-id

dpkg-divert --local --rename --add /sbin/initctl

ln -s /bin/true /sbin/initctl
ImagemImagem
«Escolhe um trabalho de que gostes, e não terás que trabalhar um só dia na tua vida» - Confúcio
Avatar do usuário
Luis Cardoso
Redator
 
Mensagens: 10455
Registrado em: 26 Maio, 2011
Localização: Portugal

Re: Criar um Ubuntu personalizado

Mensagempor Luis Cardoso » Sáb, 19 de Abril 2014, 1:14

Edição



Neste momento poderá manipular a ISO por forma a personalizá-la ao seu gosto, tendo portanto o cuidado de primeiro remover os pacotes a mais com o seguinte comando:
apt-get purge pacote1 pacote2 pacote3

De lembrar que convém fazer a remoção com cuidado, evitando sempre as remoções que possam levar a que sejam removidas, por arrasto de dependências, aplicações úteis para o núcleo do sistema.

Depois proceda à actualização:
apt-get update && apt-get upgrade

E por fim a instalação de novos pacotes:
apt-get install pacote1 pacote2 pacote3
ImagemImagem
«Escolhe um trabalho de que gostes, e não terás que trabalhar um só dia na tua vida» - Confúcio
Avatar do usuário
Luis Cardoso
Redator
 
Mensagens: 10455
Registrado em: 26 Maio, 2011
Localização: Portugal

Re: Criar um Ubuntu personalizado

Mensagempor Luis Cardoso » Sáb, 19 de Abril 2014, 1:14

Limpeza



Finalizada a edição, chegou a hora de remover o seu rasto, os seus ficheiros de configuração que lhe permitiam estar a manipular a ISO como se estivesse a correr o Sistema nativo, através dos seguintes comandos:
apt-get autoremove && apt-get autoclean

rm -rf /tmp/* ~/.bash_history

Ou apenas, caso o ~/.bash_history não esteja presente:
rm -rf /tmp/*

rm /etc/resolv.conf

rm /var/lib/dbus/machine-id

rm /sbin/initctl

dpkg-divert --rename --remove /sbin/initctl


Desmontam-se as unidades montadas:
umount /proc || umount -lf /proc

umount /sys

umount /dev/pts

Sai-se da ISO:
exit

E desmonta-se a unidade:
sudo umount edit/dev
ImagemImagem
«Escolhe um trabalho de que gostes, e não terás que trabalhar um só dia na tua vida» - Confúcio
Avatar do usuário
Luis Cardoso
Redator
 
Mensagens: 10455
Registrado em: 26 Maio, 2011
Localização: Portugal

Re: Criar um Ubuntu personalizado

Mensagempor Luis Cardoso » Sáb, 19 de Abril 2014, 1:15

Preparação da nova ISO



Gera-se um novo manifest:
sudo chmod +w extract/casper/filesystem.manifest

Preenche-se o manifest com a informação do sistema, incluindo os pacotes instalados:
sudo chroot edit dpkg-query -W --showformat='${Package} ${Version}\n' | sudo tee extract/casper/filesystem.manifest

Duplica-se a informação do manifest para manifest-desktop, removendo a parte ubiquity e casper (que apenas se trata de informação relevante para a sessão Live e/ou Instalador).
sudo cp extract/casper/filesystem.manifest extract/casper/filesystem.manifest-desktop

sudo sed -i '/ubiquity/d' extract/casper/filesystem.manifest-desktop

sudo sed -i '/casper/d' extract/casper/filesystem.manifest-desktop

Comprime-se o Sistema de Ficheiros:
sudo mksquashfs edit extract/casper/filesystem.squashfs -b 1048576

Actualiza-se o seu tamanho:
printf $(sudo du -sx --block-size=1 edit | cut -f1) | sudo tee extract/casper/filesystem.size

Actualização do MD5SUM:
cd extract

sudo rm md5sum.txt

find -type f -print0 | sudo xargs -0 md5sum | grep -v isolinux/boot.cat | sudo tee md5sum.txt
ImagemImagem
«Escolhe um trabalho de que gostes, e não terás que trabalhar um só dia na tua vida» - Confúcio
Avatar do usuário
Luis Cardoso
Redator
 
Mensagens: 10455
Registrado em: 26 Maio, 2011
Localização: Portugal

Re: Criar um Ubuntu personalizado

Mensagempor Luis Cardoso » Sáb, 19 de Abril 2014, 1:17

Criação da ISO



Por fim, temos a derradeira criação da imagem que poderemos usar para gravar em CD/DVD/USB para instalarmos nos nossos computadores (o que está a itálico é para ser adaptado à situação do utilizador):
sudo mkisofs -D -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-da-sua-imagem-personalizada.iso .

Nota: O ponto no final do comando não é um erro tipográfico, é mesmo importante a sua inclusão!

Depois de concluído, poderá observar que a nova ISO estará presente em ~/custom-img .
ImagemImagem
«Escolhe um trabalho de que gostes, e não terás que trabalhar um só dia na tua vida» - Confúcio
Avatar do usuário
Luis Cardoso
Redator
 
Mensagens: 10455
Registrado em: 26 Maio, 2011
Localização: Portugal

Re: Criar um Ubuntu personalizado

Mensagempor portaro » Sáb, 19 de Abril 2014, 13:32

Do melhor que já lí e vai dar jeito a muito gente com a falta de ferramentas com GUI para esta tarefa, uma coisa com passos simples e bem explicados.

xD

portaro
 
Mensagens: 459
Registrado em: 29 Junho, 2011
Localização: Portugal

Re: Criar um Ubuntu personalizado

Mensagempor Luis Cardoso » Sáb, 19 de Abril 2014, 14:38

portaro (19-04-2014, 13:32) escreveu:Do melhor que já lí e vai dar jeito a muito gente com a falta de ferramentas com GUI para esta tarefa, uma coisa com passos simples e bem explicados.

xD

:obrigado:

Eu próprio também andava aqui a tentar uma experiência e deparei-me com esse problema, as ferramentas com GUI andam algo desactualizadas... :| Depois lá encontrei o tutorial presente nas referências e decidi pôr mãos à obra. Como é visível no vídeo, a sessão Live tem lá o Ubuntued Deskmod, algo que o Ubuntu 14.04 não traz de origem xD
ImagemImagem
«Escolhe um trabalho de que gostes, e não terás que trabalhar um só dia na tua vida» - Confúcio
Avatar do usuário
Luis Cardoso
Redator
 
Mensagens: 10455
Registrado em: 26 Maio, 2011
Localização: Portugal

Re: Criar um Ubuntu personalizado

Mensagempor Claudio Novais » Sáb, 19 de Abril 2014, 14:43

Muitos parabéns Luís! Tutorial muito interessante que só não digo que está perfeito porque ainda não o testei. Espero fazê-lo dentro de uma semana e aí talvez dê um feedback mais concreto.

Novamente, Parabéns! :yeah:
Avatar do usuário
Claudio Novais
Editor do Ubuntued
 
Mensagens: 16869
Registrado em: 25 Maio, 2011

Re: Criar um Ubuntu personalizado

Mensagempor Luis Cardoso » Sáb, 19 de Abril 2014, 14:51

Claudio Novais (19-04-2014, 14:43) escreveu:Muitos parabéns Luís! Tutorial muito interessante que só não digo que está perfeito porque ainda não o testei. Espero fazê-lo dentro de uma semana e aí talvez dê um feedback mais concreto.

Novamente, Parabéns! :yeah:

:obrigado:

Fico à espera ;)
ImagemImagem
«Escolhe um trabalho de que gostes, e não terás que trabalhar um só dia na tua vida» - Confúcio
Avatar do usuário
Luis Cardoso
Redator
 
Mensagens: 10455
Registrado em: 26 Maio, 2011
Localização: Portugal

Próximo

Voltar para Tweaks/Ajustes ao sistema ou a programas

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 26 visitantes