Como defino o tempo limite do grub e a entrada de inicialização padrão do grub?

191

No Ubuntu 12.04 (ou superior), como defino o horário do GRUB e o sistema operacional padrão (que eu vejo no momento da inicialização) enquanto inicializo o Windows com dupla inicialização (7/8) e o Ubuntu (12.04 ou superior)?

meteoros
fonte
Você pode dar mais informações? O que você quer dizer com "grub time" e qual é o seu sistema operacional padrão. No seu menu do grub, quais são as diferentes linhas?
Julien Chau
11
grub time significa o tempo de contagem regressiva em que tenho que selecionar o sistema operacional na tela inicial do BIOS. Sinto muito, mas não sei exatamente como esse menu de seleção de SO é chamado, então eu o publiquei como hora do grub.
meteoros

Respostas:

227
  • Pressione Alt+ F2, digite gksudo gedit /etc/default/grubpressione Entere digite sua senha.
  • Você verá o seguinte conteúdo:

    GRUB_DEFAULT = 0
    GRUB_HIDDEN_TIMEOUT = 0
    GRUB_HIDDEN_TIMEOUT_QUIET = true
    GRUB_TIMEOUT = 10
    GRUB_DISTRIBUTOR = `lsb_release -i -s 2> / dev / null || eco do Debian`
    GRUB_CMDLINE_LINUX_DEFAULT = "respingo silencioso"
    GRUB_CMDLINE_LINUX = ""
    
  • Você pode alterar o padrão de 0 para qualquer número, correspondente à entrada no menu de inicialização do Grub (a primeira entrada é 0, a segunda é 1 etc.)

  • Você pode alterar o "tempo limite oculto" (sem menu); e também exibir a contagem regressiva ( GRUB_HIDDEN_TIMEOUT_QUIET=false)
  • Você pode forçar a exibição do menu grub comentando as duas GRUB_HIDDENlinhas com a #no início da linha
  • E defina o tempo limite do menu grub (o padrão é 10 segundos)

  • Faça as alterações, pressione Ctrl+ Spara salvar e Ctrl+ Qpara sair

  • Importante : Abra um terminal com Ctrl+ Alt+ Te digite sudo update-grubpara aplicar as alterações que você acabou de fazer
  • Reinicialize e você verá a alteração de tempo limite / entrada padrão

Pergunta vinculada:

ish
fonte
Obrigado, @Raja, mas o grub / grub2 foi a principal diferença. Se você tivesse a grub2 correto, eu teria felizmente editado a sua resposta em vez de fazer um outro :)
ish
obrigado sua resposta funcionou, mas você pode me explicar o segundo e o terceiro ponto (linhas ocultas de tempo limite e grub) para que servem?
meteoros
2
Por favor, não recomende que ninguém mude a opção padrão do grub definindo um índice arbitrário. Isso é terrivelmente pouco intuitivo e provavelmente resultará em desastre. O usuário pode digitar o incorreto ou pode mudar durante uma atualização, resultando em comportamento inesperado.
Cerin
2
Isso precisa de uma atualização relacionada aos níveis duplos do menu grub atual.
Hannu
11
@Cerin, qual é a sua sugestão então?
precisa saber é
30

Se você ler o arquivo que está editando no exemplo acima (/ etc / default / grub), notará que as primeiras duas linhas instruirão você a executar update-grubapós fazer alterações para atualizar o arquivo real que o grub lê para " obtenha suas instruções "(/boot/grub/grub.cfg). Observe que você deve realmente executá-lo com o sudocomando primeiro, pois precisa de privilégios de root para executar o comando (e é por isso que o pôster acima disse para digitar sudo update-grub). Isso fará com que as alterações feitas sejam gravadas em /boot/grub/grub.cfg. As próximas duas linhas dizem que você pode ler a documentação completa das opções desse arquivo (novamente / etc / default / grub) digitando info -f grub -n 'Simple configuration'.

Dito isto, defina GRUB_TIMEOUT como -1 se desejar definir o "tempo de inicialização" como indefinido. Em outras palavras, ele nunca será inicializado automaticamente. Você terá que fazer uma seleção.

Por fim, para responder sua pergunta, aqui estão as descrições dessas "linhas ocultas do grub" diretamente da documentação acima mencionada:

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.

Eu espero que isso ajude!

Sean
fonte
14

Você pode usar um aplicativo chamado Grub Customizer . É muito mais fácil.

Você pode instalá-lo:

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

Há um artigo de instruções sobre o tópico, Como configurar o menu de inicialização do Linux GRUB 2 da maneira mais fácil . Além disso, há um tópico resolvido nos Fóruns do Ubuntu, Alterar ordem de inicialização no GRUB 2, que menciona essa ferramenta.

Aqui estão algumas capturas de tela deste software:

screen_1

screen_2

screen_3

Kolappan Nathan
fonte
11
Isso precisa de uma atualização relacionada aos níveis duplos do menu grub atual.
Hannu
5

Eu segui a primeira resposta, mas parece precisar de atualização se você estiver inicializando com o Windows 7 Pro e o Ubuntu 16.04. Verifique também se a inicialização segura está desativada no BIOS.

