Önyüklemenin başında görünen GRUB menüsünü nasıl gizlerim?


42

Çift önyüklemeyi durdurdum ve artık işletim sistemini seçmek zorunda kalmak istemiyorum. GRUB menüsünü görmeden doğrudan Ubuntu 12.04'e ön yükleme yapmak istiyorum.

Bunu nasıl başarabilirim?


İkili önyüklemeyi durdurduysanız, muhtemelen diğer işletim sistemini kullanmayı bıraktınız. Neden diğer işletim sistemini kaldıramıyorsunuz, böylece ubuntu normal şekilde önyüklenebilir.
karthick87


bu cevapların herhangi biri "cevabınızı" sorunuzu varsa lütfen onlardan birini kabul edin :)
blade19899

@ david6: Bunlardan ikisinin de bu sorunun bir kopyası olduğunu görmüyorum. Bunun zaman aşımı sırasında grub menüsünü gizlemekle ilgili olduğunu düşünüyorum.
oKtosiTe 20:12

Üzgünüz, ikinci bağlantının olması gerekiyordu: askubuntu.com/questions/66070/… Bu, aşağıdakileri içerir: Grub2 menüsünü gizleyin ve varsayılan menü seçeneğini kullanın
david6

Yanıtlar:


33

Sadece grub ayarlarını değiştirebilirsiniz.

terminalde yaz

sudo -H gedit /etc/default/grub

bunu değiştirmeniz gerek

Değişim GRUB_HIDDEN_TIMEOUT_QUIET=falseiçin

GRUB_HIDDEN_TIMEOUT_QUIET=true

Dosyayı kaydet ve çık

tip sudo update-grub

İstediğiniz sonucu alamazsanız, bu hatayı görün .


7
şu anda true olarak değiştirildi, ancak hala grub menüsünü görüyorum ...
Alex Poulos

12.04 Im ve bunu denedim ama zaten "doğru" dedi ve hala ortaya çıkıyor. Sahip olduğum diğer işletim sistemlerinden biri güvenli ve Memtest - hepsi bu. Windows Bölümümü zaten sildim ve grubum güncellendi ve menü hala görüntüleniyor.
Alex Poulos

@AlexPoulos bu bağlantıya
bakıyor

2
Zaman aşımı süresini 0 olarak değiştirip benim için sessiz hale getirerek benim için çalıştı. Teşekkürler
king_julien

23

OS Prober'ı devre dışı bırakarak bu sorunu çözdüm. Bunu yaptım, çünkü /boot/grub/grub.cfgşablon tarafından oluşturulan kısımda /etc/grub.d/30_os-prober, "zaman aşımı" ile 10 ve "stil" ile menünün geçersiz kılınması vardı.

/etc/default/grubBu satırı düzenleyin ve ekleyin:

GRUB_DISABLE_OS_PROBER=true

Umarım bu yararlı bulursunuz!

Btw, benim tam / 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

Mutlu kodlama


2
Bu benim için çalıştı, ama diğer önyükleme seçenekleri arasında
tamamen kayboldu

1
@opensas Seçim menüsü görüntülenmezse, hangi önyükleme seçeneklerinde "göründüğünü" nasıl bilebilirsiniz? Menüyü devre dışı bırakmak istiyorsanız neden varsayılan olmayan önyükleme seçenekleri istiyorsunuz?
Kyle Strand

'GRUB_TIMEOUT_STYLE = hidden' kısmını dışarıda bırakırsanız, geri sayım görünür, ancak kesmezseniz başka hiçbir şey görünmez. Bu, menüye girmenizi ve önyükleme ayarlarını değiştirmenizi, hatta daha az belirgin hale getirmenizi sağlar.
stonecrusher

Shift tuşunu basılı tuttuktan sonra önyükleme menüsünü görmek isteyen varsa, GRUB_TIMEOUT sıfıra daha büyük olarak ayarlanmalıdır (örneğin, GRUB_TIMEOUT = 5). Aksi takdirde, gerekirse diğer önyükleme seçenekleri (Windows gibi) etkinleştirilemez.
user3804598

Ubuntu 18.04 LTS günü, GRUB_RECORDFAIL_TIMEOUT=0olduğu tek değişiklik /etc/default/grubo ortadan kaldırır 30 saniyelik zaman aşımı (ve tamamen GRUB bootloader menüsü) bir hata gibi görünüyor,: bugs.launchpad.net/ubuntu/+source/grub2/+bug/1814403/ yorumlar / 4 . Ayrıca, sudo update-grubCevaplarda belirtilmeyen düzenlemelerin yürürlüğe girmesi için de yürütülmelidir. 0Makine bir geliştirme VM'si veya benzeri olmadıkça, bu değerin ayarlanmasının önerilmediğine (yukarıda belirtilen bağlantıya bakınız) dikkat edin.
Ben Johnson

11

Çalışmadıkları tüm ipuçlarını denedim, zaman aşımı süresini aşağıdaki gibi sıfıra indirdim:

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

