rEFInd
A rEFInd egy EFI-platformokra és UEFI-platformokra készült boot manager, amely a rEFIt utódja és annak továbbfejlesztett változata. Grafikus felületet biztosít az EFI-alapú operációs rendszerek elindításához és az EFI-alapú segédprogramok eléréséhez.
Telepítés
Kernel
Az EFI framebuffer támogatása (CONFIG_FB_EFI) vagy egy gyártóspecifikus framebuffer szükséges a videó megjelenítéséhez, amikor a számítógép által futtatható bináris kernelképfájlt egy EFI-rendszerből, például a rEFInd segítségével indítják.
Device Drivers --->
Graphics support --->
Frame buffer Devices --->
<*> Support for frame buffer devices --->
[*] EFI-based Framebuffer Support
USE jelölőzászlók
A rEFInd opcionálisan támogatja a több fájlrendszer átvizsgálását az EFI-végrehajtható fájlok után kutatva, mielőtt betöltené a számítógép memóriájába az operációs rendszert. Ez lehetővé teszi, hogy a kernelképfájlt az EFI System Partition (ESP) kívül legyen tartva, de ennek eléréséhez a rEFInd a megfelelő USE jelölőzászló beállításokkal kell, hogy legyen összeállítva a forráskódból.
USE flags for sys-boot/refind The UEFI Boot Manager by Rod Smith
+ext2
|
Builds the EFI binary ext2 filesystem driver |
+ext4
|
Builds the EFI binary ext4 filesystem driver |
+iso9660
|
Builds the EFI binary iso9660 filesystem driver |
btrfs
|
Builds the EFI binary btrfs filesystem driver |
doc
|
Add extra documentation (API, Javadoc, etc). It is recommended to enable per package instead of globally |
hfs
|
Builds the EFI binary hfs filesystem driver |
ntfs
|
Builds the EFI binary ntfs filesystem driver |
reiserfs
|
Builds the EFI binary reiserfs filesystem driver |
secureboot
|
Automatically sign efi executables using user specified key |
Emerge
root #
emerge --ask sys-boot/refind
rEFInd has been built and installed into ${EROOT%/}/usr/share/${P} You will need to use the command 'refind-install' to install the binaries into your EFI System Partition
ESP telepítés
Miután a rEFInd szoftvercsomag telepítve lett a számítógépre, egy második lépés szükséges a bináris fájlok ESP-be való beletelepítéséhez. Ha nincs ESP, akkor létre kell hozni egyet. Részletek a EFI System Partition leírásban.
Fájlrendszer elrendezése
A számítógép által binárisan futtatható kernelképfájl tárolására több lehetőség áll rendelkezésre.
Bootoláskor a rEFInd automatikusan megtalálhatja az EFI boot képfájlokat és a Linux kernelképfájlokat. Azokat a fájlokat keresi, amelyek .efi kiterjesztéssel végződnek, vagy vmlinuz, bzImage vagy kernel névvel kezdődnek. Azokon a fájlrendszereken, amelyeket képes olvasni (a fentebb említett USE jelölőzászlók alapján), az alábbi helyeken keres:
- A fájlrendszer gyökerében keres (/).
- A /boot könyvtárban keres.
- Az /EFI legtöbb alkönyvtárában keres. (Tekintse meg a példát a kernelképfájl az ESP partíción leírásnál).
A boot partíció beállítása meglehetősen rugalmas. Például választhatja az alábbi lehetőségek egyikét:
- Különálló boot, ESP és root partíciók.
- Különálló ESP partíció a /boot könyvtárral, mint a root fájlrendszer része. (Feltéve, hogy nem titkosított, nem LVM és az egyik fent támogatott fájlrendszer.)
- Kizárólag az ESP partíció csatolva a /boot könyvtárba, vagy egységesített kernelképfájlok a /EFI/Linux/ helyen.
Telepítés NVRAM módosítással
A rEFInd szoftvercsomag tartalmazza a refind-install parancsot. Ennek futtatása a következőket eredményezi:
- Megnézi, hogy az ESP már csatolva van-e. Ha nincs csatolva, akkor automatikusan csatolja az ESP-t a /etc/fstab szerint.
- Telepíti a saját futtatható refind_x64.efi alkalmazását és egyéb fájlokat az ESP-be.
- Meghívja a efibootmgr parancsot annak érdekében, hogy beállítsa magát alapértelmezett "boot manager"-ként.
root #
refind-install
ShimSource is none Installing rEFInd on Linux.... ESP was found at /boot using vfat Copied rEFInd binary files Copying sample configuration file as refind.conf; edit this file to configure rEFInd. Installing it! rEFInd has been set as the default boot manager. Creating //boot/refind_linux.conf; edit it to adjust kernel options. Installation has completed successfully.
user $
tree -L 3 /boot
/boot ├── EFI │ ├── refind │ │ ├── icons │ │ ├── keys │ │ ├── refind.conf │ │ └── refind_x64.efi │ └── tools └── refind_linux.conf
user $
efibootmgr -v
Boot000x* rEFInd Boot Manager HD(1,GPT,1729a003-cf0d-4bd4-88c9-cc24d8d418c4,0x800,0x2f000)/File(\EFI\refind\refind_x64.efi)
A Boot000x* értéke változhat a meglévő bejegyzésektől függően.
Ha a /boot nem található a /etc/fstab fájlban, akkor a refind-install alapértelmezés szerint a /boot/efi/EFI könyvtárat fogja használni, és akár egy meglévő /boot/EFI könyvtárat is áthelyezhet a /boot/efi/EFI helyre.
Fontos, hogy manuálisan újra felcsatolja az efivarfs fájlrendszert a
rw
opcióval, különben a rEFInd nem tudja beállítani magát alapértelmezett "boot manager"-ként, és hibajelzést ad.
Ennek elvégzéséhez használja a következő parancsot:
root #
mount -o remount,rw -t efivarfs efivarfs /sys/firmware/efi/efivars
Telepítés az EFI Default/Fallback elérési útvonalra
A rEFInd telepíthető egy adathordozóra az default/fallback EFI/BOOT/bootx64.efi fájlnévvel. A számítógép NVRAM bejegyzései nem módosulnak ilyen módon történő telepítéskor. A legtöbb EFI és UEFI firmware támogatja a fallback (tehát visszaállítási) EFI képfájlt, amelyet akkor használhat a bootoláshoz, amikor a beállított EFI fájl nem található. Néhány firmware felülírhatja a beállított bootolási választást, amennyiben megtalálja a fallback boot képfájlt. Ez a módszer segítséget nyújthat az EFI módba való bootoláshoz, amikor az egyébként nehézségekbe ütközik.
root #
refind-install --usedefault /dev/sda
Ahol /dev/sda az ESP. Ez a telepítési módszer használható akár állandó beállításként egy bootolható USB flash meghajtó létrehozásához, vagy a rEFInd telepítéséhez olyan számítógépen, amely hajlamos "elfelejteni" az NVRAM beállításait, illetve használható ideiglenes bootoló eszközként annak érdekében, hogy az operációs rendszer EFI módban bootoljon.
Kernelkezelés
Függetlenül attól, hogy /boot külön partícióként vagy a gyökérfájlrendszer részeként van jelen, a rEFIndnek képesnek kell lennie megtalálni egy kernelképfájlt, amennyiben a szabványos elnevezési konvenció van használva. Ez a viselkedés kompatibilissé teszi a (fél)automatikus kerneltelepítési módszerekkel, például genkernel --install vagy make install a további beállítás szükségessége nélkül.
Initial RAM fájlrendszer
Bootoláskor a rEFInd olyan "initial RAM" fájlt tartalmazó adathordozót keres, amely init kezdetű, és egy kernelverziójának a karakterlánccal végződik. Például a initramfs-5.4.66-gentoo.img megfelel a vmlinuz-5.4.66-gentoo fájlnak. Amennyiben a refind_linux.conf fájlban nincs megadva initrd, akkor az automatikusan hozzáfűződik a kernelparancssorhoz.
Amikor Ön olyan eszközöket használ, mint a Genkernel vagy a Dracut, nincs szükség további beállításra. Azonban, ha egyedi Initramfs kerül használatra, akkor némi odafigyelés szükséges. Vagy az initramfs fájlt azonos elnevezési konvencióval kell megnevezni, vagy a nevét meg kell adni a refind_linux.conf fájlban.
(Egységes) kernelképfájl az ESP partíción (Opcionális)
Lehetséges a kernelképfájlt és az "initial RAM" fájlal ellátott adathordozókat az ESP partíción tárolni azáltal, hogy azt a /boot csatolási pontra illeszti. Mivel a kernelképfájl egy külön partíción van, a rEFInd nem tudja automatikusan meghatározni, hogy melyik disztribúcióhoz tartozik, ezért visszaáll az alapértelmezett Tux logóra. A Gentoo ikonfájl automatikus telepítéséhez, amelyet a rEFInd észlelhet a kernelkép mellett, engedélyezze a refind USE jelölőzászlót a sys-kernel/installkernel szoftvercsomagnál.
Hasonló probléma merül fel a egységes kernelképfájl használatakor, mivel ezek a EFI/Linux könyvtárba kerülnek az ESP partíción. A rEFInd ekkor nem tud információt szerezni arról, hogy melyik disztribúcióhoz tartozik ez az egységes kernelképfájl. A Gentoo ikonfájl automatikus telepítéséhez, amelyet a rEFInd észlelhet az egységes kernelképfájl mellett, engedélyezze a refind USE jelölőzászlót a sys-kernel/installkernel szoftvercsomagnál.
Az, hogy melyik ikonfájl kerül telepítésre, felülírható azzal, hogy a REFIND_ICON változót beállítja a környezetben.
Linux parancssori opciók
A refind_linux.conf fájlnak ugyanabban a könyvtárban kell lennie, mint a kernelképfájlnak. Automatikusan létrejön a /boot könyvtárban a refind_install folyamat során vagy a mkrlconf parancs használatával. Minden bejegyzés egy opcióként jelenik meg minden kernelképfájl számára.
Az alapértelmezett bejegyzés a jelenlegi /proc/cmdline alapján jön létre. A "Single" ugyanaz, mint az alapértelmezett, de hozzáadva a single opciót. A minimal pedig csak az aktuális gyökér eszközt tartalmazza, a ro argumentummal. Egyik bejegyzés sem tartalmazza a binárisan futtatható initramfs képfájlt, mivel az automatikusan beállításra kerül az indításkor.
Ez a fájl általában azonnal működik, amikor ugyanabból a boot munkamenetből generálják, amelyből el kell indulnia. Például, amikor a bootloadert lecserélik rEFInd-re. Azonban, amikor egy másik operációs rendszerből generálják le, például a Gentoo telepítésekor, akkor odafigyelés szükséges, és a bejegyzéseket manuálisan kell korrigálni.
Egyszerű példa a beállításra:
/boot/refind_linux.conf
"Default" "root=/dev/sda2 rootfstype=xfs ro quiet"
"Console" "root=/dev/sda2 rootfstype=xfs ro quiet nox nogui"
"Emergency" "root=/dev/sda2 rootfstype=xfs ro 1"
Egyéni (statikus) initramfs és mikrokód betöltése:
/boot/refind_linux.conf
"Standard boot" "root=LABEL=root initrd=intel-ucode.img initrd=initramfs-custom.img quiet"
"Single-user mode" "root=LABEL=root initrd=intel-ucode.img initrd=initramfs-custom.img single"
"Minimal options" "ro root=LABEL=root initrd=initramfs-custom.img"
A rEFInd fő kiválasztási képernyője az első lehetőséget használja alapértelmezettként, azonban alternatív bootolási bejegyzések elérhetőek, amennyiben kijelöli a kernelképfájlt és megnyomja az F2 billentyűgombot. Emellett a parancssor menet közben módosítható, amennyiben az F2 billentyűgombot lenyomva megnyitja egy menüelemet szerkesztő módban. Ha elkészült, akkor nyomja meg az Enter billentyűgombot a kernelképfájl elindítása érdekében.
A fenti kernelképfájlhoz tartozó parancssori opciók csak példák. A felhasználónak saját opciókra lesz szüksége, amelyek lehetővé teszik a kernelképfájl indítását az Ö saját számítógépén.
Ikonok
A rEFInd különféle Linux disztribúciókhoz tartozó ikonok gyűjteményével települ. Annak érdekében, hogy beállítson egy ikont a menübejegyzés számára, előbb ismernie kell az operációs rendszer nevét. Ehhez a következő helyeken keres, méghozzá a következő sorrendben:
- Egy ikon alapneve megegyezik a bináris futtatható kernelképfájl alapnevével. Például vmlinuz-5.4.66-gentoo.png .
- A kernelképfájl egy ESP partíción lévő alkönyvtárban található, amely az operációs rendszerről van elnevezve. Például a bináris kernelképfájl a /EFI/Gentoo/vmlinuz-5.4.66-gentoo helyen, és így kép a /EFI/Gentoo/vmlinuz-5.4.66-gentoo.png helyen található. További információért tekintse meg a kernelképfájl az ESP partíción leírást.
- A fájlrendszer címkéje szóközzel, aláhúzással vagy kötőjellel elválasztott operációs rendszernevet tartalmaz. Például tunetfs -L Gentoo-boot /dev/sdaX
- GPT partíció neve, amely a fájlrendszer címkékhez hasonló konvenciót követ.
- A /etc/os-release fájlból ugyanazon a partíción. Például, amikor a /boot a gyökérpartíció része.
- Hardkódolt szabályok kernelnevek alapján. Például vmlinux és bzImage alapértelmezetten a Linux "Tux" ikonjához tartoznak.
Az egyedi ikon automatikus telepítése érdekében (egységesített) bináris kernelképfájl mellé engedélyezze a refind USE jelölőzászlót a sys-kernel/installkernel szoftvercsomagban, és állítsa be a REFIND_ICON változót a kívánt ikonra a környezetben. Ha ez a változó nincs beállítva, akkor alapértelmezés szerint a Gentoo logó kerül telepítésre.
További olvasnivaló a témában
- Kernel/Configuration — leírja a Linux kernel kézi úton történő beállítását.
- Dracut — an initramfs infrastructure and aims to have as little as possible hard-coded into the initramfs.
- GRUB — egy több rendszerindításos másodlagos operációs rendszerbetöltő (bootloader) szoftver.
- Syslinux — egy szoftvercsomag, amely egy bootloader-családot tartalmaz.
- UEFI Dual boot with Windows 7/8 — describes how to dual boot Microsoft Windows on a UEFI computer.