How to automate just about anything using cron jobs
Cron is so simple yet so useful I think it’s often unappreciated! Being able to toss a command into a cron, or execute a script at specific times of the day, days of the week, etc. That’s good stuff!
You could call a script that checks your mail once an hour, cleans out a temporary directory, or archives a special directory where you dump files to get saved without ever having to visit the server manually and tar/gzip the files yourself.
My latest use for cron is a nightly build script for building code checked out of subversion. I’m doing this on my system for personal use, but also at work along with a python script i’m writing that also runs from a cron a few hours later. It parses the build log looking for errors. If it sees errors, it sends them out in email. Python is wonderful… /off topic.
# +———— minute (0 - 59)
# | +———- hour (0 - 23)
# | | +——– day of month (1 - 31)
# | | | +—— month (1 - 12)
# | | | | +—- day of week (0 - 6) (Sunday=0 or 7)
# | | | | |
* * * * * command to be executed
If you want to run a script called check-for-rootkits.sh every 10 minutes, its as easy as:
*/10 * * * * /root/check-for-rootkits.sh
You could also get fancy and use “run as” to run crons as specific users. Users can do this on their own (”crontab -e”), but you could force things to happen for them with your root crons if you wanted. Fedora makes use of this for running hourly and nightly cron directories. If you want anything to run along with the standard Fedora cron jobs, you just drop your script into those directories and they fire off alongside the defaults.
























Recent Comments