ブートの開始時に表示されるGRUBメニューを非表示にするにはどうすればよいですか?


42

デュアルブートを停止し、OSを選択する必要がなくなりました。GRUBメニューを表示せずにUbuntu 12.04を直接起動したい。

どうすればそれを達成できますか?


デュアルブートを停止した場合は、おそらく他のOSの使用を停止している可能性があります。他のOSを削除して、ubuntuを正常に起動できないのはなぜですか。
karthick87


これらの回答のいずれかがあなたの質問に「回答」した場合、それらのいずれかを受け入れてください:)
blade19899

@ david6:これらのどちらがこの質問の複製であるかはわかりません。これはタイムアウト中にgrubメニューを非表示にすることだと思います。
オクトーシット

:申し訳ありませんが、2番目のリンクをすることになったaskubuntu.com/questions/66070/...:これはどのように含ま隠すGRUB2のメニューを、デフォルトのメニューオプションを使用する
david6

回答:


33

GRUB設定を変更するだけです。

ターミナルに入力

sudo -H gedit /etc/default/grub

これを変更する必要があります

変更GRUB_HIDDEN_TIMEOUT_QUIET=false

GRUB_HIDDEN_TIMEOUT_QUIET=true

ファイルを保存して終了

タイプ sudo update-grub

望む結果が得られない場合は、このバグを参照してください。


7
...それは、現在、Trueに変更されたが、私はまだGRUBメニューを参照してください
アレックスPoulosを

12.04のImでこれを試してみましたが、すでに「true」と表示されていて、まだ表示されています。私が持っている他のOSはフェイルセーフとMemtestだけです-それだけです。Windowsパーティションを既に削除し、grubを更新しましたが、メニューは引き続き表示されます。
アレックスPoulos

@AlexPoulosはこのリンクを
12

2
タイムアウトを0に変更し、それを静かにしてくれました。おかげで
king_julien

23

OS Proberを無効にすることでこの問題を解決しました。/boot/grub/grub.cfgテンプレートによって生成された部分/etc/grub.d/30_os-proberでは、「timeout」が10に、「style」がメニューにオーバーライドされていたため、これを行いました。

/etc/default/grubこの行を編集して追加します。

GRUB_DISABLE_OS_PROBER=true

これがあなたの役に立つことを願っています!

ところで、私の完全な/ 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

ハッピーコーディング


2
...それは私のために働いたが、それが消えるアル他のブートオプションが、デフォルトのひとつになって
opensas

1
@opensas選択メニューが表示されない場合、どのブートオプションが「表示」されているかをどのようにして知ることができますか?メニューを無効にする場合、デフォルト以外のブートオプションが必要なのはなぜですか?
カイルストランド

「GRUB_TIMEOUT_STYLE = hidden」部分を省略した場合、カウントダウンは表示されますが、中断しない限り、他には何も表示されません。これにより、メニューにアクセスして起動設定を変更することができますが、それでもそれほど明白ではありません。
ストーンクラッシャー

Shiftキーを押した後にブートメニューを表示したい場合は、GRUB_TIMEOUTをゼロより大きく設定する必要があります(たとえば、GRUB_TIMEOUT = 5)。そうしないと、必要に応じて他のブートオプション(Windowsなど)をアクティブにできません。
-user3804598

Ubuntu 18.04 LTSでは、30秒のタイムアウト(およびGRUBブートローダーメニュー)を完全に削除GRUB_RECORDFAIL_TIMEOUT=0する唯一の変更点です/etc/default/grub。これはバグのようです:bugs.launchpad.net/ubuntu/+source/grub2/+bug/1814403/コメント/ 4。また、sudo update-grub編集内容を有効にするために実行する必要があります。これは回答には記載されていません。0マシンが開発VMなどである場合を除き、この値を設定することは推奨されないことに注意してください(上記のリンクを参照)。
ベンジョンソン

11

うまくいかなかったすべてのヒントを試したところ、次のようにタイムアウト時間がゼロになりました。

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-grub値の変更後
niksmacを

わたしも。「update-grub」を実行しました-動作しませんでした。
ロビンウィンスロー

