学习啦>学习电脑>操作系统>操作系统基础知识>

Linux操作系统如何备份的相关方法

佳洲分享

  Linux操作系统也会受到电脑病毒入侵导致数据丢失,备份系统是一个很好的习惯。下面由学习啦小编为大家整理了Linux操作系统如何备份的相关方法,希望对大家有帮助!

  Linux操作系统如何备份的相关方法一

  1. 备份系统

  我该如何备份我的Ubuntu系统呢?很简单,就像你备份或压缩其它东西一样,使用TAR。和Windows不同,Linux不会限制root访问任何东西,你可以把分区上的所有东西都扔到一个TAR文件里去!

  首先成为root用户:

  $ sudo su

  然后进入文件系统的根目录(当然,如果你不想备份整个文件系统,你也可以进入你想要备份的目录,包括远程目录或者移动硬盘上的目录):

  # cd /

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

  # tar cvpzf backup.tgz –exclude=/proc –exclude=/lost+found –exclude=/backup.tgz –exclude=/mnt –exclude=/sys /

  让我们来简单看一下这个命令:

  “tar”当然就是我们备份系统所使用的程序了。

  “cvpfz”是tar的选项,意思是“创建档案文件”、“保持权限”(保留所有东西原来的权限)、“使用gzip来减小文件尺寸”。

  “backup.gz”是我们将要得到的档案文件的文件名。

  “/”是我们要备份的目录,在这里是整个文件系统。

  在 档案文件名“backup.gz”和要备份的目录名“/”之间给出了备份时必须排除在外的目录。有些目录是无用的,例如“/proc”、“/lost+ found”、“/sys”。当然,“backup.gz”这个档案文件本身必须排除在外,否则你可能会得到一些超出常理的结果。如果不把“/mnt”排 除在外,那么挂载在“/mnt”上的其它分区也会被备份。另外需要确认一下“/media”上没有挂载任何东西(例如光盘、移动硬盘),如果有挂载东西, 必须把“/media”也排除在外。

  有人可能会建议你把“/dev”目录排除在外,但是我认为这样做很不妥,具体原因这里就不讨论了。

  执行备份命令之前请再确认一下你所键入的命令是不是你想要的。执行备份命令可能需要一段不短的时间。

  备份完成后,在文件系统的根目录将生成一个名为“backup.tgz”的文件,它的尺寸有可能非常大。现在你可以把它烧录到DVD上或者放到你认为安全的地方去。

  在备份命令结束时你可能会看到这样一个提示:’tar: Error exit delayed from previous errors’,多数情况下你可以忽略它。

  你还可以用Bzip2来压缩文件,Bzip2比gzip的压缩率高,但是速度慢一些。如果压缩率对你来说很重要,那么你应该使用Bzip2,用“j”代替命令中的“z”,并且给档案文件一个正确的扩展名“bz2”。完整的命令如下:

  # tar cvpjf backup.tar.bz2 –exclude=/proc –exclude=/lost+found –exclude=/backup.tar.bz2 –exclude=/mnt –exclude=/sys /

  2. 恢复系统

  在进行恢复系统的操作时一定要小心!如果你不清楚自己在做什么,那么你有可能把重要的数据弄丢,请务必小心!

  接着上面的例子。切换到root用户,并把文件“backup.tgz”拷贝到分区的根目录下。

  在 Linux中有一件很美妙的事情,就是你可以在一个运行的系统中恢复系统,而不需要用boot-cd来专门引导。当然,如果你的系统已经挂掉不能启动了, 你可以用Live CD来启动,效果是一样的。你还可以用一个命令把Linux系统中的所有文件干掉,当然在这里我不打算给出这个命令!

  使用下面的命令来恢复系统:

  # tar xvpfz backup.tgz -C /

  如果你的档案文件是使用Bzip2压缩的,应该用:

  # tar xvpfj backup.tar.bz2 -C /

  注意:上面的命令会用档案文件中的文件覆盖分区上的所有文件。

  执行恢复命令之前请再确认一下你所键入的命令是不是你想要的,执行恢复命令可能需要一段不短的时间。

  恢复命令结束时,你的工作还没完成,别忘了重新创建那些在备份时被排除在外的目录:

  # mkdir proc

  # mkdir lost+found

  # mkdir mnt

  # mkdir sys

  等等

  当你重启电脑,你会发现一切东西恢复到你创建备份时的样子了!

  Linux操作系统如何备份的相关方法二

  1. 备份用户程序

  /usr/local目录下为一般用户程序的安装位置,

  tar -zcpPvf local.tar.gz /usr/local/

  /opt也常用于存放用户程序,

  tar -zcpPvf opt.tar.gz /opt/

  2. 备份全局参数配置文件

  Linux下大部分配置都保存在/etc/文件夹下,

  tar -zcpPvf etc.tar.gz /etc/

  3. 备份用户目录

  tar -zcpPvf monkeyzx.tar.gz /home/monkeyzx/

  其中monkeyzx为你的用户名。

  4. 恢复备份

  恢复备份的方法很简单,只要将压缩包解压到新的系统中即可。因为压缩时使用的是绝对路径,解压可以在任意目录下使用下面的命令,

  su root

  tar -zxpPvf local.tar.gz

  tar -zxpPvf opt.tar.gz

  tar -zxpPvf etc.tar.gz

  tar -zxpPvf monkeyzx.tar.gz

  补充:Linux操作系统备份概述

  在前面的一些文章中,我反复提到经常会把系统搞崩溃,所以备份系统就是一件不容忽视的事情。由于 Linux 系统本身的优越性,系统的备份和还原还是比较容易的。主要表现在以下方面:

  Linux 系统所有的数据都以文件的形式存在,所以备份就是直接拷贝文件;硬盘分区也被当成文件,所以可以直接克隆硬盘数据。

  Linux 系统自带很多实用工具,比如 tar、dd、rsync 等,备份还原系统不需要购买或下载第三方软件。

  Linux 系统在运行时其硬盘上的文件可以直接被覆盖,所以还原系统的时候不需要另外的引导盘。(当然,系统完全挂掉到无法启动这种情况还是需要另外的引导盘的。)

  备份 Linux 系统的策略有很多,比如使用 dd 命令直接克隆硬盘分区:

  sudo dd if=/dev/sda1 of=/dev/sdb1

  或者,使用 tar 将硬盘上的文件打包:

  cd /

  sudo tar cvpzf backup.tgz --exclude=/proc --exclude=/mnt --exclude=/sys --exclude=/backup.tgz /

  还原系统的命令是:

  sudo dd if=/dev/sdb1 of=/dev/sda1

  或

  tar xvpfz backup.tgz -C /

  但是我最终选择的是 rsync 命令。rsync 是一个非常优秀的文件同步工具,从它的名字可以看出,它支持远程同步。当然,在备份我的桌面系统时,只需要用到它的本地同步功能就行了。之所以选择 rsync,是因为它具有如下优点:

  在备份还原过程中,可以保存文件原有的时间、权限、软硬链接等信息;

  首次备份时,需要复制所有文件,但是再次备份或还原系统时,只需要复制修改过的文件。

  关于 rsync 的使用方法,其主要参考文档是man rsync,另外,rsync 也可以作为守护进程运行用来建立文件备份服务器,可以参考文档man rsyncd.conf。

    3643618