Нужно правило udev для создания символической ссылки на USB-накопитель, когда оно подключено

Мой диск usb имеет идентификатор 580000911. Он устанавливается как /media/ubuntu/580000911. Я хотел бы, чтобы правило udev создавало символическую ссылку на него, как /media/ubuntu/USBDRIVE. Я создал этот файл правила udev:

ACTION=="add", ENV{ID_BUS}=="usb", ENV{ID_FS_LABEL}=="58??????", \ RUN+="rm /media/ubuntu/USBDRIVE", \ RUN+="ln -s /media/ubuntu/$env{ID_FS_LABEL} /media/ubuntu/USBDRIVE" ACTION=="remove", ENV{ID_BUS}=="usb", ENV{ID_FS_LABEL}=="58??????", \ RUN+="rm /media/ubuntu/USBDRIVE"

Он не работает. Я не знаю, нахожусь ли я на правильном пути или нет. Любые предложения?

2
задан 1 September 2017 в 00:17

3 ответа

Это работает:

ACTION=="add", ENV{ID_BUS}=="usb", ENV{ID_FS_LABEL}=="58??????", RUN+="/bin/rm /media/ubuntu/USB", RUN+="/bin/ln -s /media/ubuntu/$env{ID_FS_LABEL} /media/ubuntu/USB"
ACTION=="remove", ENV{ID_BUS}=="usb", ENV{ID_FS_LABEL}=="58??????", RUN+="/bin/rm /media/ubuntu/USB"

По-видимому, мы должны использовать полное имя пути для любых команд, которые мы хотим запустить.

3
ответ дан 22 May 2018 в 18:53
  • 1
    Не могли бы вы согласиться с этим ответом, как на то, что сработало для вас, так что другие пользователи могут легко найти это решение. См. tour – user.dz 17 September 2017 в 12:02

Это работает:

ACTION=="add", ENV{ID_BUS}=="usb", ENV{ID_FS_LABEL}=="58??????", RUN+="/bin/rm /media/ubuntu/USB", RUN+="/bin/ln -s /media/ubuntu/$env{ID_FS_LABEL} /media/ubuntu/USB" ACTION=="remove", ENV{ID_BUS}=="usb", ENV{ID_FS_LABEL}=="58??????", RUN+="/bin/rm /media/ubuntu/USB"

По-видимому, мы должны использовать полное имя пути для любых команд, которые мы хотим запустить.

3
ответ дан 18 July 2018 в 07:36

Это работает:

ACTION=="add", ENV{ID_BUS}=="usb", ENV{ID_FS_LABEL}=="58??????", RUN+="/bin/rm /media/ubuntu/USB", RUN+="/bin/ln -s /media/ubuntu/$env{ID_FS_LABEL} /media/ubuntu/USB" ACTION=="remove", ENV{ID_BUS}=="usb", ENV{ID_FS_LABEL}=="58??????", RUN+="/bin/rm /media/ubuntu/USB"

По-видимому, мы должны использовать полное имя пути для любых команд, которые мы хотим запустить.

3
ответ дан 24 July 2018 в 18:50

Другие вопросы по тегам:

Похожие вопросы: