Linux Logrotate piemēri

Linux Logrotate Piemeri



Žurnāla informācija ir ļoti svarīga jebkuras operētājsistēmas sastāvdaļa, lai diagnosticētu jebkuras darbojošās lietojumprogrammas problēmu, un žurnāla ieraksti palīdz noskaidrot problēmas risinājumu. Lielākā daļa operētājsistēmas Linux lietojumprogrammu ģenerē žurnālu, un sistēmas administrators iegūst nepieciešamo informāciju par lietojumprogrammu no žurnāla ierakstiem. Tomēr žurnāla ieraksti dažkārt rada problēmas, jo ierakstu lielums ar laiku kļūst lielāks. Tātad, lai pārvaldītu, ir nepieciešami žurnāla ieraksti.

Logrotate ir Linux komandrindas rīks, lai pārvaldītu žurnāla ierakstus. Šis rīks palīdz veikt dažāda veida uzdevumus ar administratora veiktajiem žurnāla ierakstiem, piemēram, ierobežot pagrieztos žurnālfailus, saspiest pagrieztos žurnālfailus, dzēst nevajadzīgos žurnālfailus, izpildīt konkrēto čaulas skriptu, pamatojoties uz žurnāla failiem, utt. Šajā apmācībā, izmantojot vairākus piemērus, ir parādīta komanda “logorate”, kas paredzēta žurnālfailu pārvaldībai dažādos veidos.

Pārbaudiet instalēto Logrotate versiju

Komanda “logrotate” pēc noklusējuma ir instalēta jaunajā Ubuntu operētājsistēmas versijā. Palaidiet šo komandu, lai pārbaudītu instalēto komandas “logrotate” versiju:







$ logrotēt -- versija



Dažādu lietojumprogrammu žurnāla ieraksti pēc noklusējuma tiek saglabāti mapē “/var/log”. Ja pārbaudīsit mapes saturu, tiks parādīts šāds līdzīgs saturs.



$ ls / bija / žurnāls





Iestatiet “Logrotate” konfigurāciju

Iestatīšanas vērtība Mērķis
katru dienu/nedēļu/mēnesi/gadu Tas nosaka žurnālu pagriešanas laiku.
pagriezt numuru Tas nosaka failu skaitu, kas tiks saglabāti pirms veco žurnālfailu noņemšanas.
saspiest To izmanto žurnālfailu saspiešanai.
saspiestcmd To izmanto, lai iestatītu komandu “saspiest”. Gzip ir noklusējuma komanda.
atspiest cmd To izmanto, lai iestatītu komandu “atspiest”. Gunzip ir noklusējuma komanda.
kavēšanās komprese To izmanto, lai aizkavētu žurnālfailu saspiešanas procesu.
paziņojums tukšs To izmanto, lai negrieztu tukšo failu.
Man pietrūkst Ja tas ir iestatīts, trūkstošajiem žurnālfailiem kļūda netiek ģenerēta.
Izmērs To izmanto, lai iestatītu ierobežojumu, lai sāktu rotēt žurnālfailus.
datuma teksts To izmanto, lai pievienotu datuma vērtību kā rotācijas faila sufiksu.
kopēt saīsināt To izmanto, lai izveidotu oriģinālā faila kopiju.
iepriekš pagriezts To izmanto, lai palaistu skriptu pirms žurnālfailu pagriešanas.
pēc rotācijas To izmanto, lai palaistu skriptu pēc žurnālfailu pagriešanas.
izveidot To izmanto, lai izveidotu žurnālfailus ar root tiesībām.

Sintakse:

Komandas “logrotate” sintakse ir norādīta šādi:



logrotēt [ IESPĒJA ] config_file_path

Ar komandu “logrotate” dažādiem mērķiem var izmantot dažāda veida opcijas.

Logrotate opcijas

Tālāk ir minētas dažas noderīgas komandas “logrotate” opcijas:

-f, -spēks To izmanto, lai vajadzības gadījumā veiktu piespiedu rotāciju.
-d, -atkļūdošana To izmanto, lai rotācijas laikā iespējotu atkļūdošanas režīmu.
-m, –mail To izmanto, lai nosūtītu e-pastu rotācijas laikā.
-s, -state To izmanto alternatīvā stāvokļa failiem.
– lietošana To izmanto, lai izdrukātu lietošanas informāciju.
–?, – palīdzēt To izmanto palīdzības ziņojumu drukāšanai.
-v, - runīgs To izmanto, lai drukātu detalizētā režīmā.

