it-swarm.dev

Jak mohu skrýt nabídku GRUB), která se zobrazuje na začátku spuštění?

Zastavil jsem duální bootování a nechci si už vybírat OS. Chci zavést systém přímo do Ubuntu 12.04, aniž bych viděl nabídku GRUB).

Jak toho mohu dosáhnout?

48
Alex Poulos

Můžete pouze změnit nastavení grubu.

zadejte terminál

Sudo -H gedit /etc/default/grub

you need to change this

Změna GRUB_HIDDEN_TIMEOUT_QUIET=false to

GRUB_HIDDEN_TIMEOUT_QUIET=true

Uložte soubor a ukončete

Zadejte Sudo update-grub

Pokud nedosáhnete požadovaného výsledku, podívejte se na tato chyba .

35
hingev

Tento problém jsem vyřešil vypnutím OS Prober. Udělal jsem to, protože v /boot/grub/grub.cfg v části generované šablonou /etc/grub.d/30_os-prober došlo k přepsání „timeout“ na 10 a „style“ do menu.

Upravit /etc/default/grub a přidejte tento řádek:

GRUB_DISABLE_OS_PROBER=true

Doufám, že vám to bude užitečné!

BTW, můj plný/etc/default/grub je:

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

Šťastné kódování

27
Agus Arias

Vyzkoušel jsem všechny ty tipy, které nefungovaly, a nakonec jsem zkrátil časový limit na nulu takto:

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=""
11
Ndodemfishane

Soubor musíte upravit na /etc/default/grub, abyste zabránili zobrazení nabídky grub.

Ve výchozím nastavení vypadají záznamy v těchto souborech takto.

 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 = "tichý úvodní" 
 GRUB_CMDLINE_LINUX = "" 
  • Odstranit # značka z druhého řádku a
  • Změňte řádek GRUB_HIDDEN_TIMEOUT_QUIET=false to GRUB_HIDDEN_TIMEOUT_QUIET=true.

Po změnách bude požadovaná část souboru vypadat takto

 
 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 = "tichý úvodní" 
 GRUB_CMDLINE_LINUX = "" 
  • Poté spusťte Sudo update-grub příkaz v terminálu a restartujte, abyste viděli výsledek.
9
Anwar

Měl jsem stejný problém a žádný z tipů zde nefungoval! Jediným způsobem bylo změnit /boot/grub/grub.cfg manuálně. V určitém okamžiku tohoto souboru udělá časový limit na 10! Takže jen přidejte tyto řádky

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

Ale už nikdy nemůžete udělat update-grub, jinak se vrátí zpět do stejného souboru a časový limit se opět změní na 10! Uložte soubor (v vi budete muset vynutit, i když jste v pořádku!). Restartujte počítač a bude to fungovat dobře!

6
user3680055

Našel jsem jednoduché řešení problému.

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

A aktualizujte grub. Přepíše nastavení časového limitu v grub.cfg, takže nezáleží na tom, co máte v/etc/default/grub. Mám tedy skryté menu, které lze vyvolat posunem na 2 sekundy.

3
Anton Lavrenov

Stejně jako Agustin jsem zjistil, že můj problém byl s OS Prober. Udělal jsem o krok lepší než jeho řešení, našel jsem tento Gist , který vám umožní mít vaše OS, ale stále skrýt nabídku. Stačí stáhnout tyto dva soubory a vložit je do /etc/grub.d a udělte jim stejná oprávnění jako ostatní šablony v tomto adresáři.

Pokud budete chtít někdy přistupovat k vašemu nestandardnímu operačnímu systému, při zavádění systému držte stisknutou klávesu shift. Zobrazí se nabídka.

3
Neil Traft

pokud chcete odebrat spouštěcí položku, zadejte:

Sudo update-grub

Pokud to nepomůže, nainstalujte správce spouštění, například:

Sudo apt-get install startupmanager


se start-managerem můžete

  1. zvolte se vstupem pro zavedení,
  2. zvolte rozlišení a jak dlouho čekat před zavedením systému,
  3. můžete také zvolit 0 pro automatické spuštění výchozí spouštěcí položky
3
blade19899

Viděl jsem mnoho lidí říkat, že navrhované odpovědi pro ně nefungují. Vyzkoušel jsem několik možností a tenhle pracoval pro mě :

Upravit /etc/grub.d/00_header a najít:

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

Změnit na ...

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

A spusťte aktualizaci grub.

2
Scott Coates

to mi chvíli trvalo, ale vyplatilo se, že to byla kombinace mého vlastního kopání a odpovědi nahoře ujistěte se, že /etc/default/grub a /usr/grub/default/grub jsou stejní. pak spusťte gksu gedit /etc/grub.d/30_os-prober v horní části jsou dva řádky, které chceme, ale najít je hledat stylus a změnit tento řádek na skrytý, pak hledat časový limit by to mělo být, jako kdyby timeout = 0 nastaveno na 1 smazat tuto část z if na konec souboru, ujistěte se, že smažete konec souboru nebo váš šroubovaný a grub config by měl protokolovat něco takového, jako je tohle moje, například:

