包装器和修补ISO配置,以启用SSH



我当前正在尝试使用Packer制作一个流浪汉。面临的挑战是,我是根据已禁用SSH的ISO映像(Raspbian Jessie Pixels),因此它可以阻止脚本作为Packer脚本的一部分进行某些必要的配置。

有人知道我可以在ISO映像中过度骑行设置的方法,以便我可以启用SSH?

我目前拥有的JSON配置如下:

{
    "builders": [{
        "disk_size": 10140,
        "guest_os_type": "Debian",
        "headless": true,
        "http_directory": "http",
        "iso_checksum": "29c24b21e5a46c6290d980681a7bd1fbc4974111e8ff2730ba8c1f2f53a22a59",
        "iso_checksum_type": "sha256",
        "iso_url": "http://downloads.raspberrypi.org/pixel_x86/images/pixel_x86-2016-12-13/2016-12-13-pixel-x86-jessie.iso",
        "shutdown_command": "echo 'halt -p' > shutdown.sh; echo 'vagrant'|sudo -S sh 'shutdown.sh'",
        "ssh_password": "raspberry",
        "ssh_port": 22,
        "ssh_username": "pi",
        "ssh_wait_timeout": "10000s",
        "type": "virtualbox-iso",
        "vboxmanage": [
            [ "modifyvm", "{{.Name}}", "--memory", "512"],
            [ "modifyvm", "{{.Name}}", "--cpus", "2"]
        ],
        "boot_command": [ ]
    }],
    "post-processors": [
        "vagrant"
    ],
    "provisioners": [{
        "type": "shell",
        "execute_command": "echo 'vagrant'|sudo -S sh '{{.Path}}'",
        "scripts": [
            "scripts/base.sh",
            "scripts/vagrant.sh",
            "scripts/virtualbox.sh"
        ]
    }]
}

有3种不同的方法可以在Raspbian图像上启用SSH。专门用于无头图像:

对于无头设置,可以通过将一个名为" ssh"的文件放在SD卡的启动分区中,可以启用SSH。当Pi靴子时,它会寻找" SSH"文件。如果发现它,则启用SSH,并删除文件。文件的内容无关紧要:它可以包含文本,或者根本不包含文本。

这是关于Raspbian现在如何处理SSH的文档:https://www.raspberrypi.org/documentation/remote-access/ssh/

可能能够在包装器设置中使用floppy_filesssh文件与图像一起放在根目录中。请参阅https://www.packer.io/docs/builders/virtualbox-iso.html#floppy_files

祝你好运!

最新更新