Jeg fulgte denne lenken for å endre logg -rotere konfigurasjon for RHEL 6

Etter at jeg gjorde endringen i konfigurasjonsfil, hva skal jeg gjøre for å la dette tre i kraft?

Svar

logrotate bruker crontab til å jobbe. Det er planlagt arbeid, ikke en demon, så du trenger ikke å laste konfigurasjonen på nytt.
Når crontab utfører logrotate, vil bruke den nye konfigurasjonsfilen automatisk.
Hvis du trenger å teste konfigurasjonen din, kan du også utføre logrotate på egen hånd med kommandoen:

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

Eller som nevnt i kommentarer, identifiser logrotate linjen i utgangen av kommandoen crontab -l og utfør kommandolinjen referer til slm «s for å få en presis cron. daglig forklaring

Kommentarer

  • Bare for å legge til svaret ditt, er cron-oppføringen for logrotate planlagt å kjøre en gang om dagen.
  • @Ketan, så hvordan kan jeg få det til å påvirke med en gang? takk
  • Hvis du vil at den skal tre i kraft, kjør cron-etterordene.
  • logrotate har en -d alternativ for testing (eller " feilsøking "), jeg ' d anbefaler å kjøre den minst en gang med det.
  • En veldig vanlig frustrasjon er det nye, nødvendige su-direktivet su root syslog. Noe som stopper logrotate når det ikke legges til. For å toppe folk ' frustrasjon når de legger til direktivet, og deretter kjører (tvinge) logrotate, fortsetter det å spytte ut " error: skipping "/var/log/syslog" because parent directory has insecure permissions (It's world writable or writable by group which is not "root" ... " i 20 timer etter konfigurasjonsendringen, som om innstillingene / prosessen er bufret !? Hvis du sitter fast der, chgrp on / var / log to root, kjør logrotate, chgrp tilbake til syslog. Det vil ryddes opp ved neste løp

Svar

Det meste av logrotate oppsett jeg har sett på forskjellige distroer, løper ut av /etc/cron.daily. Det er et skallskript der med navnet logrotate.

Eksempel

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

Manuell kjøring

Hvis du vil gjøre det kjøres manuelt, kjører du bare skriptet som root:

$ sudo /etc/cron.daily/logrotate 

Hvis du ser på et skript som vanligvis er der, viser det deg hvordan du også kan kjøre logrotate manuelt, ved å bare kjøre logrotate + banen til konfigurasjonsfilen.

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

Svar

Det skal være automatisk via cron. Du kan tvinge det til å teste endringene dine.

For global logrotate:

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

For en enkelt conf-fil:

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

Kommentarer

  • -f for kraftrotasjon er det også -d for feilsøking, som også er tørrkjøring, den vil skrive ut alt den ville ha gjort, men ikke faktisk gjøre det.

Svar

På min CentOS 6.5-maskin for å sette opp logrotatefor nginx måtte jeg gjøre dette:

logrotate /etc/logrotate.d/nginx 

Og så sjekket jeg om logrotate tok vare på den nye nginx-konfigurasjonen min slik:

cat /var/lib/logrotate.status 

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *