Я пытался обновить свой файл конфигурации личинки к тайм-ауту к 0 значениям, таким образом, ОС запускается быстро. Я изменил /etc/default/grub
конфигурационный файл на моей Ubuntu 18.04 и затем работал:
sudo update-grub
и это не работало. Я также работал:
sudo grub-mkconfig
sudo update-grub
но они не работали.
Я искал много в сети для решения этой проблемы, но во всех руководствах говорится для выполнения команды личинки обновления для обновления личинки /etc/default/grub
файл конфигурации. Я не знаю, ли Ubuntu 18.04, которая обрабатывает файлы личинки по-другому, но я не могу обновить свою личинку с моими параметрами.
Это - мой /etc/default/grub
файл:
# 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"
Ikkummenta GRUB_HIDDEN_TIMEOUT = 0
u erġa ' update-grub
mill-ġdid.
Можно установить GRUB_TIMEOUT
на -1
.
Ex:
GRUB_TIMEOUT="-1"
Fil-fajl /boot/grub/grub.cfg
hemm kundizzjoni, kważi fit-tmiem tal-fajl, li tissettja l-ħin għal 10 jekk il-ħin huwa ssettjat għal 0. Fi kliem ieħor, jekk tissettja l-ħin ta 'żmien għal 0 f' / etc / default / grub
tiegħek u mbagħad taġġorna grub, il-kundizzjoni ta 'hawn fuq issettjaha għal 10 sekondi.
if [ "${timeout}" = 0 ]; then
set timeout=10
fi
Madankollu, /boot/grub/grub.cfg
huwa fajl li jinqara biss u ma nistax ineħħi dik il-kundizzjoni. Għamilt xi testijiet b'valuri differenti tat-timeout fi / etc / default / grub
. Ippruvajt b'1ms (0.001), 0.1s u 1s u sibt li valuri taħt 1 (bħal 0.1 u 0.001) jaħdmu bl-istess mod u kważi bħal timeout issettjat għal 0.
Как и в других ответах, раскомментируйте GRUB_HIDDEN_TIMEOUT
и запустите update-grub
. Затем закомментируйте раздел
if [ "${timeout}" = 0 ]; then
set timeout=10
fi
в /boot/grub/grub.cfg
. В vim вы можете просто переопределить свойство только для чтения с помощью восклицательного знака : x!
. Или вы можете запустить
sudo chmod +w /boot/grub/grub.cfg
sudo vim /boot/grub/grub.cfg
sudo chmod -w /boot/grub/grub.cfg
, чтобы временно получить разрешение на запись во время редактирования файла.
Вы можете установить GRUB_TIMEOUT
на 0
.
Значение тайм-аута при перезаписи части записывается в функции ajust_timeout
в верхней части /etc/grub. d/30_os-prober
.
ajust_timeout () {
...
if [ "\${timeout}" = 0]; then
set timeout=10
fi
...
}
Таким образом, вы можете установить значение, отредактировав файл и закомментировать if-block.
В моем случае проблема заключалась в том, что моя система не поддерживала «сбой записи», что приводило к добавлению отдельного блока в grub.cfg, по умолчанию таймаут которого равен 30 секундам. Соответствующий код в /etc/grub.d/00_header
:
if [ "$recordfail_broken" = 1 ]; then
cat << EOF
if lsefi; then
set timeout=${GRUB_RECORDFAIL_TIMEOUT:-30}
if [ x\$feature_timeout_style = xy ] ; then
set timeout_style=menu
fi
fi
EOF
Исправление состоит в том, чтобы просто добавить значение для GRUB_RECORDFAIL_TIMEOUT
в / etc / default / grub
] и снова запустите update-grub
. Например:
GRUB_CMDLINE_LINUX_DEFAULT=""
GRUB_CMDLINE_LINUX=""
# Adjusted timeout for system which doesn't support recordfail
GRUB_RECORDFAIL_TIMEOUT=2
# 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"
Решение - добавить
GRUB_RECORDFAIL_TIMEOUT=0
- / etc / default / grub
.
Все остальные решения будут сброшены при обновлении grub.
Мы можем просто добавить строку
set timeout=0
в /etc/grub.d/40_custom
, сделать файл исполняемым с помощью
chmod +x /etc/grub.d/40_custom
и запустить
sudo update-grub
для генерации новый /boot/grub/grub.cfg
-файл. Команда установить тайм-аут
, которую мы добавили, является последней командой установить тайм-аут
в /boot/grub/grub.cfg
сейчас, это то, что имеет значение. ]
Такое поведение наблюдается как в Ubuntu 18.04, так и в 20.04, и даже несмотря на то, что в некоторых других ответах решения, которые работают должным образом, либо файлы, в заголовке которых указано «не редактировать этот файл», например /boot/grub/grub.cfg
, редактируются вручную, либо изменения не сохраняются после системные обновления или регенерация файлов конфигурации grub (по крайней мере, не для меня). Вот пошаговое описание того, что я делал для постоянного изменения такого поведения.
/etc/grub.d/30_os-prober
Grub использует некоторые файлы шаблонов, расположенные по адресу /etc/grub.d
, для создания /boot/grub/grub.cfg
. Отредактируйте файл в любом редакторе ...
# vim /etc/grub.d/30_os-prober
... и либо прокомментируйте, либо удалите строки ниже, которые отменяют тайм-аут, когда он установлен на ноль.
if [ "\${timeout}" = 0 ]; then
set timeout=10
fi
/ etc / default / grub
Grub использует этот файл для установки значений конфигурации для создания /boot/grub/grub.cfg
. Отредактируйте файл с помощью выбранного редактора ...
# vim /etc/default/grub
... и установите нулевое время ожидания (используйте второй вариант, если для GRUB_TIMEOUT_STYLE
установлено значение скрыто
)
GRUB_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT=0
/boot/grub/grub.cfg
# update-grub2
... и после следующей перезагрузки компьютера ожидаемое поведение будет иметь нулевой таймаут в меню grub.