Estou tentando construir uma imagem de servidor Ubuntu 19.04 com o packer. Eu tenho inicializando e executando a instalação aparentemente bem, e depois de uma hora e mudança, Qemu mostra que a instalação está concluída e um SIGINT
e às vezes SIGKILL
foi enviado, e uma reinicialização solicitada, mas eventualmente o packer atinge o tempo limite porque o Qemu nunca reinicia o sistema operacional para permitir packer SSH e terminar sua coisa. Eu tentei algumas coisas para fazer o Qemu mostrar algo sobre o motivo da falha na reinicialização:
-serial stdio
-serial mon:stdio
-serial telnet:127.0.0.1:4444,server,nowait
Tudo em vão. Não recebo feedback de Qemu sobre nada. Também tentei encontrar bons exemplos para configurar o rastreamento e -append console=ttyS0
com um kernel. Eu sou um nub Qemu e Packer, então me perdoe se eu estiver perdendo algo óbvio. Eu fiz muitas pesquisas tentando encontrar maneiras de depurar o qemu para descobrir por que ele está travando na reinicialização.
Compilação do desktop Ubuntu 19.04:
Empacotador: 1.4.1
Qemu: 3.1.0 (instalação apt)
ambiente de compilação do macOS 10.14.5:
Empacotador: 1.4.0
Qemu: 4.0.0 (instalação de fermentação)
Em ambos os ambientes, o qemu parece travar na parte de reinicialização. Digo parece, porque embora eu tenha -display gtk
na área de trabalho do Ubuntu e veja onde ele trava, há um bug (?) E -display sdl
está quebrado no Mac, e o gtk não funciona. Também tentei maldições no Mac, mas também não funcionou. Então, tanto quanto eu posso dizer, ambos quebram no mesmo lugar. Posso fornecer meu preseed.cfg se necessário.
Aqui está o meu ubuntu.json
:
{
"builders": [
{
"type": "qemu",
"boot_command": [
"<enter><wait2><esc><wait2><enter>",
"<wait>",
"/install/vmlinuz",
" initrd=/install/initrd.gz quiet",
" vga=788",
" auto=true",
" priority=critical",
" reboot=pci",
" url=http://{{ .HTTPIP }}:{{ .HTTPPort }}/preseed.cfg",
" --- <enter>"
],
"qemuargs": [
["-display", "gtk"],
["-serial", "stdio"]
],
"boot_wait": "5s",
"disk_size": 20000,
"headless": false,
"http_directory": "http",
"iso_url": "http://cdimage.ubuntu.com/releases/19.04/release/ubuntu-19.04-server-amd64.iso",
"iso_checksum_type": "sha256",
"iso_checksum_url": "http://cdimage.ubuntu.com/releases/19.04/release/SHA256SUMS",
"communicator": "ssh",
"ssh_username": "ubuntu",
"ssh_password": "ubuntu",
"ssh_port": 22,
"ssh_wait_timeout": "120m",
"shutdown_command": "echo 'ubuntu' | sudo shutdown -P now",
"vm_name": "ubuntu-19.04-amd64.qcow2"
}
]
}
Parece que fui mordido por uma condição de corrida . Compilar no Qemu 4 o corrigiu e, depois de corrigir meu arquivo de configuração no macOS, consegui obter um arquivo build.