GRUB 2

Basic summary of GRUB 2:

Plik konfiguracyjny dla Grub2

Plik /etc/default/grub zawiera ustawienia zmiennych dla Grub2, np. limit czasu w menu (timeout), podstawowe ustawienia w menu, parametry jądra, interfejs graficzny Grub i inne.

Skrypty dla Grub2

/etc/grub.d kontroluje plik 'docelowy' grub.cfg, który znajduje się w katalogu /boot/grub/.

Plik grub.cfg nie powinien być nigdy zmieniany ręcznie. Wszystkie zmiany muszą być wykonywane za pomocą plików skryptowych w /etc/grub.d. os-prober powinien rozwiązać poprawnie 90% przypadków :

00_header:
05_debian_theme: ustawia tło, kolory tekstu, motyw graficzny
10_hurd:  lokalizuje jądra hurd
10_linux: lokalizuje jądro Linuksa oparte na wynikach polecenia lsb_release. 
20_memtest86+: jeżeli /boot/memtest86+.bin istnieje, to będzie integrowany w startowym menu 
30_os-prober: wyszukuje w każdej partycji systemy operacyjne (Linux i inne) i integruje je w startowym menu  
40_custom: szablon do tworzenia niestandardowych elementów w menu dla innych systemów operacyjnych 
60_fll-fromiso: szablon do tworzenia niestandardowych elementów w menu dla fromiso na USB flash/karte SSD.
60_fll-fromiso nie ma być zmieniany ręcznie. Używa /etc/default/grub2-fll-fromiso.
Więcej informacji pod fromiso z Grub2

Po dokonaniu zmian w ststemie, grub.cfg musi zostać uaktualniony. W przypadku aktualizacji jądra aptosida, polecenie aktualizujace zostanie automatycznie wykonane. Zmiany powyższych plików dokonane przez administratora systemu, które zostały wykonane ręcznie, wymagają polecenia:

update-grub

Pakiet Grub2 w Debianie jest zaprojektowany tak, że zmiana ręczna rzadko jest konieczna.

Edycja opcji startowych w grub2 poprzez ekran edycji

Grub2-Edit

Jeśli z jakiegoś powodu, musisz dokonać tymczasowych zmian w opcji bootowania jądra w grub2, naciśnij e . Do edycji opcji jądra przejdź za pomocą strzałek klawiatury do wiersza, który chcesz edytować. Na ekranie edycji użyj kombinacji Ctrl+x do ponownego wystartowania komputera z wyedytowanymi opcjami.

Na przykład, aby przejść bezpośrednio do uruchomienia run level 3, dodaj 3 na końcu linii linux /boot/vmlinuz.

Zmiany wprowadzone przez ekran edycji nie są trwałe. Aby osiągać trwałe zmiany, musisz edytować odpowiednie pliki. Czytaj Plik konfiguracyjny dla Grub2.

Podwójne i multi butowanie z Grub 2

GRUB 2 ma modularną konfigurację, co pozwala na wykonanie prostych poleceń, aby znaleźć zainstalowane nowe systemy operacyjne i zintegrować je automatycznie w pliku menu.cfg. Tym prostym poleceniem jest:

update-grub

Jeżeli niestandardowe polecenie jest potrzebne w menu.cfg lub jeżeli 30_os-prober nie dodaje wymaganych wpisów menu chainloadera w grub.cfg użyj ulubionego edytora tekstu do zmiany wpisów w /etc/grub.d/40_custom.

Przykłady dostosowywania pliku 40_custom:

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

Po dokonaniu zmiany uruchom:

update-grub

Informacja, że nie można znaleźć gruba na dysku, oznacza, że devicemap musi być regenerowany.

Upewnij się że, wybrałeś partycję a nie MBR instalując inny system operacyjny:

grub-mkdevicemap --no-floppy
update-grub

Ostrzeżenia mogą być bezpiecznie zignorowane.

