1 # sourced by snap/lvm and snap/remountrocp
3 #---------- common arg parsing
12 lvm_lvtools_opts='-A n'
16 test ! -f /etc/chiark-backup/settings.sh || . /etc/chiark-backup/settings.sh
18 case "$nargs.$opmode" in
23 usage: .../$snapkind snap VARDIR DEV MOUNT
24 .../$snapkind drop VARDIR
30 #---------- common functions
33 snmnt="$vardir/snap-mount"
34 umount -v "$snmnt" || true
35 test ! -d "$snmnt" || rmdir -- "$snmnt"
38 old_lv_dev="$(readlink $vardir/snap-device)"
44 lvchange $lvm_lvtools_opts -a n $old_lv_dev
45 lvremove -f $lvm_lvtools_opts $old_lv_dev
47 rm $vardir/snap-device
52 vgdisplay_out="$(really vgdisplay -c "$vgroup")"
53 extents="$(printf "%s" "$vgdisplay_out" | awk -F: '{print $16}')"
54 extsize="$(printf "%s" "$vgdisplay_out" | awk -F: '{print $13}')"
58 if [ $extents2 -lt $extents ]; then extents=$extents2; fi
59 lvm_lvsize_opts="-l $extents"
63 lvpath="/dev/$vgroup/$lvm_lv"
64 ln -s -- "$lvpath" "$vardir"/snap-device