1
これは私の/ etc / default / grubですが、grubメニューが表示されたまま10秒のカウントダウンが表示されます。
-zorkerz

8

/etc/default/grubgrubメニューが表示されないように、ファイルを編集する必要があります。

デフォルトでは、そのファイルのエントリは次のようになります。

GRUB_DEFAULT = 0
#GRUB_HIDDEN_TIMEOUT = 0
GRUB_HIDDEN_TIMEOUT_QUIET = false
GRUB_TIMEOUT = 10
GRUB_DISTRIBUTOR = `lsb_release -i -s 2> / dev / null || Debianをエコーする `
GRUB_CMDLINE_LINUX_DEFAULT = "静かなスプラッシュ"
GRUB_CMDLINE_LINUX = ""
  • #2行目からマークを削除し、
  • GRUB_HIDDEN_TIMEOUT_QUIET=falseをに変更しGRUB_HIDDEN_TIMEOUT_QUIET=trueます。

変更後、ファイルの必要な部分は次のようになります

GRUB_DEFAULT = 0
GRUB_HIDDEN_TIMEOUT = 0
GRUB_HIDDEN_TIMEOUT_QUIET = true
GRUB_TIMEOUT = 10
GRUB_DISTRIBUTOR = `lsb_release -i -s 2> / dev / null || Debianをエコーする `
GRUB_CMDLINE_LINUX_DEFAULT = "静かなスプラッシュ"
GRUB_CMDLINE_LINUX = ""
  • 次にsudo update-grub、ターミナルでコマンドを実行し、再起動して結果を確認します。

3
私はこの構成を持っていましたが、それでもgrubメニューが表示されます。

1
この設定では、update-grubは「警告:GRUB_HIDDEN_TIMEOUTが設定されているときにGRUB_TIMEOUTをゼロ以外の値に設定することはサポートされなくなりました」を返し、grubメニューの表示中に10秒のカウントダウンを取得します。GRUB_TIMEOUTを0に設定しても、同じ結果が返されます。
zorkerz

@zorkerz ubuntuのどのバージョンを使用していますか?
アンワル

Xenial Xerusが15.10でも同じ動作をした
zorkerz

5

私は同じ問題を抱えていて、ここでのヒントはどれもうまくいきませんでした!唯一の方法は、/ boot / grub / grub.cfgを手動で変更することでした。このファイルのある時点で、彼はタイムアウトを10にします!だから、それらの行をコメントしてください

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

しかし、再びupdate-grubを実行することはできません。そうしないと、同じファイルに戻り、タイムアウトが再び10になります!ファイルを保存します(viでは、suであっても強制する必要があります!)。コンピューターを再起動すると、問題なく動作します!


面白い、なぜif [ "${timeout}" = 10 ]; then set timeout=0 fi ?または、単にifステートメントを完全に削除して、そのままにしてset timeout=0ください
オタク長老14

これは、無効にできるテンプレート(Agustinの回答に記載されているOSプローバ)からそこに配置されます。grub.cfgを手動で編集する必要はありません。
ニールトラフト14年

これは、14.04に私のために働いた
カラマルカキッド

3

ブートエントリを削除する場合は、次のように入力します。

sudo update-grub

それでもうまくいかない場合は、次のようにスタートアップマネージャーをインストールします。

sudo apt-get install startupmanager


startup-managerでできること

  1. 起動するエントリを選択し、
  2. 解像度を選択し、起動するまでの待機時間、
  3. デフォルトのブートエントリを自動的にブートするために0を選択することもできます

が、彼はグラブについて取っています
ブラックブロック

すみません、タイプミス。それはsudo update-grubになるはずだったので、答えを編集しました
blade19899

これで唯一の問題は、私が持っているスタートアップマネージャのバージョンは多くのオプションが表示されないということである- Imgur
アレックスPoulos

1
12.04のImでこれを試してみましたが、すでに「true」と表示されていて、まだ表示されています。私が持っている他のOSはフェイルセーフとMemtestだけです-それだけです。私はすでにWindowsパーティションを削除し、grubを更新しましたが、メニューはまだ表示されます
Alex Poulos

