Option for --assume-clean
authorJamie Cameron <jcameron@webmin.com>
Fri, 21 Aug 2009 06:09:41 +0000 (23:09 -0700)
committerJamie Cameron <jcameron@webmin.com>
Fri, 21 Aug 2009 06:09:41 +0000 (23:09 -0700)
raid/CHANGELOG
raid/create_raid.cgi
raid/lang/en
raid/raid-lib.pl
raid/raid_form.cgi

index 41bb129..2ad7520 100644 (file)
@@ -24,3 +24,4 @@ Run the update-initramfs -u command after changing mdadm.conf, to sync it into a
 Raw disks with no partitions can now also be used as RAID members.
 Spare groups can now be created and used when creating a RAID device.
 When a RAID set is deleted, the superblocks on component devices are cleared in order to remove metadata about the old RAID set.
+Added an option to skip initialization of metadata when creating a RAID device.
index dd4b47a..2084ed0 100755 (executable)
@@ -79,7 +79,7 @@ elsif ($in{'group_mode'} == 2) {
 
 &create_raid($raid);
 &unlock_raid_files();
-if ($err = &make_raid($raid, $in{'force'}, $in{'missing'})) {
+if ($err = &make_raid($raid, $in{'force'}, $in{'missing'}, $in{'assume'})) {
        &delete_raid($raid);
        &error($err);
        }
index ffe93b3..dd0f806 100644 (file)
@@ -43,6 +43,7 @@ create_super=Persistent superblock?
 create_parity=Parity algorithm
 create_chunk=Chunk size
 create_force=Force initialisation of RAID?
+create_assume=Skip initialization of devices?
 create_rdev=RAID device $1
 create_lvm=LVM VG $1, LV $2
 create_err=Failed to create RAID
index 35eba56..7e91bbb 100755 (executable)
@@ -301,7 +301,7 @@ else {
        }
 }
 
-# make_raid(&raid, force, [missing])
+# make_raid(&raid, force, [missing], [assume-clean])
 # Call mkraid or mdadm to make a raid set for real
 sub make_raid
 {
@@ -334,7 +334,6 @@ else {
                        push(@spares, $d->{'value'});
                        }
                elsif (&find("parity-disk", $d->{'members'})) {
-                       # XXX how to handle?
                        push(@parities, $d->{'value'});
                        }
                }
@@ -346,6 +345,7 @@ else {
        $cmd .= " --raid-devices ".scalar(@devices);
        $cmd .= " --spare-devices ".scalar(@spares) if (@spares);
        $cmd .= " --force" if ($_[1]);
+       $cmd .= " --assume-clean" if ($_[3]);
        $cmd .= " --run";
        $cmd .= " $_[0]->{'value'}";
        foreach $d (@devices, @parities, @spares) {
index 8e711d3..8c07851 100755 (executable)
@@ -113,6 +113,12 @@ if ($raid_mode eq 'mdadm') {
 print &ui_table_row($text{'create_force'},
        &ui_yesno_radio("force", 0));
 
+# Assume clean
+if ($raid_mode eq 'mdadm') {
+       print &ui_table_row($text{'create_assume'},
+               &ui_yesno_radio("assume", 0));
+       }
+
 print &ui_table_end();
 print &ui_form_end([ [ undef, $text{'create'} ] ]);