Ошибка установки Arch Linux grub «airootfs»

17

Я следовал официальному руководству по установке. Все было гладко до раздела загрузчика.

Я столкнулся с ошибкой

/usr/bin/grub-probe: error: failed to get canonical path of 'airootfs'.

так же, как этот вопрос при выполнении команды:

grub-mkconfig -o /boot/grub/grub.cfg

Я устанавливал arch на VirtualBox и шаг за шагом следовал официальному вики-руководству GRUB .

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


Кстати, на самом деле, я также столкнулся с этой ошибкой на предыдущем шаге - установка grub

grub-install --target=i386-pc /dev/sda

Я добавил параметр корневого каталога, и он продолжил без появления ошибки.

grub-install --root-directory=/mnt /dev/sda

Я сделал это, потому что я смонтировал свой основной раздел Linux / dev / sda3 в / mnt, но в grub-mkconfig для меня нет параметров корневого или загрузочного каталога.

Вот моя таблица разделов, отображаемая утилитой fdisk: mypartitiontable

Большое спасибо. С уважением.

李智 修
источник
какая ошибка? какая ошибка?
@ user137124 просто ошибка. Извините за мой неясный заголовок. Тем не менее, я улучшил это и надеюсь, что кто-то ответит.
修 修
Все еще неясно, пожалуйста, отправьте точное сообщение об ошибке.
Джонсон Стюард
@JohnsonSteward Извините, вы, наверное, устали от этих неясных вопросов. Я снова изо всех сил старался описать вопрос. Пожалуйста, ответьте, если вы все еще не понимаете ошибку, о которой я говорил, тогда я выложу полный снимок экрана здесь. Большое спасибо.
修 修
@ 李智 修 кажется, что вы должны делать grub2-mkconfig в chroot вместо того, чтобы делать это снаружи. grub2-mkconfigиспользуется grub-probeдля обнаружения реальных устройств, связанных с точками монтирования, в то время как airootfs(rootfs archiso) загружается в оперативную память и не имеет канонического пути.
Джонсон Стюард

Ответы:

18

Похоже, вы должны делать grub2-mkconfig в chroot, а не делать это снаружи. grub2-mkconfigиспользует grub-probeдля обнаружения реальных устройств, связанных с точками монтирования, в то время airootfsкакrootfs ) загружается в оперативную память и не имеет канонического пути.

Поэтому перед установкой grub и генерацией конфига сделайте это сначала:

arch-chroot /mnt /bin/bash
Джонсон Стюард
источник
Я получаю те же ошибки, что и OP. Команды, перечисленные выше, приводят к «Ошибка при установке chroot ...» . Я не был бы в этом прекрасном беспорядке, если Арч не сломал бы себя после последнего обновления. Удивительно, как часто эта ОС ломается. Это хуже, чем чертовски Microsoft Windows.
Но в настоящее время я в порядке с использованием AUR время от времени, не нарушая мои настройки. Может быть, ограничение использования самостоятельной сборки (сборка из источника самостоятельно) может помочь? Я всегда вхожу в Y, когда Пакман спрашивает меня что-нибудь LOL
修 修
5
Но команды установки GRUB недоступны внутри chroot ...
flarn2006
2
@ flarn2006 Вам нужно установить пакет grub внутри chroot.
Крис
6
@ flarn2006pacman -S grub
Виталий Зданевич