SDB:Home backup
目录
备份你的 /home
如果你的 /home 目录在独立的分区下,有时候可能一点改动就会引起麻烦,所以最好还是给它做个备份。
备份哪些东西
确定 /home 是否在单独的分区中
要确定 /home 是否在单独的分区中,可执行 df 命令:
df -h | grep /home
如果系统给出类似下面的信息:
/dev/sda4 122G 8.7G 107G 8% /home
则说明 /home 在单独的分区中。注意用来备份的介质的容量最小值在右侧第二列中显示(此处是 8.7G)
如果上述命令行未输出任何信息,则说明 /home 是 / 分区下的一个目录,你 应该 把它备份到外部介质中。
如果 /home 在 / 分区下,确定它的大小
可用文件管理器访问 /home (Konqueror/Dolphin/Nautilus), 在 home 目录上右击选择查看其属性,或者在终端输入:
du -sh /home/
系统会给出类似下面的信息:
8.5G /home/
注意,如果你同时安装了 Windows(或者 其他 Linux 发行版),并把相应的目录挂载到了 /home/windows 下面,那么这些文件和其他用户在 /home 目录下文件的大小也会被计入上面的数值。此时可使用 du 命令给出相应目录的绝对路径,例如,若用户名为 Terry,就可以在终端输入:
du -sh /home/Terry
系统会给出类似下面的信息:
8.5G /home/Terry/
备份过程
tar
按以下说明可以创建一个 tar 类型的压缩文件,来完整备份你的 /home 目录
备份
下面的命令将把用户 Terry 的文件打包到 /home 目录下一个名为 myBackup.tgz 的文件中:
sudo tar cpzvf /home/myBackup.tgz --same-owner /home/Terry/
增量备份
备份完一段时间后,你也可以更新备份文件:
sudo tar cvzpnf /home/myBackup.tgz --same-owner /home/Terry/
对比 / 验证
可以执行以下命令来对比原始目录和备份文件:
tar tzvf /home/myBackup.tgz -C /home/Terry/
恢复
要从备份文件恢复,执行:
sudo tar zxvf /home/temp.tgz -C /
dd
若你的 /home 在专用分区下,也可使用 dd 命令逐字节克隆文件, 可把一个分区完全克隆到另一个分区中,也可为一个分区创建恢复镜像文件。
分区克隆
要把 /home 分区克隆到另一个分区中,以根用户身份执行:
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