「秒単位のタイムアウト」の隣に、番号10のボックスがあり、番号を0に変更します
blade19899

3

同様アグスティン、私は私の問題は、OSプローバであることがわかりました。彼の解決策よりも一歩進んで、私はあなたがあなたのOSを持ちながらメニューを隠すことができるこの要点を見つけました。これら2つのファイルをダウンロードし、に入れて/etc/grub.d、そのディレクトリ内の他のテンプレートと同じ権限を与えるだけです。

デフォルト以外のOSにアクセスしたい場合は、Shiftキーを押しながら起動してください。メニューが表示されます。


それは間違いなく私にはバグのようです。誰かがそれを報告していますか???
14

本当です...多分私はいつかそれを回避するでしょう。すでにあるかどうかはわかりません。
ニールトラフト14

3

この問題の簡単な解決策を見つけました。

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

そして、grubを更新します。grub.cfgのタイムアウト設定が上書きされるため、/ etc / default / grubに何があってもかまいません。だから私は2秒間シフトで呼び出すことができるメニューを隠しました。


このアプローチは、このページで提案された他のソリューションがどれも機能しなかったとき(grub 2.02〜beta3-4ubuntu7がUbuntu 17.10によってインストールされた場合)うまくいきました(これを最後にテストしたのは本当に不運です:/)。ありがとう!
pchaigno

2

に次の行を追加します/etc/default/grub

GRUB_FORCE_HIDDEN_MENU="true"

2

私は、提案された答えが彼らのために働かないと言っている多くの人々を見てきました。私はいくつかのオプションを試しましたが、これは私のために働いた

/etc/grub.d/00_headerを編集して、以下を見つけます。

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

変更して...

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

そして、update-grubを実行します。


2

cmd行にワードスプラッシュがあるすべての人にとって、タイムアウトのための0のハードコーディングは機能しません。

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

最後の2行目からワードスプラッシュを削除して、更新して再起動してみてください。

hth、krex


2

これにはしばらく時間がかかりましたが、私自身の掘り出しと上記の答えが混在していたので、最初にあなた/etc/default/grubとあなた/usr/grub/default/grubが同じであることを確認しました。その後、実行gksu gedit /etc/grub.d/30_os-prober上部付近に私たちが望むの2行はあるが、それはする必要があります彼らはstykeを検索して、タイムアウトの行を検索隠さにその行を変更見つけることがあればのようなtimeout = 0セットに10ファイルメイクの最後にあれば必ずから削除することを一部ファイルの終わりまたはねじ込みを削除すると、grub configは次のようなログを記録するはずです。

Windows 8.1 proにデフォルトのブートを設定します

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

私はUbuntuに起動できるようにシフトを打つために5秒のウィンドウを設定します

GRUB_HIDDEN_TIMEOUT=5
GRUB_HIDDEN_TIMEOUT_QUIET=true

念のためエラーの主な修正

GRUB_TIMEOUT=0

スタイルを非表示に設定します

GRUB_TIMEOUT_STYLE=hidden

デフォルトのUbuntuのもの

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

1
  • 経由でGRUBを構成する sudo nano /etc/default/grub
  • ファイルの終わりを入力します。
GRUB_HIDDEN_TIMEOUT=0
GRUB_TIMEOUT=0
  • 変更を保存CTRL+S
  • 終了CTRL+X
  • GRUBメニューを更新 sudo update-grub

0

ご自身の責任で、最後の手段としてのみこれを試みてください!

編集/etc/default/grubと実行を試みましたsudo update-grubが、結果はありませんでした。

/boot/grub/grub.cfg手作業による編集、具体的には、

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

問題を解決します!s.grub2 @ubuntuusers!;-)

また、起動中にgrub-menuを再び表示することもできます!

クラッシュしていて、古い(安定した)カーネルを起動したい場合は重要です!

(Ubuntu 14.04ベースのLinux Mint 17.3 Rosaでテスト済み)


4
以前の答えを繰り返さないでください。
デビッドフォースター
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.