Jeśli ci się to przydarzyło, nie wariuj! To naprawdę bardzo łatwe do rozwiązania. Bootloader GRUB 2 ma specjalne narzędzia do skanowania dysków twardych zainstalowanych na komputerze w poszukiwaniu rozruchowych systemów operacyjnych zainstalowanych na dyskach twardych.
W tym artykule pokażę, jak rozwiązać problemy określone powyżej i użyć Grub2-MkConfig narzędzie do jego rozwiązania. Będę używać debiana 9 odcinka do demonstracji, ale powinien działać na dowolnym nowoczesnym dystrybucji Linuksa z zainstalowaną Grub 2. Zacznijmy.
Grub2-MkConfig to naprawdę proste narzędzie. Wszystko, co robi, to skanowanie dysków twardych komputera pod kątem zainstalowanych systemów operacyjnych rozruchowych (w tym okna, systemu operacyjnego i dowolnych rozkładów Linux) i generuje plik konfiguracyjny Grub 2. Otóż to.
Różnica między Grub2-MkConfig i Grub-MkConfig:
Mimo że Grub 2 jest zainstalowany na komputerze, Grub2-MkConfig Polecenie może nie być dostępne w Twojej ulubionej dystrybucji Linux. Ale Grub-MkConfig Polecenie może być dostępne w dystrybucji Linux. Nie ma różnicy między Grub-MkConfig I Grub2-MkConfig Jeśli zainstalowany jest GRUB 2.
Zauważ, że jeśli masz zainstalowane dziedzictwo GRUB, to wtedy Grub-MkConfig I Grub2-MkConfig Polecenia nie będą takie same.
Możesz sprawdzić, która wersja GRUB jest zainstalowana na komputerze Linux za pomocą następującego polecenia:
$ sudo grub2-mkconfig --version
Lub
$ sudo grub-mkconfig --version
Jak widać, na mojej debian 9 rozciągającej się, grub 2.02 jest zainstalowany. Ja też nie mam Grub2-MkConfig Polecenie dostępne na debian 9. Jest przemianowany na Grub-MkConfig. Więc Grub-MkConfig I Grub2-MkConfig jest to samo w moim przypadku.
Korzystanie z Grub2-MkConfig:
Grub2-MkConfig albo Grub-MkConfig polecenie ma tylko jedną ważną opcję. -o lub długi format -wyjście opcja. Służy do informowania Gruba 2, gdzie należy zapisać wygenerowany plik konfiguracyjny GRUB.
Domyślnie, Grub2-MkConfig albo Grub-MkConfig polecenie drukuje wygenerowany plik konfiguracyjny do Stdout, który jest terminalem systemu operacyjnego Linux.
Jeśli tego chcesz, uruchom Grub2-MkConfig albo Grub-MkConfig polecenie w następujący sposób:
$ sudo Grub2-Mkconfig
Lub
$ sudo grub-mkconfig
Jak widać, wygenerowana konfiguracja Grub 2 jest wydrukowana na ekranie terminalu. To może nie być bardzo pomocne.
Jeśli chcesz, możesz wyeksportować wygenerowaną konfigurację GRUB 2 do pliku. Format polecenia podano poniżej:
$ sudo grub2 -mkconfig -o file_path
Lub
$ sudo grub -mkconfig -o file_path
Jeśli wolisz długi format, to
$ sudo grub2-mkconfig --utput file_path
Lub
$ sudo grub-mkconfig --utput file_path
NOTATKA: Tutaj, ŚCIEŻKA PLIKU to ścieżka do pliku, w którym chcesz zapisać wygenerowaną konfigurację Grub 2.
Powiedzmy, że chcesz zapisać wygenerowaną konfigurację GRUB 2 na pliku żarcie.CFG w Twoim użytkowniku DOM informator.
Aby to zrobić, uruchom następujące polecenie:
$ sudo grub2 -mkconfig -o ~/grub.CFG
Lub
$ sudo grub -mkconfig -o ~/grub.CFG
Jak widać, generowany jest nowy plik konfiguracyjny Grub 2.
Jak widzisz, żarcie.CFG Plik jest generowany na moim użytkowniku DOM informator.
Jak widać, zawartość wygenerowanego żarcie.CFG Plik jest taki sam jak wcześniej, kiedy wydrukowałem wyjście w terminalu.
Aktualizacja pliku konfiguracyjnego Grub 2 (BIOS):
Jeśli używasz starych płyt głównych opartych na BIOS, plik konfiguracyjny bootloader GRUB 2 powinien znajdować się w /boot/grub/grub.CFG plik, jak widać na zrzucie ekranu poniżej.
NOTATKA: W niektórych rozkładach Linux, takich jak CentOS 7 lub RHEL 7, plik konfiguracyjny Grub 2 można znaleźć w /boot/grub2/grub.CFG. Jeśli tak jest dla Ciebie, upewnij się, że dostosujesz ścieżkę przed uruchomieniem Grub2-MkConfig Lub Grub-MkConfig polecenie w poniższym artykule.
Aby zaktualizować plik konfiguracyjny GRUB 2 na instalacji Linux opartej na BIOS, uruchom następujące polecenie:
$ sudo grub2 -mkconfig -o/boot/grub/grub.CFG
Lub
$ sudo grub -mkconfig -o/boot/grub/grub.CFG
Plik konfiguracyjny Grub 2 powinien zostać zaktualizowany.
Jeśli oczekujesz jakichkolwiek zmian, uruchom ponownie komputer za pomocą następującego polecenia:
$ sudo restart
Powinieneś zobaczyć, czego oczekujesz w menu Grub zaraz po naciśnięciu przycisku zasilania.
Aktualizacja pliku konfiguracyjnego Grub 2 (UEFI):
Na płytach głównych opartych na UEFI aktualizacja konfiguracji GRUB 2 jest nieco trudniejsza.
Na instalacjach Linux opartych na EFI plik konfiguracyjny Grub 2 znajduje się w/boot/efi/efi/<Your_os>/żarcie.CFG
Tutaj, to nazwa katalogu, w którym żarcie.CFG jest usytuowany. Nazwa katalogu będzie inna dla każdego rozkładu Linuksa. Sztuką jest określenie nazwy katalogu używanego w czasie rozruchu. Jeśli nie bawiłeś się z różną dystrybucją Linuksa, szanse są wyższe, że będzie tylko jeden katalog. W przeciwnym razie będzie wiele katalogów, z których będziesz musiał określić aktywny.
Uruchom następujące polecenie, aby wymienić wszystkie dostępne katalogi w /boot/efi/efi katalog:
$ sudo ls/boot/efi/efi
Jak widać, na mojej maszynie Centos 7 mam tylko jeden katalog centos/
Teraz, aby zaktualizować plik konfiguracyjny Grub 2, uruchom następujące polecenie:
$ sudo grub2 -mkconfig -o/boot/efi/efi/centos/grub.CFG
Lub
$ sudo grub -mkconfig -o/boot/efi/efi/centos/grub.CFG
Plik konfiguracyjny Grub 2 powinien zostać zaktualizowany.
Teraz ponownie uruchom komputer i powinieneś zobaczyć oczekiwane wpisy w menu Grub.
Załóżmy, że zaktualizowałeś jądro swojego ulubionego dystrybucji Linuksa. Po instalacji sprawdziłeś wersję swojego jądra i jesteś zaskoczony, że nie został zaktualizowany! O nie!
Cóż, nie denerwuj się. Grub2-MkConfig albo Grub-MkConfig polecenie może również skanować /uruchomić katalog do sprawdzenia zainstalowanych jądrów Linux i wygenerowania wpisu rozruchowego GRUB 2 dla każdego z nich.
Polecenia i procesy są takie same, jak podane w Aktualizacja pliku konfiguracyjnego GRUB 2 (BIOS) I Aktualizacja pliku konfiguracyjnego Grub 2 (UEFI) sekcje tego artykułu powyżej.
Więc tak używasz Grub2-MkConfig Lub Grub-MkConfig polecenie rozwiązania wielu problemów rozruchowych w Linux. Dziękujemy za przeczytanie tego artykułu.