어떤 모듈이 커널을 오염시키는지 확인하는 방법은 무엇입니까?

어떤 모듈이 커널을 오염시키는지 확인하는 방법은 무엇입니까?

특정 무선 네트워크에 연결되면 커널이 계속 패닉 상태에 빠지게 됩니다. 버그 보고서를 보내고 싶지만 내 커널이 오염된 것 같습니다. 에서 /var/log/messages:

Apr 17 21:28:22 Eiger kernel: [13330.442453] Pid: 4095, comm: kworker/u:1 Tainted: G           O 3.8.4-102.fc17.x86_64 #1

그리고

[root@Eiger ~]# cat /proc/sys/kernel/tainted 
4096

4096 비트마스크의 의미에 대한 문서를 찾을 수 없습니다., 그러나 G플래그는 외부 GPL 모듈이 커널에 로드되었음을 의미합니다.. 어떤 모듈이 커널을 오염시키고 있는지 어떻게 알 수 있나요?

나는 [Tt]aint또는 모듈을 로드할 때 해당하는 항목을 찾지 못했습니다 /var/log/messages. dmesg내 커널은 Fedora 17: 3.8.4-102.fc17.x86_64의 최신 커널입니다.

업데이트: 모듈 때문일 수도 있습니다 rts5139. 이전 커널인 3.8.3-103.fc17.x86_64를 부팅할 때 이 모듈은 표시되지만 lsmod생성 modinfo rts5139됩니다 . 이 모듈은 목록에 표시되지 않으며 커널이 오염되지 않습니다( 0).ERROR: Module rts5139 not found.lsmod/proc/sys/kernel/taint

나는 이 모듈을 블랙리스트에 올리려고 했습니다.

echo 'blacklist rts5139' >> /etc/modprobe.d/blacklist.conf

그러나 재부팅하면 여전히 커널이 오염된 것으로 표시됩니다.

답변1

글쎄요, 표준 Fedora 커널 패키지에는 이 오염을 유발하는 모듈이 포함되어 있을 것이라고 생각하지 않습니다. 따라서 질문은 어떤 다른 커널 모듈을 설치했습니까?

일반적인 후보는 그래픽 드라이버(대부분 "독점" 비트를 설정할 것이라고 생각하지만)와 무선 드라이버가 될 것입니다.

lsmod출력에서 후보라고 생각되는 항목을 찾을 수 있으면 실행하여 modinfo <module-name>출력에 포함되어 있는지 확인하세요. intree: Y해당 모듈이 없으면 보고 있는 오염이 트리거되기 때문입니다.

업데이트: rts5139당신이 보고 있지만 lsmod시스템에 없는 것 같은 모듈은 아마도 initrd에 있을 것이며 기본 파일 시스템이 마운트되기 전 부팅 프로세스 초기에 거기에서 로드되고 있을 것입니다.

또한 업데이트된 블랙리스트로 initrd를 다시 빌드해야 하므로 블랙리스트 작성이 작동하지 않는 이유도 설명됩니다. initrd를 다시 빌드하면 dracut어쨌든 모듈이 사라지게 됩니다.

답변2

➜  ~  dmesg | grep -i 'taint'
[   10.029333] vboxdrv: module verification failed: signature and/or required key missing - tainting kernel
[   10.029364] Disabling lock debugging due to kernel taint

답변3

또 다른 방법은 다음 taint에서 각 모듈의 파일을 검사하는 것입니다 /sys/module.

#!/bin/bash

cat /proc/modules |
while read module rest
do
    if [[ $(od -A n /sys/module/$module/taint) != " 000012" ]] ; then
        echo $module
    fi
done

모듈에 오염이 없으면 파일에는 " "로 표시되는 taint개행 문자만 포함됩니다 . 파일 크기는 실제 내용과 상관없이 모두 4,096바이트로 기재되어 있어 확인할 수 없습니다.od000012

답변4

초기 단계(디스크가 RW로 마운트되기 전)에서 부팅 로그를 확인하거나 부팅 프로세스를 살펴보세요. 이는 initrd의 잘못된 모듈일 수 있습니다.

DKMS 또는 이와 유사한 것이 있습니까?

관련 정보