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
