在安装时设置 qcow2 图像大小

在安装时设置 qcow2 图像大小

上下文 >我对磁盘映像及其安装有点困惑。我正在使用带有 libvirt 的 qemu/kvm,过去也使用过 VirtualBox。当时,UI 会引导我为操作系统选择一个“模板”ISO 映像,并创建一个单独的 VDI 存储文件,而无需修改“模板”映像。

困惑 > 但是,使用 libvirt 和 qemu 以及 qcow2 镜像(例如Debian 云,我发现该过程不会使用“从现有映像导入”将工作磁盘映像与下载或模板映像分开。对我来说没问题,但我发现麻烦的是,我无法设置映像的最大大小,即客户操作系统从内部感知到的大小。

探索方式 >我学到如何调整 qemu 镜像的大小qemu-imggparted live cd,但我相信还有更简单的方法。实际上,从virt-install 手册页看起来可以做类似的事情--import --disk path=/home/user/my_os.img,size=10,它可以确保客户操作系统的可用存储空间为 10 GB。

我尝试使用以下命令执行我想要的操作Ubuntu 云镜像

virt-install \
 --name ubuntu-bionic \
 --memory 4000 \
 --vcpus 2 \
 --import \
 --disk path=/path/to/bionic-server-cloudimg-amd64.img,format=qcow2,bus=virtio,size=10 \
 --disk path=/path/to/cloud-init.img,device=cdrom \
 --network bridge=virbr0,model=virtio \
 --os-type=linux \
 --os-variant=ubuntubionic \
 --connect qemu:///system \
 --noautoconsole

问题 >但是,这并没有按预期工作。它创建了一个“域”并使用该磁盘启动虚拟机,但它显示的不是 10 GB,而是 2.2 GB。这是从客户操作系统感知到的大小,也是 virt-manager(GUI)报告的大小。我截取了virt-manager 和终端对磁盘映像的“大小”持有不同意见. 实际使用的空间为 380 MB du

问题 >

  1. 有没有办法导入磁盘映像并同时调整其大小?
  2. virt-install用最少的步骤来设置磁盘大小的更好方法是什么?
  3. 还有其他建议吗?

答案1

我认为您可以qemu-img resize在使用该命令创建虚拟机之前运行命令来解决您的问题virt-install

我使用下一个过程来生成具有 10G 磁盘空间和图像的虚拟机qcow2

  1. 下载云qcow2iso。
  2. 运行调整图像大小命令:
$ qemu-img resize /var/lib/libvirt/images/bionic-server-cloudimg-amd64.img 10G
  1. 然后运行virt-install命令。

如果您愿意,我们可以在手册中创建有关如何创建开发虚拟化环境的详细文档:https://github.com/coopdevs/handbook/wiki/Virtualization-with-libvirt%2C-qemu-and-kvm:P

相关内容