[pve-devel] [PATCH manager] Move wipe_disks to Diskmanage
Dominic Jäger
d.jaeger at proxmox.com
Mon Jan 27 13:38:42 CET 2020
This function is not only required by Ceph.
Signed-off-by: Dominic Jäger <d.jaeger at proxmox.com>
---
PVE/API2/Ceph/OSD.pm | 4 ++--
PVE/Ceph/Tools.pm | 22 ----------------------
2 files changed, 2 insertions(+), 24 deletions(-)
diff --git a/PVE/API2/Ceph/OSD.pm b/PVE/API2/Ceph/OSD.pm
index e1b0d807..53288fec 100644
--- a/PVE/API2/Ceph/OSD.pm
+++ b/PVE/API2/Ceph/OSD.pm
@@ -460,7 +460,7 @@ __PACKAGE__->register_method ({
push @$cmd, '--data', $devpath;
push @$cmd, '--dmcrypt' if $param->{encrypted};
- PVE::Ceph::Tools::wipe_disks($devpath);
+ PVE::Diskmanage::wipe_disks($devpath);
run_command($cmd);
});
@@ -549,7 +549,7 @@ __PACKAGE__->register_method ({
my $partnum = PVE::Diskmanage::get_partnum($part);
my $devpath = PVE::Diskmanage::get_blockdev($part);
- PVE::Ceph::Tools::wipe_disks($part);
+ PVE::Diskmanage::wipe_disks($part);
print "remove partition $part (disk '${devpath}', partnum $partnum)\n";
eval { run_command(['/sbin/sgdisk', '-d', $partnum, "${devpath}"]); };
warn $@ if $@;
diff --git a/PVE/Ceph/Tools.pm b/PVE/Ceph/Tools.pm
index e6225b78..7d2e8469 100644
--- a/PVE/Ceph/Tools.pm
+++ b/PVE/Ceph/Tools.pm
@@ -270,28 +270,6 @@ sub get_or_create_admin_keyring {
return $pve_ckeyring_path;
}
-# wipe the first 200 MB to clear off leftovers from previous use, otherwise a
-# create OSD fails.
-sub wipe_disks {
- my (@devs) = @_;
-
- my @wipe_cmd = qw(/bin/dd if=/dev/zero bs=1M conv=fdatasync);
-
- foreach my $devpath (@devs) {
- my $devname = basename($devpath);
- my $dev_size = PVE::Tools::file_get_contents("/sys/class/block/$devname/size");
-
- ($dev_size) = $dev_size =~ m|(\d+)|; # untaint $dev_size
- die "Coulnd't get the size of the device $devname\n" if (!defined($dev_size));
-
- my $size = ($dev_size * 512 / 1024 / 1024);
- my $count = ($size < 200) ? $size : 200;
-
- print "wipe disk/partition: $devpath\n";
- eval { run_command([@wipe_cmd, "count=$count", "of=${devpath}"]) };
- warn $@ if $@;
- }
-};
# get ceph-volume managed osds
sub ceph_volume_list {
--
2.20.1
More information about the pve-devel
mailing list