-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbackup.monthly.sh
executable file
·57 lines (43 loc) · 1.33 KB
/
backup.monthly.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
#! /bin/bash
DAY="$(date +%d)"
MONTH="$(date +%m)"
YEAR="$(date +%Y)"
LOGLOC="/var/log/backup/monthly/"
LOGFILE="$LOGLOC/$YEAR.$MONTH.$DAY.log"
BACKUPLOC="/backup/monthly/"
logger -p syslog.info "Starting Monthly Backup - $YEAR-$MONTH-$DAY"
if [ ! -d "$LOGLOC" ]; then
echo "Creating $LOGLOC/$YEAR/$MONTH/"
mkdir -p "$LOGLOC"
fi
if [ ! -d "$BACKUPLOC" ]; then
echo "Creating $BACKUPLOC"
mkdir -p "$BACKUPLOC"
fi
exec > "$LOGFILE" 2>&1
#echo "To: pasula.ubuntu@gmail.com"
#echo "From: Backups <pasula.ubuntu@gmail.com>"
#echo -e "Subject: Generated monthly backup report for `hostname` on $YEAR.$MONTH.$DAY"
#echo -e ">> Monthly backup for: $YEAR.$MONTH.$DAY started @ `date +%H:%M:%S`n"
/opt/scripts/scriptheader.sh "Monthly Backup"
echo "Original files:"
echo ""
sudo du -hs "/backup/daily/"
echo ""
echo "Before rsync:"
echo ""
sudo du -chs "${BACKUPLOC}"
echo ""
# Perform the backup and get time stats
#echo tar -cpPzf "$BACKUPLOC$YEAR.$MONTH.$DAY.tar.gz" /backup/daily/
SD=$( { time tar -hcpPzf "$BACKUPLOC$YEAR.$MONTH.$DAY.tar.gz" /backup/daily/; } 2>&1 )
# Display time stats
SD=`echo -n "$SD" | grep real`
MIN=`echo -n "$SD" | awk '{printf substr($2,0,2)}'`
SEC=`echo -n "$SD" | awk '{printf substr($2,3)}'`
echo -e "- done [ $MIN $SEC ].n"
echo ""
echo "After rsync"
sudo du -chs "${BACKUPLOC}"
echo ""
#/usr/sbin/sendmail -t < "$LOGFILE"