chiark / gitweb /
rfreezefs.8: The description of exit status 3 referred to `cookies'.
[rsync-backup] / mount-backup-volume
CommitLineData
f6b4ffdc
MW
1#! /bin/sh -ex
2
3: ${vgtag=@backup} ${vgprefix=vg-backup-}
4: ${mntbkpdir=/mnt/bkp}
5: ${STOREDIR=$mntbkpdir/store} ${METADIR=$mntbkpdir/meta}
6
7vgs=$(vgs --noheadings -oname)
8found=nil
9for vg in $vgs; do
10 case "$found,$vg" in
11 nil,$vgprefix*)
12 found=t
13 tag=${vg#$vgprefix}
14 ;;
15 t,$vgprefix*)
16 echo >&2 "$0: multiple backup volumes attached"
17 exit 1
18 ;;
19 esac
20done
21case $found in
22 nil) echo >&2 "$0: no backup volumes attached"; exit 1 ;;
23esac
24vg=$vgprefix$tag
25
26vgchange -ay $vg
27mount /dev/$vg/meta $METADIR
28
29cryptop decrypt backup <$METADIR/crypt.blob |
30 cryptsetup luksOpen --key-file=- /dev/$vg/crypt cbackup
31mount /dev/mapper/cbackup $STOREDIR