Linux Logrotate -esimerkkejä

Linux Logrotate Esimerkkeja



Lokitiedot ovat erittäin tärkeä osa mitä tahansa käyttöjärjestelmää minkä tahansa käynnissä olevan sovelluksen ongelman diagnosoimiseksi, ja lokimerkinnät auttavat löytämään ratkaisun ongelmaan. Suurin osa Linux-käyttöjärjestelmän sovelluksista luo lokin ja järjestelmänvalvoja saa tarvittavat tiedot sovelluksesta lokimerkinnöistä. Lokimerkinnät aiheuttavat kuitenkin joskus ongelmia, koska merkintöjen koko kasvaa ajan myötä. Joten lokimerkintöjä tarvitaan hallintaan.

Logrotate on Linuxin komentorivityökalu lokimerkintöjen hallintaan. Tämä työkalu auttaa suorittamaan erilaisia ​​​​tehtäviä järjestelmänvalvojan lokimerkinnöille, kuten kiertävien lokitiedostojen rajoittaminen, kierrettyjen lokitiedostojen pakkaaminen, tarpeettomien lokitiedostojen poistaminen, tietyn shell-skriptin suorittaminen lokitiedostojen perusteella jne. 'logrorate'-komennon hallinta lokitiedostojen eri tavoilla hallinnassa on esitetty tässä opetusohjelmassa useilla esimerkeillä.

Tarkista asennettu Logrotate-versio

'logrotate' -komento on asennettu oletusarvoisesti Ubuntu-käyttöjärjestelmän uuteen versioon. Suorita seuraava komento tarkistaaksesi “logrotate”-komennon asennettu versio:







$ logrota --versio



Eri sovellusten lokimerkinnät tallennetaan oletusarvoisesti '/var/log'-kansioon. Seuraava samanlainen sisältö tulee näkyviin, jos tarkistat kansion sisällön.



$ ls / oli / Hirsi





Aseta “Logrotate”-asetukset

Asetusarvo Tarkoitus
päivittäin / viikoittain / kuukausittain / vuosittain Se määrittää lokien kiertämisen keston.
käännä numeroa Se määrittää tiedostojen määrän, jotka säilytetään ennen vanhojen lokitiedostojen poistamista.
puristaa Sitä käytetään lokitiedostojen pakkaamiseen.
pakkaa cmd Sitä käytetään 'pakkaus'-komennon asettamiseen. gzip on oletuskomento.
purkaa cmd Sitä käytetään 'purkaa'-komennon asettamiseen. Gunzip on oletuskomento.
viivepakkaus Sitä käytetään viivyttämään lokitiedostojen pakkausprosessia.
ilmoitus tyhjä Sitä käytetään välttämään tyhjän tiedoston kiertämistä.
minulta puuttuu Jos se on asetettu, puuttuville lokitiedostoille ei synny virhettä.
koko Sitä käytetään rajoittamaan lokitiedostojen kiertämisen aloittamista.
päivämääräteksti Sitä käytetään päivämääräarvon lisäämiseen rotate-tiedoston päätteeksi.
kopioida katkaista Sitä käytetään luomaan kopio alkuperäisestä tiedostosta.
esikäännetty Sitä käytetään komentosarjan suorittamiseen ennen lokitiedostojen kiertämistä.
kiertää jälkikäteen Sitä käytetään komentosarjan suorittamiseen lokitiedostojen kiertämisen jälkeen.
luoda Sitä käytetään lokitiedostojen luomiseen pääkäyttäjän oikeuksin.

Syntaksi:

'logrotate'-komennon syntaksi annetaan seuraavasti:



logrota [ VAIHTOEHTO ] config_file_path

Eri tyyppisiä valintoja voidaan käyttää eri tarkoituksiin “logrotate”-komennolla.

Logrotate-asetukset

Joitakin hyödyllisiä “logrotate”-komennon asetuksia mainitaan seuraavassa:

-f, -voima Sitä käytetään tarvittaessa voimakkaaseen pyöritykseen.
-d, -debug Sitä käytetään ottamaan käyttöön virheenkorjaustila pyörityksen aikana.
-m, –mail Sitä käytetään sähköpostin lähettämiseen kierron aikana.
-s, -tila Sitä käytetään vaihtoehtoisten tilojen tiedostoille.
-käyttö Sitä käytetään käyttötietojen tulostamiseen.
-?, -auta Sitä käytetään auttavien viestien tulostamiseen.
-v, -sanallinen Sitä käytetään tulostamiseen monisanaisessa tilassa.

