Ошибка обновлений: linux-headers post-installation script exit status 11

Дата: 2026-02-10
Проблема: При установке обновлений в Cockpit (или через apt) пакет linux-headers-<версия>-generic падает с ошибкой post-installation script, код выхода 11.

Симптомы

В Cockpit при применении обновлений:

Не удалось применить обновления
Please resolve the issue and reload this page.

Error while installing package: installed linux-headers-6.17.0-14-generic 
package post-installation script subprocess returned error exit status 11

Причина

Ошибка не в ядре, а в DKMS (Dynamic Kernel Module Support). При установке заголовков ядра запускается пересборка всех зарегистрированных DKMS-модулей под новое ядро. Если один из модулей не поддерживает новое ядро (драйвер из стороннего репозитория, устаревший или сломанный), сборка падает, и post-install скрипт возвращает код 11.

Типичные «виновники»:
- драйвер amdgpu из репозитория AMD (часто с 6.x ядрами);
- другие сторонние DKMS-модули (VirtualBox, ZFS, tp-smapi и т.п.).

Решение

Автоматическое (рекомендуется)

Запустите скрипт (он найдёт проблемный модуль по логам и удалит его из DKMS, затем завершит настройку пакетов):

sudo /home/cdto/DENKART/scripts/fix-linux-headers-dkms-fail.sh

После успешного завершения обновите страницу Cockpit (F5) и при необходимости снова примените обновления.

Ручное

Шаг 1. Узнать, какой DKMS-модуль упал. В логе dpkg или в журнале будет строка вида:
- dkms autoinstall on 6.17.0-14-generic/x86_64 failed for <имя_модуля>(N)
- или путь: Consult /var/lib/dkms/<имя>/<версия>/build/make.log

Просмотр последних записей:

grep -E "dkms|failed for|header_postinst" /var/log/dpkg.log | tail -30

или:

journalctl -b -u dpkg-db-upgrade --no-pager 2>/dev/null | tail -50

Шаг 2. Удалить проблемный модуль из DKMS (подставьте имя и версию из лога или из dkms status):

sudo dkms remove <имя_модуля>/<версия>

Пример для драйвера AMD:

sudo dkms remove amdgpu/6.2.4-1683306.22.04

Шаг 3. Завершить настройку прерванных пакетов:

sudo dpkg --configure -a

Шаг 4. При необходимости снова запустить обновления в Cockpit или:

sudo apt update && sudo apt upgrade

Важно

  • Удаление модуля через dkms remove только убирает его из пересборки при обновлении ядра. Системный драйвер из репозитория (например, встроенный amdgpu в ядре) продолжит использоваться.
  • Если драйвер был нужен (например, проприетарный AMD из репозитория AMD), после обновления ядра можно снова установить пакет драйвера — проверьте на сайте AMD актуальную совместимость с вашим ядром.

Связанные документы