ezt a linket követtem a napló megváltoztatásához -rotate konfiguráció az RHEL 6 számára

Miután elvégeztem a konfigurációs fájl módosítását, mit kell tennem, hogy ez érvénybe lépjen?

Válasz

logrotate a crontab funkciót használja a munkához. Ütemezett munka, nem démon, ezért nem kell újratölteni a konfigurációt.
Amikor a crontab végrehajtja a logrotate parancsot, akkor automatikusan használja az új konfigurációs fájlt.
Ha tesztelnie kell a konfigurációját, a logrotate fájlt saját maga is végrehajthatja a következő paranccsal:

logrotate /etc/logrotate.d/your-logrotate-config 

Vagy a megjegyzésekben említettek szerint azonosítsa a logrotate sort a crontab -l és hajtsa végre a parancssort lásd slm válaszát , hogy pontos cron legyen.napi magyarázat

Megjegyzések

  • Csak azért, hogy kiegészítsem a válaszoddal, a logrotate cron bejegyzésének ütemezése naponta egyszer fut.
  • @Ketan, szóval, hogyan tudom elérni, hogy azonnal befolyásolja? köszönöm
  • Ha azt szeretné, hogy azonnal érvénybe lépjen, futtassa a cron utószavakat.
  • logrotate -d opció a teszteléshez (vagy " hibakeresés "), I ' d javasoljuk, hogy futtassa legalább egyszer.
  • Nagyon gyakori frusztráció az új, szükséges su irányelv su root syslog. Ami megállítja a logrotátot, ha nincs hozzáadva. Az emberek ' csalódottságának növelése érdekében, amikor hozzáadják az irányelvet, majd futtatják (kényszerítik) a logrotátot, az továbbra is kiköpi " error: skipping "/var/log/syslog" because parent directory has insecure permissions (It's world writable or writable by group which is not "root" ... " 20 órán keresztül a konfiguráció módosítása után, mintha a beállítások / folyamat vannak gyorsítótárban !? Ha ott ragadtál, akkor a chgrp a / var / log paranccsal gyökerezz, futtasd a logrotate-et, a chgrp pedig vissza a syslogba. A következő futtatásra kitisztul

Válasz

A logrotate beállítások elfogynak a /etc/cron.daily ből. Ott egy shell parancsfájl találó néven logrotate.

Példa

$ ls -l /etc/cron.daily/logrotate -rwxr-xr-x 1 root root 180 May 18 2011 /etc/cron.daily/logrotate 

Manuális futtatás

Ha kézzel szeretné futtatni, egyszerűen futtassa a szkriptet rootként:

$ sudo /etc/cron.daily/logrotate 

Ha megnéz egy tipikusan ott lévő szkriptet, akkor az megmutatja, hogyan futtathatja a logrotate manuálisan, egyszerűen futtatva az logrotate + elérési útját a konfigurációs fájljához.

#!/bin/sh /usr/sbin/logrotate /etc/logrotate.conf EXITVALUE=$? if [ $EXITVALUE != 0 ]; then /usr/bin/logger -t logrotate "ALERT exited abnormally with [$EXITVALUE]" fi exit 0 

Válasz

Ennek automatikusnak kell lennie a cronon keresztül. Kényszerítheti a változások tesztelésére.

Globális földrajzi mozgatás esetén:

sudo logrotate -v -f /etc/logrotate.conf 

Egyetlen konf fájl esetén:

sudo logrotate -v -f /etc/logrotate.d/someapp.conf 

megjegyzések

  • -f az erő forgatásához van még -d a hibakereséshez, amely szintén szárazon fut, mindent kinyomtat, amit tett volna, de valójában nem teszi meg.

Válasz

A CentOS 6.5 gépemen a logrotate beállításához az nginx számára ezt kellett tennem:

logrotate /etc/logrotate.d/nginx 

Ezután ellenőriztem, hogy a logrotate gondozza-e az új nginx konfigurációmat:

cat /var/lib/logrotate.status 

Vélemény, hozzászólás?

Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük