系统迁移及备份感悟
Tofloor
poster avatar
ixingbo
deepin
2018-03-29 22:36
Author
本帖最后由 ixingbo 于 2018-4-2 10:17 编辑

迁移场景:

    本人有两块硬盘,一块ssd 120GB ,一块机械硬盘3TB,然后我的deepin系统安装在机械硬盘,win10系统安装在ssd上,这个我之前的帖子有说过。

思考:

    在deepin系统越用越顺手的今天,我在考虑,win10系统是不是可以放弃了,然后将系统安装在ssd上,这样也不枉ssd存在的意义。因为这段时间我基本上没再打开win10,可惜了我的ssd。


技术背景:

    dd命令。 linux的dd命令大家都知道,这个是可以制定输入和输出并通过二进制传输的霸道命令,它除了支持D2D(盘到盘克隆)、P2P(分区到分区克隆)之外,还支持P2F(分区到文件备份),F2P(文件恢复到分区),D2F(磁盘到文件备份),F2D(文件到磁盘恢复)等等,一般大型虚拟云估计也是这个技术实现虚机迁移的吧?(个人猜测,勿喷)


注意事项:

    1、本次采用P2P方式进行分区对分区拷贝,拷贝时尤其注意源分区和目标分区必须大小一致。这个一般不可能一致,所以我将ssd上磁盘进行了重新分区,分区大小为使用分区编辑器查看源分区以MB对齐后的大小单元,然后对ssd分区分相同大小,采用 P2P迁移:

    /分区迁移:    dd if=/dev/sdb3 of=/dev/sda3
    /home分区迁移:   dd if=/dev/sdb4 of=/dev/sda4

    在新建终端窗口输入:sudo watch -n 5 pkill -USR1 -x dd   后,源迁移终端窗体会展示迁移进度
    2、为了保证迁移的完整性,采用在recovery模式下迁移,这样保证了系统的完整性,避免出现迁移分区的数据错误。

    3、一般第一个分区大小还能设置一样,第二个分区 我的ssd空间不够大,剩下的分区80G左右,通过分区编辑器查看目标(ssd)分区大小后,对源分区(机械硬盘分区)进行分区调整,分区大小保持和ssd上sdb4分区大小一致,调整完后,使用dd进行迁移即可

    4、通过dd迁移的分区属性都是一样的,uuid也不例外,这时需要进行uuid更新,即生成新的uuid标识!
     4-1、首先执行命令对迁移后的两个目标分区进行分区检查修复:e2fsck /dev/hda3  和 e2fsck /dev/hda4
     4-2、使用分区编辑器进行umount这两个分区,然后刷新后进行新uuid生成,应用,完成uuid更新
     4-3、使用sudo blkid 查看新分区uuid,并进行目标分区挂载调整fstab(ssd上的/etc/fstab进行编辑),更新/和/home。
     4-4、使用深度修复工具,修复引导
     4-5、完成



目前本人已经在ssd上使用迁移后的新deepin,开启确实快了不少,旧的deepin两个分区已经删除并合并成新的ext4 mount到/home下的某个文件夹用了。





Reply Favorite View the author
All Replies
avatar
要讲武德
deepin
2018-03-29 22:46
#1
高手
Reply View the author
avatar
woodelf
deepin
2018-03-29 23:10
#2
你这不是F2F,是P2P。
我以前的迁移是硬件整体升级换代的迁移,采用rsync和tar方式,一来不用考虑分区大小是否一致,二来也可以避免原始磁盘坏扇区导致的文件块损坏。
Reply View the author
avatar
ixingbo
deepin
2018-03-30 19:32
#3
https://bbs.deepin.org/post/154770
你这不是F2F,是P2P。
我以前的迁移是硬件整体升级换代的迁移,采用rsync和tar方式,一来不用考虑分区大小 ...

谢大神赐教
Reply View the author
avatar
ixingbo
deepin
2018-03-30 19:32
#4

算不上,只是手工活罢了,看到群里迁移系统需求的人多,就想着分享给各位参考
Reply View the author
avatar
159******53
deepin
2018-03-31 16:44
#5
感谢分享 说的很细致明了谢谢
Reply View the author