![커널 모듈이 없습니다](https://linux55.com/image/180019/%EC%BB%A4%EB%84%90%20%EB%AA%A8%EB%93%88%EC%9D%B4%20%EC%97%86%EC%8A%B5%EB%8B%88%EB%8B%A4.png)
나는 이것을 사용하고 있습니다NPi i.MX6ULL(armhf) 보드는 여기에 있습니다. Debian Buster 기반의 맞춤형 Linux 배포판이 함께 제공됩니다. 하지만 최소한의 수준으로 완전히 제거되었습니다.
내 질문은 마더보드와는 아무 관련이 없으며 Linux 커널과 관련이 있습니다. 방화벽을 설치하고 실행해 보았으나 아무 소용이 없었습니다. 나는 많은 공통 커널 모듈이 누락되었음을 발견했습니다(아래 lsmod 출력 참조).
따라서 기본적으로 nf_tables 및 ip_tables 모듈이 누락되었음을 이해합니다. 하지만 이제 내 어리석은 질문은 - 어떻게 추가합니까? 어디서 구할 수 있나요? 나는 "apt install nftables"와 다른 모든 유형의 것들을 설치했습니다. 그러나 그 안에 모듈을 추가하는 것은 없습니다.
도움이 필요하세요? 감사해요!
debian@npi:~/libmnl$ cat /etc/os-release
PRETTY_NAME="Debian GNU/Linux 10 (buster)"
NAME="Debian GNU/Linux"
VERSION_ID="10"
VERSION="10 (buster)"
VERSION_CODENAME=buster
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"
debian@npi:~/libmnl$ uname -r
4.19.71-imx-r1
debian@npi:~/libmnl$ lsmod
Module Size Used by
imx_wm8960 16384 0
snd_soc_wm8960 40960 0
snd_soc_fsl_sai 24576 0
imx_pcm_dma_v2 16384 1 snd_soc_fsl_sai
snd_soc_fsl_spdif 24576 0
snd_soc_fsl_asrc 45056 0
imx_pcm_dma 16384 1 snd_soc_fsl_spdif
snd_soc_core 147456 7 snd_soc_fsl_asrc,snd_soc_fsl_sai,imx_pcm_dma_v2,snd_soc_fsl_spdif,imx_pcm_dma,snd_soc_wm8960,imx_wm8960
snd_pcm_dmaengine 16384 3 imx_pcm_dma_v2,imx_pcm_dma,snd_soc_core
snd_pcm 98304 9 snd_soc_fsl_asrc,snd_soc_fsl_sai,snd_pcm_dmaengine,imx_pcm_dma_v2,snd_soc_fsl_spdif,imx_pcm_dma,snd_soc_core,snd_soc_wm8960,imx_wm8960
snd_timer 32768 1 snd_pcm
evbug 16384 0
dht11 16384 0
touch_gt9xx 61440 0
debian@npi:/lib/modules/4.19.71-imx-r1$ ls
kernel modules.builtin modules.dep.bin modules.softdep
modules.alias modules.builtin.bin modules.devname modules.symbols
modules.alias.bin modules.dep modules.order modules.symbols.bin
debian@npi:/lib/modules/4.19.71-imx-r1$ cd kernel/
debian@npi:/lib/modules/4.19.71-imx-r1/kernel$ ls
crypto drivers fs lib sound
답변1
.config
커널과 해당 파일의 전체 소스 코드가 있는 경우에만 추가할 수 있습니다(후자가 필요하지 않을 수도 있음). 이 경우 .config
누락된 커널 모듈을 편집하고 활성화할 수 있습니다.
운이 좋다면 이것을 다운로드해 볼 수 있습니다.커널 소스 코드kernel.org에서 가져온 다음 크로스 빌드 컴파일러를 사용하여 컴파일합니다(이 보드 아키텍처가 무엇인지 잘 모르겠습니다. 생략했습니다) sudo apt install gcc-arm-none-eabi
. 완벽한 환경에서는 커널을 빌드하는 데 사용한 것과 동일한 컴파일러 버전을 사용해야 합니다. 그렇지 않으면 모듈이 다른 ABI로 인해 커널 패닉/OOP를 트리거할 수 있습니다.