]> andersk Git - moira.git/blob - backup/nightly.sh
finished & optimized script
[moira.git] / backup / nightly.sh
1 #!/bin/sh -x
2 #
3 #       Nightly script for backing up Moira.
4 #
5 #
6 BKUPDIRDIR=/u3/sms_backup
7 PATH=/bin:/usr/bin:/usr/ucb:/usr/new; export PATH
8 chdir ${BKUPDIRDIR}
9
10 # /moira/bin/counts </dev/null  
11
12 if [ -d in_progress ] 
13 then
14         echo "Two backups running?"
15         exit 1
16 fi
17
18 trap "rm -rf ${BKUPDIRDIR}/in_progress" 0 1 15 
19
20 if mkdir in_progress 
21 then
22         echo "Backup in progress."
23 else
24         echo "Cannot create backup directory"
25         exit 1
26 fi
27 if /moira/bin/mrbackup ${BKUPDIRDIR}/in_progress/
28 then
29         echo "Backup successful"
30 else
31         echo "Backup failed!"
32         exit 1
33 fi
34
35 /moira/bin/report.sh ${BKUPDIRDIR}/in_progress
36
37 if [ -d stale ]
38 then
39         echo -n "Stale backup "
40         rm -r stale
41         echo "removed"
42 fi
43 echo -n "Shifting backups "
44
45 mv backup_3 stale
46 echo -n "3"
47 mv backup_2 backup_3
48 echo -n "2"
49 mv backup_1 backup_2
50 echo -n "1"
51 mv in_progress backup_1
52 echo 
53 echo -n "deleting last backup"
54 rm -rf stale
55 echo "Shipping over the net:"
56 rcp -rp ${BKUPDIRDIR}/* oregano:/var/moira
57 rcp -rp ${BKUPDIRDIR}/* plover:/backup/moira
58
59 if [ "`/usr/bin/find /moira/critical.log -mtime -1 -print`" = "/moira/critical.log" ]; then
60         (/bin/echo "To: dbadmin";\
61          /bin/echo "Subject: Moira update status";\
62          /usr/ucb/tail /moira/critical.log) | /bin/mail dbadmin
63 fi
64
65 exit 0
This page took 0.081329 seconds and 5 git commands to generate.