Specifičnosti u izdanju Wheezy 2: gdje je nestao syslog?
Na syslog smo navikli u tolikoj mjeri da ne razmišljamo o mogućnosti da ga uopće nema. A upravo to nam se može dogoditi nakon nadogradnje na wheezy.
NAPOMENA: od inačice 7.0.9, paket carnet-upgrade donosi rješenje problema za rsyslog. Ipak, nakon nadogradnje provjerite rade li vam logovi kako treba.
Da bi se ovo dogodilo morate od prije imati instaliran paket sysklogd. Problem s ovim paketom je što je godinama neodržavan, te je izbačen iz Debiana. Ovo izbacivanje se konačno dogodilo tek u izdanju wheezy, iako je paket u upstreamu napušten već dulje vrijeme.
Kako mnogi "vuku" svoje instalacije Debiana od izdanja Sarge ili čak ranije, tako se ovaj paket provukao sve do danas. Rješenje je jednostavno: instalacija nekog drugog paketa koji donosi servis syslog.
Paketa koji donose podršku za sustav syslog ima dosta, a dva najpopularnija su rsyslog i inetutils-syslogd. Zasada je svejedno koji paket odaberete, mi smo odabrati inetutils-syslogd, no možete odabrati i rsyslog, konfiguracijske datoteke su iste.
Još jedna specifičnost paketa sysklogd je što program sam vrši rotaciju logova i ne oslanja se na logrotate. No, nas to više i ne zanima, jer zamjenski paketi se u potpunosti oslanjaju na logrotate i donose odgovarajuću konfiguraciju sa sobom.
Na vama je jedino da podesite postavke koje želite: koliko dana će se čuvati komprimirane datoteke, hoće li se logovi odmah komprimirati i slično.
Dakle, ne treba oklijevati, nego odmah instalirati (najbolje prije nadogradnje na wheezy) jedan od zamjenskih paketa, na uobičajen način:
# apt-get install inetutils-syslogd
ili
# apt-get install rsyslog
Zanimljiv artefakt zamjene syslog daemona može biti da se logovi ne rotiraju. Događa se situacija da se logovi zapravo ne rotiraju, nego se svaki dan generira nova datoteka preko stare, primjerice /var/log/syslog.
Da biste to spriječili, stare logove prebacite na neko drugo mjesto (možete i obrisati, ali logove je najbolje čuvati dulje vrijeme), a u /var/log ostavite samo aktivne datoteke.
Koje datoteke kreira rsyslog, odnsno inetutils-syslogd? To su:
/var/log/auth.log
/var/log/daemon.log
/var/log/debug
/var/log/kern.log
/var/log/lpr.log
/var/log/mail.*
/var/log/messages
/var/log/ppp.log
/var/log/user.log
/var/log/uucp.log
/var/log/syslog
Znamo da volite skripte, pa evo jedne koja će prebaciti stare logove na neko drugo mjesto, a nakon toga možete instalirati zamjenski syslog.
#!/bin/sh
DAT="auth.log.* daemon.log.* debug.* kern.log.* lpr.log.* mail.err.* mail.warn.* mail.info.* \
mail.log.* messages.* ppp.log.* user.log.* uucp.log.* syslog.*"
BACKUP="/var/backups/logovi"
test -d $BACKUP || mkdir -p $BACKUP
cd /var/log
for file in $DAT
do
mv "$file" "$BACKUP"
done
echo "Done."
- Inačica za ispis
- Logirajte se za dodavanje komentara
- PDF version
Komentari
rsyslog nije instaliran uz carnet-upgrade
Nakon nadogradnje na CARNet Debian 7 putem skripte carnet-upgrade v. 7.0.9 ustanovio sam da rsyslog nije instaliran:
Stoga sam rsyslog dodao ručno.
-- rpr.
rsyslog
Problem je uocen (zato clanak i postoji, za one koji su preuzeli neku ranu verziju paketa carnet-upgrade), ali i popravljen u inacici 7.0.9. Vama je upgrade pukao iz drugih razloga, pa je vjerojatno tu negdje razlog zasto rsyslog nije dodan. Inace, to je i jedini razlog zasto je izdan 7.0.9
apt-cache depends carnet-upgrade
U članku se kaže: "od inačice 7.0.9, paket carnet-upgrade ovisi o paketu rsyslog, pa ne morate brinuti o ovom problemu".
Ako dobro shvaćam značenje riječi "ovisi", onda bi se u sljedećem ispisu trebao vidjeti rsyslog: