일반화하다
udev
특정 마우스가 연결되었을 때의 속도를 조정하는 규칙을 사용 하고 싶습니다 . 규칙을 실행할 수 있지만 udev
마우스 속도를 성공적으로 조정할 수 없습니다. 그러나 명령을 수동으로 실행하면 작동합니다. 내가 뭘 잘못했나요?
99-mouse-connect.rules
파일 입력/etc/udev/rules.d/
ACTION=="add", \
SUBSYSTEM=="usb", \
ATTRS{idVendor}=="062a", \
ATTRS{idProduct}=="5918", \
ENV{DISPLAY}=":0", \
ENV{XAUTHORITY}="/run/user/1000/gdm/Xauthority", \
RUN+="/usr/bin/notify-send 'Adjusting MOSART mouse speed...'", \
RUN+="/usr/bin/xinput --list | /usr/bin/sed -n -E '/MOSART Semi\. 2\.4G Keyboard Mouse\s*id=.*pointer/s/.*=([0-9]+).*/\1/p' | /usr/bin/xargs -I {} /usr/bin/xinput set-prop {} 'libinput Accel Speed' -1"
시스템 알림도 표시됩니다. 또한 마지막 명령을 수동으로 실행하면 작동합니다. udev 규칙에서 작동하지 않는 이유는 무엇입니까?
내가 시도한 것
명령을 별도의 스크립트에 넣고 udev 규칙의 마지막 네 줄을 다음으로 바꾸려고 했습니다.
RUN+="path/to/script.sh"
어디
#!/bin/bash export DISPLAY=:0 export XAUTHORITY=/run/user/1000/gdm/Xauthority /usr/bin/notify-send 'Adjusting MOSART mouse speed...' /usr/bin/xinput --list | /usr/bin/sed -n -E '/MOSART Semi\. 2\.4G Keyboard Mouse\s*id=.*pointer/s/.*=([0-9]+).*/\1/p' | /usr/bin/xargs -I {} /usr/bin/xinput set-prop {} 'libinput Accel Speed' -1
파일의 내용입니다. 하지만 그것도 작동하지 않습니다.
나도
ACTION=="bind"
시도했다여기에 제안됨