Задумка немного другая - не винт привязать, а систему научить распознавать устройства и обрабатывать их. То есть в идеале устройство куда бекапимся - любое и совершенно не важно что на нем лежит.
К тому же ntbackup значительно уступает по функциональности sbackup.
хм, ко мне в гости ходит много народу, для них есть гостевой ноут
но вот если я буду юзать подобную шнягу, то кто-то может просто унести данные и я об этом знать не буду
вопрос безопастности, думаю ход мыслей ты понял
в целом реализация супер
Это не совсем автозапуск. Этот скрипт выполняется если устройство подходит под описанные условия, важно что он выполняется с привилегиями root'а в отличие от автозапуска который выполняется от текущего пользователя. Таким образом можно сделать более полный бекап т.к. прав доступа хватит на все.
Может быть вместо idVendor/idProduct, которые по идее одинаковые для всех хардов одной модели, стоит попробовать прязаться к серийнику или к UUID раздела? А то действительно, кто-нибудь вставит такой же винт и унесет бэкап.
Всем спасибо за плюсы. Перенес топик в Убунтариум. Думаю ему там самое место.
Есть продолжение истории. Порой случается (как у меня), что винт который используется для бекапа параллельно используется для хранения других данных. В таком случае бекапиться при каждом подключении - не всегда полезно, иногда хочется, чтобы перед началом бекапа система спросила а надо ли сейчас это делать и если ей не ответили начать потихоньку свое черное дело в фоне...
Для решения этой проблемы я написал немножко кода на питоне. Пришлось обойти пару узких мест (связанных с тем, что запускается это от root'а).
раз автор так искушен в вопросах бекапа, у меня есть реквест на следующий хабратопик: а как делать автоматический бекап на smb шару при появлении связи до неё?
помогло вот это:
BUS=="usb", SYSFS{idVendor}=="04cf", SYSFS{idProduct}=="8818", ATTRS{serial}=="100", KERNEL=="sd?1", NAME="backup", GROUP="storage"
только все равно пытается примонтировать в /media/backup и выходит ошибка что нету директории, как бы это отключить :)
То же - это что? Просто функциональность rsync есть в sbackup. Чтобы бэкапиться на удаленный сервер надо его настройки править. Но смысла я тут большого не вижу... Фишка была чтобы обработать событие подключения конкретного устройства и бэкапнуться на него... А в сеть можно и без всего этого. Тем же кроном как советуют выше проверить доступность сервака и запустить скрипт. Разве что в два места бэкапиться при подключении... на винт и в сеть.
Я хочу немножко для другого это приспособить. Идеальный вариант был бы таков — если мой пользователь залогинен, то копируем файлы, если нет то не копируем.
Кстати, я вчера пробовал провернуть хитрость с udev когда девайс разбит на два раздела. Оказалось, у них вывод udevinfo почти идентичен, за ислючением размера и некоторых параметров, которые меняются при каждом подключении.
Предупреждение для тех, кто будет делать это на убунту 9.04. сегодня пару часов помучался пока мне дошло, что в 9.04 правила Udev переехали из /ect/udev/rules.d в /lib/udev/rules.d/. а в реадми из /etc/udev/rules.d нетёб этом ни слова.
Инкрементный Backup при подключении USB HDD в Ubuntu