Wie verstecke ich das GRUB-Menü, das zu Beginn des Startvorgangs angezeigt wird?


42

Ich habe das Dual-Booten gestoppt und möchte das Betriebssystem nicht mehr auswählen müssen. Ich möchte Ubuntu 12.04 direkt booten, ohne das GRUB-Menü zu sehen.

Wie kann ich das erreichen?


Wenn Sie den Dual-Boot-Vorgang abgebrochen haben, haben Sie wahrscheinlich das andere Betriebssystem nicht mehr verwendet. Warum können Sie das andere Betriebssystem nicht entfernen, damit Ubuntu normal booten kann?
karthick87


wenn eine dieser Antworten „beantwortet“ Ihre Frage bitte einen von ihnen akzeptieren :)
blade19899

@ david6: Ich verstehe nicht, wie eines dieser beiden Duplikate dieser Frage ist. Ich denke, es geht darum, das Menü während des Timeouts zu verstecken.
OKTOSITE

Entschuldigung, der zweite Link sollte lauten: askubuntu.com/questions/66070/… Dies beinhaltet, wie man: Das Grub2-Menü ausblenden und die Standard-
Menüoption verwenden

Antworten:


33

Sie können einfach die Einstellungen für das Grub ändern.

Geben Sie das Terminal ein

sudo -H gedit /etc/default/grub

Sie müssen dies ändern

Wechseln Sie GRUB_HIDDEN_TIMEOUT_QUIET=falsezu

GRUB_HIDDEN_TIMEOUT_QUIET=true

Speichern Sie die Datei und beenden Sie sie

Art sudo update-grub

Wenn Sie nicht das gewünschte Ergebnis erhalten, sehen Sie sich diesen Fehler an .


7
Es ist derzeit auf True geändert, aber ich sehe immer noch das Menü ...
Alex Poulos

Ich bin am 12.04 und ich habe es versucht, aber es hat bereits "true" gesagt und es wird immer noch angezeigt. Die einzigen anderen Betriebssysteme, die ich habe, sind die fehlersicheren und Memtest - das war's. Ich habe meine Windows-Partition bereits gelöscht und grub aktualisiert und das Menü wird weiterhin angezeigt.
Alex Poulos

@ AlexPoulos Blick auf diesen Link
hingev

2
Arbeitete für mich, indem Sie das Timeout auf 0 änderten und es dann ruhig machten. Thanks
king_julien

23

Ich habe dieses Problem durch Deaktivieren des OS Prober gelöst. Ich habe das getan, weil in /boot/grub/grub.cfgdem Teil, der von der Vorlage generiert /etc/grub.d/30_os-proberwurde, eine Überschreibung von "Zeitüberschreitung" auf 10 und "Stil" auf Menü auftrat.

Bearbeiten /etc/default/grubund fügen Sie diese Zeile hinzu:

GRUB_DISABLE_OS_PROBER=true

Ich hoffe, Sie finden das nützlich!

Übrigens ist meine vollständige / etc / default / grub:

GRUB_DEFAULT=0
GRUB_TIMEOUT=0
GRUB_TIMEOUT_STYLE=hidden
GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_DISTRIBUTOR= [...]
GRUB_DISABLE_OS_PROBER=true
GRUB_RECORDFAIL_TIMEOUT=0

Fröhliches Codieren


2
das hat bei mir geklappt, aber es hat dazu geführt, dass alle anderen Bootoptionen außer den Standardoptionen
verschwunden sind

1
@opensas Wenn das Auswahlmenü nicht angezeigt wird, woher wissen Sie überhaupt, welche Startoptionen darauf "angezeigt" werden? Wenn Sie das Menü deaktivieren möchten, warum möchten Sie nicht standardmäßige Startoptionen?
Kyle Strand

Wenn Sie den Teil 'GRUB_TIMEOUT_STYLE = hidden' weglassen, ist der Countdown sichtbar, aber nichts anderes, es sei denn, Sie unterbrechen ihn. So können Sie auf das Menü zugreifen und die Starteinstellungen ändern, auch wenn dies weniger offensichtlich ist.
Stonecrusher

