Cron—daemon to execute scheduled commands, Cron—daemon to execute scheduled commands -11 – Moxa Technologies UC-7420/7410 User Manual
Page 51
UC-7420/7410 User’s Manual
Managing Embedded Linux
3-11
Save the shell script using any file name. E.g., fixtime
How to run the shell script automatically when the kernel boots up
Copy the example shell script fixtime to directory /etc/init.d, and then use
chmod 755 fixtime to change the shell script mode. Next, use vi editor to edit the file
/etc/inittab. Add the following line to the bottom of the file:
ntp : 2345 : respawn : /etc/init.d/fixtime
Use the command #init q to re-init the kernel.
Cron—daemon to Execute Scheduled Commands
This function is only available for firmware version V1.5 (and later versions). Start Cron from the
directory /etc/rc.d/rc.local. It will return immediately, so you don’t need to start it with ‘&’
to run the background.
The Cron daemon will search /etc/cron.d/crontab for crontab files, which are named after
accounts in /etc/passwd.
Cron wakes up every minute, and checks each command to see if it should be run in the current
minute. When executing commands, output is mailed to the owner of the crontab (or to the user
named in the MAILTO environment variable in the crontab, if such a user exists).
Modify the file /etc/cron.d/crontab to set up your scheduled applications. Crontab files have
the following format:
mm h dom
mon dow
user command
month hour date month week
user command
0-59 0-23 1-31 1-12 0-6
(0
is
Sunday)
The following example demonstrates how to use Cron.
How to use cron to update the system time and RTC time every day at 8:00.
STEP1: Write a shell script named fixtime.sh and save it to /home/.
#!/bin/sh
ntpdate time.nist.gov
hwclock –systohc
exit 0
STEP2: Change mode of fixtime.sh
#chmod 755 fixtime.sh
STEP3: Modify /etc/cron.d/crontab file to run fixtime.sh at 8:00 every day.
Add the following line to the end of crontab:
* 8 * * * root /home/fixtime.sh
STEP4: Enable the cron daemon manually.
#/etc/init.d/cron start
STEP5: Enable cron when the system boots up.
Add the following line in the file /etc/init.d/rc.local
#/etc/init.d/cron start