我有一个使用 LVM 的预置配置文件,我正在尝试将其适应“常规”方法,但到目前为止,所有尝试都失败了,并显示错误“未定义根文件系统”。这是使用 Packer 在 vSphere 6.5 集群上创建的 Ubuntu 18 映像。预置的相关(partman)部分如下所示:
d-i partman-auto/disk string /dev/sda
d-i partman-auto/method string regular
d-i partman-basicfilesystems/no_swap boolean false
d-i partman-auto/expert_recipe string \
myroot :: \
1000 1000 -1 ext4 \
$primary{ } \
$bootable{ } \
method{ format } \
format{ } \
use_filesystem{ } \
filesystem{ ext4 } \
mountpont{ / } \
.
d-i partman-auto/choose_recipe select myroot
d-i partman-partitioning/confirm_write_new_label boolean true
d-i partman/choose_partition select finish
d-i partman/confirm boolean true
d-i partman/confirm_nooverwrite boolean true
我没有为这些虚拟机使用半虚拟驱动程序,并且通过在错误弹出时切换到单独的虚拟终端来确认 /dev/sda 是控制台上正确的块设备名称。
对于 LVM,如果将上面的命令替换为下面的命令,Packer 命令就可以正常工作,但我试图构建一个没有 LVM、/boot
交换等的“简单”新图像:
d-i partman-auto/method string lvm
d-i partman-lvm/confirm boolean true
d-i partman-lvm/confirm_nooverwrite boolean true
d-i partman-auto-lvm/guided_size string max
d-i partman/choose_partition select Finish partitioning and write changes to disk
d-i partman/confirm boolean true
d-i partman/confirm_write_new_label boolean true
d-i partman/choose_partition select finish
d-i partman/confirm boolean true
d-i partman/confirm_nooverwrite boolean true
答案1
您的 中有一个拼写错误expert_recipe
。
mountpont{ / } \
应该
mountpoint{ / } \