Apagar automaticamente arquivos de /var/log*
Publicado por hauck (última atualização em 06/09/2023)
[ Hits: 4.382 ]
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
Compilador SH-Compiler usando GCC 4.6 no Debian Wheezy
Coolrom_downloader - download de roms
Programas windows em gerenciadores simples
Script para habilitar um pendrive a dar boot no VirtualBox
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
Como fazer a conversão binária e aplicar as restrições no Linux
Como quebrar a senha de um servidor Linux Debian
Como bloquear pendrive em uma rede Linux
Um autoinstall.yaml para Ubuntu com foco em quem vai fazer máquina virtual
Instalar GRUB sem archinstall no Arch Linux em UEFI Problemático









