Мой ядро сломано, и если да, то как мне его починить?

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

В последние пару недель у меня были большие проблемы с сервером домашней лаборатории. Я изначально установил Ubuntu 20.04 LTS, а затем, не подумав, решил выполнить dist-upgrade до 22.04 LTS, что стало началом моих проблем.

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

с тех пор сервер продолжает случайным образом замирать.

Дело не в температуре – я продолжал выводить температуру процессора в терминале до момента зависания, и оказывается, что оно произошло при 37°C. Так что, скорее всего, аппаратное обеспечение не виновато.

Живой USB Pop_OS! работал около двух дней, пока я его не выключил, так что, вероятно, это не проблема оборудования, а что-то в Ubuntu. Поэтому я установил linux-crashdump и ждал следующего зависания.

Читая журнал:

sudo cat /var/crash/202401142245/dmesg.202401142245

Я наткнулся на огромный файл дампа, который сохранил на Pastebin.com.

Вот, к сожалению, неотрформатированный дамп, который приводит к двум моим вопросам:

  1. Мой ядро испорчено Beyond All Repair?
  2. Если да, как я могу восстановить свое ядро?

timon@nur1kleinerserver:/var/crash/202401142245$ sudo cat dmesg.202401142245

[sudo] пароль для timon: 
[    0.000000] микрокод: микрокод обновлён на ранней стадии до версии 0xf4, дата = 2023-02-22
[    0.000000] Версия Linux 5.15.0-91-generic (buildd@lcy02-amd64-045) (gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0, GNU ld (GNU Binutils для Ubuntu) 2.38) #101-Ubuntu SMP Вт Ноя 14 13:30:08 UTC 2023 (Ubuntu 5.15.0-91.101-generic 5.15.131)
[    0.000000] Команда: BOOT_IMAGE=/boot/vmlinuz-5.15.0-91-generic root=UUID=e3292f62-8085-4a4e-afad-e81cb574b283 ro quiet splash crashkernel=512M-:192M vt.handoff=7
[    0.000000] ЯДРО поддерживаемые ЦП:
[    0.000000]   Intel GenuineIntel
[    0.000000]   AMD AuthenticAMD
[    0.000000]   Hygon HygonGenuine
[    0.000000]   Centaur CentaurHauls
[    0.000000]   zhaoxin   Shanghai  
[    0.000000] Физическая карта ОЗУ предоставлена BIOS:
[    0.000000] BIOS-e820: [mem 0x0000000000000000-0x0000000000057fff] доступно
[    0.000000] BIOS-e820: [mem 0x0000000000058000-0x0000000000058fff] зарезервировано
[    0.000000] BIOS-e820: [mem 0x0000000000059000-0x000000000009dfff] доступно
[    0.000000] BIOS-e820: [mem 0x000000000009e000-0x00000000000fffff] зарезервировано
[    0.000000] BIOS-e820: [mem 0x0000000000100000-0x000000003fffffff] доступно
[    0.000000] BIOS-e820: [mem 0x0000000040000000-0x00000000403fffff] зарезервировано
[    0.000000] BIOS-e820: [mem 0x0000000040400000-0x0000000070b3afff] доступно
[    0.000000] BIOS-e820: [mem 0x0000000070b3b000-0x0000000070b3bfff] ACPI NVS
[    0.000000] BIOS-e820: [mem 0x0000000070b3c000-0x0000000070b3cfff] зарезервировано
[    0.000000] BIOS-e820: [mem 0x0000000070b3d000-0x000000007a0cbfff] доступно
[    0.000000] BIOS-e820: [mem 0x000000007a0cc000-0x000000007a560fff] зарезервировано
[    0.000000] BIOS-e820: [mem 0x000000007a561000-0x000000007a5a6fff] данные ACPI
[    0.000000] BIOS-e820: [mem 0x000000007a5a7000-0x000000007a9c0fff] ACPI NVS
[    0.000000] BIOS-e820: [mem 0x000000007a9c1000-0x000000007affdfff] зарезервировано
[    0.000000] BIOS-e820: [mem 0x000000007affe000-0x000000007affefff] доступно
[    0.000000] BIOS-e820: [mem 0x000000007afff000-0x000000007fffffff] зарезервировано
[    0.000000] BIOS-e820: [mem 0x00000000e0000000-0x00000000efffffff] зарезервировано
[    0.000000] BIOS-e820: [mem 0x00000000fe000000-0x00000000fe010fff] зарезервировано
[    0.000000] BIOS-e820: [mem 0x00000000fec00000-0x00000000fec00fff] зарезервировано
[    0.000000] BIOS-e820: [mem 0x00000000fed00000-0x00000000fed00fff] зарезервировано
[    0.000000] BIOS-e820: [mem 0x00000000fee00000-0x00000000fee00fff] зарезервировано
[    0.000000] BIOS-e820: [mem 0x00000000ff000000-0x00000000ffffffff] зарезервировано
[    0.000000] BIOS-e820: [mem 0x0000000100000000-0x000000047effffff] доступно
[    0.000000] NX (Запрет на выполнение) защита: активна
[    0.000000] e820: обновление [mem 0x6a8f8018-0x6a908e57] доступно ==> доступно
[    0.000000] e820: обновление [mem 0x6a8f8018-0x6a908e57] доступно ==> доступно
[    0.000000] расширенная карта физической ОЗУ:
[    0.000000] резервирование setup_data: [mem 0x0000000000000000-0x0000000000057fff] доступно
[    0.000000] резервирование setup_data: [mem 0x0000000000058000-0x0000000000058fff] зарезервировано
[    0.000000] резервирование setup_data: [mem 0x0000000000059000-0x000000000009dfff] доступно
[    0.000000] резервирование setup_data: [mem 0x000000000009e000-0x00000000000fffff] зарезервировано
[    0.000000] резервирование setup_data: [mem 0x0000000000100000-0x000000003fffffff] доступно
[    0.000000] резервирование setup_data: [mem 0x0000000040000000-0x00000000403fffff] зарезервировано
[    0.000000] резервирование setup_data: [mem 0x0000000040400000-0x000000006a8f8017] доступно
[    0.000000] резервирование setup_data: [mem 0x000000006a8f8018-0x000000006a908e57] доступно
[    0.000000] резервирование setup_data: [mem 0x000000006a908e58-0x0000000070b3afff] доступно
[    0.000000] резервирование setup_data: [mem 0x0000000070b3b000-0x0000000070b3bfff] ACPI NVS
[    0.000000] резервирование setup_data: [mem 0x0000000070b3c000-0x0000000070b3cfff] зарезервировано
[    0.000000] резервирование setup_data: [mem 0x0000000070b3d000-0x000000007a0cbfff] доступно
[    0.000000] резервирование setup_data: [mem 0x000000007a0cc000-0x000000007a560fff] зарезервировано
[    0.000000] резервирование setup_data: [mem 0x000000007a561000-0x000000007a5a6fff] данные ACPI
[    0.000000] резервирование setup_data: [mem 0x000000007a5a7000-0x000000007a9c0fff] ACPI NVS
[    0.000000] резервирование setup_data: [mem 0x000000007a9c1000-0x000000007affdfff] зарезервировано
[    0.000000] резервирование setup_data: [mem 0x000000007affe000-0x000000007affefff] доступно
[    0.000000] резервирование setup_data: [mem 0x000000007afff000-0x000000007fffffff] зарезервировано
[    0.000000] резервирование setup_data: [mem 0x00000000e0000000-0x00000000efffffff] зарезервировано
[    0.000000] резервирование setup_data: [mem 0x00000000fe000000-0x00000000fe010fff] зарезервировано
[    0.000000] резервирование setup_data: [mem 0x00000000fec00000-0x00000000fec00fff] зарезервировано
[    0.000000] резервирование setup_data: [mem 0x00000000fed00000-0x00000000fed00fff] зарезервировано
[    0.000000] резервирование setup_data: [mem 0x00000000fee00000-0x00000000fee00fff] зарезервировано
[    0.000000] резервирование setup_data: [mem 0x00000000ff000000-0x00000000ffffffff] зарезервировано
[    0.000000] резервирование setup_data: [mem 0x0000000100000000-0x000000047effffff] доступно
[    0.000000] efi: EFI v2.70 от American Megatrends
[    0.000000] efi: TPMFinalLog=0x7a990000 ACPI 2.0=0x7a56f000 ACPI=0x7a56f000 SMBIOS=0x7ae08000 SMBIOS 3.0=0x7ae07000 MEMATTR=0x78515418 ESRT=0x7ae04e98 MOKvar=0x7ae23000 RNG=0x7a56e018 TPMEventLog=0x70c3c018 
[    0.000000] random: crng инициализация завершена
[    0.000000] secureboot: Защищённая загрузка отключена
[    0.000000] SMBIOS 3.1.1 присутствует.
[    0.000000] DMI: Intel 0/NUC7i5BNB, BIOS BNKBL357.86A.0088.2022.0125.1102 01/25/2022
[    0.000000] tsc: Обнаружен процессор на 2200.000 МГц
[    0.000000] tsc: Обнаружен TSC на 2199.996 МГц
[    0.000981] e820: обновление [mem 0x00000000-0x00000fff] доступно ==> зарезервировано
[    0.000985] e820: удаление [mem 0x000a0000-0x000fffff] доступно
[    0.001000] last_pfn = 0x47f000 max_arch_pfn = 0x400000000
[    0.001282] x86/PAT: Конфигурация [0-7]: WB  WC  UC- UC  WB  WP  UC- WT  
[    0.002573] last_pfn = 0x7afff max_arch_pfn = 0x400000000
[    0.014062] esrt: Резервирование пространства ESRT с 0x000000007ae04e98 до 0x000000007ae04ed0.
[    0.014077] Использование гигабайтных страниц для прямого отображения
[    0.014848] secureboot: Защищённая загрузка отключена
[    0.014849] RAMDISK: [mem 0x6a909000-0x6e7adfff]
[    0.014858] ACPI: Проверка контрольной суммы ранней таблицы отключена
[    0.014862] ACPI: RSDP 0x000000007A56F000 000024 (v02 INTEL )

