Saya mencoba memperbarui file konfigurasi grub saya ke batas waktu ke nilai 0, jadi OS mulai dengan cepat. Saya memodifikasi /etc/default/grub
file konfigurasi pada Ubuntu 18.04 saya dan kemudian berlari:
sudo update-grub
dan itu tidak berhasil. Saya juga berlari:
sudo grub-mkconfig
sudo update-grub
tetapi mereka tidak bekerja.
Saya mencari banyak di web untuk menyelesaikan masalah ini, tetapi semua panduan mengatakan untuk menjalankan perintah update-grub untuk memperbarui grub dengan /etc/default/grub
file konfigurasi. Saya tidak tahu apakah Ubuntu 18.04 yang menangani file grub dengan cara yang berbeda, tetapi saya tidak dapat memperbarui grub saya dengan parameter saya.
Ini /etc/default/grub
file saya :
# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
# info -f grub -n 'Simple configuration'
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=""
# Uncomment to enable BadRAM filtering, modify to suit your needs
# This works with Linux (no patch required) and with any kernel that obtains
# the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
#GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"
# Uncomment to disable graphical terminal (grub-pc only)
#GRUB_TERMINAL=console
# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
#GRUB_GFXMODE=640x480
# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
#GRUB_DISABLE_LINUX_UUID=true
# Uncomment to disable generation of recovery mode menu entries
#GRUB_DISABLE_RECOVERY="true"
# Uncomment to get a beep at grub start
#GRUB_INIT_TUNE="480 440 1"
Jawaban:
Dalam
/boot/grub/grub.cfg
file ada kondisi, hampir di akhir file, yang menetapkan batas waktu ke 10 jika batas waktu diatur ke 0. Dengan kata lain, jika Anda menetapkan batas waktu ke 0 di Anda/etc/default/grub
dan kemudian memperbarui grub, kondisi di atas atur ulang ke 10 detik.Namun,
/boot/grub/grub.cfg
adalah file read-only dan saya tidak dapat menghapus kondisi itu. Saya membuat beberapa tes dengan nilai timeout yang berbeda/etc/default/grub
. Saya mencoba dengan 1ms (0,001), 0,1s dan 1s dan saya menemukan bahwa nilai di bawah 1 (seperti 0,1 dan 0,001) bekerja dengan cara yang sama dan hampir seperti batas waktu diatur ke 0.sumber
work in the same way and almost like timeout
itu karena matematika di bash hanya mendukung bilangan bulat. Batas waktu terpendek yang akan membuat perbedaan adalah1
.Dalam kasus saya, masalahnya adalah bahwa sistem saya tidak mendukung "recordfail" yang menyebabkan blok terpisah untuk ditambahkan ke grub.cfg yang secara default menjadi batas waktu 30 detik. Kode yang relevan di
/etc/grub.d/00_header
:Cara mengatasinya adalah dengan menambahkan nilai untuk
GRUB_RECORDFAIL_TIMEOUT
masuk/etc/default/grub
dan berjalanupdate-grub
kembali. Sebagai contoh:sumber
Seperti jawaban lain katakan, batalkan komentar
GRUB_HIDDEN_TIMEOUT
dan jalankanupdate-grub
. Kemudian berikan komentarbagian dalam
/boot/grub/grub.cfg
. Dalam vim Anda bisa mengganti properti read-only dengan tanda seru:x!
. Atau Anda bisa lariuntuk sementara memiliki izin menulis saat mengedit file.
sumber
/boot/grub/grub.cfg
akan dibuat kembali dengan kondisi di atas.Anda dapat mengatur
GRUB_TIMEOUT
ke0
.Nilai batas waktu menimpa bagian ditulis dalam
ajust_timeout
fungsi di bagian atas/etc/grub.d/30_os-prober
.Jadi, Anda dapat mengatur nilainya dengan mengedit file dan mengomentari if-block.
sumber
Anda dapat mengatur
GRUB_TIMEOUT
ke-1
.sumber
info -f grub -n 'Simple configuration
Hapus komentar
GRUB_HIDDEN_TIMEOUT=0
dan jalankanupdate-grub
lagi.sumber
GRUB_HIDDEN_TIMEOUT=-1
bekerja di Ubuntu 18.10.Kami cukup menambahkan baris
untuk
/etc/grub.d/40_custom
, membuat file dapat dieksekusi dengandan lari
untuk menghasilkan file
/boot/grub/grub.cfg
-file baru . Perintah-set timeout
kita tambahkan adalahset timeout
perintah- terakhir di/boot/grub/grub.cfg
saat ini, itulah yang terpenting.sumber
Solusinya adalah menambahkan
untuk
/etc/default/grub
.Semua solusi lain akan diatur ulang pada pembaruan grub.
sumber