nfsbackup.sh
1.47 KB
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
58
59
60
61
62
#!/bin/bash
# better to got those locally
TEMP_PATH=/usr/local/backupmondo/temp
SCRATCH_PATH=/usr/local/backupmondo/scratch
NFS_HOST=5.9.168.122
NFS_MOUNT=/mnt/data
MOUNT_PATH=/mnt/data
# Relative path that will be used locally and remotely on the NFS server
BCKUP_PATH=images
if (! test `mount | grep $MOUNT_PATH | wc -l` -eq 0);
then umount $MOUNT_PATH;
fi
if (! test -d $TEMP_PATH);
then mkdir -p $TEMP_PATH;
fi
echo "Temp directory $TEMP_PATH created"
if (! test -d $SCRATCH_PATH);
then mkdir -p $SCRATCH_PATH;
fi
echo "Scratch directory $SCRATCH_PATH created"
if (! test -d $MOUNT_PATH);
then mkdir -p $MOUNT_PATH;
fi
echo "Mount directory $MOUNT_PATH created"
echo "Try to mount NFS point $NFS_HOST:$NFS_MOUNT on $MOUNT_PATH..."
mount ${NFS_HOST}:$NFS_MOUNT $MOUNT_PATH
echo "NFS point ${NFS_HOST}:$NFS_MOUNT mounted on $MOUNT_PATH"
if (! test -d $MOUNT_PATH/$BCKUP_PATH);
then mkdir -p $MOUNT_PATH/$BCKUP_PATH;
fi
echo "Backup directory $MOUNT_PATH/$BCKUP_PATH created"
BCKUP_NAME=`hostname -s`"-"`date +%Y%m%d%H%M`
echo "Backup name: "$BCKUP_NAME
CMD_LINE="mondoarchive -O -n $NFS_HOST:$NFS_MOUNT -p $BCKUP_NAME -N -d $BCKUP_PATH -s 43800m -S $SCRATCH_PATH -T $TEMP_PATH -E /tmp"
echo "Will run command: $CMD_LINE"
$CMD_LINE
echo "Mondorescue terminated"
umount $MOUNT_PATH
echo "Backup directory $MOUNT_PATH unmounted"
rm -rf $TEMP_PATH
echo "Temp directory $TEMP_PATH removed"
rm -rf $SCRATCH_PATH
echo "Scratch directory $SCRATCH_PATH removed"
echo "Backup over"