使用 virt-builder 创建镜像

使用 virt-builder 创建镜像

我正在尝试使用 自动创建云图像virt-builder

我在 Centos 7 中使用以下命令,但一直失败。您知道问题出在哪里吗?

# virt-builder debian-9 -o /var/lib/libvirt/images/DB9-20G.qcow2 --format qcow2 --hostname ip.com --update --root-password password:root123 --firstboot-command 'dhclient ens3' --size 20G

这是输出:

[   2.3] Downloading: http://libguestfs.org/download/builder/debian-9.xz
[   3.3] Planning how to build this image
[   3.3] Uncompressing
[   6.2] Resizing (using virt-resize) to expand the disk to 20.0G
virt-resize: error: libguestfs error: resize2fs: e2fsck 1.42.9 
(28-Dec-2013)
/dev/sda1 has unsupported feature(s): metadata_csum
e2fsck: Get a newer version of e2fsck!

If reporting bugs, run virt-resize with debugging enabled and include the 
complete output:

  virt-resize -v -x [...]

更新-01:看来 Centos 7 中的 e2fsprogs 已经过时了,无法处理这个问题。有没有其他方法可以更好地处理从命令行动态创建云图像?

答案1

CentOS 7 附带的 e2fsprogs 是轻微地年龄太大,无法理解 ext4 文件系统的功能元数据_csum磁盘映像就是用它构建的。用户空间支持出现在 1.43 版中(过时的 wiki 建议这样做)。

维基百科还指出,不了解该功能的旧工具不适合使用该功能。

因此,建议您:“获取较新版本的 e2fsck!”

在我理想的世界中,Red Hat 会将这个部分移植到 e2fsprogs 中,或者只是重新建立它,但我不会指望这一点。

由于您正在构建较新的操作系统映像,因此您应该考虑使用更现代的操作系统作为工作站。我使用 Fedora(目前为 27,偶尔为测试版)来实现类似的目的。

相关内容