Дамп укорочен для публикации здесь. Полный дамп на pastebin.com

По рекомендации @zwets я использовал glxinfo для сбора информации о видеоустройстве материнской платы. Он говорит:

Производитель: Intel (0x8086)
Устройство: Mesa Intel(R) Iris(R) Plus Graphics 640 (Kaby Lake GT3e) (KBL GT3) (0x5926)
Версия: 23.0.4
Ускорение: да
Видеопамять: 15681MB
Унифицированная память: да
Предпочтительный профиль: core (0x1)
Максимальная версия профиля core: 4.6
Максимальная версия совместимого профиля: 4.6
Максимальная версия профиля GLES1: 1.1
Максимальная версия профиля GLES[23]: 3.2
Строка вендора OpenGL: Intel
Строка рендерера OpenGL: Mesa Intel(R) Iris(R) Plus Graphics 640 (Kaby Lake GT3e) (KBL GT3)
Строка версии профиля core OpenGL: 4.6 (Core Profile) Mesa 23.0.4-0ubuntu1~22.04.1
Строка версии языка шейдеров профиля core OpenGL: 4.60

Так что это может быть немного другая материнская плата – но разве ядро не должно справляться с этим?

ИЗМЕНИТЬ: после долгих усилий оказалось, что SSD выходил из строя. Я наконец осознал, что это может быть проблемой (потому что я на самом деле не хотел, чтобы это было так), и вытащил его из сервера, поместил в корпус и попытался перенести файлы с него, и это … плохо получилось. Мне удалось сохранить большинство файлов, но, боже, это была настоящая борьба.

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

