将虚拟机中的OS迁移到物理硬盘上
发表于 : 2010-10-02 16:17
实验环境
OS:
ArchLinux Host + VirtualBox Guest(CentOS)
分区情况:
/dev/sda1(空),/dev/sdb2(Archlinux)
原理:
Everything is file,所以,我们要做的仅仅是拷贝文件而已
注:centos.vdi为虚拟机磁盘镜像,如果提示已注册的话,用uuid取代之,centos.img为RAW镜像,将被创建
注意到partition 1: ID=0x83, active, starthead 1, startsector 63,从这里可以知道偏移量63*512=32256bytes
开始copy文件啦...
工作到这里基本完成了
改改menu.lst就好了
OS:
ArchLinux Host + VirtualBox Guest(CentOS)
分区情况:
/dev/sda1(空),/dev/sdb2(Archlinux)
原理:
Everything is file,所以,我们要做的仅仅是拷贝文件而已
代码: 全选
VBoxManage clonehd /path/to/centos.vdi /path/to/centos.img --format RAW
代码: 全选
file centos.img
centos.img: x86 boot sector; GRand Unified Bootloader, stage1 version 0x3, boot drive 0x80, 1st sector stage2 0x2ab43f; partition 1: ID=0x83, active, starthead 1, startsector 63, 16771797 sectors, code offset 0x48
代码: 全选
sudo mkdir -pv /mnt/{phy,virt}
sudo mount -o offset=32256 /path/to/centos.img /mnt/virt
sudo mount /dev/sda1 /mnt/phy #假设/dev/sda1已经格式化
代码: 全选
sudo rsync -av /mnt/virt/ /mnt/phy/
改改menu.lst就好了