> Right now I am using software RAID-1 to mirror several disks (120GB
> drives x 4) for two separate mirror partitions (md0 and md1).
> I would like to install a hardware-based RAID card to handle this
> (instead of the Linux kernel). Is there a fairly safe way to do this
> without having to copy all the data on these drives to someplace else?
> The drives are pretty much full, so I have 120GB x 2 worth of data that
> I would need to put somewhere.
> I don't know that much about RAID itself, but is it a standard like
> "IDE" is a standard (i.e. an IDE drive will work in practically any IDE
Hardware RAID controllers use proprietary data formats on their component
drives. So you while can usually move a drive set from one particular (make &
model) RAID controller to another of the same make & model, you can't
interchange drive sets between differing RAID controllers, nor can you
normally place drives already containing data on a RAID controller and
have it understand the content. And in this case it sounds like you are
mirroring a striped pair (really RAID 10). The host OS understands the
arrangment, but a RAID controller won't. So a data copy from one pair
of the mirror to the RAID subsystem will be required.
If my understanding of what you have set up is correct you should be able
to mark one of the striped sets as failed and disconnect them from the
IDE controller. That pair of drives would then be connected to the RAID
controller and configured as a RAID 0 set. The data from the existing
software RAID 0 pair can then be dumped to the RAID controller lun. Then
you can reconfigure the system to use only the RAID device and move the
other two drives to the RAID controller, configure them to be a RAID 0
set and then mirror (RAID 1) the two striped sets. Before taking this on,
be sure that the RAID controller that you choose allows for two
separately made RAID 0 sets to be converted to RAID 10.
A better approach, though more expensive, would be to switch to a RAID 5
configuration with a hot spare. Assuming that 240Gb is the required
storage, a three drive set in RAID 5 would suffice. To achieve that you'd
need one additional 120Gb drive. Again, you'd move one pair of the
existing set (md1) to the RAID controller and connect the additional
drive. With that you'd make a RAID 5 volume and transfer the data from
md0 to the RAID device. When done, take one of the md0 pairs and add that
to the RAID device as a hot spare. The remaining drive should be kept "on
the shelf" as a ready replacement. Now you have a fault tolerant
configuration that has to have three drives die before data loss occurs.
It's highly unlikely that three drives would die in rapid sucession,
before you could get the "ready replacement" connected and the array
The last alternative is to dump the existing data to tape, say DLT or
better, move all of the drives to a RAID controller (RAID5 + hot spare),
and recover the data from tape.
The instructions said to use Windows 98 or better, so I installed RedHat.