커널 업그레이드 시 DKMS 모듈이 올바르게 설치되지 않았습니다.

커널 업그레이드 시 DKMS 모듈이 올바르게 설치되지 않았습니다.

내 시스템에 여러 개의 DKMS 모듈이 설치되어 있는데 그 중 일부는내 거, 그 중 일부는 Oracle의 VirtualBox 5와 같은 상당히 중요한 유지 관리 패키지입니다.

커널을 업그레이드할 때마다 모든 DKMS 모듈이 손상되어 새 커널에 설치되지 않는 것을 발견했습니다. 내 모듈의 구성이 잘못되었다고 생각했지만 VirtualBox도 손상된 것을 보니 다른 문제인 것 같습니다.

DKMS가 최신 커널 버전에 모듈을 설치하지 않는 이유를 디버깅하는 방법은 무엇입니까?

저는 커널 3.19, 우분투 14.04를 사용하고 있습니다.

커널 업그레이드 후에는 dkms status출력이 많지 않습니다 . 즉,전혀내 DKMS 모듈이 올바르게 설치되었습니다.

답변1

현재 사용 중인 배포판에 대한 정보가 누락되었습니다. VirtualBox 5.x도 dkms에 제대로 등록되지 않았다는 점은 언급할 가치가 있습니다. 즉, 커널 업데이트 후 dkms가 이러한 모듈을 다시 빌드하지 않음을 의미합니다.

~을 위한DKMS 설치를 위해 제공한 지침이 단계에서는 모듈 소스가 /usr/src/<modulename>-<moduleversion>/현재 실행 중인 커널(또는 지정된 커널)에 설치되어 있고 모듈이 현재 실행 중인 커널용으로 빌드되었다는 점만 참고합니다. 부팅 시 dkms 서비스가 실행되고 있지 않으면 새 커널이 처음 부팅될 때 새 버전이 컴파일되지 않습니다.

확인하기 쉬워야 합니다. dkms status처음으로 새 커널을 부팅한 후 루트로 실행할 때 표시되는 모든 모듈이 자동으로 다시 빌드되어야 합니다.그리고해당 커널에 대한 커널 헤더를 설치한 경우. 또한 dkms.conf관련 모듈을 지정해야 하는 dkms 서비스 AUTOINSTALL=Y(일반적 /etc/rc.d/init.d/dkms 으로 이전 배포판의 경우)는 다음 시작 시 등록된 모듈을 다시 빌드합니다.

각 조건이 충족되는지 확인할 수 있습니까? 특히 시작 중에 실행되는 서비스가 dkms 상태를 확인하고 필요한 경우 새 모듈을 빌드합니까? dkms또는 dkms_autoinstaller이와 유사한 것으로 호출되어야 합니다 .

비교를 위해 다음은 dkms status여러 커널 버전에 대해 여러 바이너리 및 소스 모듈이 설치된 경우의 출력입니다.

[doktor5000@Mageia5]─[16:40:27]─[~] sudo dkms status | sort
broadcom-wl, 6.30.223.271-1.mga5.nonfree, 4.1.12-desktop-1.mga5, x86_64: installed 
broadcom-wl, 6.30.223.271-1.mga5.nonfree, 4.1.13-desktop-2.mga5, x86_64: installed 
broadcom-wl, 6.30.223.271-1.mga5.nonfree, 4.1.8-desktop-1.mga5, x86_64: installed 
nvidia-current, 346.96-1.mga5.nonfree, 4.1.12-desktop-1.mga5, x86_64: installed 
nvidia-current, 346.96-1.mga5.nonfree, 4.1.12-desktop-1.mga5, x86_64: installed-binary from 4.1.12-desktop-1.mga5
nvidia-current, 346.96-1.mga5.nonfree, 4.1.13-desktop-2.mga5, x86_64: installed-binary from 4.1.13-desktop-2.mga5
nvidia-current, 346.96-1.mga5.nonfree, 4.1.8-desktop-1.mga5, x86_64: installed 
nvidia-current, 346.96-1.mga5.nonfree, 4.1.8-desktop-1.mga5, x86_64: installed-binary from 4.1.8-desktop-1.mga5
rtl8192cu-fixes, 1.10, 4.1.12-desktop-1.mga5, x86_64: installed 
rtl8192cu-fixes, 1.10, 4.1.13-desktop-2.mga5, x86_64: installed 
rtl8192cu-fixes, 1.10, 4.1.8-desktop-1.mga5, x86_64: installed 
sysdig, 0.2.0-1.mga5, 4.1.13-desktop-2.mga5, x86_64: installed 
virtualbox, 5.0.10-1.mga5, 4.1.12-desktop-1.mga5, x86_64: installed 
virtualbox, 5.0.10-1.mga5, 4.1.13-desktop-2.mga5, x86_64: installed-binary from 4.1.13-desktop-2.mga5
virtualbox, 5.0.8-1.mga5, 4.1.12-desktop-1.mga5, x86_64: installed-binary from 4.1.12-desktop-1.mga5
virtualbox, 5.0.8-1.mga5, 4.1.8-desktop-1.mga5, x86_64: installed-binary from 4.1.8-desktop-1.mga5

관련 정보