você está aqui: Home  → Arquivo de Mensagens

Reiniciando um servidor Linux a partir do diretório /proc - PARTE II

Colaboração: Jansen Sena

Data de Publicação: 14 de Março de 2009

Já convencido de que o Magic SysRQ Key pode ser um "truque" importante no seu dia-a-dia de sysadmin GNU/Linux, o próximo passo é conhecê-lo um pouco melhor para poder utilizá-lo de maneira mais segura e eficiente.

Uma vez que esse recurso esteja habilitado em seu kernel, a primeira saída para reiniciar um sistema GNU/Linux que já não tenha à disposição comandos como o reboot, o shutdown ou o init, consiste em executar o seguinte comando:

  root@scadufax:~# echo "b" > /proc/sysrq-trigger

Esse comando irá reiniciar o seu sistema imediatamente, sem qualquer preocupação com o sincronismo e a desmontagem dos sistemas de arquivos presentes em seus discos. Isso, evidentemente, pode provocar problemas e provocar algumas outras instalabilidades no seu sistema que, a essas alturas, já deve estar bastante "sacrificado". O que fazer, então?

Felizmente, além de permitir o reboot, o Magic SysRQ Key possui outros recursos, dentre os quais a possibilidade de tentar sincronizar todos os sistemas de arquivos que estejam montados e tentar remontá-los em modo de leitura (read-only), por meio das opções s e u, respectivamente. Isso pode colaborar na preservação de seus dados durante o processo de shutdown do seu sistema.

Diante disso, para reiniciar um sistema por meio do /proc/sysrq-trigger, uma solução mais prudente pode ser a seguinte:

  root@scadufax:~# echo "susb" > /proc/sysrq-trigger

Não se pode esquecer, entretanto, que além dos arquivos, é preciso tentar preservar os processos que estão rodando em seu servidor, fazendo com que o menor número de processos tenham seu funcionamento interrompido abruptamente. Isso pode lhe evitar boas dores de cabeça.

Com isso, para fazer com que o Magic SysRQ Key ajude-o a (pelo menos tentar) executar uma reinicialização mais próxima do processo de reboot normal, é possível lançar mão das opções e e i que encaminham um sinal de TERM e KILL para todos os processos com exceção do processo init, respectivamente. Desse modo, uma opção ainda mais completa para tentar fazer o reboot de um sistema que tenha, por exemplo, seus sistemas de arquivos principais danificados, consite em executar o seguinte comando:

  root@scadufax:~# echo "seiusb" > /proc/sysrq-trigger

Vale a pena ressaltar que, a utilização desse procedimento deve ser considerada como uma alternativa apenas quando o sistema estiver fora de suas condições normais de operação e sem a possibilidade de utilizar os métodos mais seguros por meio, por exemplo, dos comandos shutdown, poweroff, reboot e init.

Ainda em tempo, ainda que todas as opções anteriores sejam utilizadas, o processo de shutdown está sendo executado sob condições, possivelmente, bastante adversas conforme a gravidade dos problemas. O kernel, portanto, irá "tentar" sincronizar os sistemas de arquivos e montá-los em modo de leitura (read-only), por exemplo. Entretanto, nenhuma garantia de que esse processo será realizado com completo sucesso pode ser admitido. Lembre-se, o sistema está comprometido e, nessa situação, o objetivo maior deve ser minimizar as perdas, ciente das limitações impostas pelos erros e problemas.

Outros recursos do Magic SysRQ Key podem ser encontrados na documentação do recurso, que encontra-se diretamente nos arquivos do código-fonte do kernel.



Veja a relação completa dos artigos de Jansen Sena

 

 

Opinião dos Leitores

Seja o primeiro a comentar este artigo
*Nome:
Email:
Me notifique sobre novos comentários nessa página
Oculte meu email
*Texto:
 
  Para publicar seu comentário, digite o código contido na imagem acima
 


Powered by Scriptsmill Comments Script