LINUX.ORG.RU

Помогитя с настройкой неведомого rEFInd

 , , ,


0

1

Короче, rEFInd у меня по какой то причине загружает GRUB.

Ну, думаю потом разберусь. Обновил Arco Linux и отвалился граб. Теперь граб сразу кидает в меню UEFI. Пытаюсь загрузиться с помощью rEFInd и понимаю что встрял.

Гружусь с флешки, открываю конфиг и прописываю как показано в примере на Арчвики:

menuentry "Arch Linux" {
	icon     /EFI/refind/icons/os_arch.png
	volume   "Arch Linux"
	loader   /boot/vmlinuz-linux
	initrd   /boot/initramfs-linux.img
	options  "root=PARTUUID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX rw add_efi_memmap initrd=boot\intel-ucode.img initrd=boot\amd-ucode.img"
	submenuentry "Boot using fallback initramfs" {
		initrd /boot/initramfs-linux-fallback.img
	}
	submenuentry "Boot to terminal" {
		add_options "systemd.unit=multi-user.target"
	}
}

В общем, не работает. Запись то, в меню появилась, но ничего не грузит. Просто возвращает в меню самого rEFInd.

Так вот, собственно, ЧЯДНТ?

Система размечена следующим образом:

efi 500Мб fat32

/ 20Гб f2fs

/home 100Гб f2fs

★★

Последнее исправление: Vochatrak-az-ezm (всего исправлений: 1)

Я немного по-другому настроил, не через refind.conf(там тоже что-то не получалось). Но это мне с гентой(ядра руками все равно собираю каждый раз) вариант удобный, тебе может и не подойдет.

Сделал конфиг по пути

/boot/efi/EFI/gentoo/refind_linux.conf

Со следующим содержимым(можно ограничится одной строкой, своей естественно!!!)

"Boot with standard options"  "root=/dev/nvme0n1p3 ro init=/usr/lib/systemd/systemd rootfstype=ext4 nvidia-drm.modeset=1 video=3840x2160-24,mtrr:3 splash quiet console=tty1 mitigations=off"
"Boot with force fsck"  "root=/dev/nvme0n1p3 ro init=/usr/lib/systemd/systemd rootfstype=ext4 nvidia-drm.modeset=1 video=3840x2160-24,mtrr:3 fsck.mode=force fsck.repair=yes console=tty1"
"Boot to single-user mode"    "root=/dev/nvme0n1p3 ro init=/usr/lib/systemd/systemd root=UUID=a73a1e4b-689a-47c8-b7a6-518cb16df62d  rootfstype=ext4 nvidia-drm.modeset=1 video=vesafb:3840x2160-16,mtrr:3 splash quiet console=tty1 single"
"Boot with minimal options"   "ro root=/dev/nvme0n1p3"

Туда же рядом с конфигом копирую(я руками, можно и скриптом думаю) ядра, которые мне нужны. Самое свежее ядро из лежащих рядом с конфигом рефинд выбирает сам.

А в refind.conf прописал, что default_selection «gentoo», а всё остальное disable.

Loki13 ★★★★★
()

по какой то причине загружает GRUB

Потому, что груб и есть золушка, выполняющая грязную работу. А rEFInd горазд только красивые иконки рисовать.

Ну это лирика. Если серьезно, то…

А rEFInd умеет f2fs? Где сказано, что раздел f2fs? Где сказано, на каком именно диске-разделе брать систему?

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

А rEFInd умеет f2fs?

Вероятно нет. Я об этом не подумал. Спасибо за подсказку.

Где сказано, что раздел f2fs?

В Арчивики в примере этого не было. Разве он не сам определяет тип ФС?

Где сказано, на каком именно диске-разделе брать систему?

root=PARTUUID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX

Vochatrak-az-ezm ★★
() автор топика
Ответ на: комментарий от Vochatrak-az-ezm

У REFInd вроде по имени иконка выбирается. Я gentoo написал и загрузилась картинка os_gentoo.png в /BOOT/icons(или из темы которую установишь).

You can name an icon file after your boot loader, but with an extension of .icns, .png, .bmp, .jpg, or .jpeg depending on the icon's format. For instance, if you're using loader.efi, you might name the icon file loader.png. (If you use the scan_all_linux_kernels option, you can give an icon for a Linux kernel without a .efi extension a name based on the kernel name but with an appropriate extension—for instance, bzImage-5.4.0.png will serve as the icon for the bzImage-5.4.0 kernel.)

You can place a boot loader in a directory with a name that matches one of rEFInd's standard icons, which take names of the form os_name.icns or os_name.png. To use such an icon, you would place the boot loader in the directory called name. For instance, the boot loader in the EFI/freebsd directory will use rEFInd's os_freebsd.png icon.

Тут ещё много про иконки https://www.rodsbooks.com/refind/configfile.html#icons

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

А значит нужен огромный ЕФИ-раздел, чтобы там ядра поместились. И система получается «размазана» по нескольким разделам, система отдельно, ядро отдельно. А если загрузчик вообще на другом диске… Но, любители плодить разделы - это любители создавать себе сложности.

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

Ну 500Мб это вроде не такой и большой. Да и раньше я /boot делал 500Мб и так же на него ядра складывал. Разница только в том что /boot был ext2, а EFI теперь FAT.

Так-то если бы не редкая необходимость в дуалбуте, я бы вообще и рефинд выпилил и грузил сразу ядро из stub-а какого.

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

Кстати попробовал на компе с BtrFS и там ядра подцепились из бута.

Перекидывать ничего не приходится. Но тоже только с помощью refind_linux.conf.

Почему то из основного конфига ни в какую.

Vochatrak-az-ezm ★★
() автор топика
Ответ на: комментарий от Vochatrak-az-ezm

При современных ядрах, 500мб это на пару ядер хватит. А если только загрузчики, то 100мб хватит, чтобы груб поместился раз десять. И еще раз, а если загрузчик на другом диске, например на флешке, тоже туда ядра ташить…

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

Это что ж за ядра такие на 250Мб?

$ ls -lh /boot/EFI/Gentoo/
итого 24M
-rw-r--r-- 1 root root  278 Nov  9  2021 refind_linux.conf
-rw-r--r-- 1 root root 8.0M Sep  6 00:26 vmlinuz-5.15.63-gentoo-dist
-rw-r--r-- 1 root root 8.0M Nov 19 04:03 vmlinuz-5.15.77-gentoo-dist
-rw-r--r-- 1 root root 8.0M Dec  5 06:15 vmlinuz-5.15.80-gentoo-dist
Aegir
()
Ответ на: комментарий от Aegir

А инитрд ты не считаешь. Впрочем гента, наверняка у тебя там всего полтора модуля. Обычные ядра:

avn@hi10:/mnt/ubuntu-22.04.1-desktop-amd64.iso/casper$ ls -l
total 2362265
-r--r--r-- 1 root root      59000 Aug  9 19:00 filesystem.manifest
-r--r--r-- 1 root root       2885 Aug  9 19:00 filesystem.manifest-minimal-remove
-r--r--r-- 1 root root       3578 Aug  9 19:00 filesystem.manifest-remove
-r--r--r-- 1 root root         10 Aug 10 21:39 filesystem.size
-r--r--r-- 1 root root 2288189440 Aug 10 21:26 filesystem.squashfs
-r--r--r-- 1 root root        833 Aug 10 21:36 filesystem.squashfs.gpg
-r--r--r-- 1 root root  119611265 Aug  9 19:00 initrd
-r--r--r-- 1 root root   11090688 Aug  9 19:00 vmlinuz
andytux ★★★★★
()