GRUB 2

Korte samenvatting van GRUB 2:

De standaard Grub 2 configuratie bestand

Het bestand /etc/default/grub bevat de grub2 variabele instellingen. Bijvoorbeeld, timeout voor het menu, standaard waardes in het menu om geactiveerd te worden, kernel parameters, het gebruik van de grub weergaves enzovoort.

De Grub 2 script bestanden

/etc/grub.d bestanden beheren het 'result' bestand genoemd grub.cfg, welke je kunt vinden in /boot/grub/.

Het grub.cfg bestand moet nooit handmatig aangepast worden. Alle wijzigingen moeten worden uitgevoerd met 1 of alle script bestanden welke te vinden zijn in /etc/grub.d. os-prober zal 90% van alle gevallen zelfs uitvoeren:

00_header:
05_debian_theme: Zet achtergronden, tekst kleur, themas
10_hurd: Localiseert Hurd kernels
10_linux: Localiseert Linux kernels gebaseerd op resultaten van de lsb_release command.
20_memtest86+: Indien het bestand /boot/memtest86+.bin bestaat, wordt het toegevoegd aan het boot menu.
30_os-prober: Zoeken naar Linux en andere OS's op alle partities; worden ook toegevoegd in het boot menu.
40_custom: Een template voor het toevoegen van custom boot menu entries voor andere Operating Systems.
60_fll-fromiso: Een template voor het toevoegen van custom boot menu entries voor de fromiso naar een USB-stick/SD-kaart.
60_fll-fromiso moet niet gewijzigd worden, gebruik /etc/default/grub2-fll-fromiso
Lees ook  Opstarten via 'fromiso' met Grub 2

Indien er een wijziging is uitgevoerd, moet grub.cfg dit ook weten. Indien het draait om een aptosid kernel upgrades, het update commando wordt dan automatisch uitgevoerd. In het geval van een handmatige wijziging uitgevoerd door jou als systeem admin of een script van hierboven, dan moet je het volgende uitvoeren:

update-grub

Het Debian Grub2 deb pakket is zo ontworpen dat een handmatige wijziging zelden voorkomt.

Wijzigen van de Grub2 boot opties via het edit scherm

Grub2-Edit

Indien, om welke reden dan ook, je een tijdelijke wijziging moet maaken aan de boot opties van een kernel in Grub2, druk dan op de letter e om de kernel opties te wijzigen, met de pijltjes toetsen navigeer je naar de regel die je wilt wijzigen, dan nog steeds in het wijzigingscherm gebruik Ctrl+x om de PC op te starten met je gewijzigde opties.

Bijvoorbeeld, om direct naar run level 3 te gaan, voeg een 3 toe aan het eind van de regel linux /boot/vmlinuz .

De wijzigingen die je maakt in het editscherm zijn niet permanent. Om permanent wijzigingen te maken, moet je de benodigde bestanden wijzigen. Zie Grub 2 bestanden.

Dual en multi booting met Grub 2

Aangezien Grub2 een modulair in de configuratie is, het staat een eenvoudige opdracht om te zoeken naar een nieuw geïnstalleerde besturingssystemen toe en als er een wordt gevonden, probeert het de verandering door te voeren in net menu.cfg bestand. Het commando is simpel:

update-grub

Heeft u behoefte aan een aangepaste entry toe te voegen aan menu.cfg of als de 30_os-prober niet meer in het bestand grub.cfg kan schrijven met chainloader menu's maak met uw favoriete tekstverwerker de wijzigingen aan in /etc/grub.d/40_custom.

Voorbeelden van wijzigingen in het 40_custom bestand:

menuentry "second mbr"{
set root=(hd1)
chainloader +1
}
menuentry "second partition"{
set root=(hd0,2)
chainloader +1
}

En nadat je je wijzigingen hebt uitgevoerd voer dan het volgende commando uit:

update-grub

Mocht er een melding komen dat er geen grub device of disk gevonden kan worden, dan betekent dit dat de devicemap opnieuwe gegenereerd moet worden.

Wees er zeker van dat je de partitie kiest en niet de MBR waarop je het andere operating systeem installeert:

grub-mkdevicemap --no-floppy
update-grub

Waarschuwingen kunnen hier veilig genegeerd worden.

Indien je een fout hebt begaan, de update zal waarschijnlijk je MBR overschreven hebben en je moet dit herstellen via Grub2 - MBR Overschreven.

