Gstripe during install
John Nielsen
lists at jnielsen.net
Fri Sep 7 05:32:02 PDT 2007
On Friday 07 September 2007, n j wrote:
> Hello,
>
> I have a machine which has 2 (identical) hard disks. I would like to
> create RAID-0 GEOM stripe (gstripe(8)) to merge these 2 disks into 1
> disk with larger capacity and install FreeBSD on it. There is this
> article (http://www.onlamp.com/pub/a/bsd/2005/11/10/FreeBSD_Basics.html)
> which shows how to setup RAID-1 gmirror during install suggesting that
> what I'm trying to accomplish is possible. However, I haven't found
> any pointers to doing same with gstripe. If anyone knows how to do
> this and if it's possible at all, please share.
>
> On the other hand, if setting up gstripe during install is not
> possible, is it possible to install FreeBSD on one disk and later
> setup the gstripe to use the entire capacity? Or, since performance is
> not a key issue here, maybe use gconcat?
>
> Any input is appreciated!
I assume you're aware of all the caveats that go along with using RAID-0 (no
redundancy, twice as likely to fail, etc.). You can't use the method Dru
outlines to create a gstripe volume since you can't add drives to a gstripe
after it's created. Also you can't boot from a gconcat volume like you can
from a gmirror volume.
It _is_ possible to use gconcat followed by growfs to add drives to an
existing volume, but I'm not sure it would be possible to boot from such a
volume.
If it were me, I would a small (for some definition of small considering
your disk space and software needs) partition on the first disk and install
everything to that. After the system is up, create an identical partition
on the second disk and set up gmirror between the two (see below). This
volume would house either the entire OS or just the root partition at your
option, but it needs to be large enough to house at least a minimal install
of the OS temporarily. I'd then create additional partitions using the
remaining space on each disk and turn those into a new, blank gstripe
volume. If you don't want the whole OS on your mirror, you could then
move /usr, etc over to the stripe volume (but you don't have to).
See this link for a more fail-safe way to create a mirror on an
already-running system than Dru's howto:
http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/geom-mirror.html
The key difference is that the handbook version has you create a new, blank
mirror and move everything to it (using dump/restore) instead of converting
an existing volume over to a mirror directly and running the risk of the
last sector getting clobbered by the GEOM metadata. On a whole disk the
last sector is _generally_ not used by the filesystem but it's best to be
sure, and the above statement is NOT true for partial-disk slices and/or
partitions, especially if their sizes are round (for some power of two)
numbers.
You'll also want to get at least minimally familiar with the fdisk, bsdlabel
and newfs commands.
Good luck and feel free to ask additional questions.
JN
More information about the freebsd-questions
mailing list