我有一台相当老的 Debian 机器,需要将其迁移到 KVM-Qemu。
我开始制作根文件系统的 tarball:
tar -cpf rootfs.tar --exclude='dev/*' --exclude='proc/*' --exclude='sys/*' --exclude='home/*' /
scp
将 tar 文件复制到正在运行的 kvm 机器上,进行一些小的更改,然后希望它能正常工作。有人知道比这更好的解决方案吗?
答案1
为什么不使用为这个用例创建的实际软件呢?你需要的是virt-p2v
答案2
如果您希望虚拟机上的虚拟磁盘大小与物理机上使用的物理磁盘大小相同,那么您只需将整个磁盘复制到磁盘映像即可。在虚拟机关闭时,将此磁盘映像放在主机系统上。复制磁盘的命令可能如下所示:
ssh -C vhost dd of=/path/to/image < /dev/sda
最好在源上以只读方式安装所有文件系统的情况下运行此操作。
答案3
我写了一个详细的分步说明回答我如何解决与此问题非常相似的挑战:将正在运行的 Linux 系统转变为另一台机器上的 KVM 实例。我希望这也能为这个问题提供一个有用的答案。
答案的目标:获取P
运行实时生产的物理 Linux 节点并对其进行虚拟化。无需创建和分配多 TB 磁盘,也不必在V
客户机中使用 md raid,因为目标虚拟机管理程序 (Proxmox 5) 使用了 ZoL/ZFS。还希望减少正在运行的P
节点上的停机/重启。