Linux系统备份与还原

首先成为root用户:

sudo su

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

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”也排除在外

备份完成后,在文件系统的根目录将生成一个名为“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 /

恢复系统

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

tar xvpfz backup.tgz -C /

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

tar xvpfj backup.tar.bz2 -C /

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

mkdir proc
mkdir lost+found
mkdir mnt
mkdir sys
# 等等

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

本篇博客转载自

你可能感兴趣的:(linux)