Ich habe zu Testzwecken einen Mainline-Kernel installiert. Ich möchte grub so einstellen, dass es standardmäßig vom älteren Kernel bootet.
Ich weiß, dass ich die GRUB_DEFAULT=0
Einstellung für die erste Seite von Grub festlegen kann, aber wie kann ich festlegen, dass standardmäßig von einem Kernel auf der zweiten Seite (Seite "Erweitert") gebootet wird?
Ich würde es vorziehen, wenn ich keine andere Software installieren würde (zB grub-customizer).
Verwandte Fragen:
Wie stelle ich Windows so ein, dass es im Bootloader standardmäßig gestartet wird?
Wie ändere ich die Grub-Startreihenfolge?
Antworten:
Erstellen Sie zunächst eine Sicherungskopie von
/etc/default/grub
. Wenn etwas schief geht, können Sie problemlos auf die als funktionierend bekannte Kopie zurückgreifen.Bearbeiten Sie anschließend die Datei mit dem Texteditor Ihrer Wahl (z. B. gedit usw.).
Suchen Sie die Zeile, die enthält
GRUB_DEFAULT
- das ist, was Sie bearbeiten möchten, um die Standardeinstellung festzulegen. Sie müssen den vollständigen Namen des gewünschten Kernels kennen - zBUbuntu, with Linux 3.13.0-53-generic
- zusammen mit dem vollständigen Namen des "erweiterten Menüs" - zBAdvanced options for Ubuntu
.Anschließend kombinieren Sie diese beiden Zeichenfolgen mit
>
und stellenGRUB_DEFAULT
sie wieGRUB_DEFAULT="Advanced options for Ubuntu>Ubuntu, with Linux 3.13.0-53-generic"
folgt ein : (einschließlich Anführungszeichen).Speichern Sie es und erstellen Sie das aktualisierte Grub-Menü.
Siehe auch: GNU GRUB Manual 2.02 oder genauer Abschnitt 15.1.0 zum Festlegen der Standardeinstellungen .
Hinweis: Es gibt eine Methode, die Zahlen für den Zugriff auf Kernel und Menüs verwendet. Dies wird jedoch nicht empfohlen, da dies bei Kernelaktualisierungen unzuverlässig ist.
quelle
sudo grub-mkconfig | less
, um alle möglichen Optionen zu sehen/boot/grub/grub.cfg
und dort sehen Sie allesmanuentry
und allessubmenus
. Wenn Sie sie bearbeiten, können Sie einfach die Standardeinstellungen festlegen und sogar die Titel der Optionen in der Grub-Liste ändern, wenn Sie einen Computer neu starten./boot/grub/grub.cfg
die genauen zu verwendenden Namen zu ermitteln. Ändern Sie diese Datei jedoch nicht, da sieupdate-grub
auch beim Aktualisieren von Paketen automatisch neu generiert wird .update-grub
ich eine Warnung aufgetreten: Bitte verwenden Sie keine alten TitelPrevious Linux versions>Ubuntu, with Linux 3.13.0-53-generic
für GRUB_DEFAULT verwendenAdvanced options for Ubuntu>Ubuntu, with Linux 3.13.0-53-generic
(für Versionen vor 2.00) odergnulinux-advanced-b0ce60c3-184c-453b-af59-419b56a2584f>gnulinux-3.13.0-53-generic-advanced-b0ce60c3-184c-453b-af59-419b56a2584f
(für 2,00 oder höher)Die beste Lösung für mich war (in
/etc/default/grub
) zu setzen:Mit diesen Einstellungen wird der zuletzt gewählte Wert für den nächsten Start beibehalten. Wenn Sie einen neuen Kernel haben, müssen Sie Ihre Konfiguration nicht bearbeiten.
Vergiss nicht, erneut zu rennen
sudo update-grub
Die Lösung ist aus dem Lesen:
info grub-mkconfig
quelle
;
) am Ende der Zeilen sicher ?!?Da ein
Advanced
Menü in Ubuntu standardmäßig vorhanden ist, müssen Sie es vor dem Kernel auswählen, den Sie mit dem>
Zeichen verwenden möchten .Stellen Sie zB ein:
in
/etc/default/grub
und erneut ausführensudo update-grub
.Es ist wichtig zu beachten, dass für die GRUB-Menüeinträge die Nummerierung mit beginnt
0
. Daher zeigt das1
oben auf dasAdvanced
Menü. Als Vorsichtsmaßnahme möchten Sie möglicherweise zunächst festlegenGRUB_TIMEOUT=5
. Einige können möglicherweise nicht auf GRUB zugreifen, indem sie beim Booten eine Taste drücken. Dies ist ein Sicherheitsnetz, falls Sie versehentlich auf etwas zeigenMemory test
. Es ist auch notwendig, die obigen Zahlen in Anführungszeichen zu setzen. Sonst geht es nicht.Ich habe am 16.04 LTS getestet.
quelle
Um festlegen zu können, welche Startoption als Standard verwendet werden soll, müssen Sie wissen, welche vorhanden sind.
Versuchen Sie Folgendes , um die Menüeinträge anzuzeigen, ohne tatsächlich zu booten :
quelle