Rozwiązywanie problemów z bootloaderem GRUB

Często na jednym komputerze instaluje się dwa zasadniczo różne systemy operacyjne: Windows i Linux. Oczywiście takie "sąsiedztwo" będzie wiązało się z pewnymi niedogodnościami. Do instalacji, z reguły, należy użyć specjalnego programu GRUB. Ale niestety, podczas korzystania z niego, możesz napotkać wiele błędów. W tym artykule zajmiemy się jak naprawić błędy bootloadera GRUB. Zacznijmy. Chodźmy!

Najpierw określmy, czym jest ten program. GRUB to systemowy program ładujący, który instaluje się bezpośrednio z systemu Linux i zapisuje wszystkie dane na pierwszej partycji dysku (MBR).

Sam tryb ratunkowy jest charakterystyczną cechą GRUB 2 z poprzedniej wersji. Ten tryb uruchamia się, jeśli program ładujący nie może znaleźć pliku "grub.cfg" lub nie może przenieść kontroli do jądra (jądra). Wtedy pojawia się błąd.

Wykonaj poniższe czynności, aby dowiedzieć się, jak rozwiązać problem GRUB.

Co zrobić w przypadku nieznanego błędu ratowania plików systemu plików? Zanim pojawi się okno, w którym można użyć tylko 4 polecenia, są one wystarczające do naprawienia wszystkich problemów i pomyślnego uruchomienia:

  • ls - pozwala wyświetlić całą zawartość;
  • set - służy do ustawiania zmiennych;
  • unset - czyści zmienną;
  • insmod - wymagane do ładowania modułów.

Można również udostępnić wiele innych poleceń. Możesz je udostępnić, pobierając "normalny" moduł. Aby to zrobić, zapisz:

insmod normalny

Po tym będą dostępne:

  • dump - aby wyczyścić pamięć;
  • exit - polecenie do wyjścia z bootloadera;
  • chainloader - potrzebne, aby poinstruować kolejne polecenie rozruchu o przeniesieniu sterowania do modułu ładującego;
  • kfreebsd - kilka poleceń, które pozwalają załadować jądro FreeBSD, jego moduły;
  • rmmod - pozwala na zwolnienie określonego modułu jądra;
  • multiboot.

Pierwszym krokiem jest znalezienie modułów do ich załadowania. Aby to zrobić, wpisz:

ls

Wynik polecenia jest następujący:

(hd0) (hd0, msdos3) (hd0, msdos2) (hd0, msdos1) (hd1) (hd1, msdos2) (hd1, msdos1)

Na tej podstawie możemy wywnioskować, że program ładujący nie może określić dyskowych systemów plików, dlatego definiuje je jako msdos. Teraz musisz odgadnąć widoczne dyski. W konkretnym przykładzie masz dwa dyski: hd0 (z trzema partycjami) i hd1 (z dwiema partycjami). Załóżmy, że wiesz, że Linux jest zainstalowany na dysku z trzema partycjami. W takim przypadku potrzebujesz dysku z indeksem "0".

GRUB nadaje sekcjom nazwy w odwrotnej kolejności. W związku z tym nie jest jasne, jak interpretować wpis: "(hd0, msdos3)". W końcu możesz to policzyć jako pierwszą, a trzecią.Na szczęście możesz wydostać się z tej sytuacji za pomocą następującej składni komendy: "(hd0,1)". Należy pamiętać, że w programie ładującym GRUB zliczanie dysków pochodzi z 0, a partycje z 1.

Załóżmy, że Linux jest przechowywany w pierwszej sekcji, a następnie zostanie oznaczony (hd0,1). W takim przypadku polecenie, które należy zarejestrować, będzie następujące:

set prefix = (hd0,1) / boot / grub
set root = (hd0,1)

Teraz moduły mogą być ładowane. Można ich używać tylko po załadowaniu.

Po wybraniu właściwego dysku sprawdź, czy jest tam to, czego potrzebujesz. Aby to zrobić, zapisz:

ls / boot / grub

W wyniku wykonania na ekranie pojawi się lista plików md.

Następnie zapisz:

insmod ext2
insmod normalny
normalny

Następnie program ładujący zostanie przeniesiony do trybu pełnej funkcjonalności. Następnie zostaną automatycznie znalezione sekcje z systemem operacyjnym, a menu programu zostanie otwarte.

Teraz pozostaje załadować system Linux. Odbywa się to za pomocą polecenia:

grub-install / dev / sda

Po wykonaniu wszystkich tych czynności błąd zostanie usunięty. Napisz w komentarzach, jeśli ten artykuł był dla Ciebie przydatny i zadaj dowolne pytania dotyczące tematu.