Apagar automaticamente arquivos de /var/log*
Publicado por hauck (última atualização em 06/09/2023)
[ Hits: 4.453 ]
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
Backup para fita dat em Dialog
Compartilhe a conexão por Wi-Fi
Cadastrando e removendo usuários do SAMBA com um script
Cálculo de número perfeito range
Gentoo binário em 2026: UEFI, LUKS, Btrfs e Systemd
Trabalhando Nativamente com Logs no Linux
Jogando Daikatana (Steam) com Patch 1.3 via Luxtorpeda no Linux
LazyDocker – Interface de Usuário em Tempo Real para o Docker
Por que sua empresa precisa de uma PKI (e como automatizar EMISSÕES de certificados via Web API)
Instalando NoMachine no Gentoo com Systemd (acesso Remoto em LAN)
Gentoo: Trocando wpa_supplicant pelo iwd no NetworkManager (Systemd)
OCS Inventory NG: Instalação de Agentes Linux e Windows + Autenticação HTTP
O Free Download Manager não abre no Fedora 43 KDE Plasma (2)
O que houve com slackware ??? (9)
Permissão acesso as pastas servidor Ubuntu Server 24.04 (5)