nastaví výchozí bootování na Windows 8.1 pro

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

nastaví pětsekundové okno, aby zasáhlo posun, abych mohl nastartovat do Ubuntu

GRUB_HIDDEN_TIMEOUT=5
GRUB_HIDDEN_TIMEOUT_QUIET=true

hlavní oprava chyby pro případ

GRUB_TIMEOUT=0

nastaví styl na skrytý

GRUB_TIMEOUT_STYLE=hidden

výchozí Ubuntu věci

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

pro všechny z vás, kteří mají Word splash v cmd řádku nic, ale hardcoding 0 pro timeout nebude fungovat ,

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=""

Zkuste odstranit Word splash z druhého posledního řádku, aktualizujte a restartujte , voila, bez menu :)

hth, krex

2
Kresimir Pendic

Přidejte následující řádek do /etc/default/grub:

GRUB_FORCE_HIDDEN_MENU="true"
2
Peque
  • Nakonfigurujte grub pomocí Sudo nano /etc/default/grub
  • Zadejte konec souboru:
GRUB_HIDDEN_TIMEOUT=0
GRUB_TIMEOUT=0
  • Uložit změny CTRL + S
  • Ukončete CTRL + X
  • Aktualizovat nabídku grubu Sudo update-grub
1
Yedhrab

Pokud nastavujete GRUB_TIMEOUT= na nulu v /etc/default/grub nefunguje, někde v /boot/grub/grub.cfg (skutečný grub skript) se časový limit mění. V souboru, který to způsobuje, tento řádek komentujte a spusťte update-grub. Tudy GRUB_TIMEOUT= platí znovu a vaše změna bude trvat i nadále.

Jak:
Začněte pokusem a chybou: vyhledejte set timeout v /boot/grub/grub.cfg a změňte časový limit, restartujte (nespouštějte update-grub) a zkontrolujte, zda to změnilo nabídku grub. Pokud ne, zrušte poslední úpravu a přejděte na další.

Poté, co jste v grub.cfg musíte se podívat, odkud to přišlo. Podívejte se na ### BEGIN & ### END (/boot/grub/grub.cfg je generováno update-grub a zdrojové soubory v /etc/grub.d/). V začarovaném souboru, např. /etc/grub.d/00_header, komentujte odpovídající řádek, který nastavuje časový limit a spusťte update-grub.
Nyní GRUB_TIMEOUT=0 přeskočí nabídku

0
josh
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

řeší problém! s.grub2 @ubuntuusers! ;-)

Během bootování je také možné zviditelnit grub menu!

DŮLEŽITÉ, pokud máte havárii a chcete zavést starší (a stabilní) jádro!

(Testováno s Linux Mint 17.3 Rosa, která je založena na Ubuntu 14.04)

0
chalee

Pokuste se to na vlastní nebezpečí a pouze jako poslední možnost!

Zkusil jsem upravit /etc/default/grub a běží Sudo update-grub bez výsledků.

Ukončeno úpravy /boot/grub/grub.cfg ručně, konkrétně,

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

set timeout=0
saved_entry="Ubuntu"
save_env saved_entry

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

V ideálním případě bychom mohli jen dát

GRUB_TIMEOUT_STYLE=hidden
GRUB_TIMEOUT=0

do /etc/default/grub a udělej s tím. Bohužel, alespoň na Manjaru, soubor /etc/grub.d/30_os-prober toto nastavení přepíše. Mohli bychom tento soubor zakázat, ale tady je lepší řešení: create /etc/grub.d/99_quiet s tímto obsahem:

#!/bin/sh

cat <<EOF
set timeout_style=hidden
set timeout=0
EOF

(U tohoto souboru ani nemusíme upravovat /etc/default/grub vůbec.) Ať je spustitelný a běží Sudo update-grub (nebo Sudo grub-mkconfig -o /boot/grub/grub.cfg pokud je v Arch).

Restartujte a GRUB nezobrazí nabídku ani nezavede žádné zpoždění během bootování. Stále však můžete nabídku získat, pokud podržíte klávesu Shift po zapnutí hardwaru, ale před GRUB začal.

Abychom pochopili, co se zde děje, musíme pochopit, jak GRUB funguje. Existuje /boot/grub/grub.cfg soubor ve speciálním DSL, který je během bootování načten GRUB během bootování. Lze to napsat ručně, ale je výhodné jej vygenerovat pomocí update-grub (tj. grub-mkconfig). Tento příkaz používá /etc/default/grub a /etc/grub.d vygenerovat grub.cfg. The /etc/default/grub je nejprve získáno pro nastavení konfiguračních parametrů pro update-grub pro vygenerování souboru. Pak každý soubor v /etc/grub.d, který je spustitelný, je vykonán a jeho výstup je zřetězen do konec grub.cfg.

U některých dokumentů viz zde , ale podívejte se také na skutečné skripty Shell v /etc/grub.d a výsledná GRUB konfigurace /boot/grub/grub.cfg.

0
Radon Rosborough