Bagaimana cara mengatur batas waktu grub dan entri boot default grub?

191

Di Ubuntu 12.04 (atau lebih tinggi), bagaimana cara mengatur waktu GRUB dan OS default (yang saya lihat saat boot) sebagai Windows dual-booting (7/8) dan Ubuntu (12,04 atau lebih tinggi)?

meteor
sumber
Bisakah Anda memberi informasi lebih lanjut. Apa yang Anda maksud dengan "waktu grub" dan apa os default Anda. Di menu grub Anda, apa baris yang berbeda?
Julien Chau
1
grub time berarti waktu hitung mundur ketika saya harus memilih os di layar mulai BIOS. Maaf, tapi saya tidak tahu persis apa yang disebut menu pemilihan os jadi saya mempostingnya sebagai waktu grub.
meteor

Jawaban:

227
  • Tekan Alt+ F2, ketikkan gksudo gedit /etc/default/grubtekan Enterdan masukkan kata sandi Anda.
  • Anda akan melihat konten berikut:

    GRUB_DEFAULT = 0
    GRUB_HIDDEN_TIMEOUT = 0
    GRUB_HIDDEN_TIMEOUT_QUIET = true
    GRUB_TIMEOUT = 10
    GRUB_DISTRIBUTOR = `lsb_release -i -s 2> / dev / null || gema Debian`
    GRUB_CMDLINE_LINUX_DEFAULT = "quiet splash"
    GRUB_CMDLINE_LINUX = ""
    
  • Anda dapat mengubah default dari 0 ke nomor apa pun, sesuai dengan entri dalam menu boot Grub (entri pertama adalah 0, kedua adalah 1, dll.)

  • Anda dapat mengubah "batas waktu tersembunyi" (tidak ada menu); dan juga menampilkan hitungan mundur ( GRUB_HIDDEN_TIMEOUT_QUIET=false)
  • Anda dapat memaksa menu grub untuk ditampilkan dengan mengomentari dua GRUB_HIDDENbaris dengan #di awal baris
  • Dan atur batas waktu menu grub (standarnya adalah 10 detik)

  • Buat perubahan Anda, tekan Ctrl+ Suntuk menyimpan dan Ctrl+ Quntuk keluar

  • Penting : Buka terminal dengan Ctrl+ Alt+ Tdan ketik sudo update-grubuntuk menerapkan perubahan yang baru saja Anda buat
  • Mulai ulang dan Anda akan melihat batas waktu / entri default Anda berubah

Pertanyaan Terkait:

ish
sumber
Terima kasih, @Raja, tapi grub / grub2 adalah perbedaan utama. Jika Anda memiliki grub2 yang benar, saya akan dengan senang hati mengedit jawaban Anda alih-alih membuat yang lain :)
ish
terima kasih jawaban Anda berhasil tetapi bisakah Anda jelaskan poin kedua dan ketiga (batas waktu tersembunyi dan grub baris tersembunyi) untuk apa mereka dimaksudkan.
meteor
2
Harap tidak menyarankan siapa pun mengubah opsi grub default dengan menetapkan indeks arbitrer. Itu sangat tidak intuitif dan cenderung mengakibatkan bencana. Pengguna dapat memasukkan yang salah, atau mungkin berubah selama pembaruan, menghasilkan perilaku yang tidak terduga.
Cerin
2
Ini membutuhkan pembaruan terkait dengan dua tingkat menu grub saat ini.
Hannu
1
@Cerin, apa saran Anda?
phil294
30

Jika Anda membaca file yang sedang diedit pada contoh di atas (/ etc / default / grub), Anda akan melihat bahwa beberapa baris pertama memerintahkan Anda untuk menjalankan update-grubsetelah membuat perubahan untuk memperbarui file aktual yang dibaca oleh grub " dapatkan instruksinya "(/boot/grub/grub.cfg). Perhatikan bahwa Anda harus benar-benar menjalankannya dengan sudoperintah terlebih dahulu karena Anda memerlukan hak akses root untuk benar-benar menjalankan perintah (itulah sebabnya poster di atas dikatakan mengetik sudo update-grub). Ini akan menyebabkan perubahan yang Anda buat ditulis ke /boot/grub/grub.cfg. Beberapa baris berikutnya memberi tahu Anda bahwa Anda dapat membaca dokumentasi lengkap opsi dalam file itu (sekali lagi, / etc / default / grub) dengan mengetik info -f grub -n 'Simple configuration'.

