Есть USB винт Transcend StoreJet 25M3. На нем есть кнопка. Как и чем отловить нажатие этой кнопки дабы по ее нажатию запустить в системе внешний скрипт?Как пробовал:
udevadm --monitor - фиксирует подключение-отключение устройства, но не нажатие кнопки.
mount -t debugfs none_debugs /sys/kernel/debug;
modprobe usbmon
и затем wireshark'ом по шине-устройству - нажатие кнопки не фиксируетсяDebian
Я так думаю что тут драйвер должен кнопку понимать, с драйвером нужно работать ...
> Я так думаю что тут драйвер должен кнопку понимать, с драйвером нужно
> работать ...Ммм, как я понимаю, наверное неправильно, но все же: usbmon должен фиксировать _все_ события на отслеживаемой шине. И их wireshark (или еще какой сниффер USB) отловить должен. Так и есть: прием-передача данных фиксируется при работе с винтом, подключении-отключении его.
Ведь по сути, нажатие кнопки - передача определенной информации по шине от винта на комп. Событие. Иначе как тогда работает One-Touch Backup для данных винтов под Windows?
Вот, хочется понять...
В общем, дело обстоит так: софт для винта, который понимает кнопку на нем (One-touch Backup Utility), постоянно опрашивает его по определенным адресам и тогда нажатие кнопки на диске фиксируется как событие шины и ловится usbmon.mount -t debugfs none_debugs /sys/kernel/debug
modprobe usbmon
lsusb # Покажет номер шины USB-девайса
cat /sys/kernel/debug/usb/usbmon/Nu # N - номер шины или 0 если все шины
> софт для винта, который понимает кнопку на нем (One-touch Backup Utility), постоянно опрашивает его по определенным адресама можно подробнее?
> а можно подробнее?К сожалению нет - тема была "временно" оставлена "на потом" и все, в итоге, травой поросло...