правило udev не работает


2

Я пытаюсь написать правило udev для плагина USB-накопителя. Я хочу сначала смонтировать его, /mediaа затем запустить скрипт на /usr/local/bin/script.sh. Когда я вставляю USB, он даже не монтирует устройство с этим правилом. Однако, если я вручную ввожу деталь в RUN в терминал, она монтирует и выполняет скрипт.

Файл правил гласит:

ACTION=="add", KERNEL=="sd[a-z]*", RUN+="/bin/mount -t auto /dev/%k /media/ && /usr/local/bin/script.sh"

Это правильный способ выполнить две команды в разделе RUN правила?

Ответы:


2

Это не правильный способ выполнить 2 команды. Мне тоже не нравится соответствующая часть вашего правила, но я собираюсь оставить ее такой, как для этого примера. Вы могли бы сделать:

ACTION=="add", KERNEL=="sd[a-z]*", RUN+="/bin/sh -c '/bin/mount -t auto /dev/%k /media/ && /usr/local/bin/script.sh'"

или же

ACTION=="add", KERNEL=="sd[a-z]*", RUN+="/bin/mount -t auto /dev/%k /media/", RUN+="/usr/local/bin/script.sh"

но в вашем случае почему бы вам просто не переместить mountкоманду внутри скрипта?

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.