1 .\" Copyright (c) 2008, 2009 Yahoo!, Inc.
2 .\" All rights reserved.
4 .\" Redistribution and use in source and binary forms, with or without
5 .\" modification, are permitted provided that the following conditions
7 .\" 1. Redistributions of source code must retain the above copyright
8 .\" notice, this list of conditions and the following disclaimer.
9 .\" 2. Redistributions in binary form must reproduce the above copyright
10 .\" notice, this list of conditions and the following disclaimer in the
11 .\" documentation and/or other materials provided with the distribution.
12 .\" 3. The names of the authors may not be used to endorse or promote
13 .\" products derived from this software without specific prior written
16 .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
17 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19 .\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
20 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
21 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
22 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
23 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
24 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
25 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
35 .Nd Utility for managing LSI MegaRAID SAS controllers
58 .Op Ar start Op Ar stop
85 .Cm drive progress Ar drive
88 .Cm drive clear Ar drive Brq "start | stop"
91 .Cm start rebuild Ar drive
94 .Cm abort rebuild Ar drive
97 .Cm locate Ar drive Brq "on | off"
100 .Cm cache Ar volume Op Ar setting Op Ar value
103 .Cm name Ar volume Ar name
106 .Cm volume progress Ar volume
114 .Op Fl s Ar stripe_size
115 .Ar drive Ns Op \&, Ns Ar drive Ns Op ",..."
116 .Op Ar drive Ns Op \&, Ns Ar drive Ns Op ",..."
122 .Cm add Ar drive Op Ar volume
134 .Cm patrol Ar command Op Ar interval Op Ar start
141 utility can be used to display or modify various parameters on LSI
142 MegaRAID SAS RAID controllers.
145 consists of zero or more global options followed by a command.
146 Commands may support additional optional or required arguments after the
149 Currently one global option is supported:
150 .Bl -tag -width indent
153 specifies the unit of the controller to work with.
154 If no unit is specified,
158 Volumes may be specified in two forms.
160 a volume may be identified by its target ID.
162 on the volume may be specified by the corresponding
168 Drives may be specified in two forms.
170 a drive may be identified by its device ID.
171 The device ID for configured drives can be found in
174 a drive may be identified by its location as
184 is the slot for each drive as displayed in
189 utility supports several different groups of commands.
190 The first group of commands provide information about the controller,
191 the volumes it manages, and the drives it controls.
192 The second group of commands are used to manage the physical drives
193 attached to the controller.
194 The third group of commands are used to manage the logical volumes
195 managed by the controller.
196 The fourth group of commands are used to manage the drive configuration for
198 The fifth group of commands are used to manage controller-wide operations.
200 The informational commands include:
201 .Bl -tag -width indent
203 Displays the version of
206 Displays information about the RAID controller such as the model number.
208 Displays information about the battery from the battery backup unit.
210 Displays the volume and drive configuration for the controller.
211 Each array is listed along with the physical drives the array is built from.
212 Each volume is listed along with the arrays that the volume spans.
213 If any hot spare drives are configured, then they are listed as well.
215 Lists all of the physical drives attached to the controller.
216 .It Xo Cm show events
221 .Op Ar start Op Ar stop
223 Display entries from the controller's event log.
224 The controller maintains a circular buffer of events.
225 Each event is tagged with a class and locale.
229 parameter limits the output to entries at the specified class or higher.
232 The available classes from lowest priority to highest are:
233 .Bl -tag -width -indent
237 Periodic progress updates for long-running operations such as background
238 initializations, array rebuilds, or patrol reads.
240 Informational messages such as drive insertions and volume creations.
242 Indicates that some component may be close to failing.
244 A component has failed, but no data is lost.
245 For example, a volume becoming degraded due to a drive failure.
247 A component has failed resulting in data loss.
249 The controller itself has died.
254 parameter limits the output to entries for the specified part of the controller.
255 The default locale is
257 The available locales are
271 parameter is a debugging aid that specifies the number of events to fetch from
272 the controller for each low-level request.
273 The default is 15 events.
275 By default, matching event log entries from the previous shutdown up to the
276 present are displayed. This range can be adjusted via the
281 Each of these parameters can either be specified as a log entry number or as
282 one of the following aliases:
283 .Bl -tag -width -indent
285 The newest entry in the event log.
287 The oldest entry in the event log.
289 The first entry since the event log was cleared.
291 The entry in the event log corresponding to the last time the controller was
294 The entry in the event log corresponding to the most recent boot.
297 Lists all of the firmware images present on the controller.
299 Display the various sequence numbers associated with the event log.
301 Display the status of the controller's patrol read operation.
303 Report the current progress and estimated completion time for active
304 operations on all volumes and drives.
306 Lists all of the logical volumes managed by the controller.
309 The physical drive management commands include:
310 .Bl -tag -width indent
316 must be an online drive that is part of an array.
320 as an unconfigured good drive.
322 must not be part of an existing array.
323 .It Cm rebuild Ar drive
326 that is still part of an array as a good drive suitable for a rebuild.
327 The firmware should kick off an array rebuild on its own if a failed drive
328 is marked as a rebuild drive.
329 .It Cm drive progress Ar drive
330 Report the current progress and estimated completion time of drive operations
331 such as rebuilds or patrol reads.
332 .It Cm drive clear Ar drive Brq "start | stop"
333 Start or stop the writing of all 0x00 characters to a drive.
334 .It Cm start rebuild Ar drive
335 Manually start a rebuild on
337 .It Cm abort rebuild Ar drive
338 Abort an in-progress rebuild operation on
340 It can be resumed with the
343 .It Cm locate Ar drive Brq "on | off"
344 Change the state of the external LED associated with
348 The logical volume management commands include:
349 .Bl -tag -width indent
350 .It Cm cache Ar volume Op Ar setting Op Ar value
353 argument is supplied, then the current cache policy for
362 argument can be one of the following values:
363 .Bl -tag -width indent
365 Enable caching for both read and write I/O operations.
367 Disable caching for both read and write I/O operations.
369 Enable caching only for read I/O operations.
371 Enable caching only for write I/O operations.
373 Use write-back policy for cached writes.
375 Use write-through policy for cached writes.
376 .It Cm read-ahead Ar value
377 Set the read ahead policy for cached reads.
380 argument can be set to either
385 .It Cm bad-bbu-write-cache Ar value
386 Control the behavior of I/O write caching if the battery is dead or
390 argument can be set to either
394 In general this setting should be left disabled to avoid data loss when
395 the system loses power.
396 .It Cm write-cache Ar value
397 Control the write caches on the physical drives backing
401 argument can be set to either
407 In general this setting should be left disabled to avoid data loss when the
408 physical drives lose power.
409 The battery backup of the RAID controller does not save data in the write
410 caches of the physical drives.
412 .It Cm name Ar volume Ar name
417 .It Cm volume progress Ar volume
418 Report the current progress and estimated completion time of volume operations
419 such as consistency checks and initializations.
422 The configuration commands include:
423 .Bl -tag -width indent
425 Delete the entire configuration including all volumes, arrays, and spares.
426 .It Xo Cm create Ar type
428 .Op Fl s Ar stripe_size
429 .Ar drive Ns Op \&, Ns Ar drive Ns Op ",..."
430 .Op Ar drive Ns Op \&, Ns Ar drive Ns Op ",..."
435 specifies the type of volume to create.
436 Currently supported types include:
437 .Bl -tag -width indent
439 Creates a RAID0 volume for each drive specified.
440 Each drive must be specified as a separate argument.
442 Creates one RAID0 volume spanning the drives listed in the single drive list.
444 Creates one RAID1 volume spanning the drives listed in the single drive list.
446 Creates one RAID5 volume spanning the drives listed in the single drive list.
448 Creates one RAID6 volume spanning the drives listed in the single drive list.
450 Creates one RAID10 volume spanning multiple RAID1 arrays.
451 The drives for each RAID1 array are specified as a single drive list.
453 Creates one RAID50 volume spanning multiple RAID5 arrays.
454 The drives for each RAID5 array are specified as a single drive list.
456 Creates one RAID60 volume spanning multiple RAID6 arrays.
457 The drives for each RAID6 array are specified as a single drive list.
459 Creates a single volume by concatenating all of the drives in the single drive
464 Not all volume types are supported by all controllers.
468 flag is specified after
470 then more verbose output will be enabled.
471 Currently this just provides notification as drives are added to arrays and
472 arrays to volumes when building the configuration.
477 parameter allows the stripe size of the array to be set.
478 By default a stripe size of 64K is used.
479 Valid values are 512 through 1M, though the MFI firmware may reject some
481 .It Cm delete Ar volume
484 .It Cm add Ar drive Op Ar volume
489 must be in the unconfigured good state.
493 then the hot spare will be dedicated to arrays backing that volume.
496 will be used as a global hot spare backing all arrays for this controller.
499 must be as large as the smallest drive in all of the arrays it is going to
501 .It Cm remove Ar drive
505 It will be placed in the unconfigured good state.
508 The controller management commands include:
509 .Bl -tag -width indent
510 .It Cm patrol Ar command Op Ar interval Op Ar start
511 Set the patrol read operation mode.
514 argument can be one of the following values:
515 .Bl -tag -width indent
517 Disable patrol reads.
519 Enable periodic patrol reads initiated by the firmware.
522 argument specifies the interval in seconds between patrol reads.
523 If patrol reads should be run continuously,
526 should consist of the word
530 argument specifies a non-negative, relative start time for the next patrol read.
531 If an interval or start time is not specified,
532 then the existing setting will be used.
534 Enable manual patrol reads that are only initiated by the user.
537 Start a patrol read operation.
539 Stop a currently running patrol read operation.
541 Updates the flash on the controller with the firmware stored in
543 A reboot is required for the new firmware to take effect.
546 Configure the cache for volume mfid0 to cache only writes:
548 .Dl Nm Cm cache mfid0 writes
549 .Dl Nm Cm cache mfid0 write-back
551 Create a RAID5 array spanning the first four disks in the second enclosure:
553 .Dl Nm Cm create raid5 e1:s0,e1:s1,e1:s2,e1:s4
555 Configure the first three disks on a controller as JBOD:
557 .Dl Nm Cm create jbod 0 1 2
559 Create a RAID10 volume that spans two arrays each of which contains two disks
560 from two different enclosures:
562 .Dl Nm Cm create raid10 e1:s0,e1:s1 e2:s0,e2:s1
564 Add drive with the device ID of 4 as a global hot spare:
568 Add the drive in slot 2 in the main chassis as a hot spare for volume mfid0:
570 .Dl Nm Cm add s2 mfid0
572 Configure the adapter to run periodic patrol reads once a week with the first
573 patrol read starting in 5 minutes:
575 .Dl Nm Cm patrol auto 604800 300
582 utility first appeared in