前言:已经配置好的ubuntu18.04需要全部迁移到另外一台电脑去,已经在ubuntu配置好编程环境,安装好了tim、微信、网易云、迅雷,不想以后还得重新配置,所以在网上找了不少教程,用了很多方式,最后还是简单tar打包成功,折腾了很久终于完成了!!!!现在总结,如果没成功的,知道哪里错的,一定要指正我,我靠着记忆写的。
第一步:sudo fdisk -l 查看u盘设备名,我的是/dev/sdb1
第二步:如果ubuntu已经挂载了U盘,在medie/xxx/U盘名称可以找到,若没有挂载,输入命令sudo mount /dev/sdb1 /mnt
第三步:U盘一定要是ntfs,ubuntu文件一班会超过4G,之前就是因为这个失败n次,细节太重要了
tar -cvpzf (/media/xxx/u盘/ubuntu_backup@`date +%Y-%m+%d`.tar.gz,这边看着改) --exclude=/proc --exclude=/tmp --exclude=/boot --exclude=/home --exclude=/lost+found --exclude=/media --exclude=/mnt --exclude=/run /
这时候一般情况就是等待,最后会有一个“tar: 由于前次错误,将以上次的错误状态退出”,基本上所有教程都是大同小异,一般不会有错!!!
还原系统跟原来系统一模一样,不是有些教程写的那么简单的,因为很多人就是要手动分区的,分出好多区,我这是在有个ubuntu启动盘情况下的,因为可能你直接ubuntu下解压覆盖,会导致无法启动还是需要在启动盘下修复grub,我的全部都在try ubuntu下完成:
(1)首先使用电脑用启动盘,进入try ubuntu
(2)首先换下源,可能要使用boot-repair,你也可以先不做,后面出现grub问题再说
(3)打开命令行:sudo su 获得root权限
(4)输入命令:fdisk -l 查看所有linux磁盘设备号,尤其有分区/ /boot /home三个一定记住
(5)cd / && mkdir backup
(6)挂载/,mount /dev/sdaX backup/ (注意:/的设备号根据自己修改,其实你如果home分区的,你去ls /home是空的,没有挂载上去,你现在不要挂载,之后才要挂载,感觉我的方法有点笨,不喜勿喷)
(7)然后一定要复制一份/etc/fstab ,这是一份你新安装的ubuntu磁盘对应编号,复制到U盘,这样方便,你也可以使用blkid /dev/sdaX 命令一个个修改,这边就不赘述了!!
blkid /dev/sda4
/dev/sda4: UUID="1f7d11db-6e38-4854-969b-db82eb614d86" TYPE="ext4" PARTUUID="da38cdec-04"
(8)进入正题:rm -rf backup/*;接下来解压备份:tar -xvpzf 备份 -C /backup,就是漫长等待,等得饿了就去吃饭
(9)解压完成后,进入先新建未打包目录
sudo mkdir proc lost+found mnt sys media
(9)然后挂载/home的分区设备并格式化
mount /dev/sdaY backup/mnt/ && rm -rf /mnt/*;
再将backup/home mv到/mnt/
(10)结束挂载/home,同样的方法弄好其他分区数据(我没弄swap),再弄/boot,/boot卸载后直接挂载backup/boot/
(11)先把放在u盘中的fstab覆盖backup/etc/
(12)最重要的命令:grub-install --root-directory=/backup/boot /dev/sda(基本上不会有错的,要是错了,饿。。。。还是吃饭去吧)显示“Installation finished.No Error Reported.”就ok了
(13)然后更新sudo update-grub2,可惜我出错了,“ /usr/sbin/grub-probe: Error:failed to get canonical path of /cow ”
(14)没出错的重启应该就好了,出错的接着来吧,开心不,不开心的吃饭去,安装boot-repair grub修复工具
sudo add-apt-repository ppa:yannubuntu/boot-repair && sudo apt-get update
sudo apt-get install -y boot-repair
(15)命令行使用boot-repair,点击第一个跟着提示走就好了
(16)最后重启reboot