Ubuntu Server 20.04 在自動「packer」自動安裝期間無法安裝退出狀態為 100 的軟體套件

Ubuntu Server 20.04 在自動「packer」自動安裝期間無法安裝退出狀態為 100 的軟體套件

我正在嘗試自動安裝 Ubuntu Server 20.04(詳細資訊如下)以packer建立 Vagrant 盒子。但我在安裝時遇到了困難build-essential,shell 以狀態 100 退出。 在這張照片中

看來我沒有網路共。

我使用的配置是 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

如果需要更多信息,請告訴我。我很感激任何幫助。

答案1

好吧,更多的挖掘揭示了答案。

我必須將網路適配器從 更改為ens192enp0s3這顯然是虛擬機器正在使用的適配器。

我發現它ip addr show在安裝過程中使用從 SSH 終端到虛擬機器的方式。我仍然不確定這是否是正確的方法,因為我的大部分谷歌搜尋顯示人們正在使用ens192並且顯然對他們有用。歡迎任何意見。

相關內容