Проблема с загрузчиком (кажется)
-
brtantazyabra
- Сообщения: 6
- Зарегистрирован: 12.09.2024
Имеется новенький-красивенький пк на i7 14700K и MSI Z790 Gaming plus wifi. В нем 2 ssd nvme. На одном стоит винда, на другой хочется поставить вожделенный Arch.
Устанавливается без ошибок, но - после установки ssd с Arch не видно в биос, его нет в меню загрузки, и с него не стартует ос. Но с загрузочной флешкой его можно выбрать и начать установку на него. В винде в инспекторе устройств ssd тоже видно.
Мне кажется что проблема где-то в загрузчике... Но как ее решать я пока не особо понимаю. Видел совет использовать SuperGrub и замаскировать его под .msi файлк с определенным именем чтобы этот загрузчик находил UEFI.
Хотел спросить у знатоков сталкивался ли кто-то с подобным и как это правильно решать. (приложил фото биос, вдруг будет полезно)
Спасибо)
При установке arch на китайскую мать с nvme-диском всегда устанавливал загрузчик systemd-boot (bootctl install) c последующей настройкой загрузчика. Но в этот раз не "взлетело", система не загрузилась. И, впервые решил воспользоваться загрузчиком grub. Через установочную флешку чрутнулся в систему доустановил grub и efibootmgr.brtantazyabra:сталкивался ли кто-то с подобным
Через lsblk уточнил точное название диска-nvme
lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
nvme0n1 259:0 0 931,5G 0 disk
├─nvme0n1p1 259:1 0 31M 0 part
├─nvme0n1p2 259:2 0 1G 0 part /boot/efi
└─nvme0n1p3 259:3 0 930,5G 0 part /
grub-install /dev/nvme0n1
grub-mkconfig -o /boot/grub/grub.cfg
Вышел из системы, раз монтировал, ребутнулся и все система загрузилась без проблем (настройки systemd-boot не удалял и ничего не удалял в /boot - просто на диск nvme0n1 "накатил" grub)
Для выбора системы для загрузки при включении ПК на выбор : os-prober, refind, grub-customizer . Но os-prober запускайте перед выполнением команды для создания файла конфигурации grub.
-
brtantazyabra
- Сообщения: 6
- Зарегистрирован: 12.09.2024
Сидел и гуглил как работает загрузка пк. Для чего мне это было надо - в вики есть статьи по установке grub. И в статьях могут быть разные пути. Я не понимаю почему в одном случае один путь установки а, в другом случае - другой, и куда вообще смотрит bootmanager чтобы найти все загрузочные записи, которые есть на машине. Нашел вот такую аааафигительную статью: https://selectel.ru/blog/how-server-starts-uefi/ Там описываются все этапы загрузки и что на них происходит.
Но главный вопрос остался без ответа: куда смотрит bootmanager? И ответ на него тоже вроде бы нашелся, на старом форуме. Вот в этой теме https://archlinux.org.ru/forum/topic/20677/?page=1 много постов, но за то описывается масса интересной информации. Завтра буду пробовать, отпишу что получится
Переведи свой вопрос :)brtantazyabra: Но главный вопрос остался без ответа: куда смотрит bootmanager?
Всё предельно просто, куда тебе удобно/нужно туда и ставишь grub.brtantazyabra: И в статьях могут быть разные пути. Я не понимаю почему в одном случае один путь установки а, в другом случае - другой
Просто задай конкретные вопросы, что тебе не понятно, напишем тебе по возможности, простым языком.
Arch Linux x86-64 на BTRFS
https://t.me/arch_linuxru
-
brtantazyabra
- Сообщения: 6
- Зарегистрирован: 12.09.2024
сорян, без воды не обходится никак)RusWolf: Переведи свой вопрос :)
Просто задай конкретные вопросы, что тебе не понятно, напишем тебе по возможности, простым языком.
я установил арч по гайду (не официальному, я его не сразу понял). на стриме у типа все заработало, а у меня - нет. винда с другого ssd грузится вообще без предложения варианта про линукс. я начал искать.
в uefi второй ssd (который с линуксом) видно в списке устройств, но оно не предлагается для выбора при загрузке системы. я подумал что проблема с загрузочной записью. и с этого момента начал думать так: раз проблема с загрузочной записью, в том плане что uefi ее не видит, то она лежит не там, где uefi ожидает ее увидеть. (но по ходу просто не добавлялась запись в список мат платы с адресом загрузочной записи...)
заргузился с флешкой на ssd с арчом, посмотрел показывает утилита efibootmgr. там был на первом месте загрузчик винды, и потом 2 моих ssd. арча там нет.
я начал разбираться с тем, как же собственно должны работать пути - куда что ставится и почему. в итоге переустановил grub командой
grub-install --efi-directory=/mnt/efi --boot-directory=/mnt/efi/EFI
genfstab -U /mnt >> /mnt/etc/fstab
но по мануалу остался шаг с конфигурацией grub. А вот тут уже вопрос: у меня grub лежит по пути /efi/EFI/grub, а загрузочная запись лежит в /efi/EFI/arch. получается, мне нужно генерировать конфиг для арча след командой
grub-mkconfig -o /efi/EFI/grub/grub.cfg
/usr/bin/grub-probe: error: failed to get canonical path to /boot
grub-mkconfig -o /boot/grub/grub.cfg
при этом в другом разделе вики говорится что монтировать uefi в /boot/efi не рекомендуется, надо в efi.
ЧЯДНТ?
сорян, с более подробной информацией о выводе команд проблема, т.к. на форуме я с ноута, а познаю линкс на стационарнике. в лучшем случае фотки)
Запомни, загрузочные записи EFI, хранятся в памяти UEFI прошивки.
Ты дал такую команду:
grub-install --efi-directory=/mnt/efi --boot-directory=/mnt/efi/EFI
Значит:
Запомни, тут лежит сам загрузчик в исполняемом efi формате.brtantazyabra:а загрузочная запись лежит в /efi/EFI/arch
Запомни тут у тебя лежат модуля, файлы локализации, конфиг, шрифты, темы и тут же должен лежать файл конфигурации.brtantazyabra:у меня grub лежит по пути /efi/EFI/grub
Ты команду довал из под лайв окружения или после arch-chroot /mnt ?brtantazyabra: после этого в efibootmgr появилсь запись Arch.
но по мануалу остался шаг с конфигурацией grub. А вот тут уже вопрос: у меня grub лежит по пути /efi/EFI/grub, а загрузочная запись лежит в /efi/EFI/arch. получается, мне нужно генерировать конфиг для арча след командой
grub-mkconfig -o /efi/EFI/grub/grub.cfg
но я получаю ошибку
/usr/bin/grub-probe: error: failed to get canonical path to /boot
Arch Linux x86-64 на BTRFS
https://t.me/arch_linuxru
grub-mkconfig -o /boot/grub/grug.cfg
/usr/bin/grub-probe: error: failed to get canonical path of `/boot'
...
grub-mkconfig -o /boot/grub/grug.cfg
/usr/bin/grub-mkcofig: line 270: /boot/grub/grug.cfg.new: No such file or directory
Ошибки не исчезают с опытом - они просто умнеют
-
brtantazyabra
- Сообщения: 6
- Зарегистрирован: 12.09.2024
изучал. и даже писал о них в своем предыдущем коментеvasek: brtantazyabra, ты свои картинки изучал??? ... ошибки заметил???
-
brtantazyabra
- Сообщения: 6
- Зарегистрирован: 12.09.2024
-
brtantazyabra
- Сообщения: 6
- Зарегистрирован: 12.09.2024
обязательно. все подробно распишу. может тогда и вы узнаете что делать при таких проблемахRusWolf:Обязательно держи нас в курсе, твоих увлекательных приключений.brtantazyabra:причины пока не найдены.
Борьба с ветряными мельницами, благородное занятие.
Мы знаем, что и как надо делать, что бы не было никаких проблем.brtantazyabra: может тогда и вы узнаете что делать при таких проблемах
Знаем как убрать и твои проблемы.
Но нам интересно следить, как ты сам создаёшь себе проблемы, а потом с ними борешься.
RusWolf:Борьба с ветряными мельницами, благородное занятие.
Arch Linux x86-64 на BTRFS
https://t.me/arch_linuxru
grub не может найти канонический путь … или он не существует или потерпел неудачу, но скорее всего не существует.brtantazyabra:/usr/bin/grub-probe: error: failed to get canonical path to /boot
Объяснять догло, лично я противник всяких чек листов по установке - но для понимания почитать это и плюс Wiki (указывал выше)
Или не используй вообще gurb ...
Ошибки не исчезают с опытом - они просто умнеют
каталог efi в корне лежать не должен. Либо монтируйте раздел с EFI в /boot (если места хватает под initrams с fallback > 200MB), либо в /boot/EFIbrtantazyabra:grub-mkconfig -o /efi/EFI/grub/grub.cfg
показывайте:
lsblk
mount | grep nvm
🖥 AsRock B550M Pro4 :: AMD Ryzen 5 3600 :: 16 GB DDR4 :: AMD Radeon RX 6600 :: XFCE
💻 ACER 5750G :: Intel Core i5-2450M :: 6 GB DDR3 :: GeForce GT 630M :: XFCE