我正在使用 Ubuntu 12.04 Server。我对 Ubuntu 完全陌生,我想创建完整操作系统的备份并将其还原到另一个系统或同一系统。
您能否解释一下进行备份和恢复的逐步过程?
答案1
映像类型备份有几个问题:
- 他们无法进行每日/增量备份
- 大多数都无法提取你意识到自己删除或覆盖的单个文件或文件集
- 他们无法恢复到比原始磁盘小的磁盘,即使有足够的可用空间
- 恢复到更大的磁盘通常需要额外的步骤来利用额外的空间
最好坚持使用久经考验的方法: tar
和dump
。我之所以使用,dump
是因为它在备份和提取单个文件方面比 tar 快得多,并且可以更好地处理增量备份。它还使用多线程压缩,这在当今的多核机器上非常有用。无论哪种方式,在进行备份时,您都需要关闭服务以确保在进行备份时没有写入任何文件。如果您使用 LVM,那么您只需要执行此操作足够长的时间来创建快照,然后您就可以使服务重新联机并备份快照。这是我cron
每晚自动运行的脚本:
#!/bin/bash
set -e
declare -a LEVELMAP=(1 5 4 5 3 5 4 5 2 5 4 5 3 5 4 5 1 5 4 5 3 5 4 5 2 5 4 5 3 5 4 5)
DATE=`date +%-d`
LEVEL=${LEVELMAP[$DATE-1]}
echo Performing a level $LEVEL dump
#shutdown services here
sync
lvcreate -s -n snap devserv/root -L 500m
#start them back up here
dump -$LEVEL -quz9 -b 1024 -f /backup/dump.$LEVEL /dev/mapper/devserv-snap
lvremove -f devserv/snap
当我升级服务器时,我通常每 6 个月进行一次 0 级(完整)转储,然后此脚本在每月 1 号和 17 号进行 1 级转储(自 0 级以来更改的所有文件),其余日子在 2-5 级之间交替。
这意味着要恢复系统,我最多需要恢复 5 个转储,有时更少(如果服务器在第 1 级转储之后立即死机,那么您只需恢复第 0 级和第 1 级),并且我有过去几天、几周、几个月的几个转储,如果需要,我可以从中提取一个旧文件,可能是在不同点发生变化的多个版本。
如果您不介意从多个点返回并提取旧文件,一个更简单的替代方法是每 6 个月执行一次 0 级,每周一执行一次 1 级,每周的其他一天执行一次 2 级。
答案2
您可以使用 Clonezilla 等程序,它看起来像 Acronis 和适用于 Windows 的 true image http://clonezilla.org/ 可以找到 clonezilla 的教程这里。
答案3
您还可以查看重做备份。它也能像 CloneZilla 一样生成完整映像。我更喜欢它,因为它速度更快,而且使用起来更方便。您可以在此处找到相关信息:http://redobackup.org/