사용자가 USB 포트에 연결하는 모든 키보드와 마우스를 비활성화하고 싶습니다(ID, 공급업체, 이름...). 이 글을 찾았어요http://wpkg.org/Disable_/_enable_keyboard_and_mouse_in_Linux그러나 그것은 내가 원하는 것이 아닙니다. USB 장치(키보드, 마우스, 무선 키보드/마우스)를 비활성화하고 USB 포트를 USB 대용량 저장소에만 사용하도록 만드는 방법을 아는 사람이 있습니까?
답변1
usbhid.conf
호출된 파일을 만들고 /etc/modprobe.d/
다음 줄을 추가합니다.
blacklist usbhid
그런 다음 다음 명령을 사용하여 initramfs를 다시 생성합니다.
update-initramfs -u -k $(uname -r)
또는 설치된 모든 커널 버전에 대해 initramfs를 다시 빌드하려는 경우:
update-initramfs -u -k all
다시 시작하면 usbhid.ko
로드되지 않습니다. 이는 /etc/modprobe.d/usbhid.conf
파일을 삭제하거나 파일에 포함된 행을 주석 처리할 때까지 설치한 모든 새 커널 버전에서 유지됩니다 blacklist
(물론 initramfs를 다시 생성해야 함).
그런데 어떤 이유로든 콘솔에서 작동하기 위해 연결된 USB kbd/마우스가 필요한 경우 ssh
다음을 입력하고 실행할 수 있습니다(루트로):
insmod /lib/modules/$(uname -r)/kernel/drivers/hid/usbhid/usbhid.ko
그리고 키보드/마우스를 USB 소켓에 연결하세요. 와 달리 modprobe
이 insmod
명령은 (include blacklist
및 모듈 옵션) 의 모든 항목을 무시합니다 /etc/modprobe.d/
.
rmmod usbhid
더 이상 kbd/mouse를 사용할 필요가 없을 때 이를 잊지 마십시오.
답변2
해당 드라이버를 간단히 제거할 수 있습니다.
sudo rm /lib/modules/<your_kernel>/kernel/drivers/hid/usbhid/*
(실제로 다시 원할 경우를 대비하여 이 드라이버를 다른 곳으로 옮겨야 하지만 아이디어를 얻으시기 바랍니다.)