Finalidade
Quero instalar o Ubuntu Desktop 16.04.1 LTS completamente autônomo. Coloque o CD ISO e vá embora.
Problemas
- Parâmetros de inicialização incorretos
- Perguntas ainda sendo feitas e que precisam de cliques no mouse
- Respostas complicadas usando kickstart / preseed
- Exemplos de documentação que não funcionam como indicado, especificamente de partman e ubunutu
Me deparei com este post aqui e era quase o que eu precisava, mas não conseguiu o que precisava, pois era para o Ubuntu Server. A postagem sugere o uso de uma instalação "não gráfica" do Ubuntu, mas não consegui encontrar uma instalação não gráfica para o Ubuntu Desktop, o que faz sentido. Tentei adaptar as etapas e fazê-lo funcionar no Ubuntu Desktop 16.04.1 LTS.
Documentação Utilizada
Eu usei todos os seguintes recursos ...
Aparentemente, não posso incluir todos os meus recursos porque o askubuntu não permite mais de 2 links. Bem, isso não é muito útil - então aqui está apenas uma lista:
- AskUbuntu
- Ubuntu install.en.pdf
- Exemplos Preseed
- Documentação do Ubiquity Installer
- Documentação e exemplos da Partman
- Receita da partição Explicação dos 3 números e sua ponderação
- Um exemplo preseed mais complexo
Solução Atual
No momento, criei uma instalação autônoma, mas não tenho certeza se ela está correta - o que significa que eu deveria ter editado o isolinux / isolinux.cfg
Havia muitas diferenças entre o post que eu vinculei e a imagem do Ubuntu Desktop. Aqui está a minha solução:
Passo 1
ISO do Ubuntu montado para que eu possa copiar o conteúdo para outro diretório e editar os arquivos pertinentes.
mkdir -p /mnt/iso
mount -o loop ubuntu.iso /mnt/iso
Passo 2
Copiei os arquivos ISO para outro diretório para edição.
mkdir -p /opt/ubuntuiso
cp -rT /mnt/iso /opt/ubuntuiso
etapa 3
Editei o isolinux/isolinux.cfg
arquivo e substituí tudo dentro pelo seguinte:
default live-install
label live-install
menu label ^Install Ubuntu
kernel /casper/vmlinuz.efi
append file=/cdrom/ks.preseed auto=true priority=critical debian-installer/locale=en_US keyboard-configuration/layoutcode=us ubiquity/reboot=true languagechooser/language-name=English countrychooser/shortlist=US localechooser/supported-locales=en_US.UTF-8 boot=casper automatic-ubiquity initrd=/casper/initrd.lz quiet splash noprompt noshell ---
A linha de acréscimo é muito longa, portanto, para facilitar a leitura, aqui estão todas as opções que usei:
file=/cdrom/ks.preseed
auto=true
priority=critical
debian-installer/locale=en_US
keyboard-configuration/layoutcode=us
ubiquity/reboot=true
languagechooser/language-name=English
countrychooser/shortlist=US
localechooser/supported-locales=en_US.UTF-8
boot=casper
automatic-ubiquity
initrd=/casper/initrd.lz
quiet
splash
noprompt
noshell
Descobri que todos esses parâmetros de inicialização eram necessários para obter uma instalação completamente autônoma. Para o Ubuntu Server, pode ser diferente.
Passo 4
Tentei usar e criar muitos arquivos preseed, mas achei que quanto mais complexo, maior a chance de erros. Atualmente, este é o meu arquivo preseed simples que funciona com o isolinux.cfg
arquivo acima .
### Partitioning
d-i partman-auto/disk string /dev/sda
d-i partman-auto/method string regular
d-i partman-lvm/device_remove_lvm boolean true
d-i partman-md/device_remove_md boolean true
d-i partman-auto/choose_recipe select atomic
# This makes partman automatically partition without confirmation
d-i partman-partitioning/confirm_write_new_label boolean true
d-i partman/choose_partition select finish
d-i partman/confirm boolean true
d-i partman/confirm_nooverwrite boolean true
# Locale
d-i debian-installer/locale string en_US
d-i console-setup/ask_detect boolean false
d-i console-setup/layoutcode string us
# Network
d-i netcfg/get_hostname string unassigned-hostname
d-i netcfg/get_domain string unassigned-domain
d-i netcfg/choose_interface select auto
# Clock
d-i clock-setup/utc-auto boolean true
d-i clock-setup/utc boolean true
d-i time/zone string US/Pacific
d-i clock-setup/ntp boolean true
# Packages, Mirrors, Image
d-i base-installer/kernel/override-image string linux-server
d-i base-installer/kernel/override-image string linux-image-amd64
d-i mirror/country string US
d-i mirror/http/proxy string
d-i apt-setup/restricted boolean true
d-i apt-setup/universe boolean true
d-i pkgsel/install-language-support boolean false
tasksel tasksel/first multiselect ubuntu-desktop
# Users
d-i passwd/user-fullname string Liason
d-i passwd/username string liason
d-i passwd/user-password-crypted password [crpyt 3]
d-i passwd/root-login boolean true
d-i passwd/root-password-crypted password [crypt 3]
d-i user-setup/allow-password-weak boolean true
# Grub
d-i grub-installer/grub2_instead_of_grub_legacy boolean true
d-i grub-installer/only_debian boolean true
d-i finish-install/reboot_in_progress note
# Custom Commands
Como não incluí minhas senhas criptografadas, se você tentar esse arquivo preseed, altere-as para uma senha criptografada. Aqui estão três maneiras de criar a senha.
Etapa 5
Eu criei o novo ISO a partir do /opt/ubuntuiso/
diretório
mkisofs -D -r -V ATTENDLESS_UBUNTU -cache-inodes -J -l -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -o /opt/autoinstall.iso /opt/ubuntuiso
Etapa 6
Finalmente testei com o Virtualbox e ele criou uma instalação completamente autônoma.
Questões
Devo ter que editar o isolinux/isolinux.cfg
arquivo?
No outro post, parece que eles podem editar o isolinux/txt.cfg
arquivo e fazê-lo funcionar. Tentei por cerca de uma hora usar o isolinux/txt.cfg
, mas não funcionou.
Alguém tem uma receita partman de trabalho mais complexa que especifica diretamente partições? Ou uma configuração de LVM funcional? Tentei usar uma configuração simples do LVM, mas após a reinicialização não inicializava e apenas exibia uma tela preta. Além disso, nenhum dos exemplos preseed que listei na documentação também funcionou.
Obrigado por qualquer ajuda.
dd if=/tmp/ubuntu16-desktop-unattended-install.iso of=/dev/sdc bs=4M && sync
. Infelizmente, a chave USB (somente quando contém essa iso personalizada: funciona para a original) não está nas opções de inicialização propostas, portanto parece que não é "inicializável". Talvez você tenha uma idéia do que está acontecendo?mkusb
que você use seu ISO em um USB, se você não estiver familiarizado com o nível baixo da inicialização do Linux e do carregamento do grub / syslinux.Lamento saber que meu método anterior não funcionou. Felizmente, encontrei um script criado por Rinck Sonnenberg ( netson ) que criaria ISOs AMD64 desacompanhados do Ubuntu Server no GitHub e o botei. Em seguida, aprimorei o script adicionando a capacidade de criar ISOs I386. Também mudei o sistema operacional do Ubuntu Server para o Ubuntu Desktop. Você não precisa visitar o repositório GitHub, basta seguir as instruções abaixo.
Execute estes comandos:
Às vezes
wget
não está disponível. Se for esse o caso, usecurl
:Se nada disso funcionar, faça o download e mova-o para a sua pasta pessoal.
Você será perguntado sobre qual versão do Ubuntu instalar e, em seguida, as perguntas que o Ubuntu perguntaria se você estava fazendo uma instalação manual. O script fará o download da ISO do Ubuntu e aplicará as alterações solicitadas. Agora você tem um ISO pronto para uma instalação autônoma!
Isso deve responder à sua pergunta, porque funcionou muito bem para mim. Também é bom que esse método seja muito mais fácil do que minha resposta anterior. Espero que funcione para você, assim como para nós.
fonte
Dê uma olhada em: https://github.com/core-process/linux-unattended-installation
Este projeto fornece tudo o que você precisa para criar uma instalação autônoma de uma configuração mínima do Linux, enquanto o mínimo se traduz na configuração mais leve - incluindo um serviço OpenSSH e Python - que você pode derivar do instalador padrão de uma distribuição Linux. A idéia é que você fará toda a implantação adicional de suas configurações e serviços com a ajuda da Ansible ou de ferramentas similares depois de concluir a configuração mínima.
fonte
Ótimo trabalho, Brandon Authier, pelo seu post e instruções, você me ajudou muito.
No entanto, tive um problema com seu método: descobri que após a instalação terminar e o PC reiniciar, o GRUB trava.
Então, adicionei ao ks.preseed o seguinte:
Isso evita o travamento da instalação do grub se você não remover o pendrive. Eu obtive isso em https://www.debian.org/releases/stable/example-preseed.txt
fonte
POR FAVOR, NÃO TENTE ESTE MÉTODO. NÃO FUNCIONA (A menos que você esteja tentando matar o tempo):
Eu já vi a resposta para tudo isso. Vou lhe dizer a solução mais comum. Eu nunca tentei antes de mim mesmo, então pode estar desatualizado. Eu realmente não entendo o objetivo disso, pois apenas fazer uma instalação manual seria mais fácil, mas de qualquer maneira ...
Faça login como root ou execute
$ sudo su -
Faça o download e monte o ISO. NÃO faça isso manualmente no site do Ubuntu.
faça backup e mova os arquivos relevantes.
Impedir que a parte do idioma da GUI apareça
Adicione um arquivo "Kickstart".
[OPCIONAL] Adicione pacotes para sua instalação
Ou apenas procure-o em seus arquivos e edite-o diretamente. Adicione a
%packages
seção e coloque seus pacotes embaixo dela.Como eu disse, nunca fiz isso sozinho, portanto, se você tivesse uma configuração como a acima, ela pode não instalar a pilha LAMP e você precisaria fazê-la manualmente mais tarde.
Suprima perguntas com um arquivo "preseed".
Ative os arquivos:
Em seguida, procurando por:
Você precisará adicionar
ks=cdrom:/ks.cfg
epreseed/file=/cdrom/ks.preseed
. Remova as palavrasquiet
evga=788
, assim, ficará assim:Agora você pode criar a nova resposta:
E lá vai você!
fonte