Ядро не загружается (ошибка pata acpi)

This page is a translated version of the page Kernel Fails to Load (pata acpi error) and the translation is 100% complete.
Other languages:
English • ‎русский

Обзор

Подсказка
Parallel ATA (PATA) - это стандарт интерфейса для подключения устройств хранения данных, а Advanced Configuration and Power Interface (ACPI) используется для конфигурации устройств и управления питанием.


Эта проблема может повлиять на определенные компьютерные системы, использующие JMicron PATA Controller chipset, который используется для управления и доступа к устройствам хранения данных, таким как твердотельные накопители (SSD). Более конкретно, это может быть связано с тем, что драйвер PATA ACPI загружается программой GRUB (GR и Unified B ootloader), что, соответственно, приводит к конфликту с чипсетом JMicron. Если это действительно так, то при попытке загрузки затронутой версии ядра должно появиться сообщение об ошибке, аналогичное приведенному ниже примеру:

ERROR: device 'UUID=......' not found. Skipping FSCK'
ERROR: Unable to find root device 'UUID=......'
You are being dropped to the recovery shell
Type 'exit' to try and continue booting
sh: can't access tty: job control turned off'

[...]

mount: can't find UUID='.....'
You are now being dropped into the emergency shell.


Если да, то решение заключается в том, чтобы просто запретить загрузку драйвера PATA ACPI. Это простая задача, решаемая путем изменения одной строки в файле default grub.


Открытие файла GRUB по умолчанию

Предупреждение
НЕ редактируйте файл grub.cfg . Это не то же самое, что файл grub, который не имеет расширения в конце своего имени.


Синтаксис команды для открытия файла grub следующий:

user $ sudo [text editor] /etc/default/grub COPY TO CLIPBOARD



Например, если вы хотите отредактировать файл в терминале с помощью nano (стандартный терминальный текстовый редактор), введите:

user $ sudo nano /etc/default/grub COPY TO CLIPBOARD



Если вы установили полную версию Manjaro, а не NET-редакцию, вам может быть проще использовать предустановленный текстовый редактор gedit. Он откроет файл как документ, что облегчит его чтение и редактирование. Чтобы использовать gedit введите:

user $ sudo gedit /etc/default/grub COPY TO CLIPBOARD


Редактирование файла GRUB по умолчанию

После открытия файла default grub необходимо изменить команду GRUB_CMDLINE_LINUX="", находящуюся в верхней части файла. Ниже приведен пример, а соответствующая строка выделена зеленым цветом для наглядности:

GRUB_DEFAULT=saved
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="Manjaro"
GRUB_CMDLINE_LINUX_DEFAULT="GRUB_CMDLINE_LINUX_DEFAULT= resume=/dev/disk/by-uuid/<некоторый-guid>"
GRUB_CMDLINE_LINUX=""


Чтобы предотвратить загрузку драйвера PATA ACPI, необходимо добавить modprobe.blacklist=pata_acpi между пустыми кавычками. Ниже приведен пример необходимой поправки, которая для наглядности выделена зеленым цветом:

GRUB_DEFAULT=saved
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="Manjaro"
GRUB_CMDLINE_LINUX_DEFAULT="GRUB_CMDLINE_LINUX_DEFAULT= resume=/dev/disk/by-uuid/<некоторый-guid>"
GRUB_CMDLINE_LINUX="modprobe.blacklist=pata_acpi"


После завершения внесения изменений сохраните их и закройте файл:

  • nano: Нажмите CTRL и 'x' для выхода, 'y' для сохранения и <enter> для завершения, или
  • gedit: Выберите опцию "Сохранить" и закройте окно.


Теперь всего лишь осталось обновить GRUB перед перезагрузкой.


Обновление GRUB

Чтобы обновить GRUB, убедитесь, что терминал открыт, и введите следующую команду:

user $ sudo update-grub COPY TO CLIPBOARD



После завершения перезагрузите систему, чтобы изменения вступили в силу.