From owner-svn-src-projects@FreeBSD.ORG Thu Feb 3 12:19:07 2011 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 9AC5E106564A; Thu, 3 Feb 2011 12:19:07 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 893DE8FC12; Thu, 3 Feb 2011 12:19:07 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id p13CJ7Lq045127; Thu, 3 Feb 2011 12:19:07 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id p13CJ7gq045125; Thu, 3 Feb 2011 12:19:07 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201102031219.p13CJ7gq045125@svn.freebsd.org> From: Alexander Motin Date: Thu, 3 Feb 2011 12:19:07 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r218220 - projects/graid/head/sbin/geom/class/raid X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 03 Feb 2011 12:19:07 -0000 Author: mav Date: Thu Feb 3 12:19:07 2011 New Revision: 218220 URL: http://svn.freebsd.org/changeset/base/218220 Log: Initial manual page. Modified: projects/graid/head/sbin/geom/class/raid/graid.8 Modified: projects/graid/head/sbin/geom/class/raid/graid.8 ============================================================================== --- projects/graid/head/sbin/geom/class/raid/graid.8 Thu Feb 3 11:52:22 2011 (r218219) +++ projects/graid/head/sbin/geom/class/raid/graid.8 Thu Feb 3 12:19:07 2011 (r218220) @@ -24,7 +24,7 @@ .\" .\" $FreeBSD$ .\" -.Dd December 18, 2010 +.Dd February 3, 2010 .Dt GRAID 8 .Os .Sh NAME @@ -33,65 +33,40 @@ .Sh SYNOPSIS .Nm .Cm label -.Op Fl Fhnv -.Op Fl b Ar balance -.Op Fl s Ar slice -.Ar name -.Ar prov ... -.Nm -.Cm clear -.Op Fl v +.Op Fl S Ar size +.Op Fl s Ar strip +.Ar format +.Ar label +.Ar level .Ar prov ... .Nm -.Cm configure -.Op Fl adfFhnv -.Op Fl b Ar balance -.Op Fl s Ar slice +.Cm add +.Op Fl S Ar size +.Op Fl s Ar strip .Ar name +.Ar label +.Ar level .Nm -.Cm configure -.Op Fl v -.Fl p Ar priority +.Cm delete .Ar name -.Ar prov -.Nm -.Cm rebuild -.Op Fl v -.Ar name -.Ar prov ... +.Op Ar label | Ar num .Nm .Cm insert -.Op Fl hiv -.Op Fl p Ar priority .Ar name .Ar prov ... .Nm .Cm remove -.Op Fl v .Ar name .Ar prov ... .Nm -.Cm activate -.Op Fl v +.Cm fail .Ar name .Ar prov ... .Nm -.Cm deactivate -.Op Fl v -.Ar name -.Ar prov ... -.Nm -.Cm forget -.Op Fl v -.Ar name ... -.Nm .Cm stop .Op Fl fv .Ar name ... .Nm -.Cm dump -.Ar prov ... -.Nm .Cm list .Nm .Cm status @@ -102,128 +77,85 @@ .Sh DESCRIPTION The .Nm -utility is used for software RAID configurations. -After a RAID's creation, all components are detected and configured -automatically. -All operations like failure detection, stale component detection, rebuild -of stale components, etc.\& are also done automatically. -The -.Nm -utility uses on-disk metadata to store all needed information. +utility is used to manage software RAID configurations, supported by GEOM RAID +class. +GEOM RAID class uses on-disk metadata to provide access to software-RAID +volumes defined by different RAID BIOSes. +Depending on RAID BIOS type and it's metadata format, different subsets of +configurations and features supported. +To allow booting from RAID volume metadata format should match RAID BIOS type +and it's capabilities. +To guarantee this match it is recommended to create volumes via RAID BIOS +interface, while experienced users are free to do it using this utility. .Pp The first argument to .Nm indicates an action to be performed: -.Bl -tag -width ".Cm deactivate" +.Bl -tag -width ".Cm destroy" .It Cm label -Create a mirror. -The order of components is important, because a component's priority is based on its position -(starting from 0 to 255). -The component with the biggest priority is used by the -.Cm prefer -balance algorithm -and is also used as a master component when resynchronization is needed, -e.g.\& after a power failure when the device was open for writing. -.Pp -Additional options include: -.Bl -tag -width ".Fl b Ar balance" -.It Fl b Ar balance -Specifies balance algorithm to use, one of: -.Bl -tag -width ".Cm round-robin" -.It Cm load -Read from the component with the lowest load. -This is the default balance algorithm. -.It Cm prefer -Read from the component with the biggest priority. -.It Cm round-robin -Use round-robin algorithm when choosing component to read. -.It Cm split -Split read requests, which are bigger than or equal to slice size on N pieces, -where N is the number of active components. -.El -.It Fl F -Do not synchronize after a power failure or system crash. -Assumes device is in consistent state. -.It Fl h -Hardcode providers' names in metadata. -.It Fl n -Turn off autosynchronization of stale components. -.It Fl s Ar slice -When using the -.Cm split -balance algorithm and an I/O READ request is bigger than or equal to this value, -the I/O request will be split into N pieces, where N is the number of active -components. -Defaults to 4096 bytes. -.El -.It Cm clear -Clear metadata on the given providers. -.It Cm configure -Configure the given device. +Create an array with single volume. +.Ar format +argument specifies on-disk metadata format to use for this array, +such as "Intel". +.Ar label +argument specifies label of the created volume. +.Ar level +argument specifies RAID level of the created volume, such as: +"RAID0", "RAID1", etc. +Subsequent list enumerates providers to use as array components. +Special name "NONE" can be used to reserve space for absent disk. +The order of components can be important, depending on specific RAID level +and metadata format. .Pp Additional options include: -.Bl -tag -width ".Fl p Ar priority" -.It Fl a -Turn on autosynchronization of stale components. -.It Fl b Ar balance -Specifies balance algorithm to use. -.It Fl d -Do not hardcode providers' names in metadata. -.It Fl f -Synchronize device after a power failure or system crash. -.It Fl F -Do not synchronize after a power failure or system crash. -Assumes device is in consistent state. -.It Fl h -Hardcode providers' names in metadata. -.It Fl n -Turn off autosynchronization of stale components. -.It Fl p Ar priority -Specifies priority for the given component -.Ar prov . -.It Fl s Ar slice -Specifies slice size for -.Cm split -balance algorithm. -.El -.It Cm rebuild -Rebuild the given mirror components forcibly. -If autosynchronization was not turned off for the given device, this command -should be unnecessary. +.Bl -tag -width ".Fl s Ar strip" +.It Fl S Ar size +Use +.Ar size +bytes on each component for this volume. +Should be used if several volumes per array are planned, or if smaller +components going to be inserted later. +Defaults to size of the smallest component. +.It Fl s Ar strip +Specifies strip size in bytes. +Defaults to 131072. +.El +.It Cm add +Create another volume on the existing array. +.Ar name +argument is the name of existing array, reported by label command. +The rest of arguments are the same as for label command. +.It Cm delete +Delete volume(s) from the existing array. When last volume deleted, array is +also getting deleted and metadata erased. +.Ar name +argument is the name of existing array. +Optional +.Ar label +or +.Ar num +arguments allow to specify volume for deletion. .It Cm insert -Add the given component(s) to the existing mirror. -.Pp -Additional options include: -.Bl -tag -width ".Fl p Ar priority" -.It Fl h -Hardcode providers' names in metadata. -.It Fl i -Mark component(s) as inactive immediately after insertion. -.It Fl p Ar priority -Specifies priority of the given component(s). -.El +Insert specified provider(s) into specified array instead of the first missing +or failed components. +If there is no such components - mark disk(s) as spare. .It Cm remove -Remove the given component(s) from the mirror and clear metadata on it. -.It Cm activate -Activate the given component(s), which were marked as inactive before. -.It Cm deactivate -Mark the given component(s) as inactive, so it will not be automatically -connected to the mirror. -.It Cm forget -Forget about components which are not connected. -This command is useful when a disk has failed and cannot be reconnected, preventing the -.Cm remove -command from being used to remove it. +Remove specified provider(s) from specified array and erase metadata. +If there are spare disks present - removed disk will be replaced with one +of them. +.It Cm fail +Mark the given disks(s) as failed, removing from active use unless absolutely +necessary due to exhausted redundancy. +If there are spare disks present - failed disk(s) will be replaced with one +of them. .It Cm stop -Stop the given mirror. +Stop the given array. Metadata not erased. .Pp Additional options include: .Bl -tag -width ".Fl f" .It Fl f -Stop the given mirror even if it is opened. +Stop the given array even if some of it's volumes are opened. .El -.It Cm dump -Dump metadata stored on the given providers. .It Cm list See .Xr geom 8 . @@ -243,16 +175,23 @@ Additional options include: .It Fl v Be more verbose. .El +.Sh SUPPORTED METADATA FORMATS +GEOM RAID class implements modular design, allowing different metadata formats +to be used. Support for such formats is implemented now: +.Bl -tag -width "Intel" +.It Intel +Format supported by Intel RAID BIOS. Supports up to two volumes per array. +Supports such configurations: RAID0 (2+ disks), RAID1 (2 disks), +RAID5 (3+ disks), RAID10 (2 or 4 disks). +.El +.Sh SUPPORTED RAID LEVELS +GEOM RAID class implements modular design, allowing different RAID levels +to be used. Support for such formats is implemented now: RAID0, RAID1. .Sh EXIT STATUS -Exit status is 0 on success, and 1 if the command fails. +Exit status is 0 on success, and others if the command fails. .Sh SEE ALSO .Xr geom 4 , -.Xr dumpon 8 , .Xr geom 8 , -.Xr mount 8 , -.Xr newfs 8 , -.Xr savecore 8 , -.Xr umount 8 , .Xr vinum 8 .Sh HISTORY The @@ -261,3 +200,4 @@ utility appeared in .Fx 9.0 . .Sh AUTHORS .An Alexander Motin Aq mav@FreeBSD.org +.An M. Warner Losh Aq imp@FreeBSD.org