장치가 이미 연결된 경우 udevignore_device가 작동하지 않습니다.

StackOverflow https://stackoverflow.com/questions/1430340

  •  07-07-2019
  •  | 
  •  

문제

나는 이것이 이 질문을하기에 적합한 사이트인지 확신할 수 없었지만 이것은 일종의 프로그래밍 질문이고 SO 군중이 세 사이트 중 가장 Linux 지향적이라고 생각했기 때문에 여기에 넣었습니다.

어쨌든, 마치 사용자가 물리적으로 연결을 끊은 것처럼 소프트웨어 측면에서 장치 연결 해제를 시뮬레이션하는 방법을 찾으려고 합니다.지금까지 /etc/udev/rules.d에 10-nano.rules라는 udev 규칙을 만들었습니다.

SYSFS{idVendor}=="05ac", OPTIONS+="ignore_device"

이 규칙은 장치 무시에 적합하지만 연결을 끊었다가 다시 연결한 후에만 가능합니다.하지만 내가 원하는 것은 규칙을 작성한 다음 연결이 끊어진 것처럼 장치를 무시하는 것입니다.sudo를 사용하거나 사용하지 않고 "udevadm 트리거"를 시도했지만 어떤 이유로 장치가 연결되어 있는 동안 이 규칙을 적용할 수 없습니다.어떤 제안이 있으십니까?

그건 그렇고, 10-nano.rules를 제거한 다음 "sudo udevadm Trigger"를 실행하여 무시된 장치를 다시 연결할 수 있지만 위에서 말한 것처럼 그 반대는 아닙니다.(어떤 이유에서인지 해당 명령을 실행하면 시스템 시간과 인터넷이 엉망이 됩니다)

도움이 되었습니까?

해결책

당신은 노력했나요? rmmod 장치를 제어하는 ​​모듈?

다음을 사용하여 제거 이벤트를 시뮬레이션할 수도 있습니다. udevadm test, 체육:

sudo udevadm test --action="remove" <devpath>

개발자 경로가 어떻게 살펴보고 있는지 확인할 수 있습니다. udevadm monitor 기기를 물리적으로 연결하거나 제거할 때, 체크인할 때 /sys/<devpath>.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top