LINUX.ORG.RU
решено ФорумAdmin

После обновления Fedora закончилось место в /boot/efi

 , ,


0

2

Всем привет. Обновился на стационарном компе Федору с 37 до 39(через 38) После обнаружил, что загружаюсь с ядра fc38.

uname -a
Linux localhost.localdomain 6.6.12-100.fc38.x86_64 #1 SMP PREEMPT_DYNAMIC Tue Jan 16 01:35:34 UTC 2024 x86_64 GNU/Linux

Но при этом система говорит, что Fedora 39

cat /etc/redhat-release
Fedora release 39 (Thirty Nine)

Решил обновить ядро через dnf. Самое удивительное, что dnf сообщил, что успешно все обновил. Хотя я заметил, что при обновлении было предупреждение:

dkms: running auto installation service for kernel 6.6.13-200.fc39.x86_64 Done.
cp: error writing '/boot/efi/adbce[removed]/6.6.13-200.fc39.x86_64/initrd': No space left on device
dracut: Creation of /boot/efi/adbce[removed]/6.6.13-200.fc39.x86_64/initrd failed
/usr/lib/kernel/install.d/50-dracut.install failed with exit status 1.
warning: %posttrans(kernel-core-6.6.13-200.fc39.x86_64) scriptlet failed, exit status 1

К сожалению несколько лет назад поленился сам разбить SSD диск и указал автоматическое разбиение. Как оказалось 200M очень мало для /boot/efi

fdisk -l