Logrotate määritystiedosto

Päälogrotate-määritystiedosto sijaitsee paikassa '/etc/logrotate.conf'. Suorita seuraava komento avataksesi tiedoston nanoeditorissa:

$ nano / jne / logrotate.conf

“logrotate”-komennon oletusasetus näkyy “logrotate.conf”-tiedostossa. 'Include'-komentoa käytetään tiedostossa '/etc/logrotate.d'-hakemistossa olevan kokoonpanon hakemiseen.

Esimerkki 1: Luo yksinkertainen Logrotate-määritystiedosto

Luo mallilokitiedosto nimeltä “/var/log/test.log” näytelokitiedoilla. Suorita seuraava komento avataksesi nanoeditorin ja luodaksesi uuden 'logrotate.conf' -tiedoston '/etc/tmp' -kansion sijaintiin. Luo /tmp-kansio pääkäyttäjän oikeuksin, jos sitä ei ole luotu aiemmin.

$ nano / jne / tmp / logrotate.conf

Lisää seuraava sisältö '/var/log/test.log'-tiedoston tiedostoon. Asetuksen mukaan 'test.log'-tiedostoa kierretään päivittäin, jos tiedoston koko ylittää 5 kt:

/ oli / Hirsi / test.log {

päivittäin

koko 5K

hänen root adm

}

Suorita seuraava komento tarkistaaksesi lokitiedoston koon:

$ ls -l / oli / Hirsi / test.log

Suorita 'logrotate' -komento määritystiedoston luomisen jälkeen.

$ sudo logrota / jne / tmp / logrotate.conf

Suorita seuraava komento uudelleen tarkistaaksesi lokitiedoston koon 'logrotate'-komennon suorittamisen jälkeen:

$ ls -l / oli / Hirsi / test.log

Test.log-tiedoston koko on yli 1 kt. Joten kiertoa ei tehdä konfigurointiasetuksen perusteella.

Muuta koon arvoksi 1 kt tiedostossa '/etc/tmp/logrotate.conf' ja suorita 'ls'-komento uudelleen tarkistaaksesi '/var/log/test.log' -tiedoston koon. Tulosteen mukaan lokitiedostoa käännetään ja poistetaan, koska kokoraja ylittyy.

Esimerkki 2: Logrotate Copytruncate -sovelluksen käyttö

Luo tai muokkaa /etc/tmp/logrotate.conf-tiedostoa seuraavilla asetuksilla näyttääksesi copytruncate-toiminnon käytön. Uusien asetusten mukaan logrotate luo kopion alkuperäisestä tiedostosta nollaamalla alkuperäisen tiedoston kooksi.

/ oli / Hirsi / test.log {

kiertää 5

koko 1 k

kopioida katkaista

hänen root adm

}

Suorita seuraava komento tarkistaaksesi 'test.log'-tiedoston koon:

$ ls -l / oli / Hirsi / test.log

Suorita 'logrotate' -komento määritystiedoston luomisen jälkeen.

$ sudo logrota / jne / tmp / logrotate.conf

Suorita seuraava komento uudelleen tarkistaaksesi 'test.log'-tiedoston koon 'logrotate'-komennon suorittamisen jälkeen:

$ ls -l / oli / Hirsi / test.log

Alkuperäinen tiedostokoko on 0, kun copytruncate-asetuksen 'logrotate'-komento on suoritettu.

Esimerkki 3: Logrotate Compressin käyttö

Luo tai muokkaa /etc/tmp/logrotate.conf-tiedostoa seuraavilla asetuksilla näyttääksesi pakkauksen käytön. Uusien asetusten mukaan logrotate luo alkuperäisestä tiedostosta pakkaustiedoston.

/ oli / Hirsi / test.log {

kiertää 5

koko 1 k

puristaa

luoda 770 root adm

}

Suorita seuraava komento tarkistaaksesi luettelon '/var/log' tiedostoista ja kansioista:

$ ls / oli / Hirsi /

Suorita 'logrotate' -komento määritystiedoston luomisen jälkeen.

$ sudo logrota / jne / tmp / logrotate.conf