a) Primeiro, ele diz use Alt+ F2quando acho que ele deseja usar para abrir uma janela do terminal. No meu caso, é Ctrl+ Alt+ T.

b) Na primeira entrada, gksudo gedit /etc/default/grubo gksudocomando não é instalado por padrão no Ubuntu 16.04 . Para contornar isso, faça o seguinte no Terminal:

sudo -ipressione Entere digite sua senha e, em seguida, Enternovamente.

então digite:

gedit /etc/default/grube pressione Enter.

c) Agora você verá o menu de alterações do grub, conforme ilustrado na resposta 1. Siga a resposta dele até que ele chegue ao Ctrl+ Spara salvar as alterações. Isso não funciona no Ubuntu 16.04, mas você deve ver um botão Salvar no canto superior direito da tela. Clique sobre isso.

d) Ctrl+ Qpara sair.

e) Próximo tipo sudo update-grubeEnter

f) Digite exit. Você precisa fazer isso duas vezes.

g) Reinicialização

Descobri que no meu computador, após alguns logons, o processo de inicialização não mostrava a tela do grub na inicialização e, portanto, não conseguia entrar no Ubuntu, pois havia definido o Windows como minha inicialização padrão com um atraso de 7 segundos, caso eu quisesse obter no Ubuntu.

Para corrigir esse problema, você precisa entrar no Windows.

  1. Clique no menu Iniciar e digite CMDna caixa de pesquisa.

  2. Clique com o botão direito do mouse na linha CMD, que deve estar na parte superior da tela produzida pelo clique direito.

  3. Clique em executar como administrador .

  4. No tipo de linha de comando bcdedit /set {bootmgr} path \EFI\ubuntu\grubx64.efi. Esta entrada tem o efeito de registrar o menu grub com o gerenciador de inicialização do Windows. (Crédito para: Grub não aparece na inicialização do Windows 8.1 Ubuntu 13.10 Dual boot )

  5. Finalmente, eu reiniciei de volta no Windows.

Eu espero que isso ajude.

jsfines
fonte
Você pode acessar o link "ilustrado na resposta 1" - Não foi possível encontrar o que você quis dizer.
Tom Hale
Também "eu segui a primeira resposta". Você pode usar minha formatação "Crédito para:" como exemplo. Ótimo primeiro post. Bem-vindo ao AskUbuntu.
Tom Hale
Eu tive uma quebra da janela X de maneiras estranhas ao executar aplicativos gráficos como o gedit como sudo. Sugiro usar um editor de texto como o nano.
Arthur Tacca
2
Alt+F2é o atalho da unidade para executar um comando em segundo plano. No menu que é aberto, você pode inserir qualquer comando como faria no terminal. Mas como ele não abre um terminal, você não verá nenhuma saída do terminal e não pode interagir com o terminal. É por isso que você normalmente o usa para coisas como iniciar um programa GUI como o gedit. Além disso, você não pode usar o sudo, pois você precisa do terminal para isso. É por isso que eles usam gksudo(o GUI sudo). Se você executar os comandos em um terminal, poderá usar o normal sudoassim: sudo gedit /etc/default/grubnão há necessidade sudo -i.
Sebastian
@Sebastian Para o lançamento de um aplicativo gráfico, sudo -Hé melhor , ou seja sudo -H gedit /etc/default/grub.
Wjandrea # 9/18
2

O uso da entrada padrão com base em um número me surpreendeu desde a sua introdução no GRUB. É uma péssima ideia. Que tal a atualização do kernel e a reconfiguração automática do grub? Que tal usuários inconscientes que preferem a entrada no final da lista? As atualizações quebrariam essa configuração baseada em número padrão.

Em vez disso, use a opção SALVADA aqui para lembrar a última entrada escolhida:

GRUB_DEFAULT=SAVED
GRUB_SAVEDEFAULT=TRUE

Em seguida, aplique o GRUB com

sudo update-grub
CeDeROM
fonte
11
Não é um grande problema, mas isso não explica como ou onde fazer essas alterações. Você pode querer vincular a outra resposta que sim.
Wjandrea # 9/18
1

Isso não funciona para mim no 16.04 também.

Mas eu o corrigi alterando o arquivo /boot/grub/grub.cfg

sudo vim /etc/default/grub

editar grupo

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

alterar o valor do tempo limite

###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
fonte
0

Isso pode ser feito facilmente, sem códigos. Basta seguir estes passos.

  1. Abra o sistema de arquivos.
  2. /etcPasta aberta .
  3. defaultPasta aberta .
  4. Encontre o grubarquivo e abra-o com leafpad(ou qualquer outro editor de texto).
  5. Defina de acordo GRUB_TIMEOUTcom sua necessidade e salve-a.
  6. Agora abra o terminal e digite update-grub.
  7. Reinicie seu sistema.

É isso aí.

Isac varghese k
fonte
0

Eu acho que você tem uma linha como esta: GRUB_TIMEOUT_STYLE = oculto

Altere para GRUB_TIMEOUT_STYLE = menu

E comente todas as linhas sobre os recursos ESCONDIDOS.

Viajante do tempo
fonte