cron Daemon IV: Scheduling Processes
Scheduling Processes
Using cron to Manage Scheduled User Jobs
Users on your system can create their own schedules using a crontab file that is associated with
their user account.
Unlike system crontab files, which are saved in /etc, user crontab files are
stored in
/var/spool/cron/tabs
If a user has created a crontab file, it will be saved under his or her username in this directory.
Before proceeding, I should point out that not all Linux system administrators want to allow
their users to do this. If allowing users to make their own crontab files and run programs on a
schedule makes you nervous, you can lock the system to prevent them from doing so. To do this,
you use an approach similar to that used when working with the at daemon.
The cron daemon will read the
/etc/cron.allow
and
/etc/cron.deny
files when it starts up to determine who can and who can’t create crontab schedules.
By default, only the
/etc/cron.deny
file is created automatically, and it contains only one restriction by default for the guest user
account.
All other users are allowed to create crontab files to schedule jobs.
If you create an
/etc/cron.allow
file, then only the users in that file will be allowed to create crontab files; all others will
be denied.
With that out of the way, let’s discuss how users can create their own crontab files. To do this,
they can use the
crontab –e
command. After this command has been entered, the vi editor is opened with a new, blank crontab file loaded.
In this file, the user simply adds lines for each job they want to run using the syntax we
reviewed previously. For example, in Figure 13-13, the tar command is run at 5:10 p.m. every day
to back up the user’s home directory to a file named ~/homebak.tar.
The file is edited using standard vi commands and keystrokes, which you learned earlier in
this book. (I told you knowing how to use vi would come in handy!) When you’re done, exit vi
and save the file. After doing so, a new crontab file for the user is created in
/var/spool/cron/tabs
as shown in the next example.
In addition, the cron service is reloaded so the new configuration can be applied.
openSUSE:/ # ls /var/spool/cron/tabs/
rtracy
openSUSE:/ # cat /var/spool/cron/tabs/rtracy
# DO NOT EDIT THIS FILE - edit the master and reinstall.
# (/tmp/crontab.wwzr9t installed on Tue Dec 2 22:31:44 2014)
# (Cronie version 4.2)
10 17 * * * /bin/tar -cvf ~/homebak.tar ~
In this example, I used the cat command to view the tux user’s crontab file. However, you can
also use the
crontab –l
command to display your user’s crontab file.
In addition, you can use the
crontab –r
command to remove your user’s crontab file
LX0-104 Exam Objectives (L)
Showing posts with label crontab. Show all posts
Showing posts with label crontab. Show all posts
Friday, December 9, 2016
cron Daemon II: Scheduling Processes
cron Daemon II: Scheduling Processes
Scheduling Processes
How cron Works
The cron daemon is a service that runs continuously in the background on your system and
checks a special file called a
crontab
file once every minute to see if there’s a scheduled job it should run. If your distribution uses init,
then the cron daemon is managed using the cron init script in your init directory.
If your distribution uses systemd, you use the
systemctl
command to manage the cron daemon.
By default, the cron daemon is configured to run automatically every time the system boots
on most Linux distributions. If not, you’ll need to start it manually using the cron init script in
your system’s init directory.
You can configure cron to run system jobs or user-specific jobs
LX0-104 Exam Objectives (L)
Scheduling Processes
How cron Works
The cron daemon is a service that runs continuously in the background on your system and
checks a special file called a
crontab
file once every minute to see if there’s a scheduled job it should run. If your distribution uses init,
then the cron daemon is managed using the cron init script in your init directory.
If your distribution uses systemd, you use the
systemctl
command to manage the cron daemon.
By default, the cron daemon is configured to run automatically every time the system boots
on most Linux distributions. If not, you’ll need to start it manually using the cron init script in
your system’s init directory.
You can configure cron to run system jobs or user-specific jobs
LX0-104 Exam Objectives (L)
Subscribe to:
Posts (Atom)