我正在尝试将虚拟机从我的笔记本电脑迁移到我的 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