ubuntu系统备份还原到相同电脑、另一台电脑。(tar方式)

本文由 简悦 SimpRead 转码, 原文地址 www.cnblogs.com

ubuntu 系统备份还原到相同电脑、另一台电脑。(tar 方式)

原创 laukal 发布于 2018-07-28 15:35:14 阅读数 2205 收藏 展开

    最近一直搞 Xtion2,openni2, 一下装完一个东西就不能用了,由于 ubuntu 系统不熟,找不到错误,弄得每次都要重新装系统,当我配了好几天的系统,里面带着 mxnet,orbslam,opencv,Ros, 这就尴尬了,每次重新安装系统都需要好几天配环境,心累!然后开始想着系统备份,系统还原。开始尝试着网上的 tar 备份,最开始只实现了同一台电脑不重装系统,后来系统的图形界面崩溃,想着既然要试就是要全部学会,不然不知道怎么处理,当换重装系统之后就相当于换硬盘了,就可以在不同电脑上实现,有时候确实很多时候的被逼的,那就试呗!

原理:“在 ubuntu 系统中,万物皆文件!!!”

一、系统备份

   系统备份就需要考虑系统安装问题,我们备份一般是指备份系统,即根目录(/.), 如果你将系统划分成不同目录就需要额外考虑其它东西,本文指考虑系统分成主分区 /. 与 swap 分区。具体的参考分区方法参考下面的链接。

https://blog.csdn.net/zhangxiangweide/article/details/74779652

步骤:1. 到根目录

  1. cd / // 到根目录

  2. sudo su // 获取权限

  3. 进行打包

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. 到根目录
  1. cd / // 到根目录

  2. 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/sinat_27554409/article/details/78227496)

     [https://blog.csdn.net/qq_35523593/article/details/78545530](https://blog.csdn.net/qq_35523593/article/details/78545530)

三、系统恢复(不同电脑,包括重新安装系统的电脑)

     此步承接着第一步,将系统备份好,然后将 backup.tgz 复制到 U 盘里。

     1、重新安装好系统(或新电脑安装好的系统)

     2、备份新系统文件(就是备份 UUID)
  1. cd /etc/

  2. sudo cp -pdr fstab /home/laukal/

    将文件复制到 home 文件夹下,保存到一个不会被覆盖的地方。
    
     3、解压就系统
    
     进入根目录,解压。
    
  3. cd /

  4. sudo su

  5. 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 的)

   然后重启就可以。

   这里主要参考的是下面两篇文章

  [https://blog.csdn.net/zeg635702733/article/details/53992224](https://blog.csdn.net/zeg635702733/article/details/53992224)

  [https://www.linuxidc.com/Linux/2014-01/94975p2.htm](https://www.linuxidc.com/Linux/2014-01/94975p2.htm)