就像标题中所说的那样:是否可以在Linux中调整QEMU磁盘映像的大小?如果是这样,其中的分区会发生什么?它们是否也会自动调整大小(可疑),或者在它们之后是否有新的未使用空间块?
就像标题中所说的那样:是否可以在Linux中调整QEMU磁盘映像的大小?如果是这样,其中的分区会发生什么?它们是否也会自动调整大小(可疑),或者在它们之后是否有新的未使用空间块?
Answers:
从这里:
!!! 尝试以下操作之前,请备份磁盘映像!
如果您使用的是稀疏原始图像,请执行
dd if=/dev/zero of=hdd.img seek=N obs=1MB count=0"
其中hdd.img是您要调整大小的原始格式图像,N是您要使图像成为新大小,以兆字节为单位。要更改N的单位,请将obs更改为其他单位,例如1GB单位为GB(1000x1000x1000)。
如果要调整原始图像的大小,但又不希望其变得稀疏(您实际上希望文件中的那些零),请执行“ dd if = / dev / zero of = image seek = S count = NS obs = 1”相反,其中N是新大小,S是旧大小(以字节为单位)。
如果要调整qcow2图像的大小,尚不支持此功能。
此电子邮件显示了一些使用十六进制编辑器调整qcow图像大小的实验。
据我所知,不支持调整其他格式(VMware,Bochs,cow或cloop)的图像大小或使其增长。
在Windows主机上,可以使用'copy'命令调整原始格式磁盘映像的大小。如果需要,可以使用qemu-img将现有图像转换为原始格式。我们将使用一个临时的原始格式磁盘映像,该映像将附加到您现有的原始格式磁盘映像的末尾。此临时图像的大小是现有图像将通过以下方式扩展的大小:
qemu-img create -f raw temp.img 300M
然后,您应该发出以下命令-orig.img是您要放大的现有原始格式图像,temp.img是先前创建的临时图像文件,而new.img是经过调整大小的结果图像:
copy /b orig.img+temp.img new.img
然后,您将需要在新映像上重新分区并调整现有分区和文件系统的大小。一种方法是使用gparted livecd iso和新磁盘映像在QEMU中引导gparted。
您可能想查看上述其他链接是否无效的其他链接:
http://qemu-forum.ipi.fi/viewtopic.php?p=12362
http://kev.coolcavemen.com/2007/04/how-to-grow-any-qemu-system-image/
http:// /bryan-murdock.blogspot.com/2007/12/resize-qemukvm-windows-disk-image.html
http://www.larsen-b.com/Article/329.html
http://www.brabbel.net / wp / archives / 174
可以调整qcow2图像的大小以与新版本或当前版本的qemu一起增长。例如,我有一个arch.qcow2那是2G,我希望它变成50G,在这种情况下,我输入:
qemu-img resize arch.qcow2 50G
然后qemu告诉我:
image resized
就是这样,我今天才这样做。redhat实际上在qemu上有一些不错的文档:
qemu-img: This image format does not support resize
2017年的简短答案:要向现有的原始映像添加例如30 GB,我只使用了以下命令:
qemu-img resize nameofimg.img +30G
这将为您现有的图像文件增加30 GB(无需创建新文件)。然后,在来宾VM中,您可以轻松地在Windows 10中扩展现有分区,例如使用“磁盘管理”。
更多信息和选项:
man qemu-img
另请参阅:qemu Wiki> qemu-img
是的你可以。不,它不会更改分区或表。分区表可能需要更新以具有完整的磁盘大小,并且如果增大分区表的末尾将有空的未使用空间,并且将其切分并丢失,或者如果缩小则将丢失数据的最后一部分。
如果您在qemu监视器中(或可能使用QMP),并且界面支持它(例如,我在此处测试了带有rbd的virtio-scsi-pci),则无需重新启动VM,您可以执行以下操作:
(qemu) info block -v disk1
disk1 (#block165): rbd:rbd/manjaro (raw)
Cache mode: writeback
Images:
image: rbd:rbd/manjaro
file format: raw
virtual size: 4.0G (4294967296 bytes)
[...]
(qemu) block_resize disk1 5120
糟糕的是,将图像调整为您在MiB中指定的大小,然后VM将显示新的大小。
我在qemu 2.7.0上测试了以下内容: