/sys/bus
경로를 사용할 수 있을 때 systemd 장치를 실행할 수 있는 방법이 있습니까 ? 임베디드 장치에서 다음 명령을 자동화하려고 합니다.
echo "on" > /sys/bus/usb/devices/usb1/power/control
그러나 로그를 보면 오류가 발생합니다. 출력은 다음과 같습니다.
can't create /sys/bus/usb/devices/usb1/power/control: nonexistent directory
또한 기존 USB 장치를 검색해 보았지만 systemctl --all --full -t device
.
답변1
귀하가 찾고 있는 서비스는 입니다 udev
. 이 서비스는 장치 변경에 대한 커널 이벤트를 수신하고 이벤트에 대해 특정 조건이 충족될 때 작업을 수행할 수 있는 규칙 엔진을 갖추고 있습니다.아름다운 매뉴얼.
/etc/udev/
디렉토리에서 몇 가지 예를 찾을 수 있을 것입니다 . 당신은 찾고있을 수도 있습니다
SUBSYSTEM=="usb", ACTION=="add"
다음과 같이 끝내고 싶을 수도 있습니다.
RUN+="echo "on" > /sys/bus/usb/devices/usb1/power/control"
일부 변수를 사용할 수 있으므로 RUN
전체를 하드코딩할 필요가 없습니다.