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