Вставляю флешку и ничего не происходит, папка не создается и соответственно в нее не монтируется. Что я не так делаю?
KERNEL==“sd*” - пробовал указывать полностью, результата тот же.
Сложно сказать.
Во-первых - я вам подсказал как искать, но вы не указали конкретную ссылку на страницу, с которой взяли эти строки
Во-вторых - неплохо-бы показать системные логи в тот момент, когда вы втыкаете флешку @
@
так что приходится включить телепатию…
… PROGRAM=="/lib/udev/vol_id -uuid …
не знаю как у вас, но у меня такого файла как vol_id в системе нет. Вообще.
И equery b vol_id мне это подтвердил.
Полагаю, что и у вас его тоже нет
Я бы либо искал родные для udev методы узнать uuid раздела, либо использовал бы подобный код (как он поведет себя в udev я не знаю, но из консоли работает прекрасно): … PROGRAM=="blkid -o export %N| sed -nre 's/^UUID=(.+)$/\1/p'" … @
@
Также я бы не пихал все действия в udev, а написал бы универсальный скрипт исполняющий все необходимые действия для бекапа, и дергал бы этот скрипт с нужными параметрами UDEV-ом при втыкании флешки.
Кстати, если у вас стоит десктопная версия кальки, то, скорее всего у вас уже установлен пакет udisks ,который уже выполняет монтирование флешек.
Может есть смысл не писать свои обработчики с нуля, а попробовать сделать расширение для него? (это не руководство к действию, а лишь “мысли вслух”, насколько оно будет легче - я не знаю) @
@
Ну и самый главный совет при отладке подобных вещей - всегда смотрите логи.
Использовал команду которая выводит список атрибутов устройства udevadm info -a -n имя_устройства
В списке никакого упоминания про UUID нету, я так понял его никогда там и не было.
Но нашел интересную строчку ATTRS{serial}=="19015202037236980014"
Опробовал на 4 флешках и двух внешних жестких дисках, номера не совпадают.
Если я правильно понял, то они уникальные для всех устройств. Если это не так поправьте.
В результате создал правило (Для тестирования)
SUBSYSTEM"block", KERNEL"sd*", ACTION"add", NAME="%k", GROUP=“disk”, ATTRS{serial}“11083003004004”, RUN+="/bin/mkdir -p /mnt/8Gb"
SUBSYSTEM"block", KERNEL"sd*", ACTION"add", NAME="%k", GROUP=“disk”, ATTRS{serial}“19015202037236980014”, RUN+="/bin/mkdir -p /mnt/4Gb"
Прекрасно срабатывает.
Буду экспериментировать дальше.
Теперь понял что проблема не решена, как мне монтировать флешку в нужный каталог…