Я пытаюсь автоматически создавать облачные изображения, используя 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: похоже, что e2fsprogs в Centos 7 достаточно стар для решения этой проблемы. Есть ли альтернативный способ лучше справиться с созданием облачных образов на лету из командной строки?
e2fsprogs, поставляемый с CentOS 7, слегка слишком стар, чтобы понимать особенности файловой системы ext4 metadata_csum с которым был создан образ диска. Поддержка пользовательского пространства появилась в 1.43 (как и предполагала устаревшая вики).
В вики также говорится, что старые инструменты, которые не понимают эту функцию, небезопасно использовать с ней.
Таким образом, вам посоветовали: «Получите более новую версию e2fsck!»
В моем идеальном мире Red Hat могла бы перенести этот бит в e2fsprogs или просто перебазировать его, но я бы не стал на это рассчитывать.
Поскольку вы создаете новые образы операционных систем, вам следует подумать об использовании более современной операционной системы в качестве рабочей станции. Я использую Fedora (в настоящее время 27, иногда бета-версии) для аналогичных целей.