USB 허브가 제거되면 시스템을 중지하는 udev 규칙이 있습니다.
SUBSYSTEM=="usb", ACTION=="remove", ENV{ID_VENDOR_ID}="050d", ENV{ID_MODEL_ID}="0237", RUN+="/sbin/halt"
안타깝게도 이는 허브에 연결된 장치가 제거될 때도 발생합니다. 장치를 연결하고 뺄 때의 출력을 살펴본 결과 udevadm monitor --udev --property
, 제거된 허브에 고유하고 격리할 수 있는 필드 집합이 없습니다.
연결된 장치가 아닌 허브에 대해서만 삭제 이벤트를 얻을 수 있는 방법을 아는 사람이 있습니까?
답변1
누가 "==" 대신 "="를 사용했는지 추측해 보세요. 이는 규칙이 모든 삭제 이벤트와 일치한다는 의미입니까? 이런...
두 이벤트 세트 사이에는 겹치는 부분이 많지만 이 센터의 라인은 다음과 같습니다.
ACTION=="remove", ENV{PRODUCT}=="50d/237/100", RUN+="/sbin/shutdown -h now"