Clean up /tmp

Spam, Technical Tidbits Add comments

Recently I noticed that there’s a lot of temporary files in the /tmp directory on my mail server … all the files have spamassassin in the file name. I figured that in some cases, SpamAssassin (or programs it calls) isn’t cleaning up properly.

I whipped up this script that will clean up any spamassassin files & directories that are older than a set number of minutes (60 in my case)…

#!/bin/sh

AGE=60

if [ "$1" == "--test" ]
then
        CMD="-exec echo"
        echo "$0: test mode"
else
        CMD="-exec"
fi

/usr/bin/find /tmp \
        -mmin +$AGE \
        -name spamassassin.ocr* \
        $CMD /bin/rm -f '{}' \;

/usr/bin/find /tmp \
        -maxdepth 1 \
        -mmin +$AGE \
        -type d \
        -name .spamassassin\* \
        $CMD /bin/rm -rf '{}' \;

If you run the script with a parameter of ‘–test’, it will just show the commands it would have executed.

I put the script in /etc/cron.hourly directory so it gets executed every hour.

Technorati Tags: Linux, scripts, Spam, spamassassin

2 Responses to “Clean up /tmp”

  1. Jon Angliss Says:


    tmpreaper does something very similar to this. We recommend it as part of the SquirrelMail package to clean up abandoned attachments.

    Nice script :)

  2. david Says:


    Looks like tmpreaper is an analog to tmpwatch … neither of which seems to be able to manage generic file specs.

    As for the script being “nice” … I guess that’s true if you like simplicity. :)

Leave a Reply

Readers who viewed this page, also viewed:

  • N/A
WP Theme & Icons by N.Design Studio
Entries RSS Comments RSS Log in
Close
E-mail It