背景
客户需要对外部驱动器的自动备份解决方案(每周在异地进行)。我通常会建议rsnapshot(或推出一个自定义rsync
脚本),但是这个问题要涉及一些。
基于Arch Linux的系统没有头绪,因此该解决方案必须完全自动化,无需用户干预。
理想的情况如下:
- 用户插入USB硬盘驱动器
- 进行完整的增量备份
- 硬盘驱动器已卸载
- 通知用户可以拔出硬盘驱动器
提案
我提出的解决方案包括:
- 一个
udev
规则自动安装驱动 备份开始于:
- 相同的
udev
规则也会触发rsnapshot
脚本 - 一个inotify的 创建事件检测到新的安装点和触发器
rsnapshot
- 相同的
后
rsnapshot
退出,umount
是跑在驱动器上可以删除通知硬盘的可能方法:
- CD驱动器打开
- 通过PC扬声器播放声音
如果任何时候发生错误,请向用户发送电子邮件并卸载驱动器。
问题
- 我的建议似乎可行,但有明显的缺陷吗?我如何使其坚固?
- 为了安全起见,如何确保插入的硬盘是用户的硬盘?
ssh
钥匙?驱动器标签? - 是否有现有的(Linux)解决方案包含此内容?