summaryrefslogtreecommitdiffstats
path: root/perl-install/diskdrake
diff options
context:
space:
mode:
Diffstat (limited to 'perl-install/diskdrake')
-rw-r--r--perl-install/diskdrake/interactive.pm9
1 files changed, 8 insertions, 1 deletions
diff --git a/perl-install/diskdrake/interactive.pm b/perl-install/diskdrake/interactive.pm
index dcccc1c97..285b74d30 100644
--- a/perl-install/diskdrake/interactive.pm
+++ b/perl-install/diskdrake/interactive.pm
@@ -882,10 +882,17 @@ sub RemoveFromRAID {
raid::removeDisk($all_hds->{raids}, $part);
}
sub RemoveFromLVM {
- my ($_in, $_hd, $part, $all_hds) = @_;
+ my ($in, $_hd, $part, $all_hds) = @_;
isPartOfLVM($part) or die;
my ($lvm, $other_lvms) = partition { $_->{VG_name} eq $part->{lvm} } @{$all_hds->{lvms}};
if (@{$lvm->[0]{disks}} > 1) {
+ my ($used, $_total) = lvm::pv_physical_extents($part);
+ if ($used) {
+ $in->ask_yesorno('', N("Physical volume %s is still in use.
+Do you want to move used physical extents on this volume to other volumes?", $part->{device})) or return;
+ my $_w = $in->wait_message('', N("Moving physical extents"));
+ lvm::pv_move($part);
+ }
lvm::vg_reduce($lvm->[0], $part);
} else {
lvm::vg_destroy($lvm->[0]);