问题
仅使用命令行,是否可以判断 rsync 备份(在 NAS 上)和原始文件夹树(在 Web 服务器上)是否完全相同?我的意思是在文件大小、属性和符号链接方面?
我最看重的是符号链接。如果硬盘出现故障(假设我可以解决所有启动问题),我是否能够恢复所有文件,并且所有符号链接及其权限/属性都正确无误?
语境
我正在设置一个 rsync 备份系统,其中我的 NAS(arm 处理器)连接到远处托管的专用网络服务器并对分区进行备份/
。
如果发生磁盘崩溃,我计划在新磁盘上进行完全相同的分区设置,安装相同的操作系统(14.04),这样我就可以得到 MBR/引导加载程序。
然后我将把备份从 NAS rsync 回服务器,重新启动并祈祷好运。
问题是,我只有在需要备份的那天才会知道一切是否正常……但我可以采取措施提前知道它是否能正常工作。其中之一是检查备份中的每个文件、文件夹、符号链接……是否具有与原始文件相同的权限、属性等。我还需要检查符号链接和类似操作是否正确完成。
我在 rsync 中使用的选项是:
rsync -rlptgoDXvxzH --numeric-ids --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found"}
该选项A
导致了问题。
编辑:附加信息
我正在寻找一个可行的备份策略,它可以让我:
– 执行极快的备份。
因为我确实备份了/
系统分区,所以我关闭了服务器上的大多数服务(apache、postfix、dovecot、mysql 等),这样我就可以安全的备份。任何解决方案(例如 rsync)都很好,因为我可以更新mirror
NAS 上的目录。然后,离线时,我可以从更新的镜像中处理备份策略(增量等)。
– 快速恢复(我不想传输 100 GB 的磁盘映像)。 我的 NAS 和服务器之间的连接速度非常快。我是说非常快。传输 10 GB 的磁盘映像只需几分钟。
我不能做什么:更改托管服务器的物理设置。我有一个 500 GB 的磁盘。就这样。
我可以做什么:以救援模式启动服务器,此时磁盘根本没有挂载。救援模式甚至可以在磁盘坏掉的情况下工作。我使用此模式执行分区的二进制映像。
当前设置:
/
10 GB、17% 已满 SWAP 512 Mo
/var
80 GB
/bkup
其余...到 500 GB。
答案1
我的实验
- 设置
首先,我使用 在我的 PC 上创建了一个 Ext4 分区gparted
。
然后我启动了一个小型的 Arch GNU/Linux 安装,希望这会带来更好的性能。然后我通过以太网交换机将我的 Raspberry Pi 与仅经过一点修改的 Raspbian GNU/Linux 安装连接到 PC。
然后我挂载了 Ext4 分区。
- 复印
此后,我将/
Pi 的分区复制到我的电脑上。
rsync -rlptgoDXvxzH --numeric-ids --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found"} root@raspberrypi:/ rsync_mount/
这大约需要 20 分钟。如果您将服务器复制到 NAS,您可能需要
- 固定费率(或一大笔钱;))
很多时间
- Raspberry Pi 变砖
然后我使用
ssh root@raspberrypi
rm -r /run /var /etc /usr
然后我不得不拔掉电源线,因为一切都不再起作用了。
- 修复 Raspberry Pi
最后,我将 Rpi 的 SD 卡插入计算机,安装并使用以下方法修复它
cp -rpvxH rsync_mount/* rpi_mount/
卸载 SD 卡并启动 Rpi 后,一切恢复正常。
法齐特
部分rsync
工作正常,但我不知道它是否适用于全新安装。也许内核不适合你复制回服务器的内容。
我将再试一次,在 rsyncing 后安装较新的内核版本。
答案2
你真正想问的是:对我的服务器来说什么是好的备份策略这取决于当闪电击中你的服务器时你想做什么......
对我来说,快速恢复是我想要的,所以我要做的是:
我有一个额外的小的、旧的、便宜的磁盘,其中包含服务器上的 2 个附加分区:一个 500GB 的 ext4 分区,包含系统备份;一个 500MB 的 FAT32 启动、诊断分区(是的,兆字节,有点太大了!),包含 CloneZilla。
每当我要对服务器进行一些重大更改或每当我觉得我可以承受 5 分钟的停机时间时,我都会将服务器启动到 FAT32 CloneZilla 分区,然后在 5 分钟内备份我的根分区(不包括“/home”)!(使用磁盘到映像)
我只需要恢复一次图像,它就会像魔法一样工作:服务器被设置回 1 个月(因为我不确定我是什么时候引入这个问题的),安装了所有的更新,然后我必须重新做上个月的工作,基本上是安装一些实用程序。
除此之外,我rsync
的/home
以及系统映像备份分区每周星期一凌晨 03:00(此时间为服务器使用率最低的时间)。
如果这对您来说足够好,请使用相同的策略。