equal
deleted
inserted
replaced
37 # if you have problems removing volumes then you may have the 'udisks' |
37 # if you have problems removing volumes then you may have the 'udisks' |
38 # package installed; see: |
38 # package installed; see: |
39 # http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=549691#74 |
39 # http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=549691#74 |
40 # https://bugzilla.redhat.com/show_bug.cgi?id=577798#c5 |
40 # https://bugzilla.redhat.com/show_bug.cgi?id=577798#c5 |
41 # https://www.redhat.com/archives/linux-lvm/2010-August/msg00029.html |
41 # https://www.redhat.com/archives/linux-lvm/2010-August/msg00029.html |
42 lvs "$vg/$lvs" >/dev/null 2>&1 && lvremove -f "$vg/$lvs" |
42 lvs "$vg/$lvs" && lvremove -f "$vg/$lvs" |
43 |
43 |
44 } |
44 } |
45 |
45 |
46 while getopts "s:" opt; do |
46 while getopts "s:" opt; do |
47 case $opt in |
47 case $opt in |
65 |
65 |
66 [ -n "${vg}" -a -n "${lv}" -a "${vg}" != "${p}" -a "${lv}" != "${p}" ] || usage |
66 [ -n "${vg}" -a -n "${lv}" -a "${vg}" != "${p}" -a "${lv}" != "${p}" ] || usage |
67 |
67 |
68 d=$(date +%Y%m%d%H%M%S) |
68 d=$(date +%Y%m%d%H%M%S) |
69 lvcreate -n"$lvs" -L"$SNAPSIZE" -s "$vg/$lv" |
69 lvcreate -n"$lvs" -L"$SNAPSIZE" -s "$vg/$lv" |
70 if e2fsck -fp "/dev/$vg/$lvs"; then |
70 # fix any noncritical problems automatically and don't make any noise (on |
|
71 # stderr) about it; note that these problems remain present on the origin |
|
72 # volume |
|
73 e2fsck -fp "/dev/$vg/$lvs" 2>&1 || true |
|
74 if e2fsck -fy "/dev/$vg/$lvs" 2>&1; then |
71 tune2fs -C 1 -T "$d" "/dev/$vg/$lv" |
75 tune2fs -C 1 -T "$d" "/dev/$vg/$lv" |
72 else |
76 else |
73 die fsck returned nonzero: this may indicate filesystem corruption on the origin volume. |
77 die fsck returned nonzero: this may indicate filesystem corruption on the origin volume. |
74 fi |
78 fi |