วันศุกร์ที่ 28 มีนาคม พ.ศ. 2557

logrotage

บทความจาก linuxthai
สร้างไฟล์ไว้ที่ home ก่อนครับ
cd /home
mkdir makelog
cd /home/makelog
touch makelog.sh
cd ..
chmod 755 -R makelog

เอาไฟล์นี้ไปใส่ใน makelog.sh
##### Save Squid Log ######
timeaccess=`date +%Y-%m-%d`
LIMIT=90
cp -Rf /var/log/squid/access.log /home/makelog/$timeaccess-access.log
chmod 777 /home/makelog/$timeaccess-access.log
gzip /home/makelog/$timeaccess-access.log
md5sum /home/makelog/$timeaccess-access.log.gz > /home/makelog/$timeaccess-access.log.gz.md5sum
cp -Rf /var/log/squid/store.log /home/makelog/$timeaccess-store.log
chmod 777 /home/makelog/$timeaccess-store.log
gzip /home/makelog/$timeaccess-store.log
md5sum /home/makelog/$timeaccess-store.log.gz > /home/makelog/$timeaccess-store.log.gz.md5sum
find /home/makelog/ -maxdepth 1 -type f \( -ctime $LIMIT \) -print \-exec rm {} \; > /dev/null

แล้วก็ไปที่ crontab -e
59 23 * * * root sh /home/makelog/makelog.sh


หรือทดสอบ sh /home/makelog/makelog.sh

แก้ไข...สำหรับ ubuntu 12.04 โดยอ.ธนากร แห่งพิษณุโลก
#!/bin/sh
##### Save Squid Log ######
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
timeaccess=`date +%Y-%m-%d`
LIMIT=90
cd /var/log/airlink/squidlog/ อย่าลืมใส่ตรงนี้ด้วย...ไม่งั้นมันไม่รัน....
cp -Rf /var/log/squid3/access.log /var/log/airlink/squidlog/$timeaccess-access.log
chmod 777 /var/log/airlink/squidlog/$timeaccess-access.log
gzip /var/log/airlink/squidlog/$timeaccess-access.log
md5sum /var/log/airlink/squidlog/$timeaccess-access.log.gz > /var/log/airlink/squidlog/$timeaccess-access.log.gz.md5sum
#cp -Rf /var/log/squid3/store.log /var/log/airlink/squidlog/$timeaccess-store.log
#chmod 777 /var/log/airlink/squidlog/$timeaccess-store.log
#gzip /var/log/airlink/squidlog/$timeaccess-store.log
#md5sum /var/log/airlink/squidlog/$timeaccess-store.log.gz > /var/log/airlink/squidlog/$timeaccess-store.log.gz.md5sum
find /var/log/airlink/squidlog/ -maxdepth 1 -type f \( -ctime $LIMIT \) -print \-exec rm {} \; > /dev/null





ไม่มีความคิดเห็น: