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

Я пытаюсь написать правило 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 правила?


person tigerden    schedule 26.01.2014    source источник


Ответы (1)


/bin/mount не принимает && в качестве аргумента. Если вы хотите, чтобы цепочка оболочки выполнялась, вы должны передать ее оболочке.

RUN+="/bin/sh -c '...'"
person Ignacio Vazquez-Abrams    schedule 26.01.2014
comment
Вы имели в виду что-то вроде RUN+="/bin/sh -c 'xdg-open /mnt/Passport1T && /bin/mount /dev/usbdevices/Passport1T /mnt/Passport1T'"? Кажется, это не работает для меня. Ничего особенного в системном журнале для отладки. Любая идея? - person PCoder; 18.04.2014
comment
Кроме прекращения попыток запуска пользовательских программ в системном контексте? - person Ignacio Vazquez-Abrams; 18.04.2014