Om alleen grub2 opnieuw naar de MBR van de harddisk te schrijven voer je het volgende uit:

/usr/sbin/grub-install --recheck --no-floppy /dev/sda

Deze regel moet eventueel meerdere keren uitgevoerd worden, totdat je het zeker weet.

MBR Bootsector overschreven door Windows, een corrupte en / of herstellen van Grub2

NOTITIE: om Grub2 bootloader te herstellen heb je de 2009-04 (moros) aptosid.iso of later nodig. Als alternatief kan je chroot gebruiken met elke live.iso.

Om grub2 te opnieuw te schrijven naar de MBR en/of om grub2 in het algemeen te herstellen, moet je opstarten met een aptosid.iso:

  1. Om je partities te indentifieren en te bevestigen (bv. [h,s]d[a..]X) moten volgende acties met root rechten uitgevoerd worden, dus wordt root (#):
    $ su
    
  2. Wanneer je root bent type dan in:
    fdisk -l
    cat /etc/fstab
    
    Dit is om de juiste namen te verkrijgen.
  3. Zodra je de juiste partitie gelocaliseerd hebt, creeer je het koppelpunt:
    mkdir -p /media/[hdxx,sdxx,diskx]
    
  4. Koppel de partitie:
    mount /dev/xdxx /media/xdxx
    
  5. Herschrijf nu Grub naar MBR van de eerste harddisk (algemeen):
    /usr/sbin/grub-install --recheck --no-floppy --root-directory=/media/xdxx /dev/sda
    

Met behulp van chroot een overschreven of beschadigd Grub in de MBR herstellen

Om Grub te herstellen indien deze overschreven of corrupt is in de MBR, maak dan een chroot omgeving aan. Met elke live.iso kan worden volstaan ​​en de chroot brengt u naar uw hardeschijf geïnstalleerde systeem, zodat u de juiste grub versie, grub1 (grub-legacy) of grub2 kunt herstellen.

Start op met een live aptosid.iso welke werkt voor uw systeem (32 of 64 bit CD, DVD, USB stick of een SD kaart) en open het konsole. Type in su en druk op enter om root toegang te krijgen.

Gebruik fdisk -l or blkid, gewis u ervan wlke partitie de boot partitie is en verkrijg de juiste namen. Indien je een GUI wilt gebruiken, gebruik dan Gparted:

blkid

en controleer dat fstab overeen komt met de uitvoer van blkid:

cat /etc/fstab

Laten we aanemen dat het root bestandssysteem op /dev/sda2 staat.

mkdir /mnt/aptosid-chroot
mount /dev/sda2 /mnt/aptosid-chroot

Nu moet je de volgende koppelpunten aankoppelen (mount) /proc, /run, /dev and /sys :

mount --bind /proc /mnt/aptosid-chroot/proc
mount --bind /run /mnt/aptosid-chroot/run
mount --bind /sys /mnt/aptosid-chroot/sys
mount --bind /dev /mnt/aptosid-chroot/dev
mount --bind /dev/pts /mnt/aptosid-chroot/dev/pts

Indien je van een EFI systeem partitie boot moet je deze ook aankopelen. Uitgaande dat dit /dev/sda1 is:

mount /dev/sda1 /mnt/aptosid-chroot/boot/efi

Je chroot omgeving is nu klaar, benaderd het via:

chroot /mnt/aptosid-chroot /bin/bash

Nu bent u in staat om de lokale apt's cache te gebruiken of bestanden te wijzigen die je moet aanpassen alsof je goed opgestart bent in het besturingssysteem, in dit geval om terug het probleem met Grub op te lossen in de MBR.

Voor het herstellen van Grub 2

apt-get install --reinstall grub-pc

Om er zeker van te zijn dat grub om de juiste harddisk of partitie geinstalleer is voer je het volgende commando uit:

dpkg-reconfigure grub-pc

Voor het herstellen van Grub 2 EFI

apt-get install --reinstall grub-efi-amd64

Voor het herstellen van Grub 1 (grub-legacy)

apt-get install --reinstall grub-legacy

Volg de instructies van de installatie programma's op.

Om de chroot omgeving vrij te geven:

Ctrl+d

Herstart je PC.

Inhoud het laatst gewijzigd op 29/06/2013 0850 UTC