Ich versuche, Ubuntu Server 20.04 (Details siehe unten) automatisch zu installieren, um packer
eine Vagrant-Box zu erstellen. Aber ich stecke bei der Installation fest build-essential
, die Shell wird mit dem Status 100 beendet. Der Traceback ist
in diesem Bild.
Es scheint, ichhabe kein Internetinsgesamt.
Die von mir verwendete Konfiguration ist
ubuntu2004.pkr.hcl
:
source "virtualbox-iso" "autogenerated_1" {
boot_command = ["<enter><wait2><enter><wait><f6><esc><wait>", "autoinstall<wait2> ds=nocloud;", "<wait><enter>"]
boot_wait = "2s"
cd_files = ["./http/user-data", "./http/meta-data"]
cd_label = "cidata"
disk_size = 8192
guest_additions_path = "VBoxGuestAdditions_{{ .Version }}.iso"
guest_os_type = "Ubuntu_64"
headless = false
http_directory = "http"
iso_checksum = "sha256:f8e3086f3cea0fb3fefb29937ab5ed9d19e767079633960ccb50e76153effc98"
iso_urls = ["https://releases.ubuntu.com/focal/ubuntu-20.04.3-live-server-amd64.iso"]
shutdown_command = "echo 'ubuntu'|sudo -S shutdown -P now"
ssh_handshake_attempts = "20"
ssh_password = "ubuntu"
ssh_port = 22
ssh_username = "ubuntu"
ssh_wait_timeout = "10000s"
vboxmanage = [["modifyvm", "{{ .Name }}", "--memory", "1024"], ["modifyvm", "{{ .Name }}", "--cpus", "1"]]
virtualbox_version_file = ".vbox_version"
vm_name = "packer-ubuntu-20.04-amd64"
}
build {
sources = ["source.virtualbox-iso.autogenerated_1"]
provisioner "shell" {
scripts = ["scripts/init.sh", "scripts/cleanup.sh"]
}
post-processor "vagrant" {
compression_level = "8"
output = "ubuntu-20.04-<no value>.box"
}
}
user-data
:
#cloud-config
autoinstall:
version: 1
locale: en_US
keyboard:
layout: en
variant: us
network:
network:
version: 2
ethernets:
ens192:
dhcp4: true
storage:
layout:
name: lvm
identity:
hostname: ubuntu-server
username: ubuntu
password: "$6$exDY1mhS4KUYCE/2$zmn9ToZwTKLhCw.b4/b.ZRTIZM30JZ4QrOQ2aOXJ8yk96xpcCof0kxKwuX1kqLG/ygbJ1f8wxED22bTL4F46P0"
ssh:
install-server: yes
allow-pw: true
authorized-keys:
- ssh-ed25519 <<an-ssh-public-key-I-generated-on-my-desktop-with-ssh-keygen>>
user-data:
disable_root: false
packages:
- openssh-server
- build-essential
late-commands:
- echo 'ubuntu ALL=(ALL) NOPASSWD:ALL' > /target/etc/sudoers.d/ubuntu
Geben Sie mir Bescheid, wenn Sie weitere Informationen benötigen. Ich bin für jede Hilfe dankbar.
Antwort1
Gut, etwas genaueres Graben brachte die Antwort.
Ich musste den Netzwerkadapter von ens192
auf ändern enp0s3
. Dies war offenbar der Adapter, den die VM verwendete.
Ich habe es während der Installation über ein SSH-Terminal zur VM gefunden ip addr show
. Ich bin mir immer noch nicht sicher, ob das die richtige Vorgehensweise ist, da die meisten meiner Google-Suchen gezeigt haben, dass es Leute verwenden ens192
und es bei ihnen anscheinend funktioniert. Alle Meinungen sind willkommen.