• ubuntu全盘备份与恢复


    备份:
    以下是我用来备份系统的完整命令:

    tar -jpcvf Ubuntu-12.04-20131018.tar.bz2 --exclude=/proc --exclude=/lost+found --exclude=/Ubuntu-12.04-20131018.tar.bz2 --exclude=/mnt --exclude=/sys --exclude=/home /
    

    让我们来简单看一下这个命令:
    “tar”当然就是我们备份系统所使用的程序了。
    “jpcvf”是tar的选项,意思是“创建档案文件”、“保持权限”(保留全部东西原来的权限)、bzip2 格式打包。这是一种压缩耗时可是压缩比非常高的格式。经经常使用于压缩大数据。
    “Ubuntu-12.04-20131018.tar.bz2”是我们将要得到的档案文件的文件名称。
    “/”是我们要备份的文件夹。在这里是整个文件系统。

    –exclude 后接不须要打包的文件夹。有些文件夹是没用的,比如“/proc”、“/lost+ found”、“/sys”。当然,“Ubuntu-12.04-20131018.tar.bz2”这个档案文件本身必须排除在外。否则你可能会得到一些超出常理的结果。假设不把“/mnt”排 除在外,那么挂载在“/mnt”上的其他分区也会被备份。另外须要确认一下“/media”上没有挂载不论什么东西(比如光盘、移动硬盘),假设有挂载东西。 必须把“/media”也排除在外。有人也会问,为什么我把/home也排除了。

    这个文件夹,主要是放自己定义用户的一些信息。我电脑。仅仅有一个root用户,/home文件下,什么东西都没有。详细要排除什么,因各人而定。
    打包过程比較漫长。我的系统,刚好个5G,打包好了的包2.4G。用了半个小时。打包完毕时,有一个提示错误,不用管。

    全盘恢复
    恢复系统的步骤会比备份繁琐很多。下面是主要步骤,我会尽量解释每一个步骤的含义。
    通过Ubuntu的启动U盘或者光盘重新启动电脑,进入试用Ubuntu的模式。
    在试用模式的Ubuntu中开启终端,执行命令(ctrl+alt+t)

    sudo su -
    

    切换至 root 权限

    gparted
    

    打开Linux下的分区软件gparted,假设提示须要安装。则执行

    sudo apt-get install gparted
    

    之后就进行分区。
    backup01
    我这里仅仅分了三个区。sda1,sda2,sda3以后,分别用于swap分区,/分区 /home分区
    解压备份压缩包

    mkdir /tmp/root  
    mkdir /tmp/root2 
    mount /dev/sda2 /tmp/root 
    mount /dev/sda3 /tmp/root2 
    cd /tmp/root2/
    tar -jpxvf Ubuntu-12.04-20131018.tar.bz2 -C /tmp/root 
    

    使用U盘启动到live Ubuntu模式幷不会实际上挂载你的物理分区,所以这里须要使用mount命令手动挂载你刚才格式化以后的 / 分区而且将压缩包解压导入。

    新建两个文件夹/tmp/root /tmp/root2。将分区/dev/sda2 /dev/sda3分别挂载到这两个文件夹。确保sda2是系统恢复以后挂载 / 文件夹的分区,sda3是原来/home文件夹挂载的分区,当中有我们须要的备份压缩包存在。

    (我是通过移动硬盘拷贝到这里的)挂载完成以后。/tmp/root 相应了 sda2 分区,也就是恢复以后的/分区。/tmp/root2 相应了 sda2 分区,恢复以后的/home分区。进入 /tmp/root2/ 就是我们原先的备份存储的位置。执行 sudo tar -jpxvf Ubuntu-12.04-20131018.tar.bz2 -C /tmp/root 做解压操作,jpxvf 中的 x 指解压,-C /tmp/root 则指定了须要解压的目标文件夹,这里实际上就是 sda1 分区所在的根文件夹。完毕这个操作以后,全部的数据就已经被还原到 sda1 分区
    恢复分区的 GRUB/MBR 信息
    经过格式化,分区等等步骤以后,即便你是在现有硬盘上恢复自己的系统,分区的 uuid 都可能已经被改变,因此当初备份在压缩备份包里的启动引导信息诸如:GRUB/MBR都已经不再和眼下实际的信息相匹配,我们因此要做修复工作。

    ls -al /dev/disk/by-uuid
    

    2013-10-19 09:03:54的屏幕截图
    再次查看各个分区的 uuid 信息,确保这些 uuid 和 /tmp/root/etc/fstab 中使用的 uuid 一致
    假设没有正确的 uuid 以及分区文件夹挂载匹配。系统就无法正确启动
    重建系统文件夹
    这些文件夹就是我们当初做备份时加在 –exclude 參数后面的文件夹

    mkdir /tmp/root/proc /tmp/root/lost+found /tmp/root/mnt /tmp/root/sys /tmp/root/home
    

    最后一步。修复引导程序 live ubuntu 模式下执行:

    add-apt-repository ppa:yannubuntu/boot-repair 
    apt-get update 
    apt-get install-y boot-repair 
    boot-repair
    

    下载执行启动修复软件 boot-repair。启动后点击默认推荐方式就可以。
    2013-10-19 09:10:24的屏幕截图
    假设想了解这个软件详细做了哪些工作。能够在这里參看手工修复的步骤。只是因为笔者并未验证其正确性,不能保证一定可用。
    提示:在修复过程中,会出现2013-10-19 09:14:33的屏幕截图
    这种提示。点是或否,都会进入到
    2013-10-19 09:15:32的屏幕截图
    这个界面。最后还提示没我网络…..明明就有网络,这个软件都是通过apt-get来安装的,怎么可能没有网络,原因我也不知道。反正出现这个界面的时候,就能够重新启动了。

    我的就这么样。反正没有问题。到这里,系统就恢复完毕了。

  • 相关阅读:
    VS2005 中关于“LC.EXE已退出,代码为 1”的错误解决方法。
    由于目标机器积极拒绝,无法连接。
    What is Android?
    利用批处理文件和任务计划实现Oracle数据库的自动备份
    就差了一点点....
    由Login.aspx引发编译器错误的解决方法
    都是补丁惹的祸...
    终于结束了
    GIS当然可以很酷
    rar.exe命令行参数与示例
  • 原文地址:https://www.cnblogs.com/yxwkf/p/5373505.html
Copyright © 2020-2023  润新知