有人可以帮助我为以下操作创建工作 udev 规则(Debian 11)吗:
- USB 磁盘(2 TB 或更大)具有给定的卷 ID,例如“abc”。
- 当 USB 磁盘连接到 Debian 11 主机的 USB 端口之一时,应应用 udev 规则(即告诉操作系统 USB 设备“可用”以供稍后安装(请参阅下面的注释 2)。
笔记:
- 目的是通过 rsync 或 rdiff-backup 将驻留在 Windows 10 网络共享(由 Debian 服务器上的 Samba 提供)中的数据备份到 USB 磁盘。
- 将有一个 bash 脚本,该脚本将作为执行备份的夜间 cron 作业启动。该脚本将挂载 USB 磁盘。
- 备份完成后,USB 磁盘将被卸载并在第二天晚上通过 cron 作业重新安装。
- 不应有任何用户交互(除非手动分离物理 USB 磁盘并将另一个 USB 磁盘连接到服务器)。
- 备份脚本具有关于成功和/或错误的协议的规定。
附加问题:
- 您推荐哪种备份工具:rsync 或 rdiff-backup?
- 您推荐 USB 磁盘使用哪种文件系统?理想情况下,应该可以通过 Windows 工作站轻松地将文件和目录恢复到网络共享,但这不是强制性的。恢复也可以在 Linux 上完成。
- 您推荐“ionice”作为备份程序吗?哪些选项?
答案1
USB 磁盘(2 TB 或更大)具有给定的卷 ID,例如“abc”。
当 USB 磁盘连接到 Debian 11 主机的 USB 端口之一时,应应用 udev 规则(即告诉操作系统 USB 设备“可用”以供稍后安装(请参阅下面的注释 2)。
将有一个 bash 脚本,该脚本将作为执行备份的夜间 cron 作业启动。该脚本将挂载 USB 磁盘。
为此,您不需要特殊的 udev 规则。如果磁盘(其上的文件系统)具有标签“abc”,则/dev/disk/by-label/abc
连接后将创建符号链接,以便您可以在 cron bash 脚本中使用此路径来挂载设备并执行备份。您还可以使用标签仅安装mount LABEL="abc" <mountpoint>
,mount
将解析路径本身。