Модуль 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 

Все, что я прочитал в Google по поводу особенностей ошибки, говорит о том, что проблема здесь в несоответствии между версиями работающего ядра и модулями, выбранными kmod. Для этого я предпринял два очевидных шага, предложенных вhttps://bugs.debian.org/cgi-bin/bugreport.cgi?bug=808380иvfat не распознается в Debianдля исправления этой проблемы: сначала я попробовал перезагрузиться, а затем я использовал apt-get install --reinstall linux-image-3.16.0-4-amd64принудительную переустановку и перезагрузку после этого. debsums linux-image-3.16.0-4-amd64также указывает, что мое текущее ядро ​​должно быть в порядке. Однако проблема сохраняется.

Вероятно, я мог бы исправить это, скомпилировав собственное ядро ​​и модули, но я бы все же рассмотрел возможность использования файлов, отличных от двоичных файлов Debian, как крайний вариант.

решение1

Хорошо, проблема оказалась обычной (т. е. не то ядро), с небольшой загвоздкой: по какой-то причине, которая, несомненно, имела смысл, когда я это делал, у меня был установлен grub-pc как пакет Debian, но был запущен LILO (не установленный как пакет) как мой фактический загрузчик, поэтому ядро ​​устанавливает (и переустанавливает, и тому подобное) радостно обновляет grub, что никак не влияет на образ ядра, фактически загружаемый во время загрузки. Все еще естьизвестеношибка, заключающаяся в том, что определенное обновление ядра/модуля Debian не увеличивало номер версии, что сбивало выбор версии kmod (и способствовало возникновению у меня впечатления, что у меня нет несоответствия ядра/модуля, поскольку lsmodи unameвыдавали мне одинаковый номер версии), но эта ошибка обычно легко исправляется перезагрузкой для загрузки правильного ядра, но не в этом случае, когда загрузчик все еще имел старое ядро.

решение2

Используйте aptitude для сравнения установленных пакетов, начинающихся с linux-headers-*, с пакетами, начинающимися с linux-image*.

aptitude search linux-image

и

aptitude search linux-headers

Убедитесь, что оба установлены для используемого вами ядра. uname -a

Связанный контент