Údržba logov – konfigurácia logrotate

linux_server.jpg V pred­chád­za­jú­cej čas­ti sme sa ve­no­va­li ro­tá­cii lo­gov. Vy­svet­li­li sme prin­cíp uk­la­da­nia lo­gov, spô­sob, ako sa ro­tu­jú, a uvied­li sme nie­čo o tom, čo a ako tre­ba nas­ta­viť, aby sa ro­to­va­nie lo­gov vy­ko­ná­va­lo auto­ma­tic­ky bez náš­ho zá­sa­hu, te­da po­mo­cou služ­by cron. Ob­jas­ni­li sme aj to, že cron sí­ce za­bez­pe­čí spus­te­nie skrip­tu log­ro­ta­te, ale ten sa ria­di vlas­tný­mi nas­ta­ve­nia­mi, kto­ré má de­fi­no­va­né vo svo­jom kon­fi­gu­rač­nom sú­bo­re. A tý­mi­to nas­ta­ve­nia­mi sa bu­de­me te­raz za­obe­rať.

Kon­fi­gu­rá­cia prog­ra­mu log­ro­ta­te

Ako sme už spo­me­nu­li, prog­ram na ro­tá­ciu lo­gov sa na­zý­va log­ro­ta­te. Je­ho kon­fi­gu­rá­cia po­zos­tá­va, tak ako je to v po­sled­nom ča­se v Li­nuxe bež­né, z dvoch čas­tí:

- kon­fi­gu­rač­né­ho sú­bo­ru log­ro­ta­te.conf, ulo­že­né­ho v ad­re­sá­ri /etc,
- čias­tko­vých kon­fi­gu­rač­ných sú­bo­rov s náz­vom služ­by, kto­rej lo­gy tre­ba ro­to­vať, ulo­že­ných v po­dad­re­sá­ri /etc/log­ro­ta­te.d.

Kon­fi­gu­rač­ný sú­bor log­ro­ta­te.conf ob­sa­hu­je všeo­bec­né - glo­bál­ne - nas­ta­ve­nia ro­tá­cie, kto­ré pla­tia aj pre všet­ky sú­bo­ry v po­dad­re­sá­ri /etc/log­ro­ta­te.d. Čias­tko­vé kon­fi­gu­rač­né sú­bo­ry v tom­to po­dad­re­sá­ri vy­tvá­ra­jú in­šta­lač­né ba­líč­ky jed­not­li­vých slu­žieb. Vý­hod­né je, že tie­to skrip­ty neov­plyv­nia čin­nosť os­tat­ných, ako aj to, že si ich mô­že­te up­ra­viť ale­bo aj pri­dať po­dľa po­tre­by. Nas­ta­ve­nia v tom­to po­dad­re­sá­ri mô­žu „pres­ta­viť" glo­bál­ne nas­ta­ve­nia hlav­né­ho kon­fi­gu­rač­né­ho sú­bo­ru.

Prog­ram log­ro­ta­te umož­ňu­je ro­to­vať lo­go­va­cie sú­bo­ry v den­ných, týž­den­ných ale­bo me­sač­ných inter­va­loch, prí­pad­ne ak prek­ro­či­li ur­či­tú veľ­kosť, a umož­ňu­je ur­čiť, čo sa pred ro­tá­ciou a po nej uro­bí (mô­že sa spus­tiť skript ale­bo prí­kaz), aké prís­tu­po­vé prá­va bu­dú mať ro­to­va­né sú­bo­ry, koľ­ko sa ich bu­de uc­ho­vá­vať, či bu­dú kom­pri­mo­va­né a pod.

Mu­sí­me si uve­do­miť, že v prog­ra­me log­ro­ta­te sa ne­de­fi­nu­je čas, v kto­rom sa lo­gy ro­tu­jú. Tu sa len de­fi­nu­je inter­val med­zi ro­tá­cia­mi. Pra­vi­del­ným spúš­ťa­ním prog­ra­mu log­ro­ta­te z dé­mo­na crond si prog­ram ulo­ží ča­sy po­sled­ných ro­tá­cií jed­not­li­vých lo­gov.

