Fedora używa teraz Grub 2. Za każdym razem, gdy wykonuje aktualizację jądra, traci domyślną opcję rozruchu (Windows). Jak mogę to naprawić?

Żałuję z tego powodu Grub 2, ponieważ stary Grub szanował moje wybory.

Odpowiedź

Nie jestem pewien, czy nastąpiły jakieś zmiany / ulepszenia w grubby lub anaconda odnoszące się do tego problemu. Czy ktoś próbował postępować zgodnie z tymi wskazówkami ze strony wiki Fedory:

Ręczne zmiany mogą jednak zostać nadpisane przez grub2-mkconfig następnym razem, gdy> system zostanie zaktualizowany za pomocą anacondy. Niektóre dostosowania można umieścić w / etc / grubd / 40_custom lub /boot/grub2/custom.cfg i przetrwają po uruchomieniu grub2-mkconfig.

W przeciwnym razie, co konkretnie można umieścić w wyżej wymienionych plikach, co by przetrwało aktualizacje jądra i / lub działając grub2-mkconfig?

To jest pobierane z strony wiki Gruba Fedory :

Z powodu grub2 -mkconfig (i os-prober) nie możemy przewidzieć kolejności wpisów w /boot/grub2/grub.cfg, więc zamiast tego ustawiamy domyślną nazwę / tytuł.

Otwórz / etc / default / grub i upewnij się, że ten wiersz istnieje:

GRUB_DEFAULT=saved 

Zastosuj zmianę do grub.cfg, uruchamiając:

grub2-mkconfig -o /boot/grub2/grub.cfg 

Teraz wyświetl wszystkie możliwe pozycje menu

grep "submenu\|^\smenuentry" /boot/grub2/grub.cfg | cut -d """ -f2 

Teraz ustaw żądaną domyślną pozycję menu

grub2-set-default "<submenu title>><menu entry title>" 

Sprawdź domyślną pozycję menu

grub2-editenv list 

Odpowiedź

W Fedorze obecnie nie można „t ustaw to na stałe jako domyślne.

Jeśli kernel jest aktualizowane, grubby oprogramowanie używane do dodania menu Grub2 pozycja. I zdecydowanie nie zwraca uwagi na /etc/default.

Cytat z wiki Fedory :

Grubby w Fedorze łata konfigurację, gdy wykonywana jest aktualizacja jądra i będzie próbował nie wprowadzać żadnych innych zmian niż to jest konieczne.

btw, po kernel aktualizacji robię package-cleanup --oldkernels --count=1 i grub2-mkconfig -o /boot/grub2/grub.cfg, aby pozbyć się starych jąder.

Odpowiedź

Nie używam fedory i „Nie mam 100% pewności, czy zmiany będą trwałe (po aktualizacji jądra), ale myślę, że musisz edytować plik /etc/default/grub. W wierszu numer 6 zobaczysz:

GRUB_DEFAULT="0" 

Gdzie 0 to pierwszy wpis na liście grub. Edytuj ją tak, jak chcesz. Następnie uruchom sudo update-grub2.

Odpowiedź

Fedora uległa zmianie, przynajmniej w systemach UEFI. To jest częściowo opisane w https://systemd.io/BOOT_LOADER_SPECIFICATION/

Lista jąder Linuksa do załadowania jest pobierana z / boot /loader/entries/*.conf (Uwaga: to nie jest w ESP.)

Jeśli weźmiesz nazwę jednego z tych plików, bez ścieżki do katalogu i bez .conf, możesz go użyć w poleceniu, które wygląda następująco:

 sudo grub2-set-default 2733f1c892a5422c98bdb188c4f62737-5.10.9-201.fc33.x86_64 

U mnie to zadziałało. Nie wiem, jak lepki jest wynik.

Uwaga: jeśli próbujesz ustawić domyślne na stare jądro, może być konieczne upewnienie się, że nie jest ono usuwane przez aktualizacje. Zmień installonly_limit w /etc/dnf/dnf.conf na 0.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *