/usr/share/chiark-backup/snap-common is in chiark-backup 4.3.0.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
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 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 | # sourced by snap/lvm and snap/remountrocp
#---------- common arg parsing
nargs=$#
opmode="$1"
vardir="$2"
device="$3"
mountpoint="$4"
lvm_lv=chiark-backup
lvm_lvtools_opts='-A n'
lvm_lvcreate_opts=
lvm_lvcreate_args=
test ! -f /etc/chiark-backup/settings.sh || . /etc/chiark-backup/settings.sh
case "$nargs.$opmode" in
4.snap|2.drop)
;;
*)
cat >&2 <<END
usage: .../$snapkind snap VARDIR DEV MOUNT
.../$snapkind drop VARDIR
END
exit 1
;;
esac
#---------- common functions
lvmunmapperdevice () {
# turns device=/dev/mapper/... into /dev/<group>/<volume>
case "$device" in
/dev/mapper/*)
device="`printf '%s' "$device" | perl -pe '
s,^/dev/mapper/,,;
die if m,/,;
s,\-\-,!,g;
s,\-,/,g;
s,\!,-,g;
s,^,/dev/,;
'`"
;;
esac
}
lvmdevice2vgroup () {
vgroup="${device#/dev/}"
vgroup="${vgroup%/*}"
}
lvmdropcore () {
snmnt="$vardir/snap-mount"
umount -v "$snmnt" || true
test ! -d "$snmnt" || rmdir -- "$snmnt" || rm -f "$snmnt"
set +e
old_lv_dev="$(readlink $vardir/snap-device)"
rc=$?
set -e
if [ $rc = 0 ]; then
set +e
lvchange $lvm_lvtools_opts -a n $old_lv_dev
lvremove -f $lvm_lvtools_opts $old_lv_dev
set -e
rm $vardir/snap-device
fi
}
lvmextentscore1 () {
# vgroup must be set
vgdisplay_out="$(really vgdisplay -c "$vgroup")"
extents="$(printf "%s" "$vgdisplay_out" | awk -F: '{print $16}')"
extsize="$(printf "%s" "$vgdisplay_out" | awk -F: '{print $13}')"
}
lvmextentscore2 () {
if [ $extents2 -lt $extents ]; then extents=$extents2; fi
lvm_lvsize_opts="-l $extents"
}
lvmcreatecore1 () {
# vgroup must be set
lvpath="/dev/$vgroup/$lvm_lv"
ln -s -- "$lvpath" "$vardir"/snap-device
sync
}
|