Dav*_*ogt 3 virtualization libvirt
我正在使用以下命令创建一个新的虚拟磁盘*:
$ virsh vol-create-as --format=qcow2 guest-disks disk_instid.24_diskid.30 8192M
Vol disk_instid.24_diskid.30 created
Run Code Online (Sandbox Code Playgroud)
“guest-disks”池是一个简单的“dir”类型池。如您所见,该命令成功了,但是当我尝试在新域中安装操作系统时,它只显示为几兆字节的大小:
# fdisk -l /dev/sda
Disk /dev/sda: 0 MB, 262144 bytes
1 heads, 1 sectors/track, 512 cylinders, total 512 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
Disk /dev/sda doesn't contain a valid partition table
Run Code Online (Sandbox Code Playgroud)
如您所见,大小完全错误。知道这是为什么吗?
*不要介意数字 - 它是自动创建域的工具的一部分。
好吧,我自己想出来的。如果您没有在域 XML 中指定格式,Libvirt 默认情况下希望它是“原始”格式,它不会随着使用而扩展,但需要完全分配(参见 dyasny 的回答)。~200KB 是 qcow2 格式的初始数据结构。
需要做的是:您必须在域xml的“磁盘”部分添加一个“驱动程序”元素,明确提及qcow2格式,如下所示:
<disk type="file" device="disk">
<driver name="qemu" type="qcow2" />
<source file="/var/lib/virt/guest-disks/disk_instid.24_diskid.30" />
<target dev="sda" />
</disk>
Run Code Online (Sandbox Code Playgroud)
进行此更改后,域操作系统会按预期看到磁盘。
归档时间: |
|
查看次数: |
3088 次 |
最近记录: |