Yang mengatakan, set GRUB_TIMEOUT ke -1 jika Anda ingin mengatur "waktu grub" menjadi tidak terbatas. Dengan kata lain, itu tidak akan pernah boot secara otomatis. Anda harus membuat pilihan.

Akhirnya, untuk menjawab pertanyaan Anda, berikut adalah deskripsi "garis tersembunyi grub" itu langsung dari dokumentasi yang dirujuk di atas:

GRUB_HIDDEN_TIMEOUT
    Wait this many seconds for a key to be pressed before displaying
    the menu.  If no key is pressed during that time, boot
    immediately.  Unset by default.

GRUB_HIDDEN_TIMEOUT_QUIET
    In conjunction with `GRUB_HIDDEN_TIMEOUT', set this to `true' to
    suppress the verbose countdown while waiting for a key to be
    pressed before displaying the menu.  Unset by default.

Saya harap ini membantu!

Sean
sumber
14

Anda dapat menggunakan aplikasi yang disebut Grub Customizer . Itu jauh lebih mudah.

Anda dapat menginstalnya dengan:

sudo add-apt-repository ppa:danielrichter2007/grub-customizer
sudo apt-get update
sudo apt-get install grub-customizer

Ada artikel How-To Geek tentang hal itu, Cara Mengkonfigurasi Menu Booting Linux GRUB 2 dengan Cara Mudah . Juga, ada utas yang diselesaikan di Forum Ubuntu, Ubah urutan boot di GRUB 2 yang menyebutkan alat ini.

Berikut ini beberapa cuplikan layar dari perangkat lunak ini:

screen_1

screen_2

screen_3

Kolappan Nathan
sumber
1
Ini membutuhkan pembaruan terkait dengan dua tingkat menu grub saat ini.
Hannu
5

Saya mengikuti jawaban pertama tetapi tampaknya perlu memperbarui jika Anda melakukan dual boot dengan Windows 7 Pro dan Ubuntu 16.04. Pastikan juga boot aman tidak aktif di BIOS.

a) Pertama-tama dia mengatakan gunakan Alt+ F2ketika saya pikir dia ingin menggunakan untuk membuka jendela terminal. Dalam kasus saya ini adalah Ctrl+ Alt+ T.

b) Dalam entri pertama gksudo gedit /etc/default/grubyang gksudoperintah tidak diinstal secara default di Ubuntu 16.04 . Untuk menyiasati ini lakukan hal berikut di Terminal:

sudo -idan tekan Enterdan berikan kata sandi Anda dan kemudian Enterlagi.

lalu ketik:

gedit /etc/default/grubdan tekan Enter.

c) Sekarang Anda akan melihat menu perubahan grub seperti yang diilustrasikan dalam jawaban 1. Ikuti jawabannya sampai ia mendapat Ctrl+ Suntuk menyimpan perubahan. Ini tidak berfungsi di Ubuntu 16.04 tetapi Anda akan melihat tombol simpan di sudut kanan atas layar. Klik itu.

d) Ctrl+ Quntuk berhenti.

e) Jenis berikutnya sudo update-grubdanEnter

f) Ketik exit. Anda perlu melakukan ini dua kali.

g) Mulai ulang

Saya menemukan bahwa di komputer saya setelah beberapa login proses boot tidak akan menampilkan layar grub saat start up dan oleh karena itu saya tidak bisa masuk ke Ubuntu karena saya telah menetapkan Windows sebagai bootup default saya dengan penundaan 7 detik jika saya ingin mendapatkan ke dalam Ubuntu.

Untuk memperbaiki masalah ini, Anda harus masuk ke Windows.

  1. Klik pada menu mulai dan ketik CMDdi kotak pencarian.

  2. Klik kanan pada garis CMD yang seharusnya berada di bagian atas layar yang dihasilkan oleh klik kanan.

  3. Klik di jalankan sebagai administrator .

  4. Pada tipe baris perintah bcdedit /set {bootmgr} path \EFI\ubuntu\grubx64.efi. Entri ini memiliki efek mendaftarkan menu grub dengan windows boot manager. (Kredit ke: Grub tidak ditampilkan saat startup untuk Windows 8.1 Ubuntu 13.10 Dual boot )

  5. Akhirnya, saya reboot kembali ke windows.

