]> git.ipfire.org Git - thirdparty/mdadm.git/blobdiff - ReadMe.c
Always initialise a struct super_type to zero
[thirdparty/mdadm.git] / ReadMe.c
index 739b36601cfacf93ae255006c6a995ac7526a0e2..3fae1930654bdca81d099466648c8e94d2aab890 100644 (file)
--- a/ReadMe.c
+++ b/ReadMe.c
@@ -1,7 +1,7 @@
 /*
  * mdadm - manage Linux "md" devices aka RAID arrays.
  *
- * Copyright (C) 2001-2006 Neil Brown <neilb@suse.de>
+ * Copyright (C) 2001-2007 Neil Brown <neilb@suse.de>
  *
  *
  *    This program is free software; you can redistribute it and/or modify
  *    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  *
  *    Author: Neil Brown
- *    Email: <neilb@cse.unsw.edu.au>
- *    Paper: Neil Brown
- *           School of Computer Science and Engineering
- *           The University of New South Wales
- *           Sydney, 2052
- *           Australia
+ *    Email: <neilb@suse.de>
  */
 
 #include "mdadm.h"
 
-char Version[] = Name " - v2.5.6 - 9 November 2006\n";
+char Version[] = Name " - v2.6.7 - 6th June 2008\n";
 
 /*
  * File: ReadMe.c
@@ -91,8 +86,11 @@ char Version[] = Name " - v2.5.6 - 9 November 2006\n";
  *     At the time if writing, there is only minimal support.
  */
 