Проверка состояния ядра и его восстановление

Вводные данные

Ваша ситуация с сервером на базе Ubuntu 20.04 LTS, обновленным до 22.04 LTS, имеет несколько ключевых моментов, которые требуют внимательного анализа. Вы столкнулись с проблемами заморозки после замены материнской платы, а информация о состоянии системы и живой USB Pop_OS! говорит о нестабильности, вероятно, связанной с вашим текущим ядром.

Анализ состояния ядра

  1. Состояние ядра: Сообщения при загрузке ядра показывают, что вы используете версию ядра 5.15.0-91-generic, что соответствует последним обновлениям Ubuntu 22.04. Подозрения на сбои и зависания могут быть связаны с совместимостью драйверов, изменениями в конфигурации системы после обновления, либо как следствие апгрейда.

  2. Кэш-драйверы и конфигурации: При переходе на новую материнскую плату могут возникнуть проблемы с драйверами графического адаптера и другими модулями. Даже если данные о вашем GPU показывают, что всё корректно установлено (Intel Iris Plus Graphics 640), это не всегда гарантирует отсутствие конфликтов.

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

Вопросы

1. Ядро повреждено?
На основе представленных логов и ваших наблюдений нельзя однозначно констатировать, что ядро "поломано". Однако, потенциальные конфликты с драйверами и ошибки с пространством на диске могут вызвать случайные зависания.

2. Как восстановить ядро?
Если вы все же подозреваете, что проблема в ядре, выполните следующие шаги:

  • Обновление или переустановка ядра:

    sudo apt update
    sudo apt upgrade
    sudo apt dist-upgrade
    sudo apt install --reinstall linux-image-generic
  • Проверка целостности системы:
    Используйте команду fsck для проверки файловой системы на наличие ошибок:

    sudo fsck -f /dev/sdXY

    Где /dev/sdXY — это ваш корневой раздел.

  • Удаление конфликта драйверов:
    Если у вас есть старые драйвера или непроверенные модули:

    sudo update-initramfs -u
  • Выбор предыдущего ядра:
    После перезагрузки попробуйте загрузиться с помощью предыдущей версии ядра через загрузчик GRUB.

  • Замените SSD: Если SSD все еще вызывает проблемы, настоятельно рекомендуется заменить его и проверить систему на предмет зависимости.

Заключение

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

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

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