**Почти всё готово**, но перед перезагрузкой нужно исправить один важный момент.
По скриншотам подтверждено:
* резервная копия создана;
* ядро и `initramfs` существуют;
* новая BLS-запись создана и содержит правильные пути `/boot/vmlinuz-...` и `/boot/initramfs-...`;
* указан правильный ext4-корень `root=UUID=b677...`, без ошибочного `rootflags=subvol=root`;
* `GRUB_ENABLE_BLSCFG=true`;
* в `/boot/grub2/grub.cfg` присутствуют `insmod blscfg` и `blscfg`;
* EFI-файл правильно перенаправляет на `/boot/grub2/grub.cfg`;
* переменной `blsdir` нет;
* все пять итоговых проверок вывели `OK`.
Именно `/boot/grub2/grub.cfg` должен быть основным конфигом, а файл на EFI-разделе Fedora служит небольшим перенаправлением. ([fedoraproject.org][1])
## Что нужно исправить
Новая правильная запись у вас:
```text
index=0
id="...6.17.1-300.fc43.x86_64.0~custom"
kernel="/boot/vmlinuz-6.17.1-300.fc43.x86_64"
```
Но в `grubenv` сейчас сохранена старая запись:
```text
saved_entry=...6.17.1-300.fc43.x86_64
```
То есть **без окончания `.0~custom`**. Это, вероятно, запись `index=1`, у которой на скриншоте указан путь:
```text
kernel="/vmlinuz-6.17.1-300.fc43.x86_64"
```
При вашей разметке такой путь выглядит неправильным: ядро физически находится в `/boot`.
BLS использует имя `.conf`-файла как идентификатор пункта GRUB, в том числе для переменной `saved_entry`. ([fedoraproject.org][2])
### Выполните внутри chroot
```bash
GOOD_ID=$(grubby --info=0 | sed -n 's/^id="\([^"]*\)"/\1/p')
echo "$GOOD_ID"
```
Должно отобразиться значение, оканчивающееся на:
```text
.0~custom
```
Сделайте его записью по умолчанию:
```bash
grub2-set-default "$GOOD_ID"
```
Проверьте:
```bash
grub2-editenv /boot/grub2/grubenv list
```
Теперь первая строка должна выглядеть примерно так:
```text
saved_entry=38db33df6ef44a309354c438b524a21a-6.17.1-300.fc43.x86_64.0~custom
```
`grub2-set-default` штатно обновляет сохранённую запись загрузчика. ([docs.fedoraproject.org][3])
## Временно всегда показывать меню GRUB
Для первой проверочной загрузки лучше не скрывать меню:
```bash
grub2-editenv /boot/grub2/grubenv unset menu_auto_hide
```
Проверка:
```bash
grub2-editenv /boot/grub2/grubenv list
```
Строки `menu_auto_hide=1` больше быть не должно. Отключение этой переменной заставляет Fedora показывать меню GRUB при загрузке. ([fedoraproject.org][4])
Повторно запускать `grub2-mkconfig` после этих двух изменений не требуется.
## Перезагрузка
Внутри chroot:
```bash
sync
exit
```
После `exit` приглашение должно снова стать примерно таким:
```text
root@localhost-live
```
Размонтируйте установленную систему:
```bash
umount -R /mnt/fedora
```
Если ошибок нет:
```bash
reboot
```
Извлеките флешку после начала перезагрузки.
В GRUB автоматически должна быть выбрана новая запись `index=0`. Старую запись пока не удаляйте — сначала убедитесь, что Fedora полностью загружается.
[1]: https://fedoraproject.org/wiki/GRUB_2?utm_source=chatgpt.com "GRUB 2 - Fedora Project Wiki"
[2]: https://fedoraproject.org/wiki/Changes/BootLoaderSpecByDefault?utm_source=chatgpt.com "Changes/BootLoaderSpecByDefault - Fedora Project Wiki"
[3]: https://docs.fedoraproject.org/nl/fedora/f26/system-administrators-guide/kernel-module-driver-configuration/Working_with_the_GRUB_2_Boot_Loader/?utm_source=chatgpt.com "Untitled :: Fedora Docs"
[4]: https://fedoraproject.org/wiki/Changes/HiddenGrubMenu?utm_source=chatgpt.com "Changes/HiddenGrubMenu - Fedora Project Wiki"