sudo update-grubdeğerleri değiştirdikten sonra koşmak
niksmac

Benim için aynı. "Güncelleme grubunu" koştum - işe yaramadı.
Robin Winslow,

1
Bu benim / etc / default / grub'umdur fakat grub menüsünü gösteren 10 saniyelik bir geri sayım var.
zorkerz

8

/etc/default/grubGrub menüsünün gösterilmesini önlemek için dosyayı düzenlemelisiniz .

Varsayılan olarak, bu dosyalardaki girişler bu şekilde görünür.

GRUB_DEFAULT = 0
# GRUB_HIDDEN_TIMEOUT = 0
GRUB_HIDDEN_TIMEOUT_QUIET = false
GRUB_TIMEOUT = 10
GRUB_DISTRIBUTOR = `lsb_release -i -s 2> / dev / null || yankı Debian`
GRUB_CMDLINE_LINUX_DEFAULT = "sessiz sıçrama"
GRUB_CMDLINE_LINUX = ""
  • #İşareti ikinci satırdan çıkarın ve
  • Çizgiyi olarak GRUB_HIDDEN_TIMEOUT_QUIET=falsedeğiştirin GRUB_HIDDEN_TIMEOUT_QUIET=true.

Değişikliklerden sonra, dosyanın gerekli kısmı şöyle görünecek

GRUB_DEFAULT = 0
GRUB_HIDDEN_TIMEOUT = 0
GRUB_HIDDEN_TIMEOUT_QUIET = true
GRUB_TIMEOUT = 10
GRUB_DISTRIBUTOR = `lsb_release -i -s 2> / dev / null || yankı Debian`
GRUB_CMDLINE_LINUX_DEFAULT = "sessiz sıçrama"
GRUB_CMDLINE_LINUX = ""
  • Ardından sudo update-grubterminalde komutu çalıştırın ve sonucu görmek için yeniden başlatın.

3
Bu konfigürasyon vardı ama hala grub menüsü beliriyor.

1
Bu ayar güncelleme grubuyla 'Uyarı: GRUB_TIMEOUT ayarını GRUB_HIDDEN_TIMEOUT ayarlandıysa sıfır olmayan bir değere ayarlamak artık desteklenmiyor' ve grub menüsünü gösterirken yine de 10 saniyelik bir geri sayım alıyorum. GRUB_TIMEOUT değerini 0 olarak ayarlamak da aynı sonuçları verir.
zorkerz

@zorkerz ubuntu'nun hangi sürümünü kullanıyorsunuz?
Anwar

Xenial Xerus ancak 15.10'da aynı davranışı yaptı
zorkerz 13.06.2007

5

Aynı sorunu yaşadım ve buradaki ipuçlarından hiçbiri işe yaramadı! Tek yol /boot/grub/grub.cfg kılavuzunu değiştirmekti. Bu dosyanın bir noktasında zaman aşımını 10'a çıkardı! Yani, sadece bu satırları yorumlayın

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

Ancak, güncelleme grubunu bir daha asla yapamazsınız, aksi takdirde aynı dosyaya geri döner ve zaman aşımı tekrar 10 olur! Dosyayı kaydedin (vi de su olsa bile zorlamanız gerekecek!). Bilgisayarı yeniden başlatın ve işe yarayacak!


İlginç, neden olmasın if [ "${timeout}" = 10 ]; then set timeout=0 fi ? Veya if if ifadesini tamamen kaldırın ve sadece bırakın set timeout=0?
Elder Geek

