1 * Maybe make "--help" fit in 80x24 and have a --long-help with more info. DONE
4 * maybe "missing" instead of <bold>missing</> in doco DONE
5 * possibly wait for resync to start, or even finish while assembling.- NO
7 * -Db should have a devices= entry if possible. - DONE
8 * when assembling multipath arrays, ignore any error indicators. - DONE
9 * rationalise --monitor usage:
11 doesn't do as expected. DONE
13 * --assemble could have a --update option. - DONE
14 following word can be:
18 * mdadm /dev/md11, where md11 is raid0 can segfault, particularly when looking in the
19 [UU_UUU] string ... which doesn't exist !
20 It should be more sensible. DONE
24 from Raimund Sacherer <raimund.sacherer@ngit.at>
26 mke2fs -m0 -q /dev/ram1 300
27 mount -n -t ext2 /dev/ram1 /tmp
28 echo DEVICE /dev/[sh]* >> /tmp/mdadm.conf
29 mdadm -Esb /dev/[sh]* 2>/dev/null >> /tmp/mdadm.conf
30 mdadm -ARsc /tmp/mdadm.conf
34 ?? Allow -S /dev/md? - current complains subsequent not a/d/r - DONE
36 * new "Query" mode to subsume --detail and --examine.
37 --query or -Q, takes a device and tells if it is an MD device,
38 and also tells in a raid superblock is found.
41 * write mdstat.c to parse /proc/mdstat file
42 Build list of arrays: name, rebuild-percent
45 * parse /proc/partitions and map major/minor into /dev/* names,
46 and use that for default DEVICE list ????
48 * --detail --scan to read /proc/mdstat, and then iterate over these,
49 but assume --brief. --verbose can override
50 check each subdevice to see if it is in conf_get_devs.
52 DONE, but don't warn yet...
54 * Support multipath ... maybe...
59 * --follow to move spares around DONE
61 * --follow to notice other events: DONE
67 ------------------------------------
68 - --examine --scan scans all drives and build an mdadm.conf file DONE
70 - check superblock checksum in examine DONE
71 - report "chunk" or "rounding" depending on raid level DONE
72 - report "linear" instead of "-1" for raid level DONE
73 - decode ayout depending on raid level DONE
74 - --verbose and --force flags. DONE
76 - set md_minor, *_disks for Create - DONE
77 - for create raid5, how to choose between
78 all working, but not insync
79 one missing, one spare, insync DONE (--force)
80 - and for raid1 - some failed drives... (missing)
82 - when RUN_ARRAY, make sure *_disks counts are right
84 - get --detail to extract extra stuff from superblock,
86 - --detail --brief to give a config file line DONE
87 - parse config file. DONE
90 - when --assemble --scan, if an underlying device is an md device,
91 then try to assemble that device first.
94 - mdadm -S /dev/md0 /dev/md1 gives internal error FIXED
96 - mdadm --detail --scan print summary of what it can find? DONE
100 Assemble doesn't add spares. - DONE
101 Create to allow "missing" name for devices.
102 Create to accept "--force" for do exactly what is requested
103 - get Assemble to upgrade devices if force flag.
104 ARRAY lines in config file to have super_minor=n
105 ARRAY lines in config file to have device=pattern, and only accept
107 If UUID given, insist on that
108 If not, but super_minor given, require all found with that minor
110 If only device given, all valid supers on those devices must have
112 allow /dev/mdX as first argument before any options
113 Possible --dry-run option for create and assemble--force
115 Assemble to check that all devices mentioned in superblock
118 New mode: --Monitor (or --Follow)
119 Periodically check status of all arrays (listed in config file).
120 Log every event and apparent cause - or differences
121 Email and alert - or run a program - for important events
122 Move spares around if necessary.
124 An Array line can have a spare-group= field that indicates that
125 the array shares spares with other arrays with the same
127 If an array has a failed and no spares, then check all other
128 arrays in the spare group. If one has no failures and a spare,
129 then consider that spare.
130 Choose the smallest considered spare that is large enough.
131 If there is one, then hot-remove it from it's home, and
132 hot-add it to the array in question.
135 --alert-handler program
137 Will also extract information from /proc/mdstat if present,
138 and consider 20% marks in rebuild as events.
141 drive fails - causes mail to be sent