-char short_options[]="-ABCDEFGQhVXWvqbc:i:l:p:m:n:x:u:c:d:z:U:sarfRSow1tye:";
-char short_bitmap_auto_options[]="-ABCDEFGQhVXWvqb:c:i:l:p:m:n:x:u:c:d:z:U:sa:rfRSow1tye:";
+char short_options[]="-ABCDEFGIQhVXWvqbc:i:l:p:m:n:x:u:c:d:z:U:sarfRSow1tye:";
+char short_bitmap_options[]=
+                   "-ABCDEFGIQhVXWvqb:c:i:l:p:m:n:x:u:c:d:z:U:sarfRSow1tye:";
+char short_bitmap_auto_options[]=
+                   "-ABCDEFGIQhVXWvqb:c:i:l:p:m:n:x:u:c:d:z:U:sa:rfRSow1tye:";
 
 struct option long_options[] = {
     {"manage",    0, 0, '@'},
@@ -104,13 +102,15 @@ struct option long_options[] = {
     {"examine",   0, 0, 'E'},
     {"follow",    0, 0, 'F'},
     {"grow",      0, 0, 'G'},
+    {"incremental",0,0, 'I'},
     {"zero-superblock", 0, 0, 'K'}, /* deliberately no a short_option */
     {"query",    0, 0, 'Q'},
     {"examine-bitmap", 0, 0, 'X'},
+    {"auto-detect", 0, 0, AutoDetect},
 
     /* synonyms */
     {"monitor",   0, 0, 'F'},
-           
+
     /* after those will normally come the name of the md device */
     {"help",      0, 0, 'h'},
     {"help-options",0,0,'h'},
@@ -164,6 +164,7 @@ struct option long_options[] = {
 
     /* For Detail/Examine */
     {"brief",    0, 0, 'b'},
+    {"export",   0, 0, 'Y'},
     {"sparc2.2",  0, 0, Sparc22},
     {"test",      0, 0, 't'},
 
@@ -179,7 +180,9 @@ struct option long_options[] = {
     {"syslog",    0, 0, 'y'},
     /* For Grow */
     {"backup-file", 1,0, BackupFile},
-    
+
+    /* For Incremental */
+    {"rebuild-map", 0, 0, 'r'},
     {0, 0, 0, 0}
 };
 
@@ -201,6 +204,10 @@ char Help[] =
 "            make changes to an existing array.\n"
 "       mdadm --misc options... devices\n"
 "            report on or modify various md related devices.\n"
+"       mdadm --grow options device\n"
+"            resize/reshape an active array\n"
+"       mdadm --incremental device\n"
+"            add a device to an array as appropriate\n"
 "       mdadm --monitor options...\n"
 "            Monitor one or more array for significant changes.\n"
 "       mdadm device options...\n"
@@ -231,6 +238,8 @@ char OptionHelp[] =
 "  --verbose     -v   : Be more verbose about what is happening\n"
 "  --quiet       -q   : Don't print un-necessary messages\n"
 "  --brief       -b   : Be less verbose, more brief\n"
+"  --export      -Y   : With --detail, use key=value format for easy\n"
+"                       import into environment\n"
 "  --force       -f   : Override normal checks and be more forceful\n"
 "\n"
 "  --assemble    -A   : Assemble an array\n"
@@ -240,8 +249,11 @@ char OptionHelp[] =
 "  --examine     -E   : Examine superblock on an array component\n"
 "  --examine-bitmap -X: Display the detail of a bitmap file\n"
 "  --monitor     -F   : monitor (follow) some arrays\n"
+"  --grow        -G   : resize/ reshape and array\n"
+"  --incremental -I   : add a single device to an array as appropriate\n"
 "  --query       -Q   : Display general information about how a\n"
 "                       device relates to the md driver\n"
+"  --auto-detect      : Start arrays auto-detected by the kernel\n"
 ;
 /*
 "\n"
@@ -494,19 +506,39 @@ char Help_grow[] =
 "\n"
 "This usage causes mdadm to attempt to reconfigure a running array.\n"
 "This is only possibly if the kernel being used supports a particular\n"
-"reconfiguration.  This version only supports changing the number of\n"
-"devices in a RAID1, and changing the active size of all devices in\n"
-"a RAID1/4/5/6.\n"
+"reconfiguration.  This version supports changing the number of\n"
+"devices in a RAID1/5/6, changing the active size of all devices in\n"
+"a RAID1/4/5/6, adding or removing a write-intent bitmap, and changing\n"
+"the error mode for a 'FAULTY' array.\n"
 "\n"
 "Options that are valid with the grow (-G --grow) mode are:\n"
+"  --level=       -l   : Tell mdadm what level the array is so that it can\n"
+"                      : interpret '--layout' properly.\n"
+"  --layout=      -p   : For a FAULTY array, set/change the error mode.\n"
 "  --size=        -z   : Change the active size of devices in an array.\n"
 "                      : This is useful if all devices have been replaced\n"
 "                      : with larger devices.\n"
-"  --raid-disks=  -n   : Change the number of active devices in a RAID1\n"
+"  --raid-disks=  -n   : Change the number of active devices in an array.\n"
 "                      : array.\n"
+"  --bitmap=      -b   : Add or remove a write-intent bitmap.\n"
 ;
 
-
+char Help_incr[] =
+"Usage: mdadm --incremental [-Rqrs] device\n"
+"\n"
+"This usage allows for incremental assembly of md arrays.  Devices can be\n"
+"added one at a time as they are discovered.  Once an array has all expected\n"
+"devices, it will be started.\n"
+"\n"
+"Options that are valid with incremental assembly (-I --incremental) more are:\n"
+"  --run       -R  : run arrays as soon as a minimal number of devices are\n"
+"                  : present rather than waiting for all expected.\n"
+"  --quiet     -q  : Don't print any information messages, just errors.\n"
+"  --rebuild   -r  : Rebuild the 'map' file that mdadm uses for tracking\n"
+"                  : partial arrays.\n"
+"  --scan      -s  : Use with -R to start any arrays that have the minimal\n"
+"                  : required number of devices, but are not yet started.\n"
+;
 
 char Help_config[] =
 "The /etc/mdadm.conf config file:\n\n"
@@ -560,7 +592,7 @@ mapping_t r5layout[] = {
 };
 
 mapping_t pers[] = {
-       { "linear", -1},
+       { "linear", LEVEL_LINEAR},
        { "raid0", 0},
        { "0", 0},
        { "stripe", 0},
@@ -571,13 +603,14 @@ mapping_t pers[] = {
        { "4", 4},
        { "raid5", 5},
        { "5", 5},
-       { "multipath", -4},
-       { "mp", -4},
+       { "multipath", LEVEL_MULTIPATH},
+       { "mp", LEVEL_MULTIPATH},
        { "raid6", 6},
        { "6", 6},
        { "raid10", 10},
        { "10", 10},
-       { "faulty", -5},
+       { "faulty", LEVEL_FAULTY},
+       { "container", LEVEL_CONTAINER},
        { NULL, 0}
 };
 
@@ -590,6 +623,8 @@ mapping_t modes[] = {
        { "misc", MISC},
        { "monitor", MONITOR},
        { "grow", GROW},
+       { "incremental", INCREMENTAL},
+       { "auto-detect", AUTODETECT},
 };
 
 mapping_t faultylayout[] = {