SI/lvm.pm
branchstable
changeset 26 39421a9700c5
parent 19 d12753b246fd
equal deleted inserted replaced
25:8242547f4965 26:39421a9700c5
    22 
    22 
    23     my @pvs =
    23     my @pvs =
    24       grep { $_ ~~ @known } map { s/\s*//; (split /:/)[0] } `pvdisplay -c`;
    24       grep { $_ ~~ @known } map { s/\s*//; (split /:/)[0] } `pvdisplay -c`;
    25     @volumegroups = map { (split /:/)[1] } `pvdisplay -c @pvs 2>/dev/null`;
    25     @volumegroups = map { (split /:/)[1] } `pvdisplay -c @pvs 2>/dev/null`;
    26     run("vgchange -ay @volumegroups 2>&1 >/dev/null");
    26     run("vgchange -ay @volumegroups 2>&1 >/dev/null");
       
    27 
    27     # we wait for the /dev/mapper devices to appear
    28     # we wait for the /dev/mapper devices to appear
    28     run("udevadm settle");	
    29     run("udevadm settle");
    29     return @volumegroups;
    30     return @volumegroups;
    30 }
    31 }
    31 
    32 
    32 sub volumes(\%) {
    33 sub volumes(\%) {
    33     my ($devs) = @_;
    34     my ($devs) = @_;
    42       grep { (split /:/)[1] ~~ @vgs } `lvdisplay -c`;
    43       grep { (split /:/)[1] ~~ @vgs } `lvdisplay -c`;
    43     foreach (@lvs) {
    44     foreach (@lvs) {
    44         $devs->{volume}{$_} = { origin => "lvm" };
    45         $devs->{volume}{$_} = { origin => "lvm" };
    45     }
    46     }
    46 
    47 
    47     push @{$devs->{volumes}}, @lvs;
    48     push @{ $devs->{volumes} }, @lvs;
    48 }
    49 }
    49 
    50 
    50 sub vgcfgbackup($\%) {
    51 sub vgcfgbackup($\%) {
    51     my ($file, $devs) = @_;
    52     my ($file, $devs) = @_;
    52 
    53