CRON
From DD-WRT Wiki
Revision as of 00:07, 30 May 2006 (edit) 68.8.18.103 (Talk) (→Extras) ← Previous diff |
Revision as of 00:08, 30 May 2006 (edit) (undo) 68.8.18.103 (Talk) (→File Locations) Next diff → |
||
Line 13: | Line 13: | ||
1. Either by putting your command in the /tmp/crontab file | 1. Either by putting your command in the /tmp/crontab file | ||
echo ' * * * * * root /bin/date > /tmp/test.txt' >> /tmp/crontab | echo ' * * * * * root /bin/date > /tmp/test.txt' >> /tmp/crontab | ||
- | + | ||
- | + | which will look like this: | |
- | + | ||
* * * * * root /bin/date > /tmp/test.txt | * * * * * root /bin/date > /tmp/test.txt | ||
2. Or by putting a file in the /tmp/cron.d/ folder (eg. ''/tmp/cron.d/dosomething'') that holds your command | 2. Or by putting a file in the /tmp/cron.d/ folder (eg. ''/tmp/cron.d/dosomething'') that holds your command | ||
echo '* * * * * root /bin/date > /tmp/test.txt' > /tmp/cron.d/date | echo '* * * * * root /bin/date > /tmp/test.txt' > /tmp/cron.d/date | ||
- | |||
- | which will look like this: | ||
- | |||
- | * * * * * root /bin/date > /tmp/test.txt | ||
+ | which will look like this: | ||
+ | |||
+ | * * * * * root /bin/date > /tmp/test.txt | ||
== Restarting Cron == | == Restarting Cron == |
Revision as of 00:08, 30 May 2006
The crontab command, found in Unix and Unix-like operating systems, is used to schedule commands to be executed periodically. Dreamhost crontab wiki has a good explanation of how crontab works. A more official explanaton can be found here.
Contents |
Pre-requisite
In order for cron to function properly, you must have the date and time set correctly. You can check this in the GUI by going to -> Status -> Router tab -> Current Time. You can also check the time in the command line by using the 'date' command.
You must also enable crontab in DD-WRT before you can use it. You can enable crontab in the GUI by going to -> Administration -> Management -> Cron, and set it to enable.
File Locations
Cron can be set in two locations on dd-wrt:
1. Either by putting your command in the /tmp/crontab file
echo ' * * * * * root /bin/date > /tmp/test.txt' >> /tmp/crontab
which will look like this:
* * * * * root /bin/date > /tmp/test.txt
2. Or by putting a file in the /tmp/cron.d/ folder (eg. /tmp/cron.d/dosomething) that holds your command
echo '* * * * * root /bin/date > /tmp/test.txt' > /tmp/cron.d/date
which will look like this:
* * * * * root /bin/date > /tmp/test.txt
Restarting Cron
After you modify/add the appropriate command you will need to restart cron in order for your changes to take effect. You can restart cron with the following command:
killall -9 cron; cron
Extras
You may wish to add this to your startup script, before any jobs are added. It will add clarity to your crontab file:
echo '# minute (0-59),' >> /tmp/crontab echo '# | hour (0-23),' >> /tmp/crontab echo '# | | day of the month (1-31),' >> /tmp/crontab echo '# | | | month of the year (1-12),' >> /tmp/crontab echo '# | | | | day of the week (0-6 with 0=Sunday).' >> /tmp/crontab echo '# | | | | | commands' >> /tmp/crontab
If you add this to your startup script, you will see this in your crontab file:
# minute (0-59), # | hour (0-23), # | | day of the month (1-31), # | | | month of the year (1-12), # | | | | day of the week (0-6 with 0=Sunday). # | | | | | commands