On Mon, 2010-10-25 at 16:35 -0700, Derek Simkowiak wrote:
> But I suspect that plan will fail because the RAID-1 disks will be
> useless to anyone who does not have the specific make-and-model of eSATA
> drive case. For example, an LSI card will not recognize a 3ware RAID
> set on a batch of disks, so I suspect that a simple (non-RAID) SATA
> controller on a mobo will not be able to do anything with a single disk
> of the RAID-1 setup mentioned above.
>
> Or am I wrong because RAID-1 does no striping, just simple
> mirroring? Does anyone have experience with this?
RAID1 does do simple mirroring, *however* all RAID (hardware and
software) involves writing extra information to each disk to describe
the array. As you've noted there is no standard for this and no
cross-compatibility between vendors (you can't count on it, but there
will often be compatibility within vendors' product lines - for example
a 3ware array built on a 9xxx controller will probably detect on any
other 9xxx controller).
However, software RAID will work pretty much the way you want - for
example a Linux md partition will read with any recent Linux kernel with
the appropriate config options compiled in.
> Is there a better way to copy tons of stuff to two disk
> simultaneously, AND be able to take a single disk of the pair to do a
> restore? (Another concern I have is that hardware "rebuilding" a new
> RAID-1 array each time will add hours of delay to the process, even
> though the two new disks are blank.)
An array doesn't have to be entirely wiped out before it can be used for
the first time, and even if you elect to do that, a decent controller
can do it in the background while you use the array.
The other way you could do it is do something like this:
* Partition and mount the drives.
* Use mkfifo to make a temporary fifo
* Start a copy of tar to extract anything that appears in this fifo to
one of the destinations (it'll block until you dump something to the
fifo).
* Use tar to dump a new tar file of the original of your data to stdout
("-" for stdout).
* Pipe this to tee. Specify the filename of the fifo to the tee command.
* Pipe the output of tee to a tar command that will extract the data to
the second destination.
* Delete the temporary fifo.
* Unmount the drives.
--
Robert Woodcock - [email protected]
"Most truths are so naked that people feel sorry for them and cover them
up, at least a little bit."
-- Edward R. Murrow