vfat 모듈을 로드할 수 없습니다(확실한 수정 사항을 시도했습니다)

vfat 모듈을 로드할 수 없습니다(확실한 수정 사항을 시도했습니다)

모듈 vfat가 부팅 시 로드되지 않고 modprobe vfat오류를 생성하여 문제를 강제로 시도합니다.

modprobe: ERROR: could not insert 'vfat': Unknown symbol in module, or unknown parameter (see dmesg)

dmesg와 라인

[  663.227894] fat: Unknown symbol __bread_gfp (err 0)
[  663.227924] fat: Unknown symbol __getblk_gfp (err 0)

또한 시작 시 를 실행하라는 두 개의 [FAILED] 메시지가 표시됩니다. systemctl status systemd-modules-load.service그 결과는 다음과 같습니다.

● systemd-modules-load.service - Load Kernel Modules
   Loaded: loaded (/lib/systemd/system/systemd-modules-load.service; static)
   Active: failed (Result: exit-code) since Fri 2016-02-12 12:55:11 EST; 18min ago
     Docs: man:systemd-modules-load.service(8)
           man:modules-load.d(5)
 Main PID: 502 (code=exited, status=1/FAILURE)

Feb 12 12:55:11 aleph systemd-modules-load[502]: Failed to insert 'fuse': No such file or directory
Feb 12 12:55:11 aleph systemd[1]: systemd-modules-load.service: main process exited, code=exited, status=1/FAILURE
Feb 12 12:55:11 aleph systemd[1]: Failed to start Load Kernel Modules.
Feb 12 12:55:11 aleph systemd[1]: Unit systemd-modules-load.service entered failed state.

나는 기본적으로 기본 Debian Jessie를 실행하고 있으며 내 커널에 대해 수동으로 조정하지 않았습니다. uname -a반품

Linux aleph 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt11-1 (2015-05-24) x86_64 GNU/Linux

그리고 modinfo fat vfat:

filename:       /lib/modules/3.16.0-4-amd64/kernel/fs/fat/fat.ko
license:        GPL
depends:        
intree:         Y
vermagic:       3.16.0-4-amd64 SMP mod_unload modversions 
filename:       /lib/modules/3.16.0-4-amd64/kernel/fs/fat/vfat.ko
author:         Gordon Chaffee
description:    VFAT filesystem support
license:        GPL
alias:          fs-vfat
depends:        fat
intree:         Y
vermagic:       3.16.0-4-amd64 SMP mod_unload modversions 

오류 세부 정보에 대해 인터넷 검색에서 읽은 모든 내용은 여기서 문제가 실행 중인 커널 버전과 kmod에서 선택한 모듈 간의 불일치라는 것을 암시합니다. 이를 위해 나는 제안된 두 가지 확실한 단계를 수행했습니다.https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=808380그리고데비안은 vfat를 인식하지 못합니다이 문제를 해결하려면 먼저 재부팅을 시도한 다음 apt-get install --reinstall linux-image-3.16.0-4-amd64강제로 다시 설치하고 재부팅했습니다. debsums linux-image-3.16.0-4-amd64또한 현재 커널이 괜찮을 것임을 나타냅니다. 그러나 문제는 남아 있습니다.

아마도 내 자신의 커널과 모듈을 컴파일하여 이 문제를 해결할 수 있지만 최후의 수단으로 데비안 바이너리 이상의 것을 고려하는 것이 좋습니다.

답변1

글쎄, 문제는 약간의 문제가 있는 일반적인 문제(예: 잘못된 커널)로 밝혀졌습니다. 어떤 이유에서인지 이 작업을 수행했을 때 확실히 이해가 되었지만 grub-pc를 데비안 패키지로 설치했지만 거기에는 LILO가 있습니다(아님) 패키지로 설치됨)은 실제 부트 로더로 실행되므로 커널 설치(및 재설치 등)는 부팅 시 실제로 로드되는 커널 이미지에 영향을 주지 않는 grub을 행복하게 업데이트합니다. 아직 하나 있어요모두 다 아는버그는 특정 데비안 커널/모듈 업데이트가 버전 번호를 증가시키지 않아 kmod의 버전 선택이 꺼진다는 것입니다(그리고 그 이후로 커널/모듈 불일치가 없다고 생각하고 lsmod동일한 uname버전 번호를 제공했습니다). 그러나 일반적으로 올바른 커널을 로드하기 위해 부팅하면 오류를 쉽게 수정할 수 있지만, 이 경우에는 부트로더에 여전히 이전 커널이 있기 때문에 해결되지 않습니다.

답변2

aptitude를 사용하여 linux-headers-*로 시작하는 설치된 패키지와 linux-image*로 시작하는 패키지를 비교하세요.

aptitude search linux-image

그리고

aptitude search linux-headers

실행 중인 커널에 대해 둘 다 설치되어 있는지 확인하십시오. uname -a

관련 정보