/var/www/html/configWWW
USB가 Raspberry에 연결되면 자동으로 스크립트를 실행해야 합니다.
UDEV 규칙 -/etc/udev/rules.d/myRule.rules
ACTION=="add", SUBSYSTEM=="usb", ATTR{idVendor}=="****",
ATTR{idProduct}=="****", RUN+="/var/www/html/configWWW"
내 스크립트 -/var/www/html/configWWW
#!/bin/bash
file="/media/pi/USB/SymSif.xml"
if [ -f "$file" ]
then
(
echo "it works: $(date)" >> /home/pi/Desktop/test.txt
)
else
(
echo "it does not works: $(date)" >> /home/pi/Desktop/test.txt
)
fi
반면에 bash 에서 스크립트를 실행하면 /var/www/html/configWWW
작동합니다!
내 udev
규칙이 내 bash 명령처럼 작동하지 않는 이유는 무엇입니까?
답변1
후속 udev 이벤트로 인해 스크립트가 중단되는 비슷한 문제가 있었습니다. 해결책은 백그라운드에서 시작하는 것입니다.
ACTION=="add", KERNEL=="sd[a-z][0-9]*", RUN+="/sbin/start-stop-daemon -Sqb -x /path/to/myScript.py"