Logrotate

Configurare noua (How To)

Situatie

Solutie

Logrotate este o unealtă utilă în sistemele bazate pe Unix/Linux pentru administrarea fișierelor de log. Aceasta permite rotirea, compresia, ștergerea și arhivarea fișierelor de log într-un mod automatizat. Pentru a configura logrotate pentru a salva logurile pentru Apache HTTP Server (httpd) o dată pe săptămână, urmați acești pași:

  1. Instalare (dacă este necesar): În unele distribuții Linux, logrotate este deja instalat, dar în caz contrar, îl puteți instala folosind managerul de pachete specific distribuției dvs. De exemplu, pe distribuții bazate pe Debian/Ubuntu, puteți folosi:
    sudo apt-get install logrotate

    Pe alte distribuții, comanda ar putea fi diferită.

  2. Configurare: Creați un fișier de configurare pentru logrotate pentru HTTP Server.
    sudo nano /etc/logrotate.d/httpd

    În acest fișier, puteți adăuga regulile pentru rotirea logurilor pentru httpd. Un exemplu de configurare pentru rotirea logurilor Apache o dată pe săptămână ar fi:

    /var/log/httpd/*.log
    {
    weekly
    missingok
    rotate 4
    compress
    delaycompress
    notifempty
    create 640 root adm
    sharedscripts
    postrotate
    /bin/systemctl reload httpd.service > /dev/null 2>&1 || true
    endscript
    }

    Explicație pentru fiecare opțiune folosită:

    • weekly: Specifică frecvența de rotire a logurilor săptămânal.
    • missingok: Ignoră erorile dacă logurile lipsesc.
    • rotate 4: Păstrează cel mult 4 versiuni ale fiecărui fișier de log.
    • compress: Comprimă logurile arhivate.
    • delaycompress: Așteaptă până la următoarea rotire pentru a comprima fișierele arhivate.
    • notifempty: Nu rotește fișierele goale de log.
    • create 640 root adm: Creează fișierele de log noi cu permisiunile specificate.
    • sharedscripts: Rulează scriptul postrotativ o singură dată, după ce toate fișierele sunt rotite.
    • postrotate: Comenzile din acest bloc sunt executate după rotirea fișierelor de log. În acest exemplu, comanda este utilizată pentru a reîncărca serviciul httpd pentru a începe să folosească noile fișiere de log.
    • endscript: Marchează sfârșitul blocului postrotativ.
  3. Testare: Pentru a testa configurația logrotate, puteți folosi comanda:
    sudo logrotate -d /etc/logrotate.d/httpd

    Aceasta va simula rotirea logurilor și va afișa ce ar face logrotate fără a efectua efectiv modificări.

  4. Programare: logrotate este de obicei rulat automat de către cron. Asigurați-vă că cron-ul rulează logrotate la intervale regulate. Puteți verifica sau modifica programarea în fișierul /etc/cron.daily/logrotate sau puteți adăuga o nouă intrare în crontab-ul sistemului.

După acești pași, logrotate ar trebui să administreze logurile Apache HTTP Server pentru a fi rotite o dată pe săptămână conform configurației specificate. Asigurați-vă că ajustați căile fișierelor și alte setări în conformitate cu configurarea specifică a serverului dvs.

Tip solutie

Permanent

Voteaza

(21 din 40 persoane apreciaza acest articol)

Despre Autor

Leave A Comment?