BEARBEITEN: (aus Gründen der Übersichtlichkeit) Ich möchte das Erscheinungsbild des Grub-Boot-Menüs ändern, indem ich die Konfigurationsdateien bearbeite (möglicherweise, aber nicht unbedingt grub.cfg).
Jeder Ubuntu-Benutzer weiß also, wie voll das Boot-Menü nach einigen Kernel-Upgrades ist. In den Tagen von menu.lst konnten Sie das Menü optimieren, um unerwünschte Optionen auszublenden und sie dennoch verfügbar zu halten.
Zum Beispiel, wenn Ihr Grub-Menü so aussah:
A
B
C
D.
Sie können die Optionen C und D unsichtbar machen, indem Sie eine leere Option zwischen B und C einfügen. Auf diese Weise werden die Optionen C und D beim Hochfahren nicht angezeigt, sondern werden sichtbar, wenn Sie im Startmenü zu ihnen scrollen.
Der Versuch, denselben Trick in grub.cfg auszuführen, führte zu keinem Ergebnis. Daher suche ich nach einer Möglichkeit, mit dem neuen Grub-Menü das gleiche Ergebnis zu erzielen, indem ich die Datei grub.cfg bearbeite. Andere ästhetische Verbesserungen sind ebenfalls willkommen.
Vielen Dank
EDIT2: Wenn das Ausblenden von Menüeinträgen nicht möglich ist, möchte ich ein Trennzeichen zwischen ihnen einfügen, damit das Menü folgendermaßen aussieht:
A
B.- Andere -
C
D.
quelle
Antworten:
Verstehen Sie zunächst, wie Ubuntu Grub2 konfiguriert.
Wenn Sie also grub.cfg nicht nach jedem Kernel-Update bearbeiten möchten , möchten Sie die Skripte in /etc/grub.d optimieren, damit Ihre Änderungen bei jeder Ausführung von update-grub übernommen werden.
Zweitens, um Ihre erste Frage direkt zu beantworten, kenne ich keine Möglichkeit, bestimmte Startoptionen unsichtbar zu machen, aber dennoch über das Grub-Menü zugänglich zu sein. Es gibt viele kleine Dinge an Grub1, die in Grub2 nicht neu implementiert wurden, und es würde mich nicht wundern, wenn dies eines davon wäre.
Stattdessen können Sie alle Menüeinträge unsichtbar machen (bis sie hervorgehoben werden), indem Sie die Schriftfarbe des Menüs auf die gleiche Hintergrundfarbe einstellen. In /etc/grub.d/05_debian_theme , ändert menu_color_normal , so dass die erste Farbe (Schriftart) mit der zweiten Farbe (Hintergrund). Lassen Sie menu_color_highlight anders, damit der Eintrag unter dem Cursor angezeigt wird.
Ein Trennzeichen in das Grub-Menü aufnehmen.
In Grub1 würden Sie einen neuen Eintrag wie diesen einfügen. Soweit ich mich erinnere, brauchten Sie die Root- Deklaration, um einen gültigen Menüeintrag zu erstellen, andernfalls ignorierte Grub1 sie.
Ich vermute, Grub2 könnte ähnlich sein. Ein sehr einfacher Menüeintrag sieht in grub.cfg folgendermaßen aus :
Da "irgendetwas" in den doppelten Anführungszeichen als Titel angezeigt wird, können Sie damit ein Trennzeichen vortäuschen. Wie Grub1 möchte Grub2, dass das Linux- Schlüsselwort es als echten Menüeintrag behandelt. Achten Sie also darauf, dass Sie es nicht versehentlich auswählen.
Leider bedeutet "alles" nichts ; Während ich dies testete, versuchte ich es mit einer langen Reihe von Strichen ("----------------") und es funktionierte nie. Aber es mag die kurze Punktfolge, die oben gezeigt wird, also können Sie das verwenden.
..... .....
So macht man ein Trennzeichen. Um ein Bündel zu erstellen und sie automatisch dort zu platzieren, wo Sie sie möchten, müssen Sie sie zu den Skripten in /etc/grub.d hinzufügen .
In diesem Beispiel setzen wir ein einfaches Trennzeichen zwischen die verschiedenen Abschnitte von grub.cfg . Wenn Sie sich /etc/grub.d ansehen , sehen Sie die folgenden Skripte:
Wir erstellen ein neues Skript, ein Trennzeichen und fügen Folgendes ein:
Verschieben Sie nun das Skript für das erste Trennzeichen und verknüpfen Sie es für die anderen. Die Skripte werden der Reihe nach ausgeführt. Wenn Sie also möchten, dass das erste vor 10_linux kommt , nennen Sie es 09_separator oder so.
Wenn Sie in / etc / default / grub einen bestimmten Eintrag als Standard festgelegt haben , müssen Sie ihn möglicherweise aktualisieren. Grub2 beginnt mit der Zählung der Menüeinträge bei 0, und jedes dieser "Trennzeichen" ist ein gültiger Eintrag, sodass auch diese zählen. Wenn Ihr vorheriger Standardeintrag 0 war und Sie zuvor ein Trennzeichen hinzugefügt haben, müssen Sie GRUB_DEFAULT in 1 ändern
Führen Sie nun update-grub aus und untersuchen Sie /boot/grub/grub.cfg - Sie sollten die Trennzeichen dort sehen. Wenn Sie dies tun, starten Sie neu und checken Sie sie aus.
....
Wenn Sie Trennzeichen an einer anderen Stelle platzieren möchten, z. B. zwischen verschiedenen Kernelversionen, müssen Sie 10_linux (oder ein anderes Skript) direkt bearbeiten und den geeigneten Ort zum Hinzufügen des Trennzeichens finden. Sie können die Zeilen aus dem obigen Skript verwenden. Fügen Sie alles außer der ersten Zeile #! / bin / sh hinzu.
Wenn Sie etwas Schöneres wünschen, verwenden Sie Grub-Splash-Bilder oder -Themen. Ich muss Ihnen einen Regencheck zu diesen Themen geben, aber überprüfen Sie die Ressourcen unten.
Ressourcen:
Es gibt zwei große Grub2-Anleitungen auf UbuntuForums, die ich kennen und lieben gelernt habe:
GNU Grub 2 ist eine weitere großartige Ressource. Er hat eine Reihe von Skripten, mit denen er Karmics Grub2 optimieren kann ( vollständige Offenlegung: Ich habe sie nicht ausprobiert ).
Die Theme Format- Seite von Grub Wiki ist ein Muss für das Hacken von Grub2-Themes.
quelle
Das Trennzeichen kann aus Bindestrichen bestehen, wenn das erste Zeichen ein Leerzeichen ist. Es ist auch nicht erforderlich, den Linux-Befehl für den Trennabschnitt zu verwenden. Sie können einen beliebigen Befehl wie den folgenden verwenden:
Oder sogar "wahr", um still zurückzukehren:
quelle
Wenn Sie die anderen Kernel nicht verwenden, können Sie sie einfach über die für Sie geeignete Paketmanager-Oberfläche entfernen. Dadurch werden sie automatisch aus grub.cfg entfernt
quelle