Wenn Sie das Boot-Menü anzeigen möchten, nachdem Sie die Umschalttaste gedrückt haben, muss GRUB_TIMEOUT auf größer als Null gesetzt werden (z. B. GRUB_TIMEOUT = 5). Andernfalls können andere Startoptionen (z. B. Windows) bei Bedarf nicht aktiviert werden.
user3804598

Unter Ubuntu 18.04 LTS GRUB_RECORDFAIL_TIMEOUT=0ist dies die einzige Änderung /etc/default/grub, die das 30-Sekunden-Timeout (und das GRUB-Bootloader-Menü insgesamt) beseitigt. Dies scheint ein Fehler zu sein: bugs.launchpad.net/ubuntu/+source/grub2/+bug/1814403/ Bemerkungen / 4 . Außerdem sudo update-grubmuss ausgeführt werden, damit die Änderungen wirksam werden, was in der Antwort nicht erwähnt wird. Beachten Sie, dass das Festlegen dieses Werts 0nicht empfohlen wird (siehe oben genannten Link), es sei denn, es handelt sich bei dem Computer um eine Entwicklungs-VM oder ähnliches.
Ben Johnson

11

Ich habe alle diese Tipps ausprobiert, die nicht funktioniert haben, und habe die Timeout-Zeit wie folgt auf Null reduziert:

GRUB_DEFAULT=0
GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=0
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""

Laufen Sie sudo update-grubnach dem Ändern der Werte
Niksmac

Gleiche für mich. Ich habe "update-grub" ausgeführt - hat nicht funktioniert.
Robin Winslow

1
Dies ist, was meine / etc / default / grub aber ich bekomme immer noch einen Countdown von 10 Sekunden mit dem Grub-Menü angezeigt.
Zorkerz

8

Sie müssen die Datei unter bearbeiten, um /etc/default/grubzu verhindern, dass das Grub-Menü angezeigt wird.

Standardmäßig sehen die Einträge in diesen Dateien so aus.

GRUB_DEFAULT = 0
# GRUB_HIDDEN_TIMEOUT = 0
GRUB_HIDDEN_TIMEOUT_QUIET = false
GRUB_TIMEOUT = 10
GRUB_DISTRIBUTOR = `lsb_release -i -s 2> / dev / null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT = "leises Spritzen"
GRUB_CMDLINE_LINUX = ""
  • Entfernen Sie die #Markierung von der zweiten Zeile und
  • Ändern Sie die Zeile GRUB_HIDDEN_TIMEOUT_QUIET=falsein GRUB_HIDDEN_TIMEOUT_QUIET=true.

Nach Änderungen sieht der erforderliche Teil der Datei folgendermaßen aus

GRUB_DEFAULT = 0
GRUB_HIDDEN_TIMEOUT = 0
GRUB_HIDDEN_TIMEOUT_QUIET = true
GRUB_TIMEOUT = 10
GRUB_DISTRIBUTOR = `lsb_release -i -s 2> / dev / null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT = "leises Spritzen"
GRUB_CMDLINE_LINUX = ""
  • Führen Sie anschließend den sudo update-grubBefehl im Terminal aus und starten Sie den Computer neu, um das Ergebnis anzuzeigen.

3
Ich hatte diese Konfiguration, aber es erscheint immer noch das Grub-Menü.

1
Mit dieser Einstellung gibt update-grub Folgendes zurück: "Warnung: Das Festlegen von GRUB_TIMEOUT auf einen Wert ungleich Null, wenn GRUB_HIDDEN_TIMEOUT nicht mehr unterstützt wird", und ich erhalte weiterhin einen Countdown von 10 Sekunden, während das Grub-Menü angezeigt wird. Wenn Sie GRUB_TIMEOUT auf 0 setzen, werden dieselben Ergebnisse auch zurückgegeben.
Zorkerz

@zorkerz Welche Ubuntu-Version verwendest du?
Anwar

Xenial Xerus hatte aber das gleiche Verhalten am 15.10
zorkerz

5

Ich hatte das gleiche Problem und keiner der Tipps hier hat funktioniert! Die einzige Möglichkeit bestand darin, das Handbuch /boot/grub/grub.cfg zu ändern. Irgendwann in dieser Datei macht er das Timeout auf 10! Kommentieren Sie einfach diese Zeilen

