Вопрос или проблема
У меня проблема с обновлением ядра. Мне удалось обновить его до версии 6.9.3, после этого, какую бы версию я ни пытался загрузить, у меня всегда возникает одна и та же проблема:
Сборка модуля:
Очистка области сборки...
make -j4 KERNELRELEASE=6.9.4-060904-generic KVER=6.9.4-060904-generic...(плохой статус выхода: 2)
ОШИБКА (dkms apport): пакет ядра linux-headers-6.9.4-060904-generic не поддерживается
Ошибка! Неправильный статус возврата для сборки модуля на ядре: 6.9.4-060904-generic (x86_64)
Обратитесь к /var/lib/dkms/broadcom-sta/6.30.223.271/build/make.log за дополнительной информацией.
Команда подписи: /usr/bin/kmodsign
Ключ подписи: /var/lib/shim-signed/mok/MOK.priv
Публичный сертификат (MOK): /var/lib/shim-signed/mok/MOK.der
Сборка модуля:
Очистка области сборки...
kernelver=6.9.4-060904-generic ./dkms-make.sh...(плохой статус выхода: 2)
ОШИБКА (dkms apport): бинарный пакет для rtl8821au: 5.12.5.2 не найден
Ошибка! Неправильный статус возврата для сборки модуля на ядре: 6.9.4-060904-generic (x86_64)
Обратитесь к /var/lib/dkms/rtl8821au/5.12.5.2/build/make.log за дополнительной информацией.
Команда подписи: /usr/bin/kmodsign
Ключ подписи: /var/lib/shim-signed/mok/MOK.priv
Публичный сертификат (MOK): /var/lib/shim-signed/mok/MOK.der
Сборка модуля:
Очистка области сборки...
make -j4 KERNELRELEASE=6.9.4-060904-generic -C /lib/modules/6.9.4-060904-generic/build M=/var/lib/dkms/virtualbox/7.0.16/build...(плохой статус выхода: 2)
ОШИБКА (dkms apport): пакет ядра linux-headers-6.9.4-060904-generic не поддерживается
Ошибка! Неправильный статус возврата для сборки модуля на ядре: 6.9.4-060904-generic (x86_64)
Обратитесь к /var/lib/dkms/virtualbox/7.0.16/build/make.log за дополнительной информацией.
dkms autoinstall на 6.9.4-060904-generic/x86_64 не удался для broadcom-sta(10) rtl8821au(10) virtualbox(10)
Ошибка! Один или несколько модулей не удалось установить во время автоматической установки.
Смотрите предыдущие ошибки для получения дополнительной информации.
* dkms: автоматическая установка для ядра 6.9.4-060904-generic
...неудача!
run-parts: /etc/kernel/header_postinst.d/dkms завершился с кодом возврата 11
dpkg: ошибка при обработке пакета linux-headers-6.9.4-060904-generic (--install):
подпроцесс установленного пакета linux-headers-6.9.4-060904-generic сценария пост-установки вернул код ошибки 11
Конфигурация linux-modules-6.9.4-060904-generic (6.9.4-060904.202408071026)...
Конфигурация linux-image-unsigned-6.9.4-060904-generic (6.9.4-060904.202408071026)...
Обработка триггеров для linux-image-unsigned-6.9.4-060904-generic (6.9.4-060904.202408071026)...
/etc/kernel/postinst.d/dkms:
* dkms: выполнение службы автоматической установки для ядра 6.9.4-060904-generic
Команда подписи: /usr/bin/kmodsign
Ключ подписи: /var/lib/shim-signed/mok/MOK.priv
Публичный сертификат (MOK): /var/lib/shim-signed/mok/MOK.der
Сборка модуля:
Очистка области сборки...
make -j4 KERNELRELEASE=6.9.4-060904-generic KVER=6.9.4-060904-generic...(плохой статус выхода: 2)
ОШИБКА (dkms apport): пакет ядра linux-headers-6.9.4-060904-generic не поддерживается
Ошибка! Неправильный статус возврата для сборки модуля на ядре: 6.9.4-060904-generic (x86_64)
Обратитесь к /var/lib/dkms/broadcom-sta/6.30.223.271/build/make.log за дополнительной информацией.
Команда подписи: /usr/bin/kmodsign
Ключ подписи: /var/lib/shim-signed/mok/MOK.priv
Публичный сертификат (MOK): /var/lib/shim-signed/mok/MOK.der
Сборка модуля:
Очистка области сборки...
kernelver=6.9.4-060904-generic ./dkms-make.sh...(плохой статус выхода: 2)
ОШИБКА (dkms apport): бинарный пакет для rtl8821au: 5.12.5.2 не найден
Ошибка! Неправильный статус возврата для сборки модуля на ядре: 6.9.4-060904-generic (x86_64)
Обратитесь к /var/lib/dkms/rtl8821au/5.12.5.2/build/make.log за дополнительной информацией.
Команда подписи: /usr/bin/kmodsign
Ключ подписи: /var/lib/shim-signed/mok/MOK.priv
Публичный сертификат (MOK): /var/lib/shim-signed/mok/MOK.der
Сборка модуля:
Очистка области сборки...
make -j4 KERNELRELEASE=6.9.4-060904-generic -C /lib/modules/6.9.4-060904-generic/build M=/var/lib/dkms/virtualbox/7.0.16/build...(плохой статус выхода: 2)
ОШИБКА (dkms apport): пакет ядра linux-headers-6.9.4-060904-generic не поддерживается
Ошибка! Неправильный статус возврата для сборки модуля на ядре: 6.9.4-060904-generic (x86_64)
Обратитесь к /var/lib/dkms/virtualbox/7.0.16/build/make.log за дополнительной информацией.
dkms autoinstall на 6.9.4-060904-generic/x86_64 не удался для broadcom-sta(10) rtl8821au(10) virtualbox(10)
Ошибка! Один или несколько модулей не удалось установить во время автоматической установки.
Смотрите предыдущие ошибки для получения дополнительной информации.
* dkms: автоматическая установка для ядра 6.9.4-060904-generic
...неудача!
run-parts: /etc/kernel/postinst.d/dkms завершился с кодом возврата 11
Я прочитал несколько вопросов на эту тему, касающихся старых версий ubuntu, и видел, что некоторые люди рекомендуют удалить virtualbox-dkms, broadcom-sta-dkms и rtl8821au-dkms и установить ядро. Я предпочел бы избежать удаления broadcom-sta-dkms, поэтому я хотел бы найти способ обновить их с новым ядром.
Может кто-то помочь мне с этим?
Я не хотел бы ухудшать ситуацию больше, чем нужно, поэтому спрашиваю вас, у кого больше опыта.
Спасибо
Ответ или решение
Ситуация, с которой вы столкнулись, связана с установкой модуля DKMS (Dynamic Kernel Module Support) для нового ядра Linux версии 6.9.4. Похоже, модуль не может быть собран из-за отсутствия поддержки для этой версии ядра, а также возможных несовместимостей с некоторыми драйверами. Мы рассмотрим, какие действия можно предпринять для решения этой проблемы, избегая удаления важного для вас модуля broadcom-sta-dkms.
Проблема
Ошибка, с которой вы столкнулись, обусловлена тем, что DKMS не может собрать модули для вашего нового ядра. В частности, сообщения об ошибках указывают на:
- Отсутствующую поддержку пакета kernel:
ERROR (dkms apport): kernel package linux-headers-6.9.4-060904-generic is not supported
. - Несоответствие версий: Необходимые модули (например, broadcom-sta, rtl8821au и virtualbox) не поддерживают вашу текущую версию ядра.
- Ошибка сборки: Сообщение о «bad exit status: 2» указывает на неудачную попытку компиляции, что в большинстве случаев указывает на ошибки в
Makefile
или на отсутствие необходимых библиотек и инструментов.
Шаги для решения проблемы
-
Проверка совместимости модулей DKMS:
- Посмотрите, поддерживают ли модули, которые вы используете, версию вашего ядра. Для этого можно обратиться к документации или репозиторию на GitHub соответствующих драйверов.
-
Обновление модулей DKMS:
- Попробуйте вручную обновить модули, выполнив команду:
sudo dkms update
- Это может помочь принудительно обновить и собрать модули для нового ядра. Если это не сработает, продолжайте к следующему пункту.
- Попробуйте вручную обновить модули, выполнив команду:
-
Просмотр логов сборки:
- Обратите внимание на файлы журналов, указанные в сообщениях об ошибках:
/var/lib/dkms/broadcom-sta/6.30.223.271/build/make.log
/var/lib/dkms/rtl8821au/5.12.5.2/build/make.log
/var/lib/dkms/virtualbox/7.0.16/build/make.log
- Откройте эти файлы и посмотрите, какие конкретные ошибки возникают при сборке. Часто это указывает на отсутствующие зависимости или конфликты версий.
- Обратите внимание на файлы журналов, указанные в сообщениях об ошибках:
-
Обновление зависимостей:
- Убедитесь, что у вас установлены все необходимые пакеты и библиотеки для сборки. Иногда для компиляции модулей требуются дополнительные инструменты (например,
build-essential
или специфические библиотеки).sudo apt-get install build-essential linux-headers-$(uname -r)
- Убедитесь, что у вас установлены все необходимые пакеты и библиотеки для сборки. Иногда для компиляции модулей требуются дополнительные инструменты (например,
-
Патчи и исправления:
- Если для ваших модулей доступны патчи, которые учитывают изменения в новом ядре, обязательно примените их. Это можно сделать через официальные репозитории или форки на GitHub.
-
Временное удаление модулей:
- Если вышеуказанные шаги не помогли, возможно, следует временно убрать неполадки, удалив модули, затем обновив ядро, а затем повторно установив драйверы. Это последний вариант, который следует использовать, если сохранение модуля является критически важным.
Заключение
Решение вашей проблемы может занять время, и важно действовать последовательно, проверяя каждую возможную ошибку. Иногда решением может стать обновление kernel метаданных или наличие патчей, которые могут потребоваться вашим модулям. Следующее, что вам нужно сделать, — это тщательно проанализировать логи и написать на форумы поддержки, если у вас не хватает информации для выяснения проблемы.
Если вам необходима дополнительная помощь по конкретным шагам, не стесняйтесь задавать уточняющие вопросы!