Wyszukiwanie w witrynie

Jak odzyskać lub uratować uszkodzony moduł ładujący Grub w CentOS 7


W tym samouczku omówimy proces ratowania uszkodzonego modułu ładującego w CentOS 7 lub Red Hat Enterprise Linux 7 i odzyskania zapomnianego hasła roota.

Program ładujący GRUB może czasami zostać uszkodzony, naruszony lub usunięty w CentOS z powodu różnych problemów, takich jak awarie sprzętu lub oprogramowania, lub czasami może zostać zastąpiony przez inny system operacyjny w przypadku podwójnego rozruchu. Uszkodzony program ładujący Gruba uniemożliwia uruchomienie systemu CentOS/RHEL i przekazanie kontroli dalej do jądra Linuksa.

Pierwszy etap modułu ładującego Gruba jest instalowany na pierwszych 448 bajtach na początku każdego dysku twardego, w obszarze zwykle znanym jako Główny rekord rozruchowy (MBR ).

Przeczytaj także: Jak uratować, naprawić i odzyskać program ładujący Grub Boot w Ubuntu

Maksymalny rozmiar MBR to 512 bajów. Jeśli z jakiegoś powodu pierwsze 448 bajtów zostaną nadpisane, nie będzie można załadować systemu CentOS lub Red Hat Enterprise Linux, chyba że uruchomisz komputer za pomocą Obraz ISO CentOS w trybie ratunkowym lub przy użyciu innych metod ładowania i zainstaluj ponownie moduł ładujący MBR GRUB.

Wymagania

  1. Pobierz obraz ISO DVD CentOS 7

Odzyskaj moduł ładujący GRUB w CentOS 7

1. W pierwszym kroku pobierz najnowszą wersję obrazu CentOS 7 ISO i wypal ją na płycie DVD lub utwórz rozruchową pamięć USB. Umieść obraz startowy na odpowiednim dysku komputera i uruchom ponownie komputer.

Podczas gdy BIOS wykonuje testy POST, naciśnij specjalny klawisz (Esc, F2, F11, F12, Del w zależności od instrukcji płyty głównej), aby wejść do ustawień BIOS i je zmodyfikować sekwencję rozruchową, tak aby rozruchowy obraz DVD/USB był uruchamiany jako pierwszy podczas uruchamiania komputera, jak pokazano na poniższej ilustracji.

2. Po wykryciu nośnika startowego CentOS 7, na wyjściu monitora komputera pojawi się pierwszy ekran. Z pierwszego menu wybierz opcję Rozwiązywanie problemów i naciśnij klawisz [enter], aby kontynuować.

3. Na następnym ekranie wybierz opcję Uratuj system CentOS i naciśnij klawisz [enter], aby przejść dalej. Pojawi się nowy ekran z komunikatem „Naciśnij klawisz Enter, aby rozpocząć proces instalacji”. Tutaj wystarczy ponownie nacisnąć klawisz [enter], aby załadować system CentOS do pamięci.

4. Po załadowaniu oprogramowania instalacyjnego do pamięci RAM komputera, na ekranie pojawi się monit dotyczący środowiska ratunkowego. W tym monicie wpisz 1, aby kontynuować proces odzyskiwania systemu, jak pokazano na poniższym obrazku.

5. W następnym komunikacie program ratunkowy poinformuje Cię, że Twój system został zamontowany w katalogu /mnt/sysimage. Tutaj, zgodnie z sugestią programu ratunkowego, wpisz chroot /mnt/sysimage, aby zmienić hierarchię drzewa Linux z obrazu ISO na zamontowaną partycję główną na dysku.

6. Następnie zidentyfikuj dysk twardy komputera, wydając poniższe polecenie w wierszu ratunkowym.

ls /dev/sd*

Jeśli Twój komputer korzysta ze starego fizycznego kontrolera RAID, dyski będą miały inne nazwy, takie jak /dev/cciss. Ponadto, jeśli Twój system CentOS jest zainstalowany na maszynie wirtualnej, dyski twarde mogą nosić nazwy /dev/vda lub /dev/xvda.

Jednak po zidentyfikowaniu dysku twardego komputera możesz rozpocząć instalację modułu ładującego GRUB, wydając poniższe polecenia.

ls /sbin | grep grub2  # Identify GRUB installation command
/sbin/grub2-install /dev/sda  # Install the boot loader in the boot partition of the first hard disk

7. Po pomyślnym zainstalowaniu modułu ładującego GRUB2 w obszarze MBR dysku twardego, wpisz exit, aby powrócić do drzewa obrazu ISO rozruchu CentOS i uruchom ponownie komputer, wpisując init 6 w konsoli, jak pokazano na poniższym zrzucie ekranu.

8. Po ponownym uruchomieniu komputera należy najpierw wejść w ustawienia BIOS i zmienić menu kolejności rozruchu (umieścić dysk twardy z zainstalowanym programem rozruchowym MBR na pierwszej pozycji w kolejność menu startowego).

Zapisz ustawienia BIOS-u i ponownie uruchom ponownie komputer, aby zastosować nową kolejność rozruchu. Po ponownym uruchomieniu komputer powinien uruchomić się bezpośrednio w menu GRUB, jak pokazano na poniższym obrazku.

Gratulacje! Pomyślnie naprawiłeś uszkodzony moduł ładujący GRUB w systemie CentOS 7. Należy pamiętać, że czasami po przywróceniu programu ładującego GRUB komputer uruchomi się ponownie raz lub dwa razy, aby zastosować nową konfigurację Gruba.

Odzyskaj hasło roota w CentOS 7

9. Jeśli zapomniałeś hasła roota i nie możesz zalogować się do systemu CentOS 7, możesz w zasadzie zresetować (wyczyścić) hasło, uruchamiając obraz ISO DVD CentOS 7 w trybie odzyskiwania i postępując zgodnie z instrukcjami te same kroki, jak pokazano powyżej, aż dojdziesz do kroku 6. Gdy jesteś chrootowany w systemie plików instalacyjnych CentOS, wydaj następujące polecenie, aby edytować plik haseł do kont Linux.

vi /etc/shadow

W pliku cienia zidentyfikuj linię hasła głównego (zwykle jest to pierwsza linia), wejdź do trybu edycji vi, naciskając klawisz i i usuń cały ciąg znaków pomiędzy pierwszym dwukropkiem „: ” i drugi dwukropek ”: ”, jak pokazano na poniższym zrzucie ekranu.

Po zakończeniu zapisz plik, naciskając następujące klawisze w podanej kolejności Esc -> : -> wq!

10. Na koniec wyjdź z chrootowanej konsoli i wpisz init 6, aby zrestartować komputer. Po ponownym uruchomieniu zaloguj się do systemu CentOS przy użyciu konta root, które nie ma obecnie skonfigurowanego hasła, i skonfiguruj nowe hasło dla użytkownika root, wykonując polecenie passwd, jak pokazano na poniższym zrzucie ekranu.

To wszystko! Uruchamianie maszyny fizycznej lub maszyny wirtualnej z obrazem ISO DVD CentOS 7 w trybie odzyskiwania może pomóc administratorom systemu w wykonywaniu różnych zadań związanych z rozwiązywaniem problemów z uszkodzonym systemem, takich jak odzyskiwanie danych lub czynności opisane w samouczku.