DebianInstaller 未启动

DebianInstaller not started

这是我的 build.json 加壳文件

{
    "builders": [{
        "type": "virtualbox-iso",

        "guest_os_type": "Ubuntu_64",
        "http_directory": "http",
        "iso_url": "http://mirrors.evowise.com/linuxmint//stable/18/linuxmint-18-xfce-64bit.iso",
        "iso_checksum_url": "https://ftp.heanet.ie/mirrors/linuxmint.com/stable/18/sha256sum.txt",
        "iso_checksum_type": "sha256",
        "ssh_username": "vagrant",
        "ssh_password": "vagrant",
        "boot_command": [
            "<esc><wait><esc><wait>",
            "/casper/vmlinuz initrd=/casper/initrd.lz",
            " url=http://{{ .HTTPIP }}:{{ .HTTPPort }}/preseed.cfg",
            " boot=casper automatic-ubiquity quiet splash noprompt",
            " -- ",
            "<enter>"
        ],
        "shutdown_command": "echo 'vagrant' | sudo -S shutdown -P now",
        "hard_drive_interface": "sata",
        "output_directory": "target",
        "vboxmanage": [
            ["modifyvm", "{{.Name}}", "--memory", "2048"],
            ["modifyvm", "{{.Name}}", "--cpus", "2"]
        ]
    }]
}

和我的 preseed.cfg(位于 http 子目录)

#Step 1
d-i debian-installer/locale string en_US

#Step 2
d-i time/zone string Europe/Warsaw

#Step 3
d-i console-setup/layoutcode string pl

#Step 4
d-i partman-auto/disk string /dev/sda
d-i partman-auto/method string regular
d-i partman-auto/choose_recipe select atomic
d-i partman/confirm_write_new_label boolean true
d-i partman/choose_partition select finish
d-i partman/confirm boolean true

#Step 5
d-i passwd/user-fullname string vagrant
d-i passwd/username string vagrant
d-i passwd/user-password password vagrant
d-i passwd/user-password-again password vagrant
d-i user-setup/allow-password-weak boolean true
d-i netcfg/get_hostname string vagrant
d-i passwd/auto-login boolean true

# Use non-free packages
ubiquity ubiquity/use_nonfree boolean true

#if you want to start commands after the installation
ubiquity ubiquity/success_command string in-target apt-get -y install openssh-server && /etc/init.d/ssh restart;

#Step 6
ubiquity ubiquity/summary note
ubiquity ubiquity/reboot boolean true

我的理解是 "http_directory": "http",通过 http 服务器发布并且 url=http://{{ .HTTPIP }}:{{ .HTTPPort }}/preseed.cfg 应该加载它。然而,这并没有发生。机器只能启动到 Linux Mint,我可以通过 GUI 手动安装。我错过了什么?

我在尝试预置 mint 18 kde 时遇到了这个问题,并发现按 'esc' 获得 'boot:' 提示似乎总是启动到 live cd,无论我做什么在那个提示下输入。

但是,点击第一个菜单项上的选项卡,删除命令,然后将其替换为我自己的命令,然后就会无处不在。这是我的加壳文件中的启动命令:

"boot_command": [
  "<esc><wait><tab><wait><leftCtrlOn>u<leftCtrlOff>",
  "/casper/vmlinuz initrd=/casper/initrd.lz",
  " url=http://{{ .HTTPIP }}:{{ .HTTPPort }}/preseed.cfg",
  " automatic-ubiquity debug-ubiquity boot=casper nosplash noprompt",
  " -- ",
  "<enter>"
]

这会调出第一个引导命令并使用 ctrl-u 清除该行并键入我想要的命令。