maillog fajlok automatikus mentese
Kulyassa Robert
qji at csoma.elte.hu
2005. Ápr. 30., Szo, 01:54:52 CEST
On Fri, Apr 29, 2005 at 12:51:09PM +0200, Faragó Zsolt wrote:
> Hello!
> Meg lehet e oldani egyszeruen linux alatt, hogy a maillog fajlokat minden
> honap vegen automatikusa mentse mondjuk egy ev-honap nevu mappaba?
> Vagy nezzek utana a script és regularis kifejezesek temakoroknek?
Nezd meg a logrotate csomagot!
En ezt a kovetkezokepp csinalom: logrotate archivalja a logokat; ez
azert jo, mert a logrotate (megfelelo beallitasokkal!) ujra is inditja a
mailszervert/akarmit ha szukseges. Meg minek barkacsolni, ha van ra
megoldas.
Aztan az igy osszegyult menteseket kiszedem egy scripttel, atrakom mas
konyvtarba olyan nevvel amiben a datum is benne van.
Ez a script az osszes /var/log/ alatt levo ".gz"-re vegzodo file-t (a
logrotate a "compress" opciora eppen ilyeneket csinal) atmozgatja a
/home/backup/log/ ala ugy hogy a file-nevben a datum is benne lesz (a
file utolso modositasanak datuma):
---------------------------------------------------------------
#!/bin/bash
for f in `find /var/log/ -regex ".*\.gz$" | cut -b10-`
do
d=`find /var/log/$f -printf "%TY-%Tm-%Td\n"`
n=`echo $f | sed -e s/\\\\//-/g | sed -e s/\.gz$/-$d\.gz/g`
mv /var/log/$f /home/backup/log/$n
chown root.root /home/backup/log/$n
chmod go-rwx /home/backup/log/$n
done
---------------------------------------------------------------
Persze garanciat nem vallalok. ;))
--
qji
További információk a(z) Techinfo levelezőlistáról