将 VMDK 转换为 LVM

将 VMDK 转换为 LVM

我正在尝试将虚拟机从我的笔记本电脑迁移到我的 XEN 服务器。

首先我用

$ vboxmanage clonehd my-disk.vmdk -format RAW mydisk.img

复制到服务器并执行以下操作

$ kvm-img my-disk.img
image: my-disk.img
file format: raw
virtual size: 18G (19327352832 bytes)
disk size: 18G

# lvcreate -L20G my_vgs -n mydisk
# dd if=my-disk.img of=/dev/my_vgs/mydisk

现在当我尝试挂载时出现错误

# mount /dev/my_vgs/mydisk /mnt
# mount -t ext4 /dev/my_vgs/mydisk /mnt

VFS: Can't find ext4 filesystem

我做错了什么?

答案1

我发现问题是 vmdk 文件没有分区,文件有整个磁盘。所以我使用 'skip' 和 'count' dd 选项来指定分区,效果很好

为了获取偏移量我使用命令sfdisk

$ sfdisk -l -uS my-disk.img 

my-disk.img1   *      2048  36702207   36700160  83  Linux
my-disk.img2      36704254  37746687    1042434   5  Extendida
my-disk.img3             0         -          0   0  Vacía
my-disk.img4             0         -          0   0  Vacía
my-disk.img5      36704256  37746687    1042432  82  Linux swap / Solaris

dd然后再次运行命令

# dd if=my-disk.img of=/dev/my_vgs/mydisk skip=2048 count=36702207

选修的

# e2fsck -f /dev/my_vgs/mydisk
# resize2fs /dev/my_vgs/mydisk

相关内容