ФАТАЛЬНЫЙ: Модуль hello.ko не найденный

Когда массив первоначально собран, он помещается в режим "автотолько для чтения". Я быстро протестировал с моим ядром (3.10.x) и mdadm (3.3), этого не происходит на, создают — но необходимо выполнять различные версии.

Однако автотолько для чтения не ошибка, ни это что-либо для волнения о. Основная идея позади него состоит в том, чтобы сделать --assemble (и, по-видимому, теперь, даже --create) более безопасный: Ничто не записано в диски, пока массив не идет чтение-запись. (Я не уверен, записаны ли, возможно, метаданные все еще на, создают.)

Массив автоматически переключится от автотолько для чтения до чтения-записи, когда это получит свою первую запись. Так, если бы Вы шли вперед и создали файловую систему на устройстве или физический том LVM, или что бы то ни было, оно переключилось бы на чтение-запись и запустило бы синхронизацию.

Единственная причина необходимо было бы работать mdadm --readwrite на нем то, если Вы хотите, чтобы это синхронизировало, перед выполнением любых записей.

3
22.04.2014, 09:26
2 ответа
[1120458] Где вы скачали ядро 2.6.32?

Если вы используете CentOS, то просто установите исходные тексты вашего ядра [1120777]2.6.32-431.11.2.el6.x86_64[1120778] из репозитория CentOS, так как RedHat использует исправленное ядро. Также убедитесь, что конфигурация дерева исходных текстов ядра, с которым вы собираете, точно такая же, как и у работающего ядра.

Bob@Mays ~
$

Обычно в каталоге [1120779]/boot/[1120782] находятся файлы [1120781]/boot/[1120782], или вы можете попробовать получить конфигурацию работающего ядра из [1120783]/proc/config.gz[1120784].

PS1='\[\e]0;\w\a\]\n\[\e[32m\]\u@\h \[\e[33m\]\w\[\e[0m\]\n\$ '

Вы также можете обратиться к официальному CentOS HowTos:

http://wiki.centos.org/HowTos/I_need_the_Kernel_Source

http://wiki.centos.org/HowTos/Custom_Kernel

1
27.01.2020, 21:23

Ядро Linux содержит структуры данных, компоновка которых варьируется не только от версии к версии, но и в зависимости от вариантов компиляции. Как следствие, при компиляции модуля ядра необходимо иметь не только заголовочные файлы из исходных текстов ядра, но и некоторые заголовочные файлы, которые генерируются при компиляции ядра. Простой распаковки исходных текстов ядра недостаточно.

При сборке ядра с помощью CONFIG_MODVERSIONS номер версии может отличаться, но расположение структур данных должно быть одинаковым. Эта опция активирована в ядрах Ubuntu. С помощью этой опции, в дополнение к заголовкам, модули должны быть скомпилированы с соответствующим файлом Module.symvers. CentOS, как и большинство дистрибутивов, включает этот файл в том же пакете, что и заголовки ядра, полученные при компиляции. Заголовочный пакет ядра CentOS называется kernel-headers; убедитесь, что установлена версия, соответствующая ядру, для которого вы компилируете. Смотрите также Обзор пакетов ядра в документации по CentOS и Вам не нужен полный исходный код ядра в вики.

С ядрами, собранными без CONFIG_MODVERSIONS (что может случиться, если вы скомпилировали собственное ядро), проверка при загрузке модуля является простой проверкой версии. Вы можете взять неупакованный исходный код ядра, скопировать .config, который использовался при компиляции работающего ядра, и запустить make modules_prepare. Вы должны убедиться, что все исправления, внесенные в ядро, не влияют на бинарную совместимость.

2
27.01.2020, 21:23

Теги

Похожие вопросы