Sledoval jsem tento odkaz a změnil protokol -otočit konfiguraci pro RHEL 6

Co mám udělat po změně konfiguračního souboru, co mám udělat, aby se to projevilo?

Odpovědět

logrotate používá crontab k práci. Je to naplánovaná práce, ne démon, takže není nutné znovu načítat její konfiguraci.
Když crontab provede logrotate, použije váš nový konfigurační soubor automaticky.
Pokud potřebujete otestovat svoji konfiguraci, můžete logrotate spustit samostatně pomocí příkazu:

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

Nebo jak je uvedeno v komentářích, identifikujte řádek logrotate na výstupu příkazu crontab -l a proveďte příkazový řádek viz odpověď slm , abyste získali přesné vysvětlení cron.daily

Komentáře

  • Jen pro doplnění vaší odpovědi je naplánováno spuštění záznamu cron pro logrotate jednou denně.
  • @Ketan, tak jak to mohu hned ovlivnit? děkuji
  • pokud chcete, aby se projevila okamžitě, spusťte cron afterwords.
  • logrotate-d možnost testování (nebo " ladění "), ' d doporučujeme jej s tím alespoň jednou spustit.
  • Velmi častou frustrací je nová požadovaná směrnice su su root syslog. Což znamená, že se logrotate zastaví, pokud není přidán. Aby lidé ' frustraci přidali směrnici a poté spustili (vynutili) logrotaci, vyplivne to " error: skipping "/var/log/syslog" because parent directory has insecure permissions (It's world writable or writable by group which is not "root" ... " po dobu 20 hodin po změně konfigurace, jako by nastavení / proces jsou uloženy v mezipaměti !? Pokud tam uvíznete, chgrp na / var / log do root, spusťte logrotate, chgrp zpět na syslog. Do příštího spuštění se to uklidí

Odpověď

Většina logrotate nastavení, která jsem viděl na různých distribucích, dojdou /etc/cron.daily. Tam je skript shellu s příhodným názvem logrotate.

Příklad

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

Ruční spuštění

Pokud ho chcete spustit ručně, spusťte skript jako root:

$ sudo /etc/cron.daily/logrotate 

Pokud se podíváte na skript, který zde obvykle je, ukáže vám, jak můžete také spustit logrotate ručně pouhým spuštěním logrotate + cesty k jeho konfiguračnímu souboru.

#!/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 

Odpověď

Mělo by to být automatické přes cron. Můžete jej donutit, aby otestoval vaše změny.

Globální logrotate:

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

Pro jeden konfigurační soubor:

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

Komentáře

  • -f pro rotaci síly existuje také -d pro ladění, což je také běh na sucho, vytiskne vše, co by udělal, ale ve skutečnosti to neudělá.

Odpověď

Na mém zařízení CentOS 6.5 pro nastavení logrotatefor nginx jsem to musel udělat:

logrotate /etc/logrotate.d/nginx 

A pak jsem zkontroloval, zda se logrotate stará o můj nový nginx config takto:

cat /var/lib/logrotate.status 

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *