For several weeks now (since a logrotate version upgrade) I’ve been experiencing postrotate scripts that weren’t working. Putting it down to a temporary glitch I just ignored it but today I finally decided to work out what was up.
It seems the new version of logrotate creates a temporary file in /tmp containing the postrotate script, it then executes this script passing the logfile names as parameters.
This would be great except that /tmp is mounted noexec so execution of the script failed. Bye bye webstats and all the nice tidy logs. Time to go sort out the webstats now and remount /tmp without the noexec option. It’s a bit of a security issue, but I’m hoping it’ll be ok.