Apagar automaticamente arquivos de /var/log*
Publicado por hauck (última atualização em 06/09/2023)
[ Hits: 4.384 ]
Download 1693658202.limpar_Logs.sh (versão 2)
Download 1693673857.limpar_Logs.sh (versão 3)
Shell Script para apagar automaticamente arquivos do diretório /var/log; útil para limpar logs antigos do servidor conforme o agendamento que você configurar no CRON.
Ao executar o script, será salvo um arquivo de log com mesmo nome e no mesmo local com o final ".log"
Recomenda-se adicionar uma linha em /etc/crontab para execução automática deste script.
O código apenas apaga os arquivos, não faz backup.
Versão 2 - Enviado por hauck em 02/09/2023
Changelog: Melhorias gerais, atualização para apagar também arquivos de subpastas/subdiretórios.
Download 1693658202.limpar_Logs.sh
Versão 3 - Enviado por hauck em 02/09/2023
Changelog: Melhorias gerais, adicionada função "run".
Download 1693673857.limpar_Logs.sh
#!/usr/bin/env bash
##
#
LOG="$0.log"
[[ -f "$LOG" ]] && rm -rf $LOG
if [[ $EUID -ne 0 ]]; then
echo -e "Este script deve ser executado pelo usuário root. \n $0\n" >> $LOG
exit
fi
Fext=("*.gz" "*.log.*" "*.*.log*")
Fpath="/var/log"
cd $Fpath
for ext in ${Fext[@]}; do
compact=`find -name "$ext" | wc -l`
if [[ $compact -gt 0 ]]; then
compact2=`find -iname "*$ext"`
for apaga in $compact2; do
Fsize=`ls -sh $apaga | awk '{print $1}'`
rm -f $apaga && {
echo -e "\nApagado arquivo: $apaga" >> $LOG
echo -e "Tamanho: $Fsize" >> $LOG
}
done
# Remove qualquer arquivo com tamanho maior que 1Gb
Frm_size=`find -size +1G -exec rm -rf {} \;` && {
echo -e "\nApagados arquivos maiores que 1Gb: \n$Frm_size" >> $LOG
}
# Remove qualquer arquivo com mais de 3 dias de criação
Frm_date=`find -ctime +3 -exec rm -rf {} \;` && {
echo -e "\nApagados arquivos criados a mais de 3 dias: \n$Frm_date" >> $LOG
}
#for l in `find . -type f -exec ls {} \;`; do
# echo -n >$l &>/dev/null
#done
else
echo -e "Nenhum arquivo para apagar em $Fpath terminando com $ext" >> $LOG
fi
done
filesSize=`ls -lsh | sort -hr`
echo -e "\n\n## $Fpath => tamanho do diretório depois de apagar os arquivos \n## \n$filesSize \n" >> $LOG
Script para subir interface wireless
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
Atualizar Linux Mint 22.2 para 22.3 beta
Jogar games da Battle.net no Linux com Faugus Launcher
Como fazer a Instalação de aplicativos para acesso remoto ao Linux
Conky, alerta de temperatura alta (11)
Assisti Avatar 3: Fogo e Cinzas (3)
Duas Pasta Pessoal Aparecendo no Ubuntu 24.04.3 LTS (42)









