SDB:家庭备份

跳转到:导航搜索


本文档解释了如何备份您的 /home 目录,以及您可以用来执行此备份的各种工具。

备份您的 /home

当 /home 目录位于独立分区时,很少会出现问题,但始终建议创建一个备份。

要备份的内容

查找 /home 是否有自己的分区

要确定您的 home 是否位于其自身的分区上,可以使用 df 命令,如下所示:

df -h | grep /home

如果结果类似于以下内容:

/dev/sda4             122G  8.7G  107G   8% /home

那么它已挂载在其自身的分区中。请注意,如果您想备份,备份介质上所需空间是第二列中显示的数量(此处为 8.7G)。

如果您没有得到上述命令的任何结果,那么它是在 / 下的目录,您应该备份到外部介质。

如果 /home 在 / 下,如何查找其大小

Dolphin - 目录属性

您可以使用文件管理器(Konqueror/Dolphin/Nautilus)访问 /home,右键单击该目录并选择属性,或者在终端中键入:

du -sh /home/

结果将类似于以下内容:

8.5G    /home/

如果安装了 Windows 或另一个发行版,并且将其挂载在 /home/windows 下,则应小心处理,因为这也会被计算在内,以及所有其他用户 home 目录。您可以为 du 提供要计算的确切路径,例如,如果您的用户名是 openSUSE,则应在终端中键入:

du -sh /home/openSUSE

结果将类似于以下内容:

8.5G    /home/openSUSE/


备份过程

tar

您可以使用以下命令创建压缩的 tar 文件,以完整备份您的 home 目录:

您可以将 z 替换为 j 以使用 bzip2,后者具有更好的压缩率。如果您使用 bzip2,请确保将备份文件的扩展名更改为 .tbz 而不是 .tgz,以便以后记住您使用的压缩方式。


备份

这将创建用户 openSUSE 的备份文件 myBackup.tgz,该文件位于 /home 目录中。

sudo tar cpzvf /home/myBackup.tgz --same-owner /home/openSUSE/

增量备份

稍后,您可以使用以下命令将新文件添加到备份中:

sudo tar cvzpnf /home/myBackup.tgz --same-owner /home/openSUSE/

比较 / 验证

备份后,您可以使用以下命令比较备份的文件:

tar tzvf /home/myBackup.tgz -C /home/openSUSE/

恢复

要恢复备份的文件,请使用以下命令:

sudo tar zxvf /home/temp.tgz -C /


rsync

dd

如果您的 /home 位于专用分区中,您可以使用 dd 进行逐位复制(克隆),您可以将分区克隆到另一个分区,或创建其镜像并在以后恢复它。

您必须卸载要从中复制的分区并复制到:
确保目标分区至少与源分区一样大


分区克隆

要将 /home 分区复制到另一个分区,以 root 身份键入:

dd if=/dev/sda4 of=/dev/sdb2


分区镜像

要将 /home 分区复制到文件,请键入:

dd if=/dev/sda4 of=/yourFilename.dd

要从文件恢复分区,请键入:

dd if=/yourFilename.dd of=/dev/sda4


压缩(gzip)和分割的分区镜像

以下命令将创建 650MB gzip 压缩的磁盘文件:

dd if=/dev/sda4 | gzip -c | split -b 650m - homedisk.dd.gz_

要恢复,请使用以下命令:

cat homedisk.dd.gz_* | gzip -dc | dd of=/dev/hda4


备份软件

Bacula

rsync

Mondo Rescue

Amanda

Box Backup