From 9271e58a24a80b00ec57e9f4ed99ddd2ed80e3e0 Mon Sep 17 00:00:00 2001
From: Micah Anderson <micah@riseup.net>
Date: Fri, 1 Oct 2010 18:09:43 -0400
Subject: [PATCH] older versions (lenny) of lvm2 have a bug in vgcfgbackup that
 makes it so when you specify multiple volume groups to backup, it gives an
 error, saying you must set the %s template for the name. We are doing that,
 it just cannot handle it properly.

This change routes around this issue, which has been fixed in later lvm2 releases, by passing only one argument to vgcfgbackup by taking all the volume groups that are found and running them through a for loop
---
 handlers/sys.in | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/handlers/sys.in b/handlers/sys.in
index a92663e2..fcf3e31c 100755
--- a/handlers/sys.in
+++ b/handlers/sys.in
@@ -649,8 +649,11 @@ function doLvmBackup () {
    debug "$VGS --options vg_name --noheadings | @SED@ 's/^[ ]*//' | @SED@ 's/[ ]*$//' | tr '\n' ' '"
    vgs=`$VGS --options vg_name --noheadings | @SED@ 's/^[ ]*//' | @SED@ 's/[ ]*$//' | tr '\n' ' '`
    debug "Let's try to backup LVM metadata for detected volume groups: $vgs"
-   debug "$VGCFGBACKUP --file \"${lvmdir}\"/\'%s\' $vgs"
-   output=`$VGCFGBACKUP --file "${lvmdir}"/'%s' $vgs`
+   for vg in $vgs
+   do
+      debug "$VGCFGBACKUP --file \"${lvmdir}\"/\'%s\' $vg"
+      output=`$VGCFGBACKUP --file "${lvmdir}"/'%s' $vg`
+   done
    exit_code=$?
    debug $output
    case $exit_code in
-- 
GitLab