equal
deleted
inserted
replaced
1 #! /bin/bash -e |
1 #! /bin/bash -e |
|
2 |
|
3 # just a simple(!) example, not intended for production use |
|
4 # without supervision! |
2 |
5 |
3 export TMPDIR=/var/tmp |
6 export TMPDIR=/var/tmp |
4 export LC_ALL=C |
7 export LC_ALL=C |
5 |
8 |
6 SNAPSIZE=1G |
9 SNAPSIZE=1G |
7 DST=${1?need destination folder} |
10 DST=${1?need destination folder} |
8 VG=`hostname` |
11 VG=`hostname` |
9 DEV=/dev/sda1 |
12 DEV=/dev/sda1 |
10 NICE= |
13 NICE= |
11 |
14 |
|
15 NAGIOS_NSCA=nagios.net.schlittermann.de |
|
16 NAGIOS_HOST=gentoo-chemnitz/wintraken |
|
17 NAGIOS_SVC=BACKUP |
|
18 NAGIOS_MSG="failed ($DST)" |
|
19 NAGIOS_STATUS=2 |
|
20 |
|
21 |
12 now=`date +%s` |
22 now=`date +%s` |
13 tmp=`mktemp` |
23 tmp=`mktemp` |
14 snaps=`mktemp` |
24 snaps=`mktemp` |
|
25 |
|
26 send_nsca() { |
|
27 /usr/lib/nagios/plugins/send_nsca \ |
|
28 -H $NAGIOS_NSCA \ |
|
29 -c /etc/nagios/send_nsca.cfg "$@" |
|
30 } |
|
31 |
15 |
32 |
16 _lvremove() { |
33 _lvremove() { |
17 local dev=$1 |
34 local dev=$1 |
18 local vg=${dev%/*} |
35 local vg=${dev%/*} |
19 local lv=${dev#*/} |
36 local lv=${dev#*/} |
35 test -e "$dev" && test "$cleanup" || continue |
52 test -e "$dev" && test "$cleanup" || continue |
36 eval $cleanup || true |
53 eval $cleanup || true |
37 done < $snaps |
54 done < $snaps |
38 |
55 |
39 rm -f $tmp $snaps |
56 rm -f $tmp $snaps |
|
57 |
|
58 echo "$NAGIOS_HOST:$NAGIOS_SVC:$NAGIOS_STATUS:$NAGIOS_SVC $NAGIOS_MSG" | send_nsca -d : |
|
59 |
40 } |
60 } |
41 |
61 |
42 trap cleanup EXIT INT |
62 trap cleanup EXIT INT |
43 |
63 |
44 for dev in $DEV; do |
64 for dev in $DEV; do |
87 fi |
107 fi |
88 test "$cleanup" && eval $cleanup || true |
108 test "$cleanup" && eval $cleanup || true |
89 done <$snaps |
109 done <$snaps |
90 date |
110 date |
91 date >/var/log/backup.done |
111 date >/var/log/backup.done |
|
112 |
|
113 NAGIOS_MSG="done ($DST)" |
|
114 NAGIOS_STATUS=0 |