Bu, devre dışı bırakılabilen bir şablondan çıkarılır (Agustin'in cevabında belirtildiği gibi İS uzmanı). Grub.cfg dosyasını elle düzenlemeniz gerekmez.
Neil Traft,

bu benim için çalıştı
14.04

3

Bir önyükleme girişini kaldırmak istiyorsanız, sadece şunu yazın:

sudo update-grub

Bu işe yaramazsa, başlangıç ​​yöneticisini aşağıdaki gibi yükleyin:

sudo apt-get install startupmanager


başlangıç ​​yöneticisi ile yapabilecekleriniz

  1. önyüklemek için giriş ile seçin,
  2. çözünürlüğü seçin ve önyüklemeden önce ne kadar bekleyeceğinizi,
  3. varsayılan önyükleme girişini otomatik önyükleme için 0 da seçebilirsiniz

burg ama o grub alıyor
Black Block

Üzgünüm yazım hatası. sudo güncelleme grub olması gerekiyordu, cevabı düzenledi
blade19899

Bununla ilgili tek sorun, Sahip olduğum Başlangıç ​​yöneticisi sürümünün fazla seçenek göstermemesidir - Imgur
Alex Poulos 9:12

1
12.04 Im ve bunu denedim ama zaten "doğru" dedi ve hala ortaya çıkıyor. Sahip olduğum diğer işletim sistemlerinden biri güvenli ve Memtest - hepsi bu. Windows Bölümümü zaten sildim ve grubum güncellendi ve menü hala gösteriliyor
Alex Poulos

"saniye cinsinden zaman aşımının" yanında, 10 numaralı, 0 numaralı olarak yeniden adlandırılan bir kutu var
blade19899

3

Gibi Agustin , benim sorunu OS Prober birlikte olduğunu gördük. Çözümünden daha iyi bir adım attığımda , işletim sisteminize sahip olmanıza izin veren, ancak hala menüyü gizleyen bu özü buldum . Sadece bu iki dosyayı indirmeniz, içine koymanız /etc/grub.dve bu dizindeki diğer şablonlarla aynı izinleri vermeniz yeterlidir .

Varsayılan olmayan işletim sisteminize erişmek istiyorsanız, önyükleme yaparken sadece shift tuşunu basılı tutun. Bu menü gösterecektir.


Bu kesinlikle bana bir hata gibi görünüyor. kimse bildirdi mi ???
04

Doğru ... belki bir noktada onunla karşılaşırım. Zaten orada olan varsa, hiçbir fikrim yok.
Neil Traft

3

Bu soruna basit bir çözüm buldum.

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

Ve grub'u güncelle. Grub.cfg içindeki zaman aşımı ayarlarının üzerine yazacaktır, bu yüzden / etc / default / grub içindeki öğenizin önemi yoktur. Bu yüzden 2 saniye boyunca vardiya ile çağrılabilir gizli menü var.


Bu yaklaşım benim için çalıştı (Ubuntu 17.10 tarafından kurulmuş olan grub 2.02 ~ beta3-4ubuntu7), bu sayfada önerilen diğer çözümlerin hiçbiri yapmadığında (bu son sınamayı test ettiğim için gerçekten kötü bir şans: /). Teşekkürler!
pchaigno

2

Aşağıdaki satırı şuraya ekle /etc/default/grub:

GRUB_FORCE_HIDDEN_MENU="true"

2

Önerilen cevapların onlar için işe yaramadığını söyleyen birçok insan görüyorum. Birkaç seçenek denedim ve bu benim için çalıştı :

/Etc/grub.d/00_header dosyasını düzenleyin ve şunu bulun:

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

... olarak değiştir

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

Ve güncelleme grubunu çalıştırın.


2

cmd satırında kelime sıçrama yapan herkese göre ama zaman aşımı için 0 kodlaması işe yaramaz.

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

Kelime sıçramalarını ikinci son satırdan kaldırmayı deneyin , güncelleyin ve yeniden başlatın ,, voila, menü yok :)

hth, krex


2

bu beni biraz zaman aldı ancak ödedi, kendi kazma işimin bir karışımıydı ve yukarıdaki cevapların ilk önce sizin /etc/default/grubve /usr/grub/default/grubaynı olduğundan emin olun . Sonra gksu gedit /etc/grub.d/30_os-proberüste koşmak istediğimiz iki satırdır fakat aralarında styke aradığını ve bu satırı gizlendiğine değiştirdikten sonra, zaman aşımına uğramış bir satır aradıktan sonra 10'atimeout = 0 ayarlanmışsa , dosyanın sonuna kadar olan kısmı siliniz. Dosyanın sonunu veya vidayı silerseniz grub grubunuz bunun gibi bir şey kaydetmelidir, örneğin bu benim:

varsayılan önyüklemeyi Windows 8.1 pro olarak ayarlar

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

Vardiyaya beş saniyelik bir pencere ayarlayarak Ubuntu'ya önyükleyebiliyorum

GRUB_HIDDEN_TIMEOUT=5
GRUB_HIDDEN_TIMEOUT_QUIET=true

Sadece durumda hata için ana düzeltme

GRUB_TIMEOUT=0

gizli stilini ayarlar

GRUB_TIMEOUT_STYLE=hidden

varsayılan Ubuntu sayfalar

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

1
  • Grub'u ile yapılandır sudo nano /etc/default/grub
  • Dosyanın sonunu yazın:
GRUB_HIDDEN_TIMEOUT=0
GRUB_TIMEOUT=0
  • Değişiklikleri kaydet CTRL+S
  • Çıkış CTRL+X
  • Grub menüsünü güncelle sudo update-grub

0

Bunu kendi sorumluluğunuzda ve sadece son çare olarak deneyin!

Düzenlemeyi /etc/default/grubve çalışmayı sonuçsuz olarak denedim sudo update-grub.

/boot/grub/grub.cfgÖzellikle elle sona erdi.

...
### 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

sorunu çözdü! s.grub2 @ubuntuusers! ;-)

Ayrıca önyükleme sırasında grub menüsünü tekrar görünür hale getirmek mümkün!

ÖNEMLİ Bir çökmeniz varsa ve daha eski (ve sabit) bir Çekirdek başlatmak istiyorsanız!

(Ubuntu 14.04'e dayanan Linux Mint 17.3 Rosa ile test edilmiştir)


4
Lütfen daha önceki cevapları tekrar etmeyin .
David Foerster
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.