Algumas coisas vêm à mente:
-
Recupere-se de um pânico do kernel
Um pânico do kernel, por definição, não pode ser recuperado sem reiniciar o kernel.
-
Recupere-se de interrupções que deixam você sem acesso ao terminal
Se o sistema não estiver respondendo e você não conseguir enviar comandos para a recuperação, a única coisa que você pode fazer é reinicializar. Normalmente, você gostaria de evitar o ciclo de energia manual. Para esses tipos de situações, o kernel do Linux tem suporte a Magic SysRq , que pode ser usado para reinicializar a máquina em uma emergência. / p>
Contanto que a opção
CONFIG_MAGIC_SYSRQ
tenha sido habilitada na configuração do kernel, e okernel.sysrq
sysctl
está habilitada, você pode enviar comandos diretamente para o kernel com combinações de teclas mágicas SysRq:Note que Alt + SysRq abaixo significa pressione e segure Alt , então pressione e segure segure SysRq (normalmente a tecla PrintScrn ).
- Alt + SysRq + r : recupera o controle do teclado
-
Alt + SysRq + e : envia
SIGTERM
para todos os processos, excetoinit
, dando a eles uma chance de finalizar graciosamente -
Alt + SysRq + i : envia
SIGKILL
para todos os processos, excetoinit
, forçando-os a finalizar - Alt + SysRq + s : tentativa de sincronizar todos os sistemas de arquivos montados
- Alt + SysRq + u : remontar todo o sistema de arquivos somente leitura
-
Alt + SysRq + b : reboot ou
Alt + SysRq + o : desligamento
Um mnemônico para as combinações de teclas mágicas do SysRq para tentar uma reinicialização normal é:
" R eboot E ven I f S sistema U titerly B roke "
Para servidores headless, existe até um destino iptables que permite sequências SysRq remotas através de uma rede.
-
Recuperar do estado não inicializável
Se o sistema já foi levado a um estado em que uma inicialização normal não é possível (por exemplo, como resultado de uma atualização do sistema com falha, sistema de arquivos corrompido etc.), a única maneira de acessar um console de recuperação no sistema pode reinicializar usando as opções adequadas de inicialização.
-
Altere os parâmetros do kernel em tempo de inicialização
Alguns parâmetros do kernel (por exemplo,
audit
para ativar / desativar a auditoria do kernel) só podem ser definido quando o kernel é carregado no momento da inicialização.