if [ "${timeout}" = 0 ]; then
  set timeout=10
fi

Sie können update-grub jedoch nie wieder ausführen, da sonst dieselbe Datei wiederhergestellt wird und die Zeitüberschreitung erneut auf 10 abläuft! Speichern Sie die Datei (in vi müssen Sie sie erzwingen, auch wenn Sie su sind!). Starten Sie den Computer neu und es wird gut funktionieren!


Interessant, warum nicht if [ "${timeout}" = 10 ]; then set timeout=0 fi ? Oder einfach die if-Anweisung komplett entfernen und einfach stehen lassen set timeout=0?
Elder Geek

Dies wird dort von einer Vorlage abgelegt, die deaktiviert werden kann (der OS-Prober, wie in Agustins Antwort erwähnt). Sie müssen grub.cfg nicht manuell bearbeiten.
Neil Traft

Dies funktionierte für mich in 14.04
Kalamalka Kid

3

Wenn Sie einen Boot-Eintrag entfernen möchten, geben Sie einfach Folgendes ein:

sudo update-grub

Wenn das nicht funktioniert, installieren Sie den Start-Manager wie folgt:

sudo apt-get install startupmanager


Mit dem Startup-Manager können Sie

  1. Wählen Sie mit Eintrag zum Booten,
  2. Wählen Sie die Auflösung und wie lange Sie vor dem Booten warten müssen.
  3. Sie können auch 0 wählen, um den Standard-Starteintrag automatisch zu starten

burg, aber er nimmt etwa grub
Black Block

Entschuldigung Tippfehler. es sollte sudo update-grub sein, ich habe die
antwort

Das einzige Problem dabei ist, dass die Version von Startup-Manager, die ich habe, nicht viele Optionen zeigt - Imgur
Alex Poulos

1
Ich bin am 12.04 und ich habe es versucht, aber es hat bereits "true" gesagt und es wird immer noch angezeigt. Die einzigen anderen Betriebssysteme, die ich habe, sind die fehlersicheren und Memtest - das war's. Ich habe bereits meine Windows-Partition gelöscht und grub aktualisiert und das Menü zeigt immer noch
Alex Poulos

Neben "Zeitüberschreitung in Sekunden" befindet sich eine Box mit der Nummer 10.
Benennen

3

Wie bei Agustin stellte ich fest, dass mein Problem beim OS Prober lag. Ich habe einen Schritt besser als seine Lösung getan und diese Zusammenfassung gefunden , mit der Sie Ihre Betriebssysteme haben, aber das Menü immer noch ausblenden können. Sie müssen nur diese beiden Dateien herunterladen, in sie einfügen /etc/grub.dund ihnen die gleichen Berechtigungen erteilen wie den anderen Vorlagen in diesem Verzeichnis.

Wenn Sie jemals auf Ihr nicht standardmäßiges Betriebssystem zugreifen möchten, halten Sie beim Hochfahren einfach die Umschalttaste gedrückt. Das Menü wird angezeigt.


das scheint mir definitiv ein Bug zu sein. hat jemand darüber berichtet ???
öffnet

Stimmt ... vielleicht komme ich irgendwann mal dazu. Keine Ahnung, ob es schon eine gibt.
Neil Traft

3

Ich habe eine einfache Lösung für das Problem gefunden.

  echo "
  set timeout_style=hidden
  set timeout=2" | sudo tee --append /etc/grub.d/40_custom 

Und aktualisiere grub. Die Timeout-Einstellungen in der Datei grub.cfg werden überschrieben, sodass es keine Rolle spielt, was in / etc / default / grub enthalten ist. Ich habe also ein verstecktes Menü, das 2 Sek. Lang per Shift aufgerufen werden kann.


Dieser Ansatz hat bei mir funktioniert (grub 2.02 ~ beta3-4ubuntu7, installiert von Ubuntu 17.10), als keine der anderen auf dieser Seite vorgeschlagenen Lösungen dies tat (es ist wirklich ein Pech, dass ich dies zuletzt getestet habe: /). Vielen Dank!
pchaigno

2

Fügen Sie die folgende Zeile hinzu /etc/default/grub:

