我拥有一台由一家私人公司托管在世界某处的 12.04 LTS 专用服务器。我花了一些时间对其进行设置(Web、DNS 和邮件服务)并保护其安全。现在我对结果感到满意,我想制作系统分区的磁盘映像,以便在硬盘故障时可以快速重新安装副本。
我的系统设置如下:
Filesystem Size Used Avail Use% Mounted on
rootfs 20G 1.3G 17G 8% /
udev 984M 4.0K 984M 1% /dev
tmpfs 199M 280K 199M 1% /run
/dev/sda1 20G 1.3G 17G 8% /
none 5.0M 4.0K 5.0M 1% /run/lock
none 994M 0 994M 0% /run/shm
/dev/sda3 193G 1.2G 182G 1% /var
/dev/sda4 244G 1.4G 230G 1% /backup
/dev/sda3 193G 1.2G 182G 1% /var/www/clients/client2/web1/log
/dev/sda3 193G 1.2G 182G 1% /var/www/clients/client1/web2/log
/dev/sda3 193G 1.2G 182G 1% /var/www/clients/client1/web3/log
/dev/sda3 193G 1.2G 182G 1% /var/www/clients/client1/web4/log
/dev/sda3 193G 1.2G 182G 1% /var/www/clients/client1/web5/log
我可以从网络启动服务器,并有选择地安装分区。计划是安装/dev/sda4
并在文件中/backup
制作磁盘映像/dev/sda1
/backup/diskimage
问题是:我希望磁盘映像仅存储有用的数据(即我预计是 1.3G,而不是 20G),以便我稍后可以通过互联网将其传输到备份位置。如果硬盘驱动器发生故障,我需要能够快速执行反向过程,而将磁盘映像传输到/从服务器是瓶颈。
据我所知,dd
这不是构建此类磁盘映像的正确工具。我可以使用什么工具?如何使用它?
我这样做是否足够:
- TAR:/sbin、/bin、/etc、/ispconfig、/lib、/lib64、/opt、/root、/usr、/var
- 插入新的硬盘,按照之前的硬盘进行分区
- 安装 12.04 LTS + 我之前安装的所有软件包(可以自动化并且速度很快)
- 然后,取消我的系统上上述所有文件夹的标记。
它会恢复所有 apache、postfix 等配置吗?以及首次在系统上创建的用户和组及其 UID?这是导致我当前的备份解决方案无法正常工作的关键点。恢复后,服务器无法工作,因为未创建诸如、等用户web1
(client1
因此 apache 拒绝启动)。问题是我有很多这样的用户,我需要使用正确的 UID 和组重新创建它们……噩梦就从这里开始了……
感谢您的帮助。
答案1
使用传统备份工具如tar
或dump
。
进行映像类型备份(您可以使用 clonezilla 进行备份)的主要原因是它可以对整个磁盘(包括引导加载程序)进行映像,从而省去了在恢复备份时必须将其作为单独步骤进行恢复的麻烦。但是,由于您计划仅备份一个分区,因此抵消了这一优势。
使用 tar 的其他优点包括:
- 您无需卸载分区即可备份
- 您可以进行增量备份,而不必每次都重复完整备份
- 您可以从备份中提取可能已更改或删除的特定文件,而不必恢复整个文件