Linux (Ubuntu) запускает скрипт при подключении через USB
У меня есть сервер Ubuntu с внешним жестким диском USB.
Я просто хочу запускать скрипт всякий раз, когда подключен жесткий диск.
Каков был бы оптимальный способ достичь этого?
2 ответа
Вы можете добавить правило udev для вашего конкретного устройства - для этого создайте файл с именем /etc/udev/010custom.rules (или что-то подобное; просто убедитесь, что он численно наименьший в каталоге). Содержимое файлов будет:
BUS="usb", SYSFS{idVendor}="**IDVENDOR**", SYSFS{product}="**PRODUCT**", NAME="usb/%k", SYMLINK="DEVICE"
RUN+="/path/to/your/script"
Замените выделенные ключевые слова значениями для вашего устройства из lsusb
:
Шина 005 Устройство 002: ID 0b05: b700 ASUSTek Computer, Inc. Broadcom Bluetooth 2.1
Первое поле, выделенное жирным шрифтом, это IDVENDOR, а второе поле, выделенное жирным шрифтом, - PRODUCT.
Что касается УСТРОЙСТВА, вы можете определить это самостоятельно; он создаст /dev/ node, который является символической ссылкой на любое устройство, которое соответствует вышеуказанным критериям (поэтому, если вы поместите foobar в качестве SYMLINK, udev создаст /dev/foobar, который является символической ссылкой на ваше USB-устройство).
Примечание: я сам не пробовал, поскольку у меня нет съемных USB-устройств, но это должно работать. Если у вас есть какие-либо проблемы, проверьте документацию udev для правил.
Вполне вероятно, что вы захотите посмотреть на udev
, К сожалению, вы только что стали свидетелями того, как я исчерпал мои знания об этом.