마우스와 키보드를 비활성화 하는 데 사용할 수 있다는 것을 알고 있습니다 xinput
. 일반적으로 마우스와 키보드를 연결할 때마다 다음 세 가지 명령을 입력합니다.
xinput float 'AT Translated Set 2 keyboard'
xinput float 'Ideapad extra buttons'
xinput float 'SynPS Synaptics Touchpad'
나는 보통 이름 대신 id 값을 사용하는데, 당신은 내 표류를 이해합니다.
그렇다면 키보드가 연결될 때마다 내 컴퓨터가 위의 두 명령을 실행하고, 마우스가 연결되면 내 컴퓨터가 아래 명령을 실행하도록 이를 자동화할 수 있는 방법이 있습니까? reconnect 를 실행하여 마우스/키보드를 분리할 때 장치를 다시 활성화하는 것과 같습니다 xinput
.
답변1
나는 이것을 해본 적이 없지만 다른 SE 사이트를 기반으로 도움을 주려고 노력할 것입니다.
기본적으로 팔로우이 답변udev 파일을 수정하고 스크립트를 제공하여 시작할 수 있어야 합니다.
/etc/udev/rules.d/00-usb-keyboard.rules
ATTRS{idVendor}=="09da", ATTRS{idProduct}=="0260", OWNER="YOURUSERNAME"
ACTION=="add", RUN+="/home/YOURUSERNAME/.bin/usb-keyboard-in_udev"
ACTION=="remove", RUN+="/home/YOURUSERNAME/.bin/usb-keyboard-out_udev"
/home/사용자 이름/.bin/usb-keyboard-in_udev
#!/bin/bash
/home/YOURUSERNAME/.bin/usb-keyboard-in &
#!/bin/bash
sleep 1
DISPLAY=":0.0"
HOME=/home/YOURUSERNAME/
XAUTHORITY=$HOME/.Xauthority
export DISPLAY XAUTHORITY HOME
YOUR_COMMAND_HERE
/home/사용자 이름/.bin/usb-keyboard-out_udev
#!/bin/bash
/home/YOURUSERNAME/.bin/usb-keyboard-out &
/home/사용자 이름/.bin/usb-keyboard-out
#!/bin/bash
sleep 1
DISPLAY=":0.0"
HOME=/home/YOURUSERNAME/
XAUTHORITY=$HOME/.Xauthority
export DISPLAY XAUTHORITY HOME
YOUR_COMMAND_HERE
이러한 모든 스크립트에는 실행 권한( )이 있어야 합니다 chmod +x
.
답변을 바탕으로:
USB 키보드 공급업체 및 제품 ID는 lsusb 명령의 출력에 따라 변경되어야 합니다(예를 들어, USB 키보드의 lsusb 출력은 Bus 001 Device 006: ID 09da:0260 A4 Tech Co., Ltd).