Jeśli się pomylisz, aktualizacja prawdopodobnie nadpisze MBR i trzeba to naprawić przez Przywrócenie Grub 2 .

Wyłączne przepisanie grub2 do MBR z dysku twardego

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

Ta linia polecenia być może wymagać będzie kilkukrotnego wykonania, dla upewnienia się przez system, że rzeczywiście powinno być wykonywana.

MBR nadpisany przez Windows - uszkodzony MBR - przywrócenie Grub 2

UWAGA: aby przywrócić grub2 potrzebny jest dowolny aptosid.iso lub. Alternatywnie, używaj chroot z dowolnym live.iso .

Aby przepisać lub przywrócić grub2 w MBR trzeba będzie uruchomić aptosid.iso:

  1. Aby zidentyfikować i potwierdzić partycję ([h,s]d[a..]X) wszytkie następujące akcje muszą być przeprowadzone z uprawnioniami roota, tak więc wykonaj (#):
    $ su
    
  2. Jako root wpisz:
    fdisk -l
    cat /etc/fstab
    
    To pozwala uzyskać prawidłowe nazwy.
  3. Jeżeli prawidłowa nazwa partycji jest wyświetlana, trzeba utworzyć punkt montowania:
    mkdir -p /media/[hdxx,sdxx,diskx]
    
  4. Następnie, zamontuj partycję:
    mount /dev/xdxx /media/xdxx
    
  5. Teraz przepisz Grub do MBR pierwszego dysku twardego:
    /usr/sbin/grub-install --recheck --no-floppy --root-directory=/media/xdxx /dev/sda
    

Korzystanie z chroot, aby przywrócić nadpisanego lub uszkodzonego Gruba w MBR

Aby przywrócić Gruba (jeżeli został nadpisany lub uszkodzony w MBR) trzeba ustawić środowisko chroot. Można użyć każdej dowolnej live.iso, ponieważ chroot przenosi Cię na system zainstalowany na dysku twardym, umożliwia to przywrócenie Grub1 (grub-legacy) lub Grub 2.

Wystartuj live aptosid.iso odpowiedni do twojego systemu (32 lub 64 bit CD, DVD, USB flash lub karta SSD) i otwórz terminal. Wpisz su i naciśnij enter w celu uzyskania uprawnień roota.

Z użyciem fdisk -l lub blkid można się upewnić, która partycja jest partycją bootowalną, i otrzymać poprawną nazwę (jeśli interfejs graficzny jest wymagany, użyj Gparted):

blkid

Teraz możesz sprawdzić, czy wpisy w pliku fstab odpowiadają wynikowi z blkid:

cat /etc/fstab

Załóżmy, że główny system plików (root) jest na /dev/sda2

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

Następnie należy zamontować /proc, /run, /dev i /sys w następujący sposób:

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

Jeśli uruchomiłeś system używając partycji systemowej typu EFI potrzebujesz ją zamontować. Jeśli jest to /dev/sda1:

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

Środowisko chroot jest teraz skonfigurowane, dostęp do niego uzyskujemy przez:

chroot /mnt/aptosid-chroot /bin/bash

Teraz jesteś w stanie użyć apt's lokalnego cache'a apta lub podmienić pliki w celu naprawy, tak jak gdybyś uruchomił właściwy system. W poniższym przykładzie Grub zostanie na powrót przepisany do MBR.

Przywracanie Grub 2

apt-get install --reinstall grub-pc

Aby upewnić się, że grub został zainstalowany na właściwym dysku lub partycji, uruchom:

dpkg-reconfigure grub-pc

Przywracanie Grub 2 EFI

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

Przywracanie Grub 1 (grub-legacy)

apt-get install --reinstall grub-legacy

Postępuj za instrukcjami instalatora.

Aby aby opuścić środowisko chroot wykonaj:

Ctrl+d

Uruchom ponownie komputer.

Page last revised 29/06/2013 0850 UTC