Linux 컴퓨터에서 장치를 연결할 때 스크립트를 실행하고 싶습니다. 예를 들어, xinput
마우스 나 특정 드라이브의 백업 스크립트에서 실행하십시오 .
나는 가장 최근 여기 와 여기 에 이것에 관한 많은 기사를 보았습니다 . 그러나 나는 그것을 작동시킬 수 없다.
다음은 적어도 어떤 종류의 응답을 얻으려는 간단한 예입니다.
/etc/udev/rules.d/test.rules
#KERNEL=="sd*", ATTRS{vendor}=="*", ATTRS{model}=="*", ATTRS{serial}=="*", RUN+="/usr/local/bin/test.sh"
#KERNEL=="sd*", ACTION=="add", "SUBSYSTEM=="usb", ATTRS{model}=="My Book 1140 ", ATTRS{serial}=="0841752394756103457194857249", RUN+="/usr/local/bin/test.sh"
#ACTION=="add", "SUBSYSTEM=="usb", RUN+="/usr/local/bin/test.sh"
#KERNEL=="sd*", ACTION=={add}, RUN+="/usr/local/bin/test.sh"
KERNEL=="sd*", RUN+="/usr/local/bin/test.sh"
KERNEL=="*", RUN+="/usr/local/bin/test.sh"
/usr/local/bin/test.sh
#!/usr/bin/env bash
echo touched >> /var/log/test.log
if [ "${ACTION}" = "add" ] && [ -f "${DEVICE}" ]
then
echo ${DEVICE} >> /var/log/test.log
fi
규칙 폴더가 감시되며 inotify
즉시 활성화되어야합니다. 키보드, 마우스, 태블릿, 메모리 스틱 및 USB 드라이브를 계속 다시 연결하지만 아무것도 없습니다. 로그 파일을 건드리지 않았습니다.
이제 무언가가 작동하고 있다는 것을 아는 가장 간단한 방법은 무엇입니까? 작동하지 않는 것보다 작동하는 것이 더 쉽습니다.
3.5.0-23-generic
입니다.
udevadm trigger
새 규칙을 적용하기 위해 장치 를 실행 하거나 연결 했습니까 ?