[linux] Re: Hoe logrotate probleem onderzoeken?
Paul Slootman
paul+nospam op wurtel.net
Zo mei 8 14:07:43 CEST 2005
On Sun 08 May 2005, Bram Mertens wrote:
> Vanmorgen las ik volgende melding op m'n debian testing desktop:
> -------- Forwarded Message --------
> From: Cron Daemon <root op localhost.localdomain>
> To: root op localhost.localdomain
> Subject: Cron <root op imladris> test -x /usr/sbin/anacron || run-parts
> --report /etc/cron.daily
> Date: Sun, 08 May 2005 06:40:50 +0200
> /etc/cron.daily/logrotate:
> error: error running postrotate script
> run-parts: /etc/cron.daily/logrotate exited with return code 1
>
> Er is dus blijkbaar iets mis gegaan maar hoe kan ik uitzoeken wat?
Tja, een van de postrotate scripts ging mis.
> Als ik grep op exit in de scripts in /etc/logrotate.d/ (die door
> logrotate opgestart worden) zie ik maar een script dat een exit code 1
> geeft:
> imladris:~# grep exit /etc/logrotate.d/*
> /etc/logrotate.d/mysql-server: test -x /usr/bin/mysqladmin || exit 0
> /etc/logrotate.d/mysql-server: exit 1
Een shell script waarbij het laatste commando een niet-nul exit status
heeft, zorgt ervoor dat ook de script zelf met een niet-nul exit status
stopt. Controleer ook op "set -e", of "#!/bin/sh -e". Dat betekent dat
zodra een commando in de script een fout geeft, de script onmiddelijk
stopt (en ook weer niet-nul exit status geeft). Da's handig voor b.v.
zoiets:
cd /tmp/ergens
rm -r *
Het is vervelend als de cd mislukt maar de rm -r wel uitgevoerd wordt :)
> Maar ik weet niet goed of dit belangrijk is, komt die code 1 van dit
> script of van /etc/cron.daily/logrotate zelf?
Vermoedlijk beide, maar da's niet interessant. Je krijgt deze mail omdat
die cron.daily script output veroorzaakt heeft.
> Kan iemand me laten weten hoe ik de oorzaak van dit probleem kan
> achterhalen?
'n Keertje in alle logrotate script een echo zetten zodat je weet welke
bezig is als de melding verschijnt?
Paul Slootman
More information about the Linux
mailing list