cPanel, Using Cron

Use cron to schedule tasks that need to happen at a certain time or on a repeating basis.

What is Cron?

From https://en.wikipedia.org/wiki/Cron:

The software utility cron is a time-based job scheduler in Unix-like computer operating systems. People who set up and maintain software environments use cron to schedule jobs (commands or shell scripts) to run periodically at fixed times, dates, or intervals. cron is most suitable for scheduling repetitive tasks. 

Cron in cPanel

cPanel provides a graphical interface for setting up your crontab. To access it, find "Cron Jobs" in the advanced section of your dashboard. Creating a new cron job is as simple as filling in the form fields. You can select from several pre-defined common timings or manually specify each of minute, hour, day, month, and weekday.

Cron fields

Some of the tools available in cPanel may schedule cron jobs automatically. For example, Softaculous backup tasks and Drupal update checks may appear in your crontab even if you have never used this interface before. Below is an example of the web-based view of your scheduled cron jobs.

Cron


Special considerations when running commands via Cron

When you run commands from a login shell, you have a set of environment variables that are referenced. The environment that cron has to work with is much more limited. Therefore, if your script depends on information provided by your environment it may not run correctly as a cron job. To avoid this issue, ensure that any variables you need are explicitly set from within you script and use the full path to any commands or supporting programs you may call. See below for an example of the differences between your login environment and the environment available to cron. The most likely cause of issues is the more limited "PATH" variable but any environment variables you have set for yourself will also be missing from cron's environment. You can review your own user environment by logging in via SSH and typing "env." 


Cron's Environment

XDG_SESSION_ID=<id>

SHELL=/bin/bash

MAILTO=<email specified on Cron Jobs interface>

USER=<accountname>

PATH=/usr/bin:/bin

PWD=/home/<accountname>

LANG=en_US.UTF-8

SHLVL=1

HOME=/home/<accountname>

LOGNAME=<accountname>

XDG_RUNTIME_DIR=/run/user/<id>

_=/usr/bin/env

Example User Environment

XDG_SESSION_ID=<id>
HOSTNAME=web.illinois.edu
TERM=xterm-256color
SHELL=/bin/bash
HISTSIZE=1000
SSH_CLIENT=<client IP info>
SSH_TTY=/dev/pts/1
USER=<accountname>
LS_COLORS=rs=0:di=38;5;27:ln=38;5;51:mh=44;38;5;15:pi=40;38;5;11:so=38;5;13:do=38;5;5:bd=48;5;232;38;5;11:cd=48;5;232;38;5;3:or=48;5;232;38;5;9:mi=05;48;5;232;38;5;15:su=48;5;196;38;5;15:sg=48;5;11;38;5;16:ca=48;5;196;38;5;226:tw=48;5;10;38;5;16:ow=48;5;10;38;5;21:st=48;5;21;38;5;15:ex=38;5;34:*.tar=38;5;9:*.tgz=38;5;9:*.arc=38;5;9:*.arj=38;5;9:*.taz=38;5;9:*.lha=38;5;9:*.lz4=38;5;9:*.lzh=38;5;9:*.lzma=38;5;9:*.tlz=38;5;9:*.txz=38;5;9:*.tzo=38;5;9:*.t7z=38;5;9:*.zip=38;5;9:*.z=38;5;9:*.Z=38;5;9:*.dz=38;5;9:*.gz=38;5;9:*.lrz=38;5;9:*.lz=38;5;9:*.lzo=38;5;9:*.xz=38;5;9:*.bz2=38;5;9:*.bz=38;5;9:*.tbz=38;5;9:*.tbz2=38;5;9:*.tz=38;5;9:*.deb=38;5;9:*.rpm=38;5;9:*.jar=38;5;9:*.war=38;5;9:*.ear=38;5;9:*.sar=38;5;9:*.rar=38;5;9:*.alz=38;5;9:*.ace=38;5;9:*.zoo=38;5;9:*.cpio=38;5;9:*.7z=38;5;9:*.rz=38;5;9:*.cab=38;5;9:*.jpg=38;5;13:*.jpeg=38;5;13:*.gif=38;5;13:*.bmp=38;5;13:*.pbm=38;5;13:*.pgm=38;5;13:*.ppm=38;5;13:*.tga=38;5;13:*.xbm=38;5;13:*.xpm=38;5;13:*.tif=38;5;13:*.tiff=38;5;13:*.png=38;5;13:*.svg=38;5;13:*.svgz=38;5;13:*.mng=38;5;13:*.pcx=38;5;13:*.mov=38;5;13:*.mpg=38;5;13:*.mpeg=38;5;13:*.m2v=38;5;13:*.mkv=38;5;13:*.webm=38;5;13:*.ogm=38;5;13:*.mp4=38;5;13:*.m4v=38;5;13:*.mp4v=38;5;13:*.vob=38;5;13:*.qt=38;5;13:*.nuv=38;5;13:*.wmv=38;5;13:*.asf=38;5;13:*.rm=38;5;13:*.rmvb=38;5;13:*.flc=38;5;13:*.avi=38;5;13:*.fli=38;5;13:*.flv=38;5;13:*.gl=38;5;13:*.dl=38;5;13:*.xcf=38;5;13:*.xwd=38;5;13:*.yuv=38;5;13:*.cgm=38;5;13:*.emf=38;5;13:*.axv=38;5;13:*.anx=38;5;13:*.ogv=38;5;13:*.ogx=38;5;13:*.aac=38;5;45:*.au=38;5;45:*.flac=38;5;45:*.mid=38;5;45:*.midi=38;5;45:*.mka=38;5;45:*.mp3=38;5;45:*.mpc=38;5;45:*.ogg=38;5;45:*.ra=38;5;45:*.wav=38;5;45:*.axa=38;5;45:*.oga=38;5;45:*.spx=38;5;45:*.xspf=38;5;45:
PASSENGER_INSTANCE_REGISTRY_DIR=/var/passenger
MAIL=/var/spool/mail/<accountname>
PATH=/usr/local/cpanel/3rdparty/lib/path-bin:/usr/local/cpanel/3rdparty/lib/path-bin:/usr/local/cpanel/3rdparty/lib/path-bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/opt/cpanel/composer/bin:/home/<accountname>/.local/bin:/home/<accountname>/bin
PWD=/home/<accountname>
LANG=en_US.UTF-8
HISTCONTROL=ignoredups
SHLVL=1
HOME=/home/<accountname>
LOGNAME=<accountname>
SSH_CONNECTION=<info>
LESSOPEN=||/usr/bin/lesspipe.sh %s
XDG_RUNTIME_DIR=/run/user/<id>
HISTTIMEFORMAT=%F %T 
_=/usr/bin/env




Keywords:cPanel, web hosting, cron, schedule   Doc ID:85001
Owner:Web H.Group:University of Illinois Technology Services
Created:2018-08-17 16:00 CDTUpdated:2018-08-24 15:37 CDT
Sites:University of Illinois Technology Services
Feedback:  0   0