나는로드하는 데 몇 커널 모듈을 찾고 있어요 i2c-dev
와 i2c-bcm2708
. 그러나 modprobe
명령은 다음을 반환합니다.
sudo modprobe i2c-dev
modprobe: module i2c-dev not found in modules.dep
시스템에서 사용 가능한 모든 모듈을 어떻게 나열합니까? 어느 디렉토리에 있습니까?
나는로드하는 데 몇 커널 모듈을 찾고 있어요 i2c-dev
와 i2c-bcm2708
. 그러나 modprobe
명령은 다음을 반환합니다.
sudo modprobe i2c-dev
modprobe: module i2c-dev not found in modules.dep
시스템에서 사용 가능한 모든 모듈을 어떻게 나열합니까? 어느 디렉토리에 있습니까?
답변:
기본적으로 modprobe
디렉토리에있는 서브 디렉토리에서 모듈을로드합니다 /lib/modules/$(uname -r)
. 일반적으로 모든 파일의 확장자 .ko
는이므로 함께 나열 할 수 있습니다.
find /lib/modules/$(uname -r) -type f -name '*.ko'
또는 압축 파일을 고려하여 :
find /lib/modules/$(uname -r) -type f -name '*.ko*'
그러나 모듈을 성공적으로로드 modprobe
하려면 파일 /lib/modules/$(uname -r)/modules.dep
(및 해당 바이너리 버전 modules.dep.bin
)에 나열된 해당 종속성이 필요합니다 . 시스템에 일부 모듈이 있지만 목록에없는 경우 depmod
이러한 종속성을 생성하고 모듈을 modules.dep
and에 자동으로 포함시키는 명령 을 실행해야합니다 modules.dep.bin
.
또한 모듈이 성공적으로로드되면 파일에 나열됩니다 /proc/modules
(command를 통해 액세스 할 수도 있음 lsmod
).
find /lib/modules/$(uname -r) -type f -name *.ko*
.gz
*.ko*
현재 디렉토리에 일치하는 파일이 있으면 쉘이 확장 될 수 있습니다 . 작은 따옴표 사이에서 벗어나는 것이 좋습니다. find /lib/modules/$(uname -r) -type f -name '*.ko*'
이 lsmod
의 명령 kmod
에 패키지 아치 리눅스 나열하고 같은 다른 유용한 명령이 포함되어 리눅스 커널 모듈의 상태를 보여줍니다 무엇을 modinfo
, rmmod
modprobe
너무가.
에 리터의 사용자가 입력 할 수있는 패키지가 제공하는 모든 바이너리는 인도 표준시 :
pacman -Ql kmod | grep /bin/ --color=always
, 당신은 또한 확인할 수 있습니다 오 와 이진의 wner 패키지 pacman -Qo lsmod
.
Q
스위치이다 q를 uery 로컬로 설치된 패키지 (달리 S
에 의의 ynchronize, 예. 원격으로 확인).
lsmod
만 표시 하도록 강조 표시해야하는 경우 이 스레드의 작성자는로드 가능한 커널 모듈의 맵에없는 모듈을로드하는 데 문제가있었습니다. 또한이 솔루션은 archlinux에만 적용됩니다. 저자의 배포가 아니며 다른 사람의 문제를 해결하지 못할 수도 있습니다.
lsmod
는 최소한 우분투에서도 사용할 수 있습니다. 그러나 이것이 OP의 문제를 해결하지 못한다는 데 동의합니다.