Может ли кто-нибудь помочь мне в создании рабочих правил udev (Debian 11) для следующих действий:
- USB-диск (объемом 2 ТБ или больше) имеет идентификатор тома, например «abc».
- Когда USB-диск подключен к одному из USB-портов хоста Debian 11, должно применяться правило udev (т. е. сообщающее операционной системе, что USB-устройство «доступно» для последующего монтирования (см. примечание 2 ниже).
Примечания:
- Цель состоит в том, чтобы создать резервную копию данных, находящихся в сетевых папках Windows 10 (предоставляемых Samba на сервере Debian), на USB-диске с помощью rsync или rdiff-backup.
- Будет скрипт bash, который будет запускаться как ночное задание cron, выполняющее резервное копирование. Скрипт будет монтировать USB-диск.
- После завершения резервного копирования USB-диск будет отключен и повторно подключен в следующую ночь с помощью задания cron.
- Не должно быть НИКАКОГО взаимодействия с пользователем (за исключением ручного отсоединения физического USB-диска и подключения другого USB-диска к серверу).
- Скрипт резервного копирования содержит положения для протокола об успешном выполнении и/или ошибках.
Дополнительный вопрос:
- Какой инструмент вы рекомендуете для резервного копирования: rsync или rdiff-backup?
- Какую файловую систему вы рекомендуете для USB-диска? В идеале должно быть возможно легко восстановить файлы и каталоги через рабочие станции Windows обратно в сетевые ресурсы, но это НЕ обязательно. Восстановление также может быть выполнено на Linux.
- Рекомендуете ли вы „ionice“ для процедуры резервного копирования? Какие варианты?
решение1
USB-диск (объемом 2 ТБ или больше) имеет идентификатор тома, например «abc».
Когда USB-диск подключен к одному из USB-портов хоста Debian 11, должно применяться правило udev (т. е. сообщающее операционной системе, что USB-устройство «доступно» для последующего монтирования (см. примечание 2 ниже).
Будет скрипт bash, который будет запускаться как ночное задание cron, выполняющее резервное копирование. Скрипт будет монтировать USB-диск.
Для этого вам не нужно специальное правило udev. Если диск (файловая система на нем) имеет метку "abc", /dev/disk/by-label/abc
после его подключения будет создана символическая ссылка, поэтому вы можете использовать этот путь в скрипте cron bash для монтирования устройства и выполнения резервного копирования. Вы также можете монтировать только с меткой, используя mount LABEL="abc" <mountpoint>
, mount
разрешит сам путь.