Preseeding Ubuntu Server

4

Estou no processo de criar um disco de instalação automatizado para o Ubuntu Server 10.10. É possível configurar a seleção de pacotes dentro do arquivo preseed (quais grupos de pacotes instalar, etc.)? Se sim, como isso pode ser feito?

    
por Josh 13.10.2010 / 06:57

3 respostas

4

Em um nível alto, a parte essencial da criação é um arquivo preseed que pode especificar as opções que o instalador solicita. Um exemplo de arquivo preseed pode ser encontrado no site debian . O exemplo fornece a maioria das opções que você pode querer modificar.

Quando se chega à implementação, há mais alguns passos a serem seguidos:

  • Obtenha a imagem. Você pode escolher entre uma imagem completa e um mini iso que baixa uma nova cópia de pacotes da internet. O processo é ligeiramente diferente, mas principalmente análogo.

  • Depois de ter a imagem, você precisa extrair arquivos do iso. Pode haver uma maneira de fazer isso em uma etapa, mas é assim que sempre fiz assim:

    sudo mount -o loop -t iso9660 mini.iso /mnt
    cp -rf /mnt /path/to/extractdir
    sudo umount /mnt
    
  • Agora você cria o arquivo de prese que deseja usar. No mini iso, já que você não tem realmente uma hierarquia, basta colocá-lo na pasta raiz. Na instalação regular do servidor, coloque-o na pasta preseed. É a sua escolha onde você quer colocá-lo / o que você quer chamá-lo.

  • Depois de ter o preseed, você precisa especificá-lo para o kernel. No mini iso, você precisa editar text.cfg ou, na instalação completa, isolinux/text.cfg para incluir sua pré-edição editando a linha APPEND da seguinte forma:

    APPEND arg1 arg2=value2 arg3 ... file=/cdrom/path/to/preseed/file locale=en_US console-setup/ask_detect=false console-setup/layout=us --
    

Não remova os valores existentes, a menos que você saiba o que está fazendo

  • Quando terminar de modificar os arquivos preseed e text.cfg, será necessário reempacotar as coisas como um ISO. Para fazer isso, você precisa colocar o isolinux no CD para torná-lo inicializável. Agora, cd para o diretório raiz da imagem extraída, e faça o seguinte [retirado do site syslinux:

    cd /path/to/extractdir
    mkisofs -o output.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -R -J -T .
    

Você precisa adicionar o sinalizador -l (ou -iso-level 2 ) para oferecer suporte a nomes de arquivos maiores.

Sua iso está em output.iso e está pronta para ser gravada!

    
por shroff 15.12.2010 / 05:43
1

Esta resposta diz respeito ao debian, mas é provável que funcione para o Ubuntu também, e em qualquer caso pode ser um pouco útil de informação: crie instaladores não interativos

    
por enzotib 13.10.2010 / 09:22
1

Ok, passei muito tempo imaginando como fazer isso funcionar. Shroff, seu exemplo , embora próximo, não está lá.

Pelo menos a última parte.

O último passo, com o mkdir CD_root, e o mkisofs está um pouco desligado.

Se você fez o

sudo mount -o loop mini.iso /mnt
cp  -fr /mnt/ ./new_image
sudo umount /mnt

Os próximos passos ficam confusos no seu exemplo. A edição do text.cfg e a colocação do pressed.txt (nome que usei) estão corretos. Então, o seguinte:

cd new_image
chmod 777 .
vim pressed.txt
vim text.cfg

Próximo passo:

cd ..
mkisofs -o output.iso -b isolinux.bin -l -c boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table new_image

Eu estava perdido ao lidar com o isolinux / isoliunux.bin e o CD_root. Appartnetly o copy-paste que você roubou do site syslinux não se aplica às imagens do ubuntu.

Espero que isso ajude todo mundo!

    
por David Walker 16.12.2010 / 18:02