Windows 8-frissítés eltüntette a GRUB-ot

Amikor felraktuk a Windows 8 mellé az Ubuntut, az Ubuntuval együtt a GRUB is települt, és a számítógép bekapcsolásakor ki lehetett választani, hogy az Ubuntut indítsuk-e el vagy a Windowst:

Lila GRUB

Aztán egyszer a Windows frissítéseket telepített, és ahogy újraindítottuk a gépet, nem a GRUB jött be, hanem automatikusan elkezdett betölteni a Windows.

Annyi történt, hogy a Windows 8 a GRUB elé sorolta a saját betöltéskezelőjét az indítási lehetőségek elsőbbségi listájában.

shiftes újraindításA GRUB elsőbbségét az UEFI-beállításokban fogjuk visszaállítani. Ehhez úgy kell újraindítani a számítógépet, hogy a Shift billentyűt lenyomva tartjuk, amikor az Újraindításra kattintunk.

Speciális rendszerindítási lehetőségek

Az UEFI-beállításokba a Hibaelhárítás > Speciális lehetőségek > Az UEFI-vezérlőprogram beállításai csempéken keresztül lehet bejutni.

Legyünk benne nagyon óvatosak! Semmit se módosítsunk, amiről még nem tudunk eleget!

Van olyan gép, amelyiken az UEFI-beállításokban is működik az egér, de ez a gép, amelyik itt van most előttem, nem olyan. Mozogni a nyilakkal lehet, belépni/OK-t nyomni az Enterrel, kilépni pedig az Escape-pel. A billentyűzet még nincs magyarra állítva: a Z és az Y fel van cserélve.

Az UEFI-beállításokban keressük meg a Boot Device Priority listát, és vigyük benne az Ubuntut a lista tetejére. Ha több Ubuntu-bejegyzés is van a listában, akkor a feljebb levőt vigyük legfelülre.

F10-zel mentsük a beállításokat (ne feledjük, Z-vel lehet yes-t nyomni), és indítsuk újra a gépet.

A GRUB testreszabása

Még az Ubuntu 12.04 telepítése Windows 7 mellé című bejegyzésemben ígértem, hogy írni fogok a GRUB testreszabásáról, de csak most tudtam időt szakítani rá. Nem fogok mindenről írni, csak ezekről:

Aki többre kíváncsi, annak ajánlom az Ubuwiki GRUB 2 útmutatóját. Grafikus felületű GRUB-szerkesztő nincs az Ubuntu hivatalos tárolóiban, de a Linux Hogyanok Blogon van egy bejegyzés arról, hogy hogy lehet telepíteni a GRUB Customizert.

A GRUB menüje

A GRUB menüjében több olyan indítási lehetőség is van, amelyre csak ritkán van szükség. Ilyen pl. az Ubuntu helyreállítási módban való indítása, a memóriateszt vagy a Windows 7 helyreállítója. A napi gyakorlatban ezek csak lassítják az indítóbejegyzések közti közlekedést. Az alábbi agyonzsúfolt menüben pl. 6-szor kell lenyomni a lefelé mutató nyilat, hogy az Ubuntutól eljuthassunk a Windows 7-ig:

GRUB

Az alábbiakban azt részletezem, hogy hogy lehet a ritkán használt indítási lehetőségeket elrejteni (majd szükség esetén újra megjeleníteni), és hogy hogy lehet az indítóbejegyzések sorrendjét megváltoztatni.

[Tartalom]

Memóriateszt elrejtése

A memóriateszt két sora akkor jelenik meg a menüben, ha az /etc/grub.d/20_memtest86+ fájl futtathatóra van állítva. Elrejteni úgy lehet, ha elvesszük tőle a futtathatóságot. Kattintsunk a Dash-ikonra, gépeljük be, hogy terminál, és vagy kattintsunk a találatok közt a Terminálra, vagy egyszerűen csak nyomjuk le az Entert:

Terminál indítása

Másoljuk be az alábbi sorokat a Terminálba:

cd /etc/grub.d
sudo chmod 644 20_memtest86+
sudo update-grub

Az utolsó sor után nyomjuk le az Entert. (A cd parancs átvisz az /etc/grub.d könyvtárba, a sudo rendszergazdajogot kér, a chmod 644 elveszi a futtathatóságot, végül az update-grub érvényesíti a változtatásokat a GRUB-menüben.)

Ha utólag meggondoljuk magunkat, hogy mégis jól jönne a memóriateszt, akkor az alábbi 3 paranccsal visszahozhatjuk:

cd /etc/grub.d
sudo chmod 755 20_memtest86+
sudo update-grub

(Amint látszik, a chmod 755 parancs adja vissza a futtathatóságot.)

[Tartalom]

Ubuntu helyreállítási mód elrejtése

Az, hogy megjelenjen-e a menüben az Ubuntu helyreállítási módban való indítása, az /etc/default/grub fájlba van beírva. Ezt a fájlt csak rendszergazdajoggal lehet szerkeszteni, ezért a következőképp nyitjuk meg. Az Alt+F2 billentyűkombinációval hívjuk elő a Parancs futtatását (miközben az egyik ujjunkkal lenyomva tartjuk az Alt billentyűt, egy másik ujjunkkal nyomjuk le az F2-t):

Alt+F2: Parancs futtatása

Gépeljük be, hogy gksu gedit, és nyomjuk le az Entert:

gksu gedit

Nyissuk meg az /etc/default/grub fájlt (Megnyitás: Fájlrendszer|etc|default|grub):

Fájl megnyitása

