命令行安装在 16.04 中不起作用

命令行安装在 16.04 中不起作用

我正在尝试了解如何自定义预置文件以自动安装 Ubuntu 16.04 Server。为了进行测试,我在安装程序启动时键入 ESC、ESC、ENTER 以进入“boot:”提示符。当我输入 boot 命令时(该命令很长),每 80 个字符就会插入一个换行符。而且 boot 命令似乎没有执行我想要的操作。

[编辑:我很确定安装程序插入的换行符是用来转移注意力的。请参阅我的回答,了解我是如何做到这一点的。]

如果我对 14.04.04 Server .iso 执行完全相同的操作,则不会出现换行符,并且安装将按预期进行。IE 从预置文件中获取值。

我已经手动和使用 Packer 完成了这些操作,得到了相同的结果:使用 14.04 .iso 安装可以成功,而使用 16.04 .iso 安装时会出现额外的换行符,因此无法成功安装。

顺便说一下,我正在 Ubuntu 16.04 桌面上的 VirtualBox VM 中安装。我还在 Ubuntu 14.04 主机上使用 QEMU VM 进行了尝试,并观察到了相同的行为。

答案1

16.04 安装程序似乎有一个新的命令行方式来输入安装程序启动参数。它是屏幕底部附近的一行。当您在安装程序选项屏幕上时,您可以按 F6 编辑此行,从“安装 Ubuntu 服务器”开始。使用此行允许您输入一长串启动参数。它会水平滚动。

因此,如果您使用 Packer,那么template.json您在 Internet 上找到的适用于 Serv 14.04 的示例文件将无法使用。这是我使用的“builders”部分,它可以正常工作:

   "builders": [{
    "type": "virtualbox-iso",
    "boot_command": [
      "<enter><f6><esc>",
      "<bs><bs><bs><bs><bs>",
      "<bs><bs><bs><bs><bs>",
      "<bs><bs><bs><bs><bs>",
      "<bs><bs><bs><bs><bs>",
      "<bs><bs><bs><bs><bs>",
      "<bs><bs><bs><bs><bs>",
      "<bs><bs><bs><bs><bs>",
      "<bs><bs><bs><bs><bs>",
      "<bs><bs><bs><bs><bs>",
      "<bs><bs><bs><bs><bs>",
      "<bs><bs><bs><bs><bs>",
      "<bs><bs><bs><bs><bs>",
      "<bs><bs><bs><bs><bs>",
      "<bs><bs><bs><bs><bs>",
      "<bs><bs><bs><bs><bs>",
      "<bs><bs><bs><bs><bs>",
      "<bs><bs><bs>",
      "auto preseed/url=http://{{ .HTTPIP }}:{{ .HTTPPort }}/preseed.cfg ",
      "debian-installer=en_CA locale=en_CA kbd-chooser/method=us ",
      "hostname=rails-5-jade ",
      "fb=false debconf/frontend=noninteractive ",
      "keyboard-configuration/modelcode=SKIP keyboard-configuration/layout=USA ",
      "keyboard-configuration/variant=USA console-setup/ask_detect=false ",
      "vga=788 initrd=/install/initrd.gz quiet --- ",
      "<enter>"
    ],
    "boot_wait": "4s",
    "guest_os_type": "Ubuntu_64",
    "http_directory": "http",
    "iso_checksum": "23e97cd5d4145d4105fbf29878534049",
    "iso_checksum_type": "md5",
    "iso_url": "http://releases.ubuntu.com/16.04/ubuntu-16.04-server-amd64.iso",
    "ssh_username": "vagrant",
    "ssh_password": "vagrant",
    "ssh_wait_timeout": "10000s",
    "disk_size": "8000",
    "shutdown_command": "echo 'vagrant' | sudo -S shutdown -P now",
    "vboxmanage": [
      [
        "modifyvm",
        "{{.Name}}",
        "--memory",
        "512"
      ],
      [
        "modifyvm",
        "{{.Name}}",
        "--cpus",
        "1"
      ]
    ]
   }],

您还可以查看我在 Github 上的一个项目:https://github.com/lcreid/rails-5-jade

相关内容