scripts/firewall/firewall-logrotate-script.sh
Valentin Samir 55611d378b On vire des sudo inutiles et on assure que les jours sont toujours sur deux chiffres
Ignore-this: 6814c419129ea1bb4ca4d7e1466bf4c9

darcs-hash:20120618055450-3a55a-3ca2b42f6e8bd0dbcde5b2784aa808ab1dd84b26.gz
2012-06-18 07:54:50 +02:00

35 lines
1 KiB
Bash
Executable file

#!/bin/bash
umask 0177
if [[ `hostname` == 'komaz' ]]; then
logs_src=/var/log/firewall/
else
exit 41
fi
logs_dst="/home/squid/`hostname`/logs"
if [ ! -d "$logs_dst" ]; then
echo "Destination des logs inexistante"
exit 42
fi
while ( ls -tr "$logs_src" | grep -E 'logall\.log\.[0-9]+\..z2?' ); do
dernier_fichier=$logs_src/$(ls -tr "$logs_src" | grep -E 'logall\.log\.[0-9]+\..z2?' | head -1)
#timestamp=$(bzcat "$dernier_fichier" | head -1 | awk '{print $1}')
#date=$(date -d "1970-01-01 $timestamp sec" +"%Y-%m-%d")
Y=$(date | awk '{print $4}')
Y=${Y:0:4}
M=$(bzcat "$dernier_fichier" | head -1 | awk '{print $1}')
M=$(date -d "01-$M-01" +%m)
D=$(bzcat "$dernier_fichier" | head -1 | awk '{print $2}')
D=$(date -d "01-01-$D" +%d)
date=$Y-$M-$D
echo install -o root -g root -m 400 "$dernier_fichier" "$logs_dst/logall.log.$date.bz2"
echo rm "$dernier_fichier"
install -o root -g root -m 400 "$dernier_fichier" "$logs_dst/logall.log.$date.bz2"
rm "$dernier_fichier"
done
find "$logs_dst" -mtime +365 -delete