Logrotate konfigurācijas failu

Galvenais logrotate konfigurācijas fails atrodas “/etc/logrotate.conf” vietā. Palaidiet šo komandu, lai atvērtu failu nano redaktorā:

$ nano / utt / logrotate.conf

Komandas “logrotate” noklusējuma iestatījums ir parādīts failā “logrotate.conf”. Direktīvu “include” izmanto failā, lai izgūtu konfigurāciju, kas atrodas direktorijā “/etc/logrotate.d”.

1. piemērs. Izveidojiet vienkāršu Logrotate konfigurācijas failu

Izveidojiet žurnālfaila paraugu ar nosaukumu “/var/log/test.log” ar parauga žurnāla datiem. Palaidiet šo komandu, lai atvērtu nano redaktoru un izveidotu jaunu “logrotate.conf” failu mapes “/etc/tmp” atrašanās vietā. Izveidojiet mapi “/tmp” ar root tiesībām, ja tā iepriekš nav izveidota.

$ nano / utt / tmp / logrotate.conf

Pievienojiet šādu saturu failam “/var/log/test.log” failam. Saskaņā ar iestatījumu, fails “test.log” tiks pagriezts katru dienu, ja faila lielums pārsniedz 5 K:

/ bija / žurnāls / test.log {

katru dienu

Izmērs 5K

viņa saknes adm

}

Palaidiet šo komandu, lai pārbaudītu žurnālfaila lielumu:

$ ls -l / bija / žurnāls / test.log

Pēc konfigurācijas faila izveides palaidiet komandu “logrotate”.

$ sudo logrotēt / utt / tmp / logrotate.conf

Vēlreiz palaidiet šo komandu, lai pārbaudītu žurnālfaila lielumu pēc komandas “logrotate” izpildes:

$ ls -l / bija / žurnāls / test.log

Faila “test.log” izmērs ir 1 K+. Tādējādi, pamatojoties uz konfigurācijas iestatījumu, rotācija netiek veikta.

Mainiet lieluma vērtību uz 1K failā “/etc/tmp/logrotate.conf” un vēlreiz palaidiet komandu “ls”, lai pārbaudītu faila “/var/log/test.log” faila lielumu. Saskaņā ar izvadi žurnālfails tiek pagriezts un dzēsts, jo ir pārsniegts izmēra ierobežojums.

2. piemērs: Logrotate Copytruncate izmantošana

Izveidojiet vai modificējiet failu “/etc/tmp/logrotate.conf” ar šādiem iestatījumiem, lai parādītu copytruncate izmantošanu. Saskaņā ar jaunajiem iestatījumiem logrotate izveido oriģinālā faila kopiju, mainot sākotnējā faila lielumu uz nulli.

/ bija / žurnāls / test.log {

pagriezt 5

Izmērs 1 k

kopēt saīsināt

viņa saknes adm

}

Palaidiet šo komandu, lai pārbaudītu faila “test.log” lielumu:

$ ls -l / bija / žurnāls / test.log

Pēc konfigurācijas faila izveides palaidiet komandu “logrotate”.

$ sudo logrotēt / utt / tmp / logrotate.conf

Vēlreiz palaidiet šo komandu, lai pārbaudītu faila “test.log” lielumu pēc komandas “logrotate” izpildes:

$ ls -l / bija / žurnāls / test.log

Sākotnējais faila lielums kļūst 0 pēc komandas “logrotate” izpildes iestatījumam copytruncate.

3. piemērs: Logrotate Compress izmantošana

Izveidojiet vai modificējiet failu “/etc/tmp/logrotate.conf” ar šādiem iestatījumiem, lai parādītu kompresijas izmantošanu. Saskaņā ar jaunajiem iestatījumiem logrotate izveido sākotnējā faila saspiešanas failu.

/ bija / žurnāls / test.log {

pagriezt 5

Izmērs 1 k

saspiest

izveidot 770 saknes adm

}

Palaidiet šo komandu, lai pārbaudītu “/var/log” failu un mapju sarakstu:

$ ls / bija / žurnāls /

Pēc konfigurācijas faila izveides palaidiet komandu “logrotate”.

$ sudo logrotēt / utt / tmp / logrotate.conf

