如果可能的话,其中的分区会怎样?它们是否也会自动调整大小(值得怀疑),还是它们后面只是出现了新的未使用空间块?
答案1
从这里:
!!! 在尝试以下操作之前请先备份您的磁盘映像 !!!
如果你使用的是稀疏原始图像,那么请执行
dd if=/dev/zero of=hdd.img seek=N obs=1MB count=0
其中 hdd.img 是要调整大小的原始格式映像,N 是希望映像达到的新大小,以兆字节为单位。要更改 N 的单位,请将 obs 更改为其他值,例如将以千兆字节 (1000x1000x1000) 为单位的 1GB。
如果您想要调整原始图像的大小,但又不想让它变得稀疏(您实际上希望文件中有这些零),那么请执行“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
答案2
qcow2 映像可以调整大小以适应新/当前版本的 qemu。例如,我有一个 2G 的 arch.qcow2,我想让它变成 50G,在这种情况下我输入:
qemu-img resize arch.qcow2 50G
然后 qemu 告诉我:
image resized
就是这样,我今天刚刚做了这个。redhat 实际上有一些关于 qemu 的不错的文档:
答案3
2017 年的简短回答:要向现有原始图像添加例如 30 GB,我只需使用以下命令:
qemu-img resize nameofimg.img +30G
这会将 30 GB 添加到您现有的映像文件(无需创建新文件)。然后,您可以在来宾 VM 中扩展现有分区,在 Windows 10 中,例如使用“磁盘管理”,非常简单。
更多信息和选项:
man qemu-img
也可以看看:qemu 维基 > qemu-img