Linux Know-How provides a collection of introductory texts on often needed Linux skills. |
![]() |
Home ![]() ![]() ![]() ![]() |
||
See also: Scheduled Programs | ||
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
||
How do I set up cron?Cron (a Linux process that performs background work, often at night) is set up by default on your RedHat system. So you don't have to do anything about it unless you would like to add some tasks to be performed on your system on a regular basis or change the time at which cron performs its duties.
Therefore, it may not be the best idea to always switch your Linux machine off for the night--in such a case cron will never have a chance to do its job. If you do like switching off your computer for the night, you may want to adjust cron so it performs its duties at some other time. To find out when cron wakes up to perform its duties, have a look at the file /etc/crontab, for example: cat /etc/crontab It may contain something like this: # run-parts 01 * * * * root run-parts /etc/cron.hourly 02 4 * * * root run-parts /etc/cron.daily 22 4 * * 0 root run-parts /etc/cron.weekly 42 4 1 * * root run-parts /etc/cron.monthly You can see that there are four categories of cron jobs: performed hourly, daily, weekly and monthly. You can modify those or add your own category. Here is how it works. The columns in the entries show: minute (0-59), hour (0-23), day of month (1-31), month of year (1-12), day of week (0-6--Sunday to Saturday). The "*" means "any valid value". Thus, in the example quoted, the hourly jobs are performed every time the computer clock shows "and one minute", which happens every hour, at one minute past the hour. The daily jobs are performed every time the clock shows 2 minutes past 4 o'clock, which happens once a day. The weekly jobs are performed at 22 minutes past four o'clock in the morning on Sundays. The monthly jobs are performed 42 minutes past four o'clock on the first day of every month. The directory with the script file that contain the command(s) to be executed is shown as the last entry on each line. If you wanted your jobs to be performed at noon instead of 4 in the morning, just change the 4s to 12s. Cron wakes up every minute and examines if the /etc/crontab has changed so there is no need to re-start anything after you make your changes. If you wanted to add a job to your cron, place a script which runs your job (or a link to your script) in the directory /etc/cron.hourly or cron.daily or /etc/cron.weekly, or /etc/cron.monthly . Here is an example of an entry in /etc/crontab which causes a job to be performed three times a week (Mon, Wed, Fri): 02 4 * * 1,3,5 root run-parts/etc/cron.weekly An example seen on usenet showing how to automatically email a log file (edited for space): Re: help in crontab From: Dean Thompson <Dean.Thompson@csse.monash.edu.au> Date: 2001-03-03 16:35 Newsgroups: comp.os.linux.admin,comp.os.linux.networking,comp.os.linux.security > How can I set the job mail abc@abc.com < /var/log > every day in the /etc/crontab -e file ? You could try the following entry and see if you meet with any success: 0 0 * * * (/bin/mail abc@abc.com < /var/log/messages) > /dev/null 2>&1
|
||
Home ![]() ![]() ![]() ![]() |