您的位置:首页 > 其它

使用dd实现跨主机数据迁移

2018-02-07 14:34 447 查看


dd迁移方案:(注意新建虚拟机的时候要和物理机的磁盘、内存等大小一致)

一、物理机和虚拟机分别用对应版的livecd启动。

二、在物理机和虚拟机上分别关闭防火墙和开启sshd服务

1.关闭防火墙 systemctl stop firewalld.service#停止firewall 或用service iptables stop 每个版本的linux命令不同

2.开启sshd服务 service sshd start 每个版本的linux的命令不同

3.分别设置物理机和虚拟机的root密码。

三、连通后,在物理机上使用以下命令
1.直接将磁盘远程copy过去(注意双引号不能丢)
[root@localhost imageiso]# md5sum virtio-win-1.7.3.iso
f2a9ff2cd31d0364b3d65888e1bc52ff  virtio-win-1.7.3.iso
[root@localhost imageiso]# dd if=virtio-win-1.7.3.iso bs=1M | ssh 10.202.131.33 "dd of=/tmp/d"
[root@i-03C020FE tmp]# md5sum d
f2a9ff2cd31d0364b3d65888e1bc52ff  d

2.将磁盘作为 .img文件copy到指定的存储目录
dd if=/dev/sdx | ssh <Target Host Ip>

“dd of=/storage/cfs/<StorageUuid>/<targetName>.img ” //将磁盘作为 .img文件copy到指定的存储目录,

3.先在虚拟机上 nc -l 7000|dd of=/dev/xvda 然后在物理机上 dd if=/dev/xvda |nc <虚拟机ip地址> 7000 注意监听的端口号要一致。


确定后输入Target Host 的密码,即可开始dd迁移

四、查看迁移进度

1.通过另一个shell用以下命令查看迁移进度:
watch -n 30 kill -USR1 `pidof dd`


注意事项:

1.一定要先开启远程主机的sshd 和关闭防火墙

2.用第一种方法的时候,ssh时如果密码输入错了 ,在主机上 vi /root/.ssh/know_hosts 里面的内容注释掉 重新dd,会生成新的公钥。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