Acesso direto ao conteúdo
Logotipo Dicas-L, por Ricardo Burile

Busca

Visite também: Segurança Linux ·  UnderLinux ·  VivaOLinux ·  LinuxSecurity ·  NoticiasLinux ·  BR-Linux ·  SoftwareLivre.org ·  [mais]   
 

Você está aqui: Home  → Arquivo Dicas-L

 

Assine a Lista Dicas-L

Receba diariamente por email as dicas
de informática publicadas neste site
Para se descadastrar, clique aqui.

Reiniciando um servidor Linux a partir do diretório /proc.

Colaboração: Jansen Sena

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

Dia desses, procurando por informações a respeito de métodos de reinicialização de um servidor para casos de emergência, encontrei um pequeno e interessante artigo publicado no site da Linux Journal, a respeito de uma maneira simples, entretanto, útil, de reiniciar um sistema GNU/Linux a partir do diretório /proc. Reproduzo, então, alguns comentários a respeito desse que pode ser um interessante recurso para um sysadmin GNU/Linux guardar nas mangas!

Mas, primeiramente, pra que reiniciar um sistema por meio do diretório /proc? Bem, suponha que você precise reiniciar um servidor e ao executar o tradicional comando reboot, você receba a seguinte mensagem:

  root@scadufax:~# reboot
  bash: /sbin/reboot: Input/output error

Sem dar muita atenção pra mensagem de erro, sua próxima alternativa é utilizar o comando shutdown:

  root@scadufax:~# shutdown -r now
  bash: /sbin/reboot: Input/output error

Ainda sem procurar investigar em detalhes o problema, ainda lhe resta uma última alternativa por meio do comando init. Mas não adianta: você recebe a mesma mensagem:

  root@scadufax:~# init 6
  bash: /sbin/reboot: Input/output error

O que está acontecendo? Bem, o reboot, como vários outros utilitários de um sistema GNU/Linux, fica no sistema de arquivos que pode, por sua vez, em decorrência de problemas de hardware, por exemplo, apresentar problemas. Com isso, o kernel não consegue recuperar o conteúdo desses comandos para poder executá-los.

Antes de partir para o desespero e tentar um "hard" reboot, pressionando o botão de energia de seu servidor, existe uma chance que consiste em utilizar o Magic SysRQ Key, habilitado através da configuração da variável CONFIG_MAGIC_SYSRQ no momento da compilação do kernel de seu sistema. Felizmente, para a maioria daqueles que não possuem tanta intimidade com o processo de compilação do núcleo do sistema, esse opção já vem habilitada no kernel padrão da grande maioria das distribuições GNU/Linux.

O Magic SysRQ Key permite que sejam enviados comandos diretamente para o kernel por meio do sistema virtual de arquivos /proc. O primeiro passo para utilizá-lo, entretanto, consiste em certificar-se de que esse recurso encontra-se compilado em seu kernel. Para isso, basta consultar o arquivo que guarda as opções de compilação do seu kernel corrente para verificar se a opção CONFIG_MAGIC_SYSRQ foi utilizada, conforme o exemplo mostrado a seguir:

  root@scadufax:~# grep CONFIG_MAGIC_SYSRQ /boot/config-2.6.24-19-generic
  CONFIG_MAGIC_SYSRQ=y

Caso o recurso esteja presente, o próximo passo é habilitar o recurso para que o kernel esteja apto a receber comandos por meio do Magic SysRQ Key:

  root@scadufax:~# echo 1 > /proc/sys/kernel/sysrq

Enfim, para reiniciar o seu sistema, o próximo passo consiste simplesmente em encaminhar o caracter b para o arquivo /proc/sysrq-trigger:

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

Simples, não?

Em breve, publicarei mais alguns "truques" do /proc/sysrq-trigger?

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

Formato PDF
Newsfeed RSS
Formato para impressão
PDF RSS Imprimir

Referências Adicionais

Referências adicionais sobre os assuntos abordados neste site podem ser encontradas em nossa Bibliografia.

Avalie esta dica

  • Currently 3.02/5
  • 1
  • 2
  • 3
  • 4
  • 5

Avaliação: 3.0 /5 (1417 votos)

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

Treinamentos, Consultorias e Soluçoes em TI. Baseados em softwares livres e padrões abertos para ambientes de missão crítica

Submarino.com.br

Programando o Android