将 qcow2 映像提取到较小的实际驱动器

将 qcow2 映像提取到较小的实际驱动器

如何将 qcow2 映像(512gb,大部分为可用空间)提取到 128gb SSD?然后它将被用作启动驱动器

答案1

在将较大的映像(512 GiB 磁盘映像)放到较小的块设备(128 GiB SSD)上之前,您必须先缩小映像。您可以通过从安装媒体(例如,ubuntu-14.04.2-desktop-amd64.iso)启动虚拟机以及 qcow2 文件来执行此操作。然后使用 GParted 将映像缩小到小于 128 GiB 的大小。

确定最终的图像尺寸时不要出错。您需要考虑以下几点:

  • 分区外的保留空间。对于经典的“msdos”分区表,磁盘开头有一个 512 字节的间隙。对于现代 GPT 分区方案,磁盘开头和结尾处都有一个 GPT 表。
  • 必须先禁用交换分区(如果有),然后才能对其进行修改。这可以通过 GParted 完成。
  • 128 GiB 是不是128 GB。128 GiB = 137.4 GB,128 GB = 119.2 GiB(1 GiB = 1024^3 = 1,073,741,824 字节,1 GB = 1000^3 = 1,000,000,000 字节)。计算新大小时请注意此差异!
  • 在选择尺寸时最好保守一点,留出更多未使用的空间。放大比缩小更容易,而且可以降低图像过大的可能性。
  • 您的磁盘映像必须位于与目标磁盘不同的磁盘上。
  • 如果不确定,请查阅相关工具的手册页。为确保万无一失,请备份源映像!

缩小磁盘映像内的分区后,关闭虚拟机并缩小磁盘映像qemu-img resize your.qcow2 128G(128 GiB!)。如果您不确定,也可以使用virt-调整大小(1)程序。

当您的磁盘映像缩小后(您可以使用 进行验证qemu-img info your.qcow2),将其从 qcow2 转换为原始磁盘(用未使用的 SSD 替换 /dev/sdb):

qemu-img convert -p -O raw your.qcow2 /dev/sdb

对于 GPT 分区表,您可能必须修复磁盘末端的 GPT 表

相关内容