.. _convert_vm_disk_image_to_lvm: ================================== 虚拟机磁盘镜像转换成LVM卷管理 ================================== 我在 :ref:`archlinux_arm_kvm` 遇到需要 :ref:`debug_arm_vm_disk_fail` 的情况,考虑到之前能够正常运行Fedora官方虚拟机镜像,所以需要排除法定位是否是LVM卷问题或者是 :ref:`kvm_storage` 配置错误。 `Fedora 37 Server 官方下载 `_ 的虚拟机磁盘镜像是 ``raw`` 格式,如果是 ``qcow2`` 格式,需要先转换成 ``raw`` 格式才能复制到 :ref:`linux_lvm` 中,例如使用以下命令转换 ``qcow2`` 磁盘到 ``raw`` :: qemu-img convert vmachine.qcow2 -O raw vmachine.raw 我的实际操作是将官方下载的 ``Fedora-Server-37-1.7.aarch64.raw`` 磁盘复制到 ``a-b-data-2`` 逻辑卷中: .. literalinclude:: convert_vm_disk_image_to_lvm/dd_raw_lvm :language: bash :caption: 使用dd命令将raw格式虚拟磁盘复制到LVM卷 .. note:: 复制的目标磁盘( :ref:`linux_lvm` 这里是12G )一定要大于源盘( ``raw`` 磁盘 这里是7G ) 需要注意官方提供的虚拟机镜像内部采用了 :ref:`linux_lvm` ,所以完成后还需要扩展 - 执行 ``virsh dumpxml a-b-data-2 > a-b-data-2.xml`` 备份虚拟机配置 - 启动虚拟机 ``virsh start a-b-data-2`` - 通过 ``virsh console a-b-data-2`` 观察控制台输出,发现进入了 UEFI shell 难道是 :ref:`libvirt_lvm_pool` 存在问题 参考 ====== - `How to copy KVM disk image to LVM `_ - `Convert qcow2 to LVM `_