--- a/lib/SI/lvm.pm Sun Jan 31 01:17:32 2010 +0100
+++ b/lib/SI/lvm.pm Sun Jan 31 23:58:01 2010 +0100
@@ -84,10 +84,12 @@
my $devs = shift;
foreach (@cfgs) {
- my $vg = basename($_);
- next if $vg eq "vg.*";
- print $vg, "\n";
+ my $vg = (split /\./, basename($_))[1];
+ next if $vg eq "*";
+ run("vgcfgrestore -f $_ $vg");
+ run("vgchange -ay $vg");
}
+ run("udevadm settle");
}
sub mkfs(\%) {
@@ -97,15 +99,15 @@
next if $v->{origin} ne "lvm"
or not defined $v->{type};
- my $label = default("" => $v->{label});
- my $uuid = default("" => $v->{uuid});
+ my $label = defined $v->{label} ? "-L '$v->{label}'" : "";
+ my $uuid = defined $v->{uuid} ? "-U '$v->{uuid}'" : "";
given($v->{type}) {
when(/ext/) {
- run("mkfs -t $v->{type} -L '$label' -U '$uuid' $volume");
+ run("mkfs -t $v->{type} $label $uuid $volume");
};
when(/swap/) {
- run("mkswap -L '$label' -U '$uuid' $volume");
+ run("mkswap $label $uuid $volume");
};
}
}