DragonFly On-Line Manual Pages


MFIUTIL(8)	       DragonFly 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 [-d] [-e] [-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 [-d] [-e] [-u unit] show patrol mfiutil [-d] [-e] [-u unit] show progress 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] foreign scan mfiutil [-u unit] foreign drives mfiutil [-u unit] foreign clear [config] mfiutil [-u unit] foreign display [config] mfiutil [-u unit] foreign preview [config] mfiutil [-u unit] foreign import [config] 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 con- sists 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. Various commands accept either or both of the two options: -d Print numeric device IDs as drive identifier. This is the default. Useful in combination with -e to print both, numeric device IDs and enclosure:slot information. -e Print drive identifiers in enclosure:slot form. See next para- graph on format details in context of input rather than output. 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. 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. The mfiutil utility supports several different groups of commands. The first group of commands provide information about the controller, the volumes it manages, and the drives it controls. The second group of com- mands are used to manage the physical drives attached to the controller. The third group of commands are used to manage the logical volumes man- aged 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 vol- ume creations. warn Indicates that some component may be close to failing. crit A component has failed, but no data is lost. For exam- ple, 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 speci- fied part of the controller. The default locale is ``all''. The available locales are ``volume'', ``drive'', ``enclosure'', ``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 fol- lowing 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 recent 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 progress Report the current progress and estimated completion time for active operations on all volumes and drives. 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 rebuild 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 arguments are supplied, then the current cache pol- icy for volume is displayed; otherwise, the cache policy for volume is modified. One or more setting arguments may be given. Some settings take an additional value argument as noted below. The valid settings are: 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 argument can be set to either ``none'', ``adaptive'', or ``always''. bad-bbu-write-cache value Control the behavior of I/O write caching if the battery is dead or missing. The value argument can be set to either ``disable'' or ``enable''. In general this set- ting should be left disabled to avoid data loss when the system loses power. 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 bat- tery 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 vol- ume 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 create. 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 drives 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 val- ues 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 dedicated to arrays backing that volume. Otherwise, drive will be used as a global hot spare backing all arrays for this con- troller. Note that drive must be as large as the smallest drive in all of the arrays 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 continuously, then interval should consist of the word ``continuously''. The optional start argument spec- ifies a non-negative, relative start time for the next patrol read. If an interval or start time is not speci- fied, then the existing 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. foreign scan Scan for foreign configurations and display the number found. The config argument for the commands below takes the form of a number from 0 to the total configurations found. foreign drives Scan for drives flagged as foreign and display them. foreign clear [config] Clear the specified foreign config or all if no config argument is provided. foreign display [config] Display the specified foreign config or all if no config argument is provided. foreign preview [config] Preview the specified foreign config after import or all if no config argument is provided. foreign import [config] Import the specified foreign config or all if no config argument is provided. 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 enclo- sure: 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. DragonFly 3.7 April 1, 2013 DragonFly 3.7