Bejelentkezés

GRUB 2 ismertető

Olvasóink értékelése: 5 / 5

Csillag aktívCsillag aktívCsillag aktívCsillag aktívCsillag aktív
 

Ha már ÜLÜ kiadta a feladatot, akkor lássuk mi is az a cikk, amit a beírásában említett:

 

Migrálás GRUB 2-re

(Forrás: Migrate to GRUB 2 - az IBM.com cikke)
Tartalmi összefoglaló

A Linux használta boot-eszközök változnak. A GRUB-ot hivatalosan már csak karbantartják, és a fejlesztők a teljesen újonnan írt GRUB 2 csomagra váltottak át. Az Ubuntu-kban a 9.10-es verzió óta alapbeállításként használják a GRUB 2-öt.

 

A boot betöltő szerkezete

Grub figure1

A rajzon a két GRUB által alkalmazott betöltési folyamat látható. A gépen elsőként induló BIOS betölti a boot-eszköz első – merevlemezeknél MBR-ként ismert – szektorát és végrehajtja az ott található kódot. A merevlemez MBR-je tartalmazza a betöltő kód első szeletét (stage 1), ami az általánosan alkalmazott 512 byte-os szektorméret miatt elég rövid. A betöltők, közöttük a két GRUB is, a további kódokat máshol helyezik el. (GRUB-nál a kód maradékát stage 1.5-nek nevezik és általában az MBR utáni, fel nem használt területen helyezik el.) A további kódok (stage 2) a Linux partíción fájlban találhatók, jellemzően a /boot könyvtárban. (A képen az egyszerűsítés miatt ez nem látszik.)

A GRUB 2 formailag alapvetően hasonlít a GRUB Legacy-hoz de nincs stage 1.5 és moduláris konfigurációs megközelítést alkalmaz és általában a /boot/grub -ban található. (További variációk lehetségesek. Pl. GRUB stage 1 nem MBR-ben van, mert azt egy másik multi boot betöltő foglalja el – ez lehet az EFI is.) Ha lecserélnéd a GRUB-ot GRUB 2-re, akkor ehhez telepíteni kell az új GRUB 2 csomagot és egy parancs futtatásával lecserélni a GRUB-hoz tartozó MBR-bejegyzést.

 

A GRUB 2 fejlesztései

