Пакеты заголовков ядра, которые я установил в Debian, неправильной версии.

Вопрос или проблема

Я пытался установить ZFS на Debian 11, и предварительным условием является установка соответствующих заголовков ядра. Каждый пакет, который я пробовал установить, не заработал. Мое ядро 5.10.0-18-amd64, но все они пытаются использовать 5.10.0-19-amd64. Это на свежей установке Linode Debian.

‘linux-headers-amd64’ и ‘linux-headers-generic’

Учебное пособие OpenZFS рекомендует установить ‘linux-headers-generic’, а вики Debian рекомендует ‘linux-headers-amd64’, и ни один из них, похоже, не работает, как предполагалось. Когда я пытаюсь установить заголовки ядра из пакетов в заголовке, они, похоже, находятся на неправильной версии. Сами заголовки устанавливаются нормально, но когда я устанавливаю zfsutils-linux

Сборка модуля для ядра 5.10.0-18-amd64 была пропущена, так как
заголовки ядра для этого ядра, похоже, не установлены.

Тем не менее, zfsutils-linux устанавливаются нормально. Но после установки, когда я проверяю, работает ли ZFS, я вижу

root@localhost:~# modprobe zfs
modprobe: FATAL: модуль zfs не найден в каталоге /lib/modules/5.10.0-18-amd64

При просмотре через dpkg, заголовки показывают 5.10.0-19

root@localhost:~# dpkg -l | grep "linux-header"
ii  linux-headers-5.10.0-19-amd64  5.10.149-2                     amd64        Header files for Linux 5.10.0-19-amd64
ii  linux-headers-5.10.0-19-common 5.10.149-2                     all          Common header files for Linux 5.10.0-19
ii  linux-headers-amd64            5.10.149-2                     amd64        Header files for Linux amd64 configuration (meta-package)

linux-headers-$(uname -r)

Хорошо, давайте попробуем явно установить правильную версию с “linux-headers-$(uname -r)”. Я не хотел делать это таким образом, потому что (и поправьте меня, если я ошибаюсь), это делает обновление сложным по сравнению с другими двумя метапакетами. В любом случае, вот что он говорит

Предварительная конфигурация пакетов ...
Выбор предыдущего невыбранного пакета dctrl-tools.
(Чтение базы данных ... установлено 61322 файлов и директорий.)
Подготовка к распаковке .../00-dctrl-tools_2.24-3+b1_amd64.deb ...
Распаковка dctrl-tools (2.24-3+b1) ...
Выбор предыдущего невыбранного пакета dkms.
Подготовка к распаковке .../01-dkms_2.8.4-3_all.deb ...
Распаковка dkms (2.8.4-3) ...
Выбор предыдущего невыбранного пакета zfs-dkms.
Подготовка к распаковке .../02-zfs-dkms_2.1.5-1~bpo11+1_all.deb ...
Распаковка zfs-dkms (2.1.5-1~bpo11+1) ...
Выбор предыдущего невыбранного пакета libnvpair3linux.
Подготовка к распаковке .../03-libnvpair3linux_2.1.5-1~bpo11+1_amd64.deb ...
Распаковка libnvpair3linux (2.1.5-1~bpo11+1) ...
Выбор предыдущего невыбранного пакета libuutil3linux.
Подготовка к распаковке .../04-libuutil3linux_2.1.5-1~bpo11+1_amd64.deb ...
Распаковка libuutil3linux (2.1.5-1~bpo11+1) ...
Выбор предыдущего невыбранного пакета libzfs4linux.
Подготовка к распаковке .../05-libzfs4linux_2.1.5-1~bpo11+1_amd64.deb ...
Распаковка libzfs4linux (2.1.5-1~bpo11+1) ...
Выбор предыдущего невыбранного пакета libzpool5linux.
Подготовка к распаковке .../06-libzpool5linux_2.1.5-1~bpo11+1_amd64.deb ...
Распаковка libzpool5linux (2.1.5-1~bpo11+1) ...
Выбор предыдущего невыбранного пакета zfsutils-linux.
Подготовка к распаковке .../07-zfsutils-linux_2.1.5-1~bpo11+1_amd64.deb ...
Распаковка zfsutils-linux (2.1.5-1~bpo11+1) ...
Выбор предыдущего невыбранного пакета zfs-zed.
Подготовка к распаковке .../08-zfs-zed_2.1.5-1~bpo11+1_amd64.deb ...
Распаковка zfs-zed (2.1.5-1~bpo11+1) ...
Выбор предыдущего невыбранного пакета linux-headers-5.10.0-19-common.
Подготовка к распаковке .../09-linux-headers-5.10.0-19-common_5.10.149-2_all.deb ...
Распаковка linux-headers-5.10.0-19-common (5.10.149-2) ...
Выбор предыдущего невыбранного пакета linux-headers-5.10.0-19-amd64.
Подготовка к распаковке .../10-linux-headers-5.10.0-19-amd64_5.10.149-2_amd64.deb ...
Распаковка linux-headers-5.10.0-19-amd64 (5.10.149-2) ...
Выбор предыдущего невыбранного пакета linux-headers-amd64.
Подготовка к распаковке .../11-linux-headers-amd64_5.10.149-2_amd64.deb ...
Распаковка linux-headers-amd64 (5.10.149-2) ...
Установка libnvpair3linux (2.1.5-1~bpo11+1) ...
Установка linux-headers-5.10.0-19-common (5.10.149-2) ...
Установка libuutil3linux (2.1.5-1~bpo11+1) ...
Установка dctrl-tools (2.24-3+b1) ...
Установка linux-headers-5.10.0-19-amd64 (5.10.149-2) ...
Установка linux-headers-amd64 (5.10.149-2) ...
Установка libzfs4linux (2.1.5-1~bpo11+1) ...
Установка dkms (2.8.4-3) ...
Установка zfs-dkms (2.1.5-1~bpo11+1) ...
Загрузка новых файлов zfs-2.1.5 DKMS...