Suorita seuraava komento uudelleen tarkistaaksesi '/var/log' tiedostojen ja kansioiden luettelon:

$ ls / oli / Hirsi /

Pakattu 'test.log'-tiedoston tiedosto luodaan nimellä 'test.log.1.gz' ja alkuperäinen tiedosto poistetaan.

Esimerkki 4: Logrotate Dateext:n käyttö

Luo tai muokkaa /etc/tmp/logrotate.conf-tiedostoa seuraavilla asetuksilla näyttääksesi dateextin käytön. Uusien asetusten mukaan logrotate luo alkuperäisestä tiedostosta pakkaustiedoston päivämäärän arvolla.

oli / Hirsi / test.log {

hänen root adm

kiertää 5

koko 1 k

puristaa

luoda 770 root adm

päivämääräteksti

}

Suorita 'logrotate' -komento määritystiedoston luomisen jälkeen.

$ sudo logrota / jne / tmp / logrotate.conf

Suorita seuraava komento tarkistaaksesi luettelon '/var/log' tiedostoista ja kansioista:

$ ls -l / oli / Hirsi /

Test.log-tiedoston pakattu tiedosto luodaan nimellä test.log.20240129.gz ja alkuperäinen tiedosto poistetaan.

Esimerkki 5: Logrotate Maxagen käyttö

Luo tai muokkaa '/etc/tmp/logrotate.conf'-tiedostoa seuraavilla asetuksilla näyttääksesi maxage:n käytön. Asetusten mukaan logrotate säilyttää viisi lokimerkintää, jos lokitiedoston koko ylittää 1K yhden päivän kuluttua.

/ oli / Hirsi / test.log {

hänen root adm

kiertää 5

koko 1 k

puristaa

maxage 1

}

Suorita seuraava 'logrotate' -komento tallentaaksesi tulos toiseen lokitiedostoon nimeltä 'out.log':

$ sudo logrota -s = / oli / Hirsi / out.log / jne / tmp / logrotate.conf

Seuraavan lähdön mukaan 'out.log'-tiedosto luodaan 'logrotate'-komennon suorittamisen jälkeen:

Esimerkki 6: Logrotate Missingokin käyttö

Luo tai muokkaa /etc/tmp/logrotate.conf-tiedostoa seuraavilla asetuksilla. Tässä 'testfile.log'-lokitiedostoa ei ole '/var/log'-kansiossa.

/ oli / Hirsi / testfile.log {

hänen root adm

kiertää 5

koko 1 k

puristaa

}

Virheilmoitus tulostetaan 'logrotate'-komennon suorittamisen jälkeen.

Lisää 'missingok'-asetus logrotate-määritystiedostoon ja suorita 'logrotate'-komento uudelleen. Puuttuneelle lokitiedostolle ei tulosteta virhettä.

Esimerkki 7: Logrotate Prerotate -toiminnon käyttö

Luo Bash-tiedosto nimeltä 'test.sh' seuraavalla komentosarjalla, joka tulostaa yksinkertaisen viestin. Tiedostoa käytetään tässä logrotate-esimerkissä esittämään esirotate-toiminnon käyttöä logrotate-määritystiedostossa.

test.sh



#!/bin/bash

kaiku 'logrotate esimerkit...'

Kun olet luonut tiedoston, suorita seuraava komento asettaaksesi tämän tiedoston suoritusoikeudet kaikille käyttäjille:

$ chmod a+x / Koti / ymmärtäminen / test.sh

Luo tai muokkaa nyt tiedosto '/etc/tmp/logrotate.conf' seuraavilla asetuksilla. Asetusten mukaan logrotate säilyttää viisi lokimerkintää, jos lokitiedoston koko ylittää 1K ja 'test.sh'-tiedosto suoritetaan ennen kiertoa.

/ oli / Hirsi / test.log {

hänen root adm

kiertää 5

koko 1 k

esikäännetty

/ Koti / ymmärtäminen / test.sh

loppukirjoitus

}

'Test.sh'-tiedoston tulos näytetään 'logrotate'-komennon suorittamisen jälkeen:

Johtopäätös

'logrotate'-komennon eri käyttötarkoitukset esitetään tässä opetusohjelmassa useilla esimerkeillä, jotka auttavat Linux-käyttäjää tuntemaan komennon käyttötarkoitukset ja hallitsemaan lokitiedostoja oikein.