Noha jól működött, azért határozták el a GRUB Legacy cseréjét, mert a kódírók zavarosnak és karbantarthatatlannak találták, illetve új tulajdonságokkal is teljes újraírással egyszerűbben lehetett felruházni.

  • Továbbá, az előddel ellentétben, ami csak x86 és x86-64-es rendszereken működött, a GRUB 2 alkalmazható Power PC-re és SPARC-ra is.
  • Többfajta firmware-t (benne BIOS, EFI és OpenFirmware) is támogat.
  • A GRUB hivatalosan MBR alapú volt, a GRUB 2 hivatalosan is támogatja a GPT-t (GUID Partition Table.
  • A GRUb Legacy nem támogatja a RAID és LVM összeállításokat, azaz legalább egy szabványos fájlrendszer kell legyen a gépen (vagy a RAID1 összeállításban), hogy a GRUB olvasni tudja konfigurációs beállításokat. A GRUB 2 támogatja a Linux-os RAID-et és LVM-et, tehát a rendszerben lehet akár RAID és LVM kizárólagosan.
  • A GRUB közel egy tucat fájlrendszert kezelt. A GRUB 2 ezeken felül kezeli az Apple HFS+-t, az NTFS-t és a Sun ZFS-ét is.
  • A GRUB a Multiboot specifikációt alkalmazó kerneleket tudja közvetlenül betölteni (pl. Linux, FreeBSD, NetBSD, OpenBSD, GNU HURD, OpenSolaris és Darvin). A Windows-hoz hasonló más operációs rendszerek betöltését a GRUB és a GRUB 2 egyformán chainload-dal oldja meg.

 

GRUB 2 beállítása

A GRUB 2 beállító fájlja alapbeállítás szerint a /boot/grub/grub.cfg, vannak Linux disztrók, ahol /boot/grub2/grub.cfg van helyette. A GRUB 2 beállító fájljai alapvetően hasonlítanak a GRUB-éhoz, de számos eltérés tapasztalható.

 

GRUB 2 példa konfigurációs fájl:

set timeout=10
set default=0

menuentry "Linux (2.6.32.2 kernel)" {
set root=(hd1,8)
linux /bzImage-2.6.32.2 ro root=/dev/sdb4
initrd /initramfs-x86_64-2.6.32.2
}

menuentry "Windows 7" {
set root=(hd1,2)
parttool (hd0,1) hidden+
parttool (hd1,5) hidden-
chainloader +1
}

Ez hasonlít a GRUB-hoz. Globális opciók beállításával indul, esetünkben 10 mp. várakozást és a menü kezdő értékét határozza meg. Ezután menüelemek (menuentry) következnek. Formátumuk ugyan eltér a GRUB-étól, de a céljuk azonos. Mindegyik egy operációs rendszert – pl. Linux kernel – (vagy egy változatot) határoz meg. A bejegyzés egy kulcsszóval és egy idézőjelben tlálható névvel (ez jelenik meg a GRUB 2 menüben) indul, amit kapcsos zárójelekben ({}) az opciók követnek.

 

Változások a konfigurációs fájlban

Számos, említésre méltó változtatás történt a GRUB 2-ben a GRUB Legacy-hoz képest:

  • a GRUB 2 a „set" kulcssót és az „=" jelet használja az opció elnevezése és értéke között;
  • a GRUB menüelemet a „title" és a menüelem neve indítja és a következő „title" zárja;
  • a GRUB kernel szót használja a Linux kernel meghatározására. A GRU 2 a „linux" szót;
  • néhány opció neve megváltozott (hide/unhide – Listing 1);
  • a partíciók számozása GRUB 2-ben 1-ről indul, a lemezek maradtak. Pl. GRUB (hd0,0) GRUB 2-ben (hd0,1);

Számos új tulajdonsággal bővítették ki a GRUB 2-t, ezek zöme a normál működésben nem érzékelhető. Néhány fontosabb új lehetőség:

  • modulok tölthetők be az induláskor insmod paranccsal (pl. insmod lvm), de automatikusan is. A modulok a /boot/grub könyvtárban vannak „.mod" kiterjesztéssel;
  • új szkripttelési tulajdonságok, lehetővé téve az adatmentést, a feltételes betöltést stb. Ezek dokumentálása még nem teljes

 

A GRUB 2 átkonfigurálásának alternatív módszerei

Az Ubuntu 9.10-nek van egy grub-mkconfig eszköze, ennek szkiptjei az /etc/grub.d-ben találhatók. A szkript automatikusan is futhat pl. kernel frissítése után. Ha kézzel állítunk valamit, akkor tanácsos a grub.cnf-ről másolatot készíteni.

Konkrét, meghatározott változtatások érdekében a /boot/grub.d szkriptjeit közvetleniül is lehet szerkeszteni. A grub-mkconfig szempontjából kiemelt fontosságú a /etc/default/grub, ami a végleges grub.cnf fájlhoz az alapbeállításokat tartalmazza.

Léteznek harmadik féltől származó eszközök a GRUB 2 kezelésére. Ilyen az Ubuntu-ban is használt StartUp Manager.

 

GRUB 2 telepítése és használata

A GRUB 2-t telepíteni kell, de előtte át kell gondolni a partíciók elrendezését

Partíciók előkészítése GRUB 2-re. MBR esetén nem kell semmi különöset csinálni, ami a GPT-re is részben igaz. GPT esetén van egy BIOS boot partíció, ahová a GRUB 2 beír néhány extra kódot. Ha ez hiányzik, akkor a GRUB 2 a /boot könyvtárban található lemezszektorok listára támaszkodik. Ha fájlrendszert módosítod, akkor a szektorlista elavulttá válhat, így a GRUB nem lesz képes betölteni. A BIOS boot partíció használata GPT lemezek esetén melegen ajánlott!

A BIOS boot partíció legyen legalább 31 kB méretű. Ha nagyobb, az csak hasznos lehet. A GNU Parted újabb változataiban a bios_grub opció beállítható. GPT fdisk esetén a partíció típusának EF02-t kell választani.

 

GRUB 2 telepítése

MBR lemezre ugyanúgy kell telepíteni, mint a GRUB-ot, grub-install paranccsal (némely disztró ezt grub2-install-ra nevezte át), meghatározva a telepítés helyét, de kell a --force opció.

GRUB Legacy: grub-install /dev/sda4

GRUB 2: grub-setup --force /dev/sda4, bár ez nem mindig hatásos.

 

GRUB 2 használata működés közben

Indulás ugyan úgy történik, mint a GRUB Legacy-nál volt. A menü szerkesztéséhez nyomj „E"-t. Ekkor egy Emacs-hoz hasonló egyszerű szerkesztő jelenik meg. CTRL+X-re indul a boot.

Ha a GRUB 2 nem találja a konfigurációs fájlt, akkor a grub> parancsőr jelenik meg. Ekkor a GRUB 2 parancsokat lehet kiadni, de ezek leírása bőven meghaladja a cikk terjedelmét.

 

Érdemes-e GRUB 2-t használni?

Csak akkor, ha különleges képességekre van szükség, pl. egy XNU kernel betöltésére. Ha BIOS-alapú gépen GPT-t használsz, akkor is a GRUB 2 jobb, mert a GRUB Legacy csak patkoltva képes kezelni. Tehát, ha már van telepített és működik, akkor ne változtass, de érdemes ismerkedni GRUB 2-vel, mert előbb, utóbb szembe találod magad vele.

Hozzászólások   

0 # Uhubian 2014-03-26 19:34
Jó cikk, hasznos. A GPT lemezekről és a bios boot partícióról - mikor ajánlott, mikor kell, GPT vs MBR - lehetne kicsit bővebben?
Grub2 konfiguráláshoz ajánlom a Grub Customizer programot. Egyszerű a használata. Az Uhubian lx32, -64 tartalmazza. :-)
-=Uhubian=-
0 # ÜLÜ 2014-03-27 02:03
Szia Toroka :)

