]>
code.delx.au - monosys/blob - bsnap-lvm
10 cat /etc
/fstab |
awk '{print $5 " " $1 " " $2;}' |
while read -r dump dev mnt
; do
11 if [ "$dump" = 1 ]; then
12 echo "bind mount $mnt"
13 mount
--bind "${mnt}" "/a${mnt}"
14 elif [ "$dump" = 2 ]; then
15 read -r lvname vgname _
< <(lvdisplay
--noheadings -C "$dev")
16 echo "snapshot ${vgname}/${lvname}"
17 lvcreate
-L1G --snapshot --name "${lvname}snap" "${vgname}/${lvname}"
18 mount
-o ro
"${dev}snap" "/a${mnt}"
24 tac /etc
/fstab |
awk '{print $5 " " $1 " " $2;}' |
while read -r dump dev mnt
; do
27 if [ "$dump" = 1 ]; then
28 echo "umount $snapmnt"
29 mountpoint
-q "$snapmnt" && umount
"$snapmnt"
30 elif [ "$dump" = 2 ]; then
31 echo "umount $snapmnt"
32 mountpoint
-q "$snapmnt" && umount
"$snapmnt"
34 echo "unsnapshot $snapdev"
35 [ -b "$(readlink -f "$snapdev")" ] && echo y | lvremove
"${dev}snap"
42 if [ "$(id -u)" -ne 0 ]; then
47 if [ "${1:-}" = "off" ]; then
49 elif [ "${1:-}" = "on" ]; then
52 echo "Usage: $0 on|off"