ubuntu系统备份还原到相同电脑、另一台电脑。(tar方式)
最近一直搞Xtion2,openni2,一下装完一个东西就不能用了,由于ubuntu系统不熟,找不到错误,弄得每次都要重新装系统,当我配了好几天的系统,里面带着mxnet,orbslam,opencv,Ros,这就尴尬了,每次重新安装系统都需要好几天配环境,心累!然后开始想着系统备份,系统还原。开始尝试着网上的tar备份,最开始只实现了同一台电脑不重装系统,后来系统的图形界面崩溃,想着既然要试就是要全部学会,不然不知道怎么处理,当换重装系统之后就相当于换硬盘了,就可以在不同电脑上实现,有时候确实很多时候的被逼的,那就试呗!
原理:“ 在ubuntu系统中,万物皆文件!!!”
一、系统备份
系统备份就需要考虑系统安装问题,我们备份一般是指备份系统,即根目录(/.),如果你将系统划分成不同目录就需要额外考虑其它东西,本文指考虑系统分成主分区/.与swap分区。具体的参考分区方法参考下面的链接。
https://blog.csdn.net/zhangxiangweide/article/details/74779652
步骤:1. 到根目录
-
cd / //到根目录
-
sudo su //获取权限
2. 进行打包
tar cvpzf backup.tgz --exclude=/proc --exclude=/lost+found --exclude=/backup.tgz --exclude=/mnt --exclude=/sys --exclude=/media /
解释:压缩到当前目录下的backup.tgz中,除去/proc /lost+found 等文件夹。最后面的“/”指根目录。此时压缩的文件就保存在/根目录下,如果想保存到别的地方就在backup.tgz前面加路径,应该放在media路径下,那里就是外面挂着的U盘等,你就可以舍得复制出来了。
注意:这里打包最后结束的时候会说先前的错误,可以忽略。
二 系统恢复(本机上,避免重装系统)
当有时候电脑崩溃了,出现了错误,我们就可以用复制好文件还原到之前时刻了,还原也是相对而已,因为它只是解压而已,即你新装的文件都会在,只是你原来的文件有的文件帮你覆盖掉了,回到从前了。如果电脑进不去了,就需要使用U盘启动,试用的方式进入系统。
1.到根目录
-
cd / //到根目录
-
sudo su //获取权限
2.进行解压
sudo tar -xvpfz backup.tgz -C /
如果将backup.tgz放在别处就需要在前面加地址。如 /media/kingtons/backup.tgz
然后重启就可以了! 这里主要参考下面两个博客,那个分区分了4个的需要自己试下,我也不确定是否可以一口气将所有的打包起来。可以的话麻烦评论下,留个言,让更多人知道。麻烦了!
https://blog.csdn.net/sinat_27554409/article/details/78227496
https://blog.csdn.net/qq_35523593/article/details/78545530
三、系统恢复(不同电脑,包括重新安装系统的电脑)
此步承接着第一步,将系统备份好,然后将backup.tgz复制到U盘里。
1、重新安装好系统(或新电脑安装好的系统)
2、备份新系统文件(就是备份UUID)
-
cd /etc/
-
sudo cp -pdr fstab /home/laukal/
将文件复制到home文件夹下,保存到一个不会被覆盖的地方。
3、解压就系统
进入根目录,解压。
-
cd /
-
sudo su
-
sudo tar -xvpfz /media/kingston/backup.tgz -C /
4、将刚才保存好的fstab复制到复原系统中
sudo cp -pdr /home/laukal /etc/
5、打开fstab,将硬盘的UUID号复制好,覆盖/boot/grub/grub.cfg文件中的UUID号,有20多个,不覆盖的话,是启动不了的,找不到硬盘。
UUID=bb089529-c213-45ad-aa16-89e36f1c63ae (是第一个,不是那个swap的)
然后重启就可以。
这里主要参考的是下面两篇文章