All pastes #396499 Raw Edit

Untitled

public text v1 · immutable
·published 2007-03-15 20:25 UTC
rendered paste body
## Set up backup cron jobs

# Clear any nightly packages that already exist
44 23    * * *   root    rm -rf /backup/nightly/*

# Do a backup of /home/public at 12:10 AM every night.
10 0    * * *   root    cp -Ra /home/public /backup/nightly

## Create daily tarballs, bz2 compress for efficiency
33 3    * * 0   root    export DAY=Sunday && /usr/local/bin/snapshot-public
33 3    * * 1   root    export DAY=Monday && /usr/local/bin/snapshot-public
33 3    * * 2   root    export DAY=Tuesday && /usr/local/bin/snapshot-public
33 3    * * 3   root    export DAY=Wednesday && /usr/local/bin/snapshot-public
33 3    * * 4   root    export DAY=Thursday && /usr/local/bin/snapshot-public
33 3    * * 5   root    export DAY=Friday && /usr/local/bin/snapshot-public
33 3    * * 6   root    export DAY=Saturday && /usr/local/bin/snapshot-public



###############################################################
# /usr/local/bin/snapshot-public
###############################################################

#!/bin/bash
##############
##     This script backs up the public content.
##     $DAY is set by the cron job.
##############

## Clear existing tarballs in the daily folder.

rm -rf /backup/${DAY}/snapshot.tar.bz2

## Make a tarball out of /backup/nightly

tar -cjf /backup/${DAY}/snapshot.tar.bz2 /backup/nightly

## Clear the value of $DAY, just in case

export DAY=''

exit