Pular para o conteúdo

Fazendo com que o GRUB utilize um kernel específico uma vez ao dar boot

Avatar de DK
DKTrabalha com Linux e Unix a mais de 23 anos e possui as certificações LPI 3, RHCE, AIX e VIO.

05 nov, 2009
2 min de leitura

Cenário

Essa situação é interessante quando foi compilado um novo kernel e se está com acesso remoto ao servidor, ou seja, mandar um reboot remotamente com um novo kernel, muita coisa pode acontecer, e o mínimo é perder a conexão.

Para essas situações tem como fazer com que o GRUB utilize um kernel em específico apenas uma vez, e em caso de Kernel Panic o servidor será resetado e o kernel original será utilizado, voltando assim o acesso remoto para serem feitas as alterações necessárias.

Preparando o ambiente

É importante também definir os seguinte parâmetros de kernel:

kernel.panic = 5
kernel.panic_on_oops = 1

A primeira linha significa que o computador será “resetado” após 5 segundo de Panic e a segunda linha informa que será gerado um Kernel Panic em qualquer evento de estouro de memória e afins.

Adicione as duas linhas anteriores no arquivo /etc/sysctl.conf e após isso, execute o comando

 sysctl -p

Lidando com o GRUB

Como root execute

grub --batch
grub> savedefault --default=1 --once
grub> quit

Fará com que o GRUB ignore uma única vez os parâmetros ‘default’ e ‘timeout’ do grub.conf e nessa inicialização utilizará o kernel ‘1’ do GRUB, no boot seguinte será utilizado o arquivo grub.conf normalmente.

Avatar de DK

Comentários

Comentários fechados para visitantes. Entre ou registre-se para comentar.

Ir para