GRUB_FORCE_HIDDEN_MENU="true"

2

Ich habe viele Leute gesehen, die sagten, dass die vorgeschlagenen Antworten für sie nicht funktionieren. Ich habe verschiedene Optionen ausprobiert und diese funktionierte für mich :

Bearbeite /etc/grub.d/00_header und finde:

if [ "\${recordfail}" = 1 ]; then
  set timeout=-1

Ändern Sie es in ...

if [ "\${recordfail}" = 1 ]; then
  set timeout=10

Und update-grub ausführen.


2

für alle von euch, die in der cmd-Zeile einen Wortspritzer haben, funktioniert nichts anderes als das Hardcodieren von 0 für eine Zeitüberschreitung ,,

GRUB_DEFAULT=0
GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""

Versuchen Sie, Word Splash aus der vorletzten Zeile zu entfernen , zu aktualisieren und neu zu starten, voila, kein Menü :)

hth, krex


2

dies dauerte eine Weile , aber es abbezahlt es eine Mischung aus meinen eigenen Graben und Antworten oben zuerst sicherstellen , dass Du war /etc/default/grubund /usr/grub/default/grubist die gleiche. dann laufen gksu gedit /etc/grub.d/30_os-proberin der Nähe der Spitze sind die beiden Linien , die wir wollen , aber sie für styke Suche zu finden und diese Linie versteckt dann für eine Timeout - Linie sollte es wie wenn sein suchen ändern timeout = 0Satz 10 löschen , dass ein Teil sicher von dem , wenn zum Ende der Datei make du löschst das ende der datei oder deine verschraubte und deine grub konfiguration sollte so etwas wie dies protokollieren, ist meins nur zum beispiel:

Setzt den Standardstart auf Windows 8.1 Pro

GRUB_DEFAULT="Windows 8 (loader) (on /dev/sda1)"

Setzt ein Fünf-Sekunden-Fenster, um die Umschalttaste zu drücken, damit ich Ubuntu starten kann

GRUB_HIDDEN_TIMEOUT=5
GRUB_HIDDEN_TIMEOUT_QUIET=true

Hauptfix für Fehler nur für den Fall

GRUB_TIMEOUT=0

Setzt den Stil auf versteckt

GRUB_TIMEOUT_STYLE=hidden

Standard Ubuntu Zeug

GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""

1
  • Konfigurieren Sie grub über sudo nano /etc/default/grub
  • Geben Sie das Ende der Datei ein:
GRUB_HIDDEN_TIMEOUT=0
GRUB_TIMEOUT=0
  • Änderungen speichern CTRL+S
  • Beenden Sie CTRL+X
  • Grub-Menü aktualisieren sudo update-grub

0

Versuchen Sie dies auf eigenes Risiko und nur als letzten Ausweg!

Ich habe versucht /etc/default/grub, sudo update-grubohne Ergebnisse zu bearbeiten und auszuführen .

Bearbeitung /boot/grub/grub.cfgvon Hand beendet, speziell,

...
### END /etc/grub.d/00_header ###

set timeout=0
saved_entry="Ubuntu"
save_env saved_entry

### BEGIN /etc/grub.d/05_debian_theme ###
...

-1
GRUB_DEFAULT=0
GRUB_HIDDEN_TIMEOUT=5
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=0
GRUB_DISTRIBUTOR="lsb_release -i -s 2> /dev/null || echo Debian"
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""

# Set this if you hide grubmenu at boot! hidden-timeout has to be 0-10
# NOT recommend with dual-boot systems
# Type ESC/ENTER at boot to make grub-menu visible again! 
# in this case hidden-timeout has to be 3-10
GRUB_DISABLE_OS_PROBER=true

löst das problem! @ubuntuusers an grub2! ;-)

Es ist auch möglich, das Grub-Menü beim Booten wieder sichtbar zu machen!

WICHTIG, wenn Sie einen Absturz haben und einen älteren (und stabilen) Kernel booten möchten!

(Getestet mit Linux Mint 17.3 Rosa, das auf Ubuntu 14.04 basiert)


4
Bitte wiederholen Sie frühere Antworten nicht .
David Foerster
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.