Здесь продолжается явное упоминание патча 19, что странно, но после некоторого времени он говорит

Сборка для 5.10.0-18-amd64 5.10.0-19-amd64
Сборка начального модуля для 5.10.0-18-amd64
Готово.

Похоже, что он собрал его для патча 18, так что все хорошо, верно? Но затем…

depmod.....

Установка DKMS завершена.
Сборка начального модуля для 5.10.0-19-amd64

Да, он все еще строит для патча ядра впереди того, что у меня есть, когда я ясно дал ему указание установить патч 18. И я застрял на “Сборка начального модуля для 5.10.0-19-amd64” уже несколько часов, не зная, что делать.

Пакет просто не правильно извлекает мои данные ядра и поставляется с неправильной версией? Или я делаю что-то неправильно? Заголовок ядра патча 19 должен быть мне бесполезен, так как я нахожусь на патче 18, верно? Или возможно, я могу обойтись перемещением заголовков куда-то? Я проверил, и версия ZFS, которую я устанавливаю, должна поддерживать мою версию ядра.

Разобрался, это было обновление, которое установило 5.10.0-19-amd64, поэтому мне нужно было перезагрузиться.

Ответ или решение

Установка ZFS на Debian 11 требует наличия корректных заголовков ядра. Ваша текущая проблема заключается в несовпадении версий заголовков ядра с установленной версией ядра 5.10.0-18-amd64. При попытках установки вы сталкиваетесь с установкой заголовков версии 5.10.0-19-amd64, что вызывает базовые проблемы с модулями.

Актуализация проблемы

Вы установили Debian 11 на Linode, и после этого возникли проблемы с компиляцией модулей ZFS из-за несоответствия версий ядра и его заголовков. В соответствии с вашим вопросом, вы следовали инструкциям из нескольких источников, включая OpenZFS и Debian Wiki. Метапакеты ‘linux-headers-amd64’ и ‘linux-headers-generic’ установили заголовки ядра, которые не соответствуют вашей текущей версии ядра.

Анализ и решение проблемы

  1. Проверка версии ядра: для начала убедитесь, что ядро системы соответствует ожиданиям. Убедитесь, что вывод uname -r возвращает 5.10.0-18-amd64, что соответствует вашей изначальной версии.

  2. Установка конкретных заголовков ядра: при установке заголовков ядра попробуйте команду:

    sudo apt-get install linux-headers-$(uname -r)

    Это приведет к установке заголовков, соответствующих текущей версии ядра, а не версии из метапакетов, которые могут быть обновлены до более новых версий.

  3. Проверка установленных пакетов: с помощью команды dpkg -l | grep "linux-header" убедитесь, что установлены заголовки именно той версии, что и ваше ядро. Это важно для успешной сборки и работы модулей.

  4. Перезагрузка системы: возможно, ваши пакеты и модули были обновлены после установки, но применены изменения могут быть только после перезагрузки системы. Убедитесь, что обновления завершены, и перезагрузите систему:

    sudo reboot
  5. Проверка сборки модулей с DKMS: после перезагрузки, проверьте, что DKMS успешно собрал модули для вашего текущего ядра. Вы можете использовать команду:

    sudo dkms status

    Это даст вам представление о статусе модулей и их совместимости.

Заключение

Разрешение данной проблемы требует оценки текущей версии системы и установки верных заголовков ядра. Если казалось, что обновление до новой версии ядра было частично выполнено, только перезагрузка окончательно обеспечит соответствие версий заголовков и самого ядра. Такие меры должны позволить успешно установить и запустить ZFS на вашей системе Debian 11.

Используйте актуальные инструкции и всегда проверяйте совместимость пакетов с вашей системой. Если все этапы выполнены правильно, ZFS должен работать без проблем на вашей версии ядра.

Оцените материал
Добавить комментарий

Капча загружается...