Tekerjünk le addig, hogy #GRUB_DISABLE_RECOVERY=”true”, és töröljük a sor elejéről a kettőskeresztet. (A GRUB_DISABLE_RECOVERY azt jelenti, hogy a GRUB hagyja figyelmen kívül a helyreállítási módot, a true azt, hogy igaz, a kettőskereszt pedig azt, hogy ez a sor nem számít.) Mentsük a fájlt, és Terminálban adjuk ki a következő parancsot:

sudo update-grub

Na de mit csináljunk, ha ezek után elromlik az Ubuntu, és csak helyreállítási módban lehet javítani? Hogy indítsuk a helyreállítási módot, ha nincs benne a menüben?

Nincs helyreállítási mód

Nem esünk kétségbe, lenyomjuk az E billentyűt, és átszerkesztjük az indítóbejegyzés linux sorát (a képernyőképen a hosszú sor két sorba törve jelenik meg):

quiet splash $vt_handoff

A sor végéről kitöröljük azt, hogy quiet splash $vt_handoff, és beírjuk a helyére, hogy recovery nomodeset (az y és a z itt még fel van cserélve), majd Ctrl+X-szel vagy F10-zel elindítjuk a helyreállítási módot.

[Tartalom]

Windows helyreállítási környezet elrejtése

A számítógépen levő egyéb operációs rendszerek automatikus felderítését az os-prober végzi. Előnye, hogy mindent megtalál (na jó, szinte mindent), és a hátránya is ugyanaz. Azt, hogy a GRUB menüjében a Windows 7 benne legyen, de a Windows helyreállítási környezet ne, egyéni menübejegyzéssel fogjuk csinálni. Az Alt+F2 billentyűkombinációval hívjuk elő a Parancs futtatását, írjuk be, hogy gksu gedit, és nyomjuk le az Entert:

gksu gedit

Nyissuk meg a /boot/grub/grub.cfg fájlt, és másoljuk át belőle a Windows 7 indítóbejegyzését az /etc/grub.d/40_custom fájlba (minden egyes indítóbejegyzés menuentry-vel kezdődik, és kapcsos zárójellel záródik). A 40_custom fájl valahogy így fog kinézni (de ne az alábbi példából másoljuk ki az indítóbejegyzést, mert úgy nem fog indulni a Windows, hanem a grub.cfg-ből):

#!/bin/sh
exec tail -n +3 $0
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.

menuentry "Windows 7 (loader) (on /dev/sdXX)" --class windows --class os {
     insmod part_msdos
     insmod ntfs
     set root='(hdX,msdosX)'
     search --no-floppy --fs-uuid --set=root XXXXXXXXXXXXXXXX
     chainloader +1
}

Az itt X-szel jelölt változók helyén a a grub.cfg-ből kimásolt indítóbejegyzésben a Windows partícióját azonosító betűk és számok vannak. Mentsük a 40_custom fájlt, és tegyük futtathatóvá. Indítsuk el a Terminált, és írjuk be az alábbi két parancsot:

cd /etc/grub.d
sudo chmod 755 40_custom

Így, hogy most már van egyéni menübejegyzésünk a Windows 7-hez, kikapcsolhatjuk az os-probert (ha nem kapcsoljuk ki, duplán lesz benne a Windows a GRUB-menüben), és érvényesíthetjük a változtatásokat:

sudo chmod 644 30_os-prober
sudo update-grub

Ha utólag meggondoljuk magunkat, hogy egyéni menü helyett mégis inkább az os-probert akarjuk használni, akkor:

cd /etc/grub.d
sudo chmod 644 40_custom
sudo chmod 755 30_os-prober
sudo update-grub

[Tartalom]

Windows legfelül

Ugyanúgy egyéni bejegyzést készítünk, mint az előzőben, csak a Windows 7 indítóbejegyzésének az /etc/grub.d/40_custom fájlba való bemásolása után ne mentsük a fájlt, hanem a Fájl – Mentés másként lehetőséget választva 09_windows néven mentsük a fájlt. Utána Terminálban:

cd /etc/grub.d
sudo chmod 755 09_windows
sudo chmod 644 30_os-prober
sudo update-grub

Visszacsinálni az előzőhöz hasonlóan így lehet:

cd /etc/grub.d
sudo chmod 644 09_windows
sudo chmod 755 30_os-prober
sudo update-grub

[Tartalom]

De mégis az Ubuntu induljon alapból!

Jó, legyen a Windows legfelül, de azért az Ubuntu induljon alapból. Az Alt+F2 billentyűkombinációval hívjuk elő a Parancs futtatását, írjuk be, hogy gksu gedit, és nyomjuk le az Entert. Nyissuk meg az /etc/default/grub fájlt, és ebben a sorban:

GRUB_DEFAULT=0

cseréljük a 0-t 1-re:

GRUB_DEFAULT=1

Így nem a legfelső bejegyzés fog alapból indulni, hanem az 1-gyel alatta levő. Mentsük a fájlt, majd Terminálban adjuk ki az alábbi parancsot:

sudo update-grub

GRUB_DEFAULT=1

[Tartalom]

Háttérszín helyett háttérkép

A kiválasztott képet másoljuk be a /boot/grub mappába, majd érvényesítsük a változtatást. A /boot/grub mappába csak rendszergazdajoggal lehet fájlokat másolni, ezért Terminálban csináljuk:

cd /usr/share/backgrounds
sudo cp Precise_Pangolin_by_Vlad_Gerasimov.jpg /boot/grub
sudo update-grub

GRUB háttérképpel

[Tartalom]