Como definir o tempo limite do GRUB para 0 no Ubuntu 18.04

3

Eu tentei atualizar meu arquivo de configuração do grub para o tempo limite 0, então o sistema operacional é iniciado rapidamente. Eu modifiquei o arquivo de configuração /etc/default/grub no meu Ubuntu 18.04 e então executei:

sudo update-grub

e não funcionou. Eu também corri:

sudo grub-mkconfig
sudo update-grub

mas eles não funcionaram.

Pesquisei muito na Web para resolver esse problema, mas todos os guias dizem para executar o comando update-grub para atualizar o grub em /etc/default/grub config file. Eu não sei se é o Ubuntu 18.04 que lida com arquivos grub de uma maneira diferente, mas eu não posso atualizar meu grub com meus parâmetros.

Este é o meu arquivo /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"
    
por Bob91 14.05.2018 / 14:03

5 respostas

8

No arquivo /boot/grub/grub.cfg há uma condição, quase no final do arquivo, que define o tempo limite como 10 se o tempo limite estiver definido como 0. Em outras palavras, se você definir o tempo limite como 0 no seu /etc/default/grub e, em seguida, atualizar grub, a condição acima redefini-lo para 10 segundos.

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

No entanto, /boot/grub/grub.cfg é um arquivo somente leitura e não consigo remover essa condição. Fiz alguns testes com valores diferentes do tempo limite em /etc/default/grub . Eu tentei com 1ms (0,001), 0,1s e 1s e descobri que valores abaixo de 1 (como 0,1 e 0,001) funcionam da mesma maneira e quase como timeout definido como 0.

    
por Bob91 16.05.2018 / 15:02
2

Remova o comentário GRUB_HIDDEN_TIMEOUT = 0 e execute o update-grub novamente.

    
por hiigaran 15.05.2018 / 13:43
1

Você pode definir GRUB_TIMEOUT para 0 .

O valor do tempo limite de substituição de partes é escrito em ajust_timeout function no início de /etc/grub.d/30_os-prober .

ajust_timeout () {
...
if [ "\${timeout}" = 0]; then
  set timeout=10
fi
...
}

Assim, você pode definir o valor editando o arquivo e comentando if-block.

    
por guest 24.08.2018 / 23:56
0

Como as outras respostas, descomente GRUB_HIDDEN_TIMEOUT e execute update-grub . Em seguida, comente o

if [ "${timeout}" = 0 ]; then
  set timeout=10
fi
Seção

em /boot/grub/grub.cfg . No vim você pode simplesmente sobrescrever a propriedade somente leitura com um ponto de exclamação :x! . Ou você pode correr

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

para ter temporariamente permissão de gravação durante a edição do arquivo.

    
por asantas93 23.05.2018 / 16:49
-1

Você pode definir GRUB_TIMEOUT para -1 .

Ex:GRUB_TIMEOUT="-1"

    
por Giceu Cassiano 04.09.2018 / 20:37