Criação de um disco de instalação autônomo do Ubuntu

Um disco de instalação autônomo do Ubuntu não fará perguntas ao inicializar. Ele obtém suas entradas de um arquivo seed e limpará sua máquina com uma nova configuração. Eu construo um arquivo iso com o qual inicializo os convidados do VirtualBox para instalar o sistema operacional básico.

Obtenha uma iso do Ubuntu e monte-a em algum lugar. Então rsync o conteúdo para um diretório porque ele foi modificado; Usarei mnt / como exemplo.

As permissões no Ubuntu copiado não permitem modificações, então corrija-as:

mkdir -p mnt/{preseed,isolinux}
chmod u
+w mnt/{preseed,isolinux}
chmod u
+w mnt/isolinux/isolinux.bin

Copie um isolinux.cfg personalizado porque não descobri como desabilitar todos os prompts no instalador da GUI, então executo o instalador de texto mais simples.

rsync -ia isolinux.cfg mnt/isolinux/

O isolinux.cfg se parece com isto, com uma última linha muito longa:

prompt 0
timeout
1
default install
label install

menu label
^Install Ubuntu
kernel
/install/vmlinuz
append file
=/cdrom/preseed/preseed.cfg debian-installer=en_US locale=en_US fb=false debconf/frontend=noninteractive console-setup/ask_detect=false console-setup/layoutcode=us kbd-chooser/method=us console-keymaps-at/keymap=us netcfg/get_hostname=vagrant netcfg/get_domain=dev priority=critical initrd=/install/initrd.gz quiet --

Em seguida, copie seu preseed.cfg (não incluído aqui, que é outro protocolo bastante amplo) para a automação da instalação:

rsync -ia preseed.cfg mnt/preseed/

Em seguida, converta o Ubuntu copiado em uma imagem iso inicializável:

cd mnt/
mkisofs

-r -V "Ubuntu"
-cache-inodes -J -l -b isolinux/isolinux.bin -c isolinux/boot.cat
-no-emul-boot -boot-load-size 4 -boot-info-table -o ../unattended.iso .