(우분투 16.04) .rules 파일 /etc/udev/rules.d/가 작동하지 않는 것 같습니다.

(우분투 16.04) .rules 파일 /etc/udev/rules.d/가 작동하지 않는 것 같습니다.

내가 달성할 계획:

특정 SD 카드를 삽입하면 자동으로 스크립트를 실행하려고 합니다.

사실:

ㅏ. 내가 실행하려는 스크립트는 다음 스크립트가 포함된 /home/vivek/Desktop/Message.sh에 있습니다. 해당 권한은 실행 파일로 설정됩니다.

#!/bin/sh
echo "Card is now inserted"

b. /etc/udev/rules.d에서 내 규칙 파일 이름은 10-local.rules이며 다음 규칙을 포함합니다.

ENV{ID_FS_UUID}=="C097-C12A", ACTION == "add", RUN+="/bin/sh /home/vivek/Desktop/Message.sh"

씨. udevadm이 내 SD 카드의 ENV{ID_FS_UUID}를 다음과 같이 감지했습니다.

여기에 이미지 설명을 입력하세요.

d. 아래 그림과 같이 내 /etc/udev/rules.d/에 있는 규칙 파일이 처리 중이며 "udevadm test"에 의해 발견되었습니다.

여기에 이미지 설명을 입력하세요.

질문: SD카드를 삽입하니 잘 설치가 되었습니다. 하지만 내 스크립트는 절대 실행되지 않습니다! 도움을 주시면 감사하겠습니다.

건배

답변1

문제는 규칙 파일이 10-local.rules실행 목록에서 너무 일찍 나타나는 것일 수 있다고 생각합니다. 시스템에서 요구하는 경우 이름을 바꾸고 95-local.rules규칙을 다시 로드하면 더 많은 성공을 거둘 수 있습니다. sudo udevadm control --reloadudev에는 출력이 없으므로 echo스크립트의 은 파일을 가리켜야 합니다.

udevadm info처음에 표시된 값은 이전 규칙에 의해 설정된 속성 E:일 수 있으므로 규칙을 가능한 한 늦게 배치해야 합니다.ENV{}

관련 정보