sexta-feira, 25 de maio de 2012

Executando FSCK automaticamente quando a máquina desligar acidentalmente ou reiniciar de modo forçado


Quando uma máquina Linux, principalmente um Servidor, desliga de forma acidental por uma falta de energia, um travamento ou mesmo uma simples faxineira que puxa o fio, temos um problema...

Muitas vezes é necessário fazer uma checagem no sistema de arquivos EXT3, e frisando mais uma vez, sendo um Servidor, que normalmente não tem monitor nem teclado, temos que conectar tudo para ver o que está acontecendo.

Para solucionar este problema, podemos colocar dois simples scripts para checar o sistema de arquivos sempre que a máquina não for desligada corretamente.



Criar o arquivo autofsck em /etc/init.d


#! /bin/sh

### BEGIN INIT INFO
# Provides:             autofsck
# Required-Start:
# Required-Stop:
# Default-Start:        2 3 4 5
# Default-Stop:
# Short-Description:    autofsck
### END INIT INFO

touch /forcefsck
echo "-p" > /fsckoptions

Depois o arquivo autofsck-off no mesmo diretório

#! /bin/sh

### BEGIN INIT INFO
# Provides:             autofsck-off
# Required-Start:
# Required-Stop:
# Default-Start:
# Default-Stop:         0 6
# Short-Description:    autofsck-off
### END INIT INFO

rm -f /forcefsck
rm -f /fsckoptions

Agora devemos dar as devidas permissões para eles "rodarem" :

chmod a+x /etc/init.d/autofsck
chmod a+x /etc/init.d/autofsck-off

E colocarmos eles na inicialização e desligamento do micro.

update-rc.d autofsck defaults
update-rc.d autofsck-off defaults

E pronto. 

Quando a máquina ligar, ela ativará o "run-level" 1, 2, 3, 4 ou no modo gráfico o 5. Criará o arquivo "/forcefsck" com a opção "-p" no arquivo "/fsckoptions".

Isto fará com que no próximo reinício ele force a fazer a checagem antes de montar os volumes.

E quando a máquina for desligada corretamente, ela chamará o "run-level" 0 ou 6 (reinício), o qual chamará o "autofsck-off" e apagará os dois arquivos criados anteriormente.

Uma dica simples, mas muito funcional.

Nenhum comentário:

Postar um comentário