Vēlreiz palaidiet šo komandu, lai pārbaudītu “/var/log” failu un mapju sarakstu:

$ ls / bija / žurnāls /

Faila “test.log” saspiestais fails tiek izveidots ar nosaukumu “test.log.1.gz” un sākotnējais fails tiek noņemts.

4. piemērs: Logrotate Dateext izmantošana

Izveidojiet vai modificējiet failu “/etc/tmp/logrotate.conf” ar šādiem iestatījumiem, lai parādītu dateext izmantošanu. Saskaņā ar jaunajiem iestatījumiem logrotate izveido sākotnējā faila saspiešanas failu ar datuma vērtību.

bija / žurnāls / test.log {

viņa saknes adm

pagriezt 5

Izmērs 1 k

saspiest

izveidot 770 saknes adm

datuma teksts

}

Pēc konfigurācijas faila izveides palaidiet komandu “logrotate”.

$ sudo logrotēt / utt / tmp / logrotate.conf

Palaidiet šo komandu, lai pārbaudītu “/var/log” failu un mapju sarakstu:

$ ls -l / bija / žurnāls /

Faila “test.log” saspiestais fails tiek izveidots ar nosaukumu “test.log.20240129.gz” un sākotnējais fails tiek noņemts.

5. piemērs: Logrotate Maxage izmantošana

Izveidojiet vai modificējiet failu “/etc/tmp/logrotate.conf” ar šādiem iestatījumiem, lai parādītu maxage izmantošanu. Atbilstoši iestatījumiem logrotate saglabā piecus žurnāla ierakstus, ja žurnāla faila lielums pēc vienas dienas pārsniedz 1K.

/ bija / žurnāls / test.log {

viņa saknes adm

pagriezt 5

Izmērs 1 k

saspiest

maxage 1

}

Palaidiet šo komandu “logrotate”, lai saglabātu izvadi citā žurnāla failā ar nosaukumu “out.log”:

$ sudo logrotēt -s = / bija / žurnāls / out.log / utt / tmp / logrotate.conf

Saskaņā ar šādu izvadi fails “out.log” tiek izveidots pēc komandas “logrotate” izpildes:

6. piemērs: Logrotate Missingok izmantošana

Izveidojiet vai modificējiet failu “/etc/tmp/logrotate.conf” ar šādiem iestatījumiem. Šeit žurnālfails “testfile.log” neeksistē mapē “/var/log”.

/ bija / žurnāls / testfile.log {

viņa saknes adm

pagriezt 5

Izmērs 1 k

saspiest

}

Pēc komandas “logrotate” izpildes tiek izdrukāts kļūdas ziņojums.

Logrotate konfigurācijas failā pievienojiet iestatījumu “missingok” un vēlreiz palaidiet komandu “logrotate”. Trūkstošajam žurnālfailam netiek izdrukāta kļūda.

7. piemērs: Logrotate Prerotate izmantošana

Izveidojiet Bash failu ar nosaukumu “test.sh” ar šādu skriptu, kas izdrukā vienkāršu ziņojumu. Fails tiek izmantots šajā logrotate piemērā, lai parādītu priekšrotācijas izmantošanu logrotate konfigurācijas failā.

test.sh



#!/bin/bash

atbalss 'logrotate piemērus...'

Pēc faila izveides palaidiet šo komandu, lai iestatītu šī faila izpildes atļauju visiem lietotājiem:

$ chmod a+x / mājas / saprašana / test.sh

Tagad izveidojiet vai modificējiet failu “/etc/tmp/logrotate.conf” ar šādiem iestatījumiem. Atbilstoši iestatījumiem logrotate saglabā piecus žurnāla ierakstus, ja žurnāla faila lielums pārsniedz 1K un pirms rotācijas tiek izpildīts fails “test.sh”.

/ bija / žurnāls / test.log {

viņa saknes adm

pagriezt 5

Izmērs 1 k

iepriekš pagriezts

/ mājas / saprašana / test.sh

beigu raksts

}

Faila “test.sh” izvade tiek parādīta pēc komandas “logrotate” izpildes:

Secinājums

Šajā apmācībā ir parādīti dažādi komandas “logrotate” lietojumi, izmantojot vairākus piemērus, kas palīdzēs Linux lietotājam uzzināt komandas lietojumu un pareizi pārvaldīt žurnālfailus.