Device       Start        End    Sectors   Size Type
/dev/sdc1     2048     411647     409600   200M EFI System
/dev/sdc2   411648    2508799    2097152     1G Linux filesystem
/dev/sdc3  2508800 2000408575 1997899776 952,7G Linux LVM
du -hs /boot/efi/*
166M /boot/efi/adbceRemoved
7,2M /boot/efi/EFI
4,0K /boot/efi/mach_kernel
16K /boot/efi/System
4,0K /boot/efi/System Volume Information
df -h /boot/efi/adbceRemoved
130M 0-rescue
4,0K 4.17.19-100.fc27.x86_64
4,0K 4.18.7-100.fc27.x86_64
4,0K 4.18.9-100.fc27.x86_64
36M 6.6.12-200.fc39.x86_64
4,0K 6.6.13-200.fc39.x86_64
4,0K 7.00

Итак у меня Fedora 39, которая почему-то загружает ядро fc38. Хотя если посмотреть на вывод df /boot/efi выше, то директория 6.6.12-200.fc39.x86_6 с FC39?

Я не знаю откуда взялось 0-rescue, которое 130M. Я не восстанавливал систему, только обновлял. По дате изменения этой директории она изменялась в день обновления до Fedora 39. Вопросы:

  1. Могу я удалить все файлы из 0-rescue. Там два файла?
  2. Как мне удалить и заново поставить ядро 6.6.13-200.fc39.x86_64 через dnf? Которое вроде бы успешно поставилось, но на самом деле это не так. Я пробовал «dnf remove это ядро» но тогда там полсистемы удалит(за ненадобностью) У меня Nvidia видеокарта. Хотелось, чтобы, dnf при установке сам собрал драйвера akmod-nvidia.
  3. Ну и конечно печально, что как так получилось, что dnf утверждает, что ядро успешно поставилось, но на самом деле это не так. Спасибо.

Перемещено hobbit из general

https://discussion.fedoraproject.org/t/f39-kernels-fail-to-install-when-boot-efi-machineid-is-present/96086

Вот ещё нашел, но в моем случае пишет, что места не хватает, а не то, что ядро не найдено.

Образ восстановления 130M это не слишком много? Я никогда им не пользовался? Могу удалить через rm? И переустановить новое ядро?

user2021
() автор топика
Последнее исправление: user2021 (всего исправлений: 1)

Старые ядра за тебя никто удалять не будет.

Федора нормально работает с ядрами из старых и из будущих релизов.

Глянь сколько ядер в системе

rpm -qa|grep ^kernel|sort

Удалить все незагруженные ядра можно, например, так

sudo dnf remove $(rpm -qa|grep ^kernel|grep -v $(uname -r))

Если всё ещё много места занято в EFI, то сделай бекап, иди в /boot/efi, и удаляй ненужное руками.

papin-aziat ★★★★★
()

Да, если ты юзаешь GRUB (то есть ничего не менял), то 200 мегов достаточно (должно быть занято не больше 50), странно, что вообще возникли проблемы. Тут нужны спецы по grub и dracut, чтобы понять что произошло.

papin-aziat ★★★★★
()

Почему у тебя initrd записывается в ESP-раздел? Разбирайся с этим, так быть, по идее, не должно. Это обычно нужно при использовании systemd-boot. Насколько я в курсе, в Fedora пока не было планов отказываться от GRUB и использовать ESP как /boot.

anonymous
()
Ответ на: комментарий от anonymous

Решение проблемы по ссылке сверху. Видимо готовится какое-то нововведение и если присутствует директория /boot/efi/{имя компа}, то ядро устанавливается новым способом. В моей же OS во времена fedora 27 эту директорию зачем-то создали. В итоге, чтобы ядро установилось правильно (если используешь старый grub), то нужно эту директорию удалить. И после dnf reinstall kernel*{версия ядра}.

user2021
() автор топика
Ответ на: комментарий от anonymous

Обязательно для efistub, да и то если в прошивке нет драйверов на другие. а systemd boot может и другие типы файловых систем для загрузки ядра монтировать если дать ему драйвера

anonymous
()
Ответ на: комментарий от anonymous

Ага, вижу, что уже можно. В статье Поттеринга позиция была против поддержки в загрузчике любых ФС, кроме FAT32, в частности, по соображениям безопасности.

anonymous
()

Граждане, это п*****ц.
Это говно и в генте теперь.
make -j32 bzImage дает ядро в «/boot/efi/89e1950d74dbc230c4312d2563b24b99/6.1.67-gentoo»
Причем это касается и старых ядер. И genkernel не может создать ramdisk. С**А.
Сраные зумеры что, решили поднасрать пользователям grub'а?

Как Это говно убрать и откуда?????
Я же теперь не загружусь нормально...

KosmiK ★★
()
df -h /boot/efi/adbceRemoved
130M 0-rescue
4,0K 4.17.19-100.fc27.x86_64
4,0K 4.18.7-100.fc27.x86_64
4,0K 4.18.9-100.fc27.x86_64
36M 6.6.12-200.fc39.x86_64
4,0K 6.6.13-200.fc39.x86_64
4,0K 7.00

Это в федоре такое выводит df на каталог? Или вы это вручную du на df перепечатали? Но «du -h» такого в федоре вывести не может. Или может?

А нельзя ли вывод

cat /proc/mounts

Что-то я аж заинтересовался таким выхлопом df на каталог в Fedora. Думаю, тут какое-то недоразумение.

LaLe
()
Последнее исправление: LaLe (всего исправлений: 1)
Ответ на: комментарий от KosmiK

Сраные зумеры что, решили поднасрать пользователям grub'а?

Нет, просто кое-кто не читает маны и новости. Вы уже не первый здесь с такими воплями.

utanho ★★★★★
()
Ответ на: комментарий от anonymous

Как не обязательно? Он же только с FAT32 работает, и в документации рекомендуется монтировать ESP в /boot как один из предпочтительных вариантов.

ESP (fat16/32) раздел монтируется в /boot/efi, а не напрямую в /boot

В самом /boot обычно живут ядра, initrd, основная часть grub и в /boot/efi монтируется ESP (не обязательно). Т.е. по большому счету, /boot - обычная директория с данными и городить под /boot отдельный раздел не очень целесообразно.

HighMan
()
Последнее исправление: HighMan (всего исправлений: 1)