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.