Nagyon jó elkészített, mindenre kitérő érthető cikk gratulálok. Köszönet érte.

Jól kapcsolódhat hozzá, az UEFI Boot securyti-ről (Unified Extensible Firmware Interface)
egy cikk ?

Üdv: ÜLÜ
0 # toroka 2014-03-27 05:18
ÜLÜ! Te megint osztod a feladatot! :cry: Majd azért nézek valamit.

Uhubian! Az új vinyómra GPT került, azon egyszerű oknál fogva, hogy ott nincs az elsődleges partíciók számára korlát (MBR-nél 4 lehet). Az új vinyómat ( 1TB) vagy 6 részre daraboltam.
0 # ÜLÜ 2014-03-27 13:20
Idézet - toroka:
ÜLÜ! Te megint osztod a feladatot! :cry:

Toroka !
Még a gondolat sem merült fel bennem. ;-) :P
0 # janu 2014-03-27 05:56
Csak hogy némi kiegészítés is legyen, mert nem biztos, hogy mindenki tudja: a GUID nem valami grafikus bigyó (mint köztudomású, a GUI a graphical user interface rövidítése), hanem Globally Unique IDentifier (általános egyedi azonosító). Így a GPT a rövidítés rövidítése.

A cikkből pedig csak részben derül ki, hogy a GRUB 2-re való átállás (sajnos) nem csak „apt-get install grib2”-ből áll...
0 # toroka 2014-03-27 06:04
Egy kicsit körülnéztem UEFI-ügyben. Találtam egypár cikket, amit érdemes elolvasni, hogy legyen képünk róla.

pcworld.hu/hardver/mire-jo-az-uefi.html
oprend.hu/news.php?readmore=932 és
https://en.opensuse.org/openSUSE:UEFI.

Ez utóbbi angolul van, de talán a legátfogóbb leírás. Ha lesz kedven hozzá, lefordítom.
Illetve még egy magyar nyelvű cikk a FullCircle magazin 66. számában: fullcircle.hu/2013/page/2/

Te Janu! Mi az hogy „apt-get install grib2” ? :o :P :lol:
0 # ÜLÜ 2014-03-27 13:23
Idézet - toroka:

Te Janu! Mi az hogy „apt-get install grib2” ? :o :P :lol:

Janu ”Papa„ Griff madarat telepített :-) 8)
0 # janu 2014-03-27 14:55
Idézet - toroka:
[...]
Te Janu! Mi az hogy „apt-get install grib2” ? :o :P :lol:
Feladvány muzulmán tanoncoknak: a grib az mosolygós kis gödröcs a hölgyek arcán (a gödröcskét hívják gribellinek), a grib2 pedig annak jelzése, hogy mindkét oldalon... Világos? :lol:
Szóval grub2, csak olyan hajnalban az ember még nem koncentrál eléggé. Nem minden disztróban van benne, pl. a PCLinuxOS-ben nincs.

You have no rights to post comments