Automating recurring tasks with Cron

Setup a crontab file which defines whe the task should run:

m h d M D /script

where:

m minute: 0-59
h hour: 0-23
d day of the month: 1-31
M month of the year: 1-12
D day of the week, Sunday-0, 0-6
/script the script to execute

Values that are not relevant can be replaced with a ‘*” character.

Examples:

Run scriptA at 1:00 am:


* 1 * * * /scriptA

Run scriptB at every 15 minutes past the hour:


15 * * * * /scriptB

Run scriptC on the hour and every 30 minutes past the hour:


0,30 * * * * /scriptC

Run scriptD at 10,11 and 12, every Monday:


* 10-12 * * 1 /scriptC

To install the crontab setings, run:


crontab filename

To list the current crontab settings:


crontab -l

Common Linux Commands

df shows free and used disk space
top shows memory usage – updates in real time
ps Process Status – lists running processes
ps -ef show system processes
find . -name FILENAME -print locate a file named FILENAME and show it’s location
grep -r “pattern” * search through all files and subdirectories from the current directory for the given pattern and print matches
uname -a displays the current kernel version
lsb_release -a displays Ubuntu installation version
fdisk -l lists partition info

Ubuntu/Debian Package Management

Install an app: sudo apt-get install name

Remove: sudo apt-get remove name (‘apt-get remove –purge name’ to remove all config files also)

List installed packages: sudo dpkg –list | more

RPM Commands (Red Hat/Fedora and derivatives)

rpm -ivh PACKAGE installs a new RPM
rpm -e PACKAGE uninstalls an RPM
rpm -qi PACKAGE Queries that a package is unstalled and displays information about it