Saya harap ini membantu.

jsfines
sumber
Dapatkah Anda menautkan ke "ilustrasi dalam jawaban 1" - Saya tidak dapat menemukan apa yang Anda maksud.
Tom Hale
Juga "Saya mengikuti jawaban pertama". Anda dapat memformat "Kredit untuk:" saya sebagai contoh. Pos pertama yang bagus. Selamat datang di AskUbuntu.
Tom Hale
Saya mengalami X-window break dengan cara yang aneh ketika menjalankan aplikasi grafis seperti gedit sebagai sudo. Saya sarankan menggunakan editor berbasis teks seperti nano.
Arthur Tacca
2
Alt+F2adalah jalan pintas kesatuan untuk menjalankan perintah di latar belakang. Di menu yang terbuka, Anda dapat memasukkan perintah apa pun seperti di terminal. Tetapi karena itu tidak membuka terminal Anda tidak akan melihat output terminal dan tidak dapat berinteraksi dengan terminal. Itu sebabnya Anda biasanya menggunakannya untuk hal-hal seperti memulai program GUI seperti gedit. Anda juga tidak dapat menggunakan sudo karena Anda membutuhkan terminal untuk itu. Itu sebabnya mereka menggunakan gksudo(sudo GUI). Jika Anda melakukan perintah di terminal, Anda bisa menggunakan yang normal sudoseperti ini: sudo gedit /etc/default/grubtidak perlu sudo -i.
Sebastian
@Sebastian Untuk meluncurkan aplikasi grafis, sudo -Hlebih baik , yaitu sudo -H gedit /etc/default/grub.
wjandrea
2

Menggunakan entri default berdasarkan nomor mengejutkan saya sejak diperkenalkan di GRUB. Ini ide yang sangat buruk. Bagaimana dengan pembaruan kernel dan konfigurasi ulang grub otomatis? Bagaimana dengan pengguna yang tidak sadar yang lebih suka entri di akhir daftar? Pembaruan akan merusak konfigurasi berbasis nomor standar itu.

Alih-alih gunakan opsi SIMPAN di sini untuk mengingat entri yang terakhir dipilih:

GRUB_DEFAULT=SAVED
GRUB_SAVEDEFAULT=TRUE

Kemudian oleskan GRUB dengan

sudo update-grub
CeDeROM
sumber
1
Bukan masalah besar, tapi ini tidak menjelaskan bagaimana atau di mana membuat perubahan ini. Anda mungkin ingin menautkan ke jawaban lain yang cocok.
wjandrea
1

Ini tidak berfungsi untuk saya pada 16.04 juga.

Tapi saya memperbaikinya dengan mengubah file / boot / grub / grub.cfg

sudo vim /etc/default/grub

edit grub

sudo update-grub
sudo chmod u+w /boot/grub/grub.cfg
sudo vim /boot/grub/grub.cfg

ubah nilai batas waktu

###segment in /boot/grub/grub.cfg:
set timeout_style=menu
if [ "${timeout}" = 0 ]; then
  #set timeout=10 # comment this original
  set timeout=0 # add this
fi

sudo chmod -w /boot/grub/grub.cfg
reboot
VictorLee
sumber
0

Ini dapat dilakukan dengan mudah tanpa kode apa pun. Ikuti saja langkah-langkah ini.

  1. Buka sistem file.
  2. Buka /etcfolder.
  3. Buka defaultfolder.
  4. Temukan grubfile dan buka dengan leafpad(atau editor teks lainnya).
  5. Setel GRUB_TIMEOUTsesuai kebutuhan Anda dan simpan.
  6. Sekarang buka terminal dan ketik update-grub.
  7. Mulai ulang sistem Anda.

Itu dia.

Isac varghese k
sumber
0

Saya pikir Anda memiliki garis seperti ini: GRUB_TIMEOUT_STYLE = disembunyikan

Ubah ke GRUB_TIMEOUT_STYLE = menu

Dan komentar semua baris tentang fitur TERSEMBUNYI.

Penjelajah waktu
sumber