Linux를 부팅할 때 특정 USB 포트나 장치의 로딩을 비활성화할 수 있습니까?

Linux를 부팅할 때 특정 USB 포트나 장치의 로딩을 비활성화할 수 있습니까?

내가 설명했듯이이 문제그리고답글 게시, 내부 USB 포트를 통해 연결된 웹캠을 로드하는 데 문제가 있어서 Linux 부팅 시 로드를 비활성화하는 것을 고려 중입니다.

$ cat /sys/bus/usb/devices/1-1.5/product
Integrated_Webcam_HD

여기 몇 가지가 있습니다/sys/bus/usb/devices/1-1.5/power/조사에 유용할 수 있는 위 장치의 구성:

$ for file in /sys/bus/usb/devices/1-1.5/power/*;do echo "$(basename $file) :" | tr -d '\n'; cat $file; done
active_duration :3404
async :enabled
autosuspend :2
autosuspend_delay_ms :2000
connected_duration :1541108
control :auto
level :auto
persist :1
runtime_active_kids :0
runtime_active_time :3080
runtime_enabled :enabled
runtime_status :suspended
runtime_suspended_time :1537788
runtime_usage :0

커널 버전 호환성 때문에 작동하지 않는 설정과 0" 잘못된 인수" 오류가 발생 하도록 설정해 보았습니다 .runtime_suspended_timedisabledlevel

내 시스템 및 커널 정보는 다음과 같습니다.

$ uname -a
Linux debian 4.19.0-10-amd64 #1 SMP Debian 4.19.132-1 (2020-07-24) x86_64 GNU/Linux

OS를 부팅할 때 이 USB 장치/포트의 로딩을 비활성화하는 방법이 있습니까?

답변1

이 USB 로드 드라이버를 비활성화할 수 있습니다

echo '1-1.5' > /sys/bus/usb/drivers/usb/unbind

필요한 경우 수동으로 로드할 수 있습니다.

echo '1-1.5' > /sys/bus/usb/drivers/usb/bind

전원을 끄려면 다음이 작동해야 합니다.

autosuspend_delay_ms으로 설정해야 합니다 .0

(로 유지 control하면서 auto)

echo '0' > /sys/bus/usb/devices/1-1.5/power/autosuspend_delay_ms

이 파일에는 커널이 자동으로 장치를 일시 중단하기 전에 장치가 유휴 상태로 유지되어야 하는 밀리초(유휴 지연) 수인 정수 값이 포함되어 있습니다. 기본값은 2000입니다. 0은 장치가 유휴 상태가 되면 자동으로 일시 중단됨을 의미합니다. 음수 값은 자동으로 일시 중지되지 않음을 의미합니다. 이 파일에 숫자를 기록하여 자동 일시 중단 유휴 지연을 변경할 수 있습니다.

관련 정보