#pragma section-numbers off This page describes the basic use of cron on HCoop systems. [[TableOfContents]] = Prerequisites = It is very important that you read the [:MemberManual/RunningUnattendedCommands:Running Unattended Commands page] to understand the general idea of how to run unattended commands on Mire. = Requesting cron permissions = Use [https://members2.hcoop.net/portal/sec the security settings page] of the portal to request permission to use cron. You won't be able to create a crontab before submitting a request and having it approved. = Making a cron configuration file = Cron needs a special configuration file to tell it how to operate. It is suggested that this file be called {{{~/.crontab}}}, though it can have any name. For an explanation of the format of this file, run: {{{ man 5 crontab }}} = Activating your cron configuration = Once you are satisfied with your setup, run the following command to activate your changes, assuming that your configuration file is called {{{~/.crontab}}}: {{{ crontab ~/.crontab }}} = Examples = One convention for making scripts to run commands in their own PAG, as specified by the [:MemberManual/RunningUnattendedCommands:Running Unattended Commands page], is to create the {{{~/scripts}}} directory, and place your scripts there. Then, make a cron configuration file that looks something like this. {{{ PATH=/afs/hcoop.net/common/bin:/usr/local/bin:/usr/bin:/bin 09 0 * * 0 run-in-pagsh --fg ~/scripts/clean-mail 11 0 * * 0 run-in-pagsh --fg ~/scripts/remove-tmp 12 0 * * 0 run-in-pagsh --fg ~/scripts/weekly-comment-check */10 * * * * run-in-pagsh --fg ~/scripts/make-git-projects }}} The PATH line is needed so that you have access to {{{run-in-pagsh}}}. Make sure you don't try to reference any other environment variables like {{{$HOME}}}, because cron will not expand them properly. The first cron command runs something 9 minutes after midnight (aka the "0th" hour), every day of the month, every month, provided that it is Sunday (aka the "0th" day of the week). In short: run something at 12:09 every Sunday. The second and third commands are similar. The fourth command runs something every 10 minutes.