ABCDEFGHIJKLMNOPQRSTUVWXYZ

raidreconf

raidreconf(8)                                                    raidreconf(8)



NAME
       raidreconf - reconfigure RAID arrays

SYNOPSIS
       raidreconf -h {--help}

       - or -

       raidreconf -V {--version}

       - or -

       raidreconf -o oldraidtab -n newraidtab -m /dev/md?

       - or -

       raidreconf -i /dev/sd?? -n newraidtab -m /dev/md?

       - or -

       raidreconf -n newraidtab -m /dev/md? -e /dev/sd??


WARNING
       You should back up all data BEFORE any attempt is made to reconfigure a
       RAID device.  YOU HAVE BEEN WARNED.

       The author will give you no guarantee  whatsoever,  that  this  program
       works  in  any specific way at all. It may well destroy all data on any
       device connected directly, indirectly, or not at  all,  to  any  system
       this  software  is  used  on.   Please use this stuff with care, if you
       decide to use it at all.

       Ok, that said, let's see how to actually use it  :-)


DESCRIPTION
       raidreconf will read two raidtab files, an old one, and a new one.   It
       will  then  re-build  your old array to match the configuration for the
       new array, while retaining all data possible.

       It can also be used to import a single block-device into a  RAID  array
       (using  more  block devices), or export a RAID array to a single block-
       device.

       raidreconf can, of course, only retain your original data if  you  grow
       the  configuration.   If you shrink the configuration from say, P bytes
       to Q bytes, raidreconf will retain the first Q bytes of  your  original
       data,  but  everything  from  Q bytes to the end of the old array (to P
       bytes) will be lost.

       Currently raidreconf can grow and shrink RAID-0 and RAID-5 arrays,  and
       import non-RAID devices into a new RAID-0 or RAID-5.

       The whole purpose of raidreconf is to be able to add disks to an exist-
       ing array, or convert it to a new type (eg. RAID-0 to  RAID-5)  without
       losing  data.  raidreconf  will  move  the existing data around on your
       array, to match the layout of the new array.


OPTIONS
       -h {--help}
              Raidreconf will print a short help message, and exit.


       -V {--verbose}
              Raidreconf will print it's version information, and exit.


       -o {--old} oldraidtab
              Specifies the path name of the  old  (current)  raidtab.   NOTE:
              raidreconf performs some tests to ensure that this configuration
              file matches the raid superblocks stored on the disk, but  there
              may  be  scenarios  where  the  two  are in conflict, but aren't
              detected as such.  Be very careful to specify  this  file  prop-
              erly.


       -n {--new} newraidtab
              Specifies  the  path  name of the new raidtab.  After raidreconf
              finishes, copy the newraidtab to  the  oldraidtab  location,  as
              raidreconf  doesn't  perform this (potentially dangerous) opera-
              tion.


       -m {--mddev} /dev/md?
              Specifies the name of the raid array to modify.


       -i {--import} /dev/sd??
              Specifies the name of the device to import from.


       -e {--export} /dev/sd??
              Specifies the name of the device to export to.


BUGS
       Perhaps many.  Well, the basic RAID-0 growth, shrink and  import  algo-
       rithms  seem to work, but there are lots and lots of consistency checks
       and graceful error handling missing.

       The RAID-5 algorithms are simplistic, with  little  optimization  other
       than  that provided by the buffer layer.  Conversions between non-RAID,
       RAID-0, and RAID-5 all *seem* to work, but there may be some bugs  left
       yet.

       If an error occurs during reconfiguration, a power failure for example,
       restore from backup (you DID make a backup, right?), and try again.

       Although RAID-4 is not supported, and almost no one uses it,  it  would
       be almost trivial to add.


REPORTING BUGS
       Since this is highly experimental software, there are a number of known
       bugs already.  The author would of course like to know about bugs,  but
       at  this stage in development you shouldn't waste too much of your time
       trying to hunt them down.  They're probably known,  and  maybe  already
       fixed in the author's tree.

       Report bugs to <bugs@oss.connex.com>. ?????


AUTHOR
       raidreconf  was  written  in  1999  by  Jakob Oestergaard <jakob@osten-
       feld.dk>

       The RAID-5 routines were written by Daniel S. Cox  in  2001  <dcox@con-
       nex.com>


SEE ALSO
       mkraid(8),  raidtab(5),  raidstart(8), raidhotadd(8), raidhotremove(8),
       raidstop(8)



                                                                 raidreconf(8)