Scpript para limpar os logs
Dica publicada em Shell Script / Introdução
Scpript para limpar os logs
Esse script zera todos os arquivos de log, serve principalmente para quem está enfrentando problemas com lotação da partição /var. Primeiro ele realizará um backup dos arquivos, logo após limpa todo o conteúdo dos arquivos de log, e também excluirá os arquivos de backup a cada 3 dias, evitando que a partição de backup fique cheia.
Crie o diretório para backup dos logs:
# mkdir -p /backup/var/
Crie o arquivo (script) com o seguinte conteúdo:
# vi /root/limpvar.sh
Dê permissão de execução para o arquivo:
# chmod +x /root/limpvar.sh
Coloque no cron para executar diariamente ou de acordo com sua necessidade. No exemplo abaixo será executados as 0,8 e 16 horas, ou seja a cada 8 horas. Para isso execute:
# crontab -e
Insira as seguintes linhas no final do arquivo:
Fonte: http://focalinux.cipsga.org.br/guia/intermediario/ch-manut.htm
Crie o diretório para backup dos logs:
# mkdir -p /backup/var/
Crie o arquivo (script) com o seguinte conteúdo:
# vi /root/limpvar.sh
#! /bin/sh
# Fazendo Backup dos logs atuais
tar -zcvf /backup/var/log-`date +%d.%m.%y-%H:%M`.tar.gz /var/log
# Acessando o diretório de logs
cd /var/log
# Procura todos os arquivos no /var/log e executa a limpeza
for l in `find . -type f -exec ls {} \;`; do
echo -n >$l &>/dev/null
done
# Remove arquivos de backup de logs com mais de 3 dias de criação
find /backup/var/ -name "*.tar.gz" -ctime +3 -exec rm -rf {} \;
# Fazendo Backup dos logs atuais
tar -zcvf /backup/var/log-`date +%d.%m.%y-%H:%M`.tar.gz /var/log
# Acessando o diretório de logs
cd /var/log
# Procura todos os arquivos no /var/log e executa a limpeza
for l in `find . -type f -exec ls {} \;`; do
echo -n >$l &>/dev/null
done
# Remove arquivos de backup de logs com mais de 3 dias de criação
find /backup/var/ -name "*.tar.gz" -ctime +3 -exec rm -rf {} \;
Dê permissão de execução para o arquivo:
# chmod +x /root/limpvar.sh
Coloque no cron para executar diariamente ou de acordo com sua necessidade. No exemplo abaixo será executados as 0,8 e 16 horas, ou seja a cada 8 horas. Para isso execute:
# crontab -e
Insira as seguintes linhas no final do arquivo:
0 0,8,16 * * * /root/limpvar.sh
Fonte: http://focalinux.cipsga.org.br/guia/intermediario/ch-manut.htm