Po­znám­ka: V niek­to­rých dis­tri­bú­ciách, ako je De­bian, sa log­ro­ta­te po­uží­va len na ro­to­va­nie lo­gov, kto­ré neob­slu­hu­je dé­mon sys­logd. Inter­né lo­gy "sys­logd" (zis­ťu­jú sa z kon­fi­gu­rač­né­ho sú­bo­ru /etc/sys­log.conf) mô­žu za­bez­pe­čo­vať iné prog­ra­my.

Pa­ra­met­re kon­fi­gu­rač­né­ho sú­bo­ru log­ro­ta­te.conf

Kon­fi­gu­rač­ný sú­bor log­ro­ta­te.conf ob­sa­hu­je mno­ho pa­ra­met­rov. My uve­die­me zá­klad­né kon­fi­gu­rač­né pa­ra­met­re:

- com­press - od­ro­to­va­né lo­go­va­cie sú­bo­ry bu­dú skom­pri­mo­va­né kom­pri­mač­ným prog­ra­mom
- com­presscmd - ur­ču­je, kto­rý prog­ram bu­de po­uži­tý na kom­pre­siu (naj­čas­tej­šie prog­ram gzip)
- com­pres­sop­tions - pa­ra­met­re od­ov­zdá­va­né kom­pres­né­mu prog­ra­mu (štan­dar­dne "-9", čo zna­čí maximál­na kom­pre­sia
- crea­te prá­va vlas­tník sku­pi­na - ur­ču­je prís­tu­po­vé prá­va, vlas­tní­ka a sku­pi­nu sú­bo­ru, kto­rý sa vy­tvo­rí na­mies­to od­ro­to­va­né­ho lo­gu (prázd­ny log). Tým­to spô­so­bom mô­že­me za­bez­pe­čiť po­treb­né prís­tu­po­vé prá­va k lo­go­va­cím sú­bo­rom, napr. aby bo­li či­ta­teľ­né len pre roo­ta a ne­ja­kú sku­pi­nu
- dai­ly - lo­gy sa bu­dú ro­to­vať den­ne
- da­teext - zna­čí, že sa pri ro­tá­cii pri­po­jí k náz­vu lo­go­va­cie­ho ar­chí­vu dá­tum ar­chi­vá­cie, te­da napr. maillog-20100905
- de­lay­com­press - kom­pre­sia lo­gu sa us­ku­toč­ní až pri ďal­šej ro­tá­cii (po­uží­va sa pre prog­ra­my, kto­ré ne­ve­dia za­tvo­riť a opä­tov­ne ot­vo­riť svo­je lo­go­va­cie sú­bo­ry); ten­to pa­ra­me­ter spô­so­bí, že pr­vý od­ro­to­va­ný log (s prí­po­nou ".0") ne­bu­de kom­pri­mo­va­ný
- ifemp­ty - spô­so­bí ro­to­va­nie lo­gov aj v prí­pa­de, že sú práz­dne
- in­clu­de sú­bor|ad­re­sár - pri ro­to­va­ní sa za­hr­nie sú­bor ale­bo sú­bo­ry z uve­de­né­ho ad­re­sá­ra; za­hr­núť mož­no iba sku­toč­né sú­bo­ry (nie ďal­šie ad­re­sá­re a pod.), kto­rých prí­po­ny nie sú uve­de­né v di­rek­tí­ve "ta­booext"
- mail ad­re­sa - po­šle na ad­re­su "ad­re­sa" naj­star­ší od­ro­to­va­ný sú­bor, kto­rý sa po­tom vy­ma­že
- mis­sin­gok - ak log neexis­tu­je, prog­ram po­kra­ču­je v spra­co­va­ní ďal­ších lo­gov bez chy­bo­vé­ho hlá­se­nia
- month­ly - ro­to­va­nie lo­gov bu­de pre­bie­hať me­sač­ne
- no­com­press - opak com­press, od­ro­to­va­né lo­go­va­cie sú­bo­ry ne­bu­dú kom­pri­mo­va­né
- noc­rea­te - opak crea­te, po od­ro­to­va­ní lo­gu sa ne­vyt­vo­rí no­vý prázd­ny lo­go­va­cí sú­bor
- no­de­lay­com­press - opak de­lay­com­press, us­ku­toč­ní sa aj kom­pre­sia prá­ve od­ro­to­va­né­ho sú­bo­ru
- no­mail - opak mail, sta­rý lo­go­va­cí sú­bor sa ne­za­sie­la mai­lom
- no­mis­sin­gok - opak mis­sin­gok, ak neexis­tu­je lo­go­va­cí sú­bor, zob­ra­zí sa chy­ba (štan­dar­dne)
- ol­ddir ad­re­sár - od­ro­to­va­né lo­go­va­cie sú­bo­ry bu­dú pre­mies­tne­né do ad­re­sá­ra "ad­re­sár"
- ro­ta­te X - vy­tvá­ra sa X ar­chív­nych lo­go­va­cích sú­bo­rov, star­šie sa auto­ma­tic­ky vy­ma­zá­va­jú
- si­ze X - lo­gy sa ro­tu­jú po pre­siah­nu­tí veľ­kos­ti sú­bo­ru X. Mô­že­me po­užiť skrat­ky: XM (X me­ga­baj­tov), Xk (X ki­lo­baj­tov)
- ta­booext [+] zoz­nam - zoz­nam prí­pon sú­bo­rov, kto­ré ma­jú pri ro­to­va­ní ig­no­ro­vať; ak je pred zoz­na­mom znak +, zoz­nam prí­pon sa dopl­ní, inak sa pre­pí­še. Štan­dar­dne ob­sa­hu­je zoz­nam prí­po­ny ako .rpmo­rig, .rpmsa­ve, .rpmnew (zá­lož­né ver­zie sú­bo­rov vy­tvá­ra­né pri in­šta­lá­cii ba­líč­kov RPM) .v (ver­zio­va­né sú­bo­ry, ak po­uží­va­te sys­té­my ako RCS, CVS), .swp (do­čas­ný sú­bor edi­to­ra vim), ~ (zá­lož­ný sú­bor edi­to­ra joe)
- week­ly - ro­tá­cia lo­gov sa vy­ko­ná­va raz týž­den­ne

Os­tat­né me­nej po­uží­va­né prí­ka­zy náj­de­me kla­sic­ky na ma­nuá­lo­vej strán­ke man log­ro­ta­te.

Prík­lad hlav­né­ho kon­fi­gu­rač­né­ho sú­bo­ru
Te­raz uve­die­me prík­lad sku­toč­né­ho nas­ta­ve­nia kon­fi­gu­rač­né­ho sú­bo­ru. Na vý­pi­se je prík­lad z dis­tri­bú­cie Fe­do­ra Co­re 8:

# see "man log­ro­ta­te" for de­tails
# ro­ta­te log fi­les week­ly
week­ly

# keep 4 weeks worth of bac­klogs
ro­ta­te 4

# crea­te new (emp­ty) log fi­les af­ter ro­ta­ting old ones
crea­te

# use da­te as a suf­fix of the ro­ta­ted fi­le
da­teext

# un­com­ment this if you want your log fi­les com­pres­sed
#com­press

# RPM pac­ka­ges drop log ro­ta­tion in­for­ma­tion in­to this di­rec­to­ry
in­clu­de /etc/log­ro­ta­te.d

# no pac­ka­ges own wtmp and btmp -- we'll ro­ta­te them he­re
/var/log/wtmp {
    month­ly
    crea­te 0664 root utmp
    ro­ta­te 1
}

/var/log/btmp {
    mis­sin­gok
    month­ly
    crea­te 0600 root utmp
    ro­ta­te 1
}

# sys­tem-spe­ci­fic logs may be al­so be con­fi­gu­red he­re.

Ako te­da po­cho­pí­me ten­to kon­fi­gu­rač­ný sú­bor? Veľ­mi jed­no­duc­ho:
Lo­gy sa bu­dú ro­to­vať týž­deň, po­nec­há­va­jú sa 4 ar­chív­ne kó­pie da­né­ho lo­gu, po ro­to­va­ní sa vy­tvo­rí no­vý a prázd­ny lo­go­va­cí sú­bor, pri ro­tá­cii sa pri­po­jí k náz­vu lo­go­va­cie­ho ar­chí­vu dá­tum ar­chi­vá­cie. Ar­chív­ne lo­gy sa ne­bu­dú kom­pri­mo­vať (le­bo pa­ra­me­ter com­press je za­poz­nám­ko­va­ný zna­kom #). Po­zor na lo­gy v ad­re­sá­ri /var/log/wtmp – tie sa bu­dú ro­to­vať me­sač­ne s prá­va­mi 664 pre roo­ta a sku­pi­nu utmp a bu­de iba je­den ar­chív­ny sú­bor. Po­dob­ne sú­bor /var/log/btmp, len­že ten bu­de mať prís­tu­po­vé prá­va 600 pre roo­ta a sku­pi­nu utmp a bu­de sa ro­to­vať aj vte­dy, ak pô­vod­ný log neexis­tu­je. Sa­moz­rej­me, prih­lia­dať sa bu­de aj na kon­fi­gu­rač­né sú­bo­ry ulo­že­né v ad­re­sá­ri /etc/log­ro­ta­te.d.
Na­bu­dú­ce bu­de­me po­kra­čo­vať.
Ďal­šie čas­ti >>

Zdroj: Infoware 12/2010



Ohodnoťte článok:
   
 

24 hodín

týždeň

mesiac

Najnovšie články

Li­nux prak­tic­ky ako server úvod
Linux ako server je pomerne zložitá technológia. Jej výhodou je určitá modularita, keď sa nemusí nastaviť celý server naraz, ale postupne. čítať »
 
Syn­chro­ni­zá­cia ča­su v Li­nuxe
V predchádzajúcich dvoch častiach sme si ukázali, že Linux a všeobecne open source softvér sa nenachádza iba v serveroch a počítačových sieťach, ale aj v iných zariadeniach bežnej domácej potreby a v oblasti hobby. čítať »
 
Za­ria­de­nia za­lo­že­né na Li­nuxe
V predchádzajúcej časti sme si spomenuli definície nie - ktorých pojmov z oblasti nášho záujmu, teda Linuxu. Vysvetlili sme si, čo je to Open Source, Public Domain, proprietárny softvér a GNU GPL. Tentoraz ukážeme, ako sa tieto pojmy využívajú v praxi. čítať »
 
Po­jmy z ob­las­ti
Tentoraz na chvíľu trochu odbočíme od bezpečnosti Linuxu a jeho siete. V tejto neštandardnej časti seriálu sa mu budeme venovať len okrajovo. čítať »
 
Bez­peč­nosť bez­drô­to­vých sie­tí II.
V predchádzajúcej časti sme sa začali zaoberať bezpečnosťou bezdrôtových sietí. Poukázali sme na rôzne faktory zneužitia siete, podstatu rizika a vysvetlili sme základné prvky bezpečnosti. čítať »
 
Bez­peč­nosť bez­drô­to­vých sie­tí I.
V predchádzajúcich častiach sme sa venovali bezpečnosti linuxového servera. Riešili sme firewall, bezpečnosť prístupu na internet, zaoberali sme sa demilitarizovanou zónou a podobne. čítať »
 
Údr­žba lo­gov – kon­fi­gu­rá­cia log­ro­ta­te
V predchádzajúcej časti sme sa venovali rotácii logov. Vysvetlili sme princíp ukladania logov, spôsob, ako sa rotujú, a uviedli sme niečo o tom, čo a ako treba nastaviť čítať »
 
Údr­žba lo­gov – ro­tá­cia
V predošlej časti sme sa zaoberali spôsobom logovania informácií na iný alebo vzdialený počítač a ukázali sme, ako riešiť problém s logovaním uzavretých procesov pomocou chroot. čítať »
 
 
 
  Zdieľaj cez Facebook Zdieľaj cez Google+ Zdieľaj cez Twitter Zdieľaj cez LinkedIn Správy z RSS Správy na smartfóne Správy cez newsletter