home | help
MFIUTIL(8)		     System Manager's Manual		      MFIUTIL(8)

NAME
     mfiutil -- Utility for managing LSI MegaRAID SAS controllers

SYNOPSIS
     mfiutil version
     mfiutil [-u unit] show adapter
     mfiutil [-u unit] show battery
     mfiutil [-u unit] show config
     mfiutil [-u unit] show drives
     mfiutil [-u unit] show events [-c class] [-l locale] [-n count] [-v]
	     [start [stop]]
     mfiutil [-u unit] show firmware
     mfiutil [-u unit] show logstate
     mfiutil [-u unit] show patrol
     mfiutil [-u unit] show volumes
     mfiutil [-u unit] fail drive
     mfiutil [-u unit] good drive
     mfiutil [-u unit] rebuild drive
     mfiutil [-u unit] drive progress drive
     mfiutil [-u unit] drive clear drive {start | stop}
     mfiutil [-u unit] start rebuild drive
     mfiutil [-u unit] abort rebuild drive
     mfiutil [-u unit] locate drive {on | off}
     mfiutil [-u unit] cache volume [setting [value]]
     mfiutil [-u unit] name volume name
     mfiutil [-u unit] volume progress volume
     mfiutil [-u unit] clear
     mfiutil [-u unit] create type [-v] [-s stripe_size] drive[,drive[,...]]
	     [drive[,drive[,...]]]
     mfiutil [-u unit] delete volume
     mfiutil [-u unit] add drive [volume]
     mfiutil [-u unit] remove drive
     mfiutil [-u unit] start patrol
     mfiutil [-u unit] stop patrol
     mfiutil [-u unit] patrol command [interval [start]]
     mfiutil [-u unit] flash file

DESCRIPTION
     The  mfiutil utility can be used to display or modify various parameters on
     LSI MegaRAID SAS RAID controllers.  Each invocation of mfiutil consists  of
     zero  or  more  global options followed by a command.  Commands may support
     additional optional or required arguments after the command.

     Currently one global option is supported:

     -u unit
	     unit specifies the unit of the controller to work with.  If no unit
	     is specified, then unit 0 is used.

     Volumes may be specified in two forms.  First, a volume may  be  identified
     by  its  target  ID.   Second, on the volume may be specified by the corre-
     sponding mfidX device, such as mfid0.

     Drives may be specified in two forms.  First, a drive may be identified  by
     its  device  ID.	The device ID for configured drives can be found in show
     config.  Second, a drive may be identified by  its  location  as  [Exx:]Syy
     where xx is the enclosure and yy is the slot for each drive as displayed in
     show drives.

     The  mfiutil  utility  supports  several different groups of commands.  The
     first group of commands provide information about the controller, the  vol-
     umes  it manages, and the drives it controls.  The second group of commands
     are used to manage the physical drives attached  to  the  controller.   The
     third  group  of commands are used to manage the logical volumes managed by
     the controller.  The fourth group of commands are used to manage the  drive
     configuration  for the controller.  The fifth group of commands are used to
     manage controller-wide operations.

     The informational commands include:

     version
	     Displays the version of mfiutil.

     show adapter
	     Displays information about the RAID controller such  as  the  model
	     number.

     show battery
	     Displays  information  about  the	battery  from the battery backup
	     unit.

     show config
	     Displays the volume and drive  configuration  for	the  controller.
	     Each  array  is  listed along with the physical drives the array is
	     built from.  Each volume is listed along with the arrays  that  the
	     volume  spans.   If  any hot spare drives are configured, then they
	     are listed as well.

     show drives
	     Lists all of the physical drives attached to the controller.

     show events [-c class] [-l locale] [-n count] [-v] [start [stop]]
	     Display entries from the controller's event  log.	 The  controller
	     maintains a circular buffer of events.  Each event is tagged with a
	     class and locale.

	     The  class  parameter limits the output to entries at the specified
	     class or higher.  The  default  class  is	"warn".   The  available
	     classes from lowest priority to highest are:

	     debug    Debug messages.

	     progress
		      Periodic progress updates for long-running operations such
		      as  background  initializations, array rebuilds, or patrol
		      reads.

	     info     Informational messages such as drive insertions and volume
		      creations.

	     warn     Indicates that some component may be close to failing.

	     crit     A component has failed, but no data is lost.  For example,
		      a volume becoming degraded due to a drive failure.

	     fatal    A component has failed resulting in data loss.

	     dead     The controller itself has died.

	     The locale parameter limits the output to entries for the specified
	     part of the controller.  The default locale is "all".   The  avail-
	     able locales are "volume", "drive", "enclousure", "battery", "sas",
	     "controller", "config", "cluster", and "all".

	     The count parameter is a debugging aid that specifies the number of
	     events  to  fetch	from  the controller for each low-level request.
	     The default is 15 events.

	     By default, matching event log entries from the  previous	shutdown
	     up  to  the  present are displayed.  This range can be adjusted via
	     the start and stop parameters.  Each of these parameters can either
	     be specified as a log entry number  or  as  one  of  the  following
	     aliases:

	     newest   The newest entry in the event log.

	     oldest   The oldest entry in the event log.

	     clear    The first entry since the event log was cleared.

	     shutdown
		      The  entry in the event log corresponding to the last time
		      the controller was cleanly shut down.

	     boot     The entry in the event log corresponding to the  most  re-
		      cent boot.

     show firmware
	     Lists all of the firmware images present on the controller.

     show logstate
	     Display the various sequence numbers associated with the event log.

     show patrol
	     Display the status of the controller's patrol read operation.

     show volumes
	     Lists all of the logical volumes managed by the controller.

     The physical drive management commands include:

     fail drive
	     Mark  drive  as failed.  Drive must be an online drive that is part
	     of an array.

     good drive
	     Mark drive as an unconfigured good drive.	Drive must not	be  part
	     of an existing array.

     rebuild drive
	     Mark  a failed drive that is still part of an array as a good drive
	     suitable for a rebuild.  The firmware should kick off an array  re-
	     build on its own if a failed drive is marked as a rebuild drive.

     drive progress drive
	     Report  the current progress and estimated completion time of drive
	     operations such as rebuilds or patrol reads.

     drive clear drive {start | stop}
	     Start or stop the writing of all 0x00 characters to a drive.

     start rebuild drive
	     Manually start a rebuild on drive.

     abort rebuild drive
	     Abort an in-progress rebuild operation on drive.  It can be resumed
	     with the start rebuild command.

     locate drive {on | off}
	     Change the state of the external LED associated with drive.

     The logical volume management commands include:

     cache volume [setting [value]]
	     If no setting argument is supplied, then the current  cache  policy
	     for  volume is displayed; otherwise, the cache policy for volume is
	     modified.	The optional setting argument can be one of the  follow-
	     ing values:

	     enable  Enable caching for both read and write I/O operations.

	     disable
		     Disable caching for both read and write I/O operations.

	     reads   Enable caching only for read I/O operations.

	     writes  Enable caching only for write I/O operations.

	     write-back
		     Use write-back policy for cached writes.

	     write-through
		     Use write-through policy for cached writes.

	     read-ahead [value]
		     Set  the read ahead policy for cached reads.  The value ar-
		     gument  can  be  set  to  either  "none",	"adaptive",   or
		     "always".

	     write-cache [value]
		     Control  the  write  caches  on the physical drives backing
		     volume.  The value argument can be set to either "disable",
		     "enable", or "default".

		     In general this setting should be left  disabled  to  avoid
		     data loss when the physical drives lose power.  The battery
		     backup  of  the  RAID  controller does not save data in the
		     write caches of the physical drives.

     name volume name
	     Sets the name of volume to name.

     volume progress volume
	     Report the current progress and estimated completion time of volume
	     operations such as consistency checks and initializations.

     The configuration commands include:

     clear   Delete the entire configuration including all volumes, arrays,  and
	     spares.

     create type [-v] [-s stripe_size] drive[,drive[,...]] [drive[,drive[,...]]]
	     Create a new volume.  The type specifies the type of volume to cre-
	     ate.  Currently supported types include:

	     jbod    Creates  a  RAID0	volume	for  each drive specified.  Each
		     drive must be specified as a separate argument.

	     raid0   Creates one RAID0 volume spanning the drives listed in  the
		     single drive list.

	     raid1   Creates  one RAID1 volume spanning the drives listed in the
		     single drive list.

	     raid5   Creates one RAID5 volume spanning the drives listed in  the
		     single drive list.

	     raid6   Creates  one RAID6 volume spanning the drives listed in the
		     single drive list.

	     raid10  Creates one RAID10 volume spanning multiple  RAID1  arrays.
		     The  drives  for each RAID1 array are specified as a single
		     drive list.

	     raid50  Creates one RAID50 volume spanning multiple  RAID5  arrays.
		     The  drives  for each RAID5 array are specified as a single
		     drive list.

	     raid60  Creates one RAID60 volume spanning multiple  RAID6  arrays.
		     The  drives  for each RAID6 array are specified as a single
		     drive list.

	     concat  Creates a single volume by concatenating all of the  drives
		     in the single drive list.

	     Note: Not all volume types are supported by all controllers.

	     If  the  -v  flag is specified after type, then more verbose output
	     will be enabled.  Currently this just provides notification as dri-
	     ves are added to arrays and arrays to  volumes  when  building  the
	     configuration.

	     The -s stripe_size parameter allows the stripe size of the array to
	     be set.  By default a stripe size of 64K is used.	Valid values are
	     512 through 1M, though the MFI firmware may reject some values.

     delete volume
	     Delete the volume volume.

     add drive [volume]
	     Mark  drive as a hot spare.  Drive must be in the unconfigured good
	     state.  If volume is specified, then the hot spare  will  be  dedi-
	     cated to arrays backing that volume.  Otherwise, drive will be used
	     as a global hot spare backing all arrays for this controller.  Note
	     that drive must be as large as the smallest drive in all of the ar-
	     rays it is going to back.

     remove drive
	     Remove  the hot spare drive from service.	It will be placed in the
	     unconfigured good state.

     The controller management commands include:

     patrol command [interval [start]]
	     Set the patrol read operation mode.  The command  argument  can  be
	     one of the following values:

	     disable
		     Disable patrol reads.

	     auto    Enable  periodic  patrol  reads  initiated by the firmware.
		     The optional interval argument specifies  the  interval  in
		     seconds  between  patrol  reads.  If patrol reads should be
		     run continously, then interval should consist of  the  word
		     "continuously".   The  optional  start argument specifies a
		     non-negative, relative start time for the next patrol read.
		     If an interval or start time is not specified, then the ex-
		     isting setting will be used.

	     manual  Enable manual patrol reads that are only initiated  by  the
		     user.

     start patrol
	     Start a patrol read operation.

     stop patrol
	     Stop a currently running patrol read operation.

     flash file
	     Updates  the  flash  on  the controller with the firmware stored in
	     file.  A reboot is required for the new firmware to take effect.

EXAMPLES
     Configure the cache for volume mfid0 to cache only writes:

	   mfiutil cache mfid0 writes
	   mfiutil cache mfid0 write-back

     Create a RAID5 array spanning the first four disks in the second enclosure:

	   mfiutil create raid5 e1:s0,e1:s1,e1:s2,e1:s4

     Configure the first three disks on a controller as JBOD:

	   mfiutil create jbod 0 1 2

     Create a RAID10 volume that spans two arrays each	of  which  contains  two
     disks from two different enclosures:

	   mfiutil create raid10 e1:s0,e1:s1 e2:s0,e2:s1

     Add drive with the device ID of 4 as a global hot spare:

	   mfiutil add 4

     Add  the  drive  in  slot	2  in the main chassis as a hot spare for volume
     mfid0:

	   mfiutil add s2 mfid0

     Configure the adapter to run periodic patrol reads once  a  week  with  the
     first patrol read starting in 5 minutes:

	   mfiutil patrol auto 604800 300

SEE ALSO
     mfi(4)

HISTORY
     The mfiutil utility first appeared in FreeBSD 8.0.

FreeBSD 8.0			 August 16, 2009		      MFIUTIL(8)

home | help