LUXADM(8) Maintenance Commands and Procedures LUXADM(8)

NAME


luxadm - administer Sun Fire 880 storage subsystem and FC_AL devices

SYNOPSIS


luxadm [options]... subcommand [options]... enclosure
[,dev] | pathname...


DESCRIPTION


The luxadm program is an administrative command that manages the
SENA, Sun Fire 880 internal storage subsystem, and individual Fiber
Channel Arbitrated Loop (FC_AL) devices. luxadm performs a variety of
control and query tasks depending on the command line arguments and
options used.


The command line must contain a subcommand. The command line may also
contain options, usually at least one enclosure name or pathname, and
other parameters depending on the subcommand. You need specify only
as many characters as are required to uniquely identify a subcommand.


Specify the device that a subcommand interacts with by entering a
pathname. For the SENA subsystem, a disk device or enclosure services
controller may instead be specified by entering the World Wide Name
(WWN) for the device or a port to the device. The device may also be
specified by entering the name of the SENA enclosure, and an optional
identifier for the particular device in the enclosure. The individual
FC_AL devices may be specified by entering the WWN for the device or
a port to the device.

Pathname


Specify the device or controller by either a complete physical
pathname or a complete logical pathname.


For SENA, a typical physical pathname for a device is:

/devices/sbus@1f,0/SUNW,socal@1,0/sf@0,0/ssd@w2200002037000f96,
0:a,raw


For all SENA IBs (Interface Boards) and Sun Fire 880 SES device
controllers on the system, a logical link to the physical paths is
kept in the directory /dev/es. An example of a logical link is
/dev/es/ses0.


The WWN may be used in place of the pathname to select an FC_AL
device, SENA subsystem IB, or Sun Fire 880 internal storage
subsystem. The WWN is a unique 16 hexadecimal digit value that
specifies either the port used to access the device or the device
itself. A typical WWN value is:

2200002037000f96


See NOTES for more information on the WWN formats.


For a disk in a Sun Fire 880 internal storage subsystem, a typical
physical pathname is:

/devices/pci@8,600000/SUNW,qlc@2/fp@0,0/ssd@w2100002037a6303c,0:a


and a typical logical pathname is:

/dev/rdsk/c2t8d0s2


For individual FC_AL devices, a typical physical pathname is:

/devices/sbus@3.0/SUNW,socal@d,10000/sf@0,0/ssd@w2200002037049fc3,0:a,raw


and a typical logical pathname is:

/dev/rdsk/c1t0d0s2


Enclosure


For SENA, a device may be identified by its enclosure name and
slotname:
box_name[,fslot_number]
box_name[,rslot_number]


box_name is the name of the SENA enclosure, as specified by the
enclosure_name subcommand. When used without the optional slot_number
parameter, the box_name identifies the SENA subsystem IB.


f or r specifies the front or rear slots in the SENA enclosure.


slot_number specifies the slot number of the device in the SENA
enclosure, 0-6 or 0-10.


For a Sun Fire 880 internal storage subsystem, a device may also be
identified by its enclosure name and slot name. However, there is
only one set of disks:

box_name[,sslot_number]


box_name is the name of the Sun Fire 880 enclosure, as specified by
the enclosure_name subcommand. When used without the optional
slot_number parameter, box_name identifies the Sun Fire 880 internal
storage subsystem enclosure services device. Use s to specify the
disk slot number in the Sun Fire 880 internal storage subsystem, 0 -
11.


See disks(8) and devlinks(8) for additional information on logical
names for disks and subsystems.

OPTIONS


The following options are supported by all subcommands:

-e
Expert mode. This option is not recommended for the novice
user.


-v
Verbose mode.


Options that are specific to particular subcommands are described
with the subcommand in the USAGE section.

OPERANDS


The following operands are supported:

enclosure

The box_name of the SENA or Sun Fire 880 internal storage
subsystem.


fibre_channel_HBA_port

The path to the host controller port. A typical path is:

/devices/pci@8,600000/pci@1/SUNW,qlc@4/fp@0,0:devctl


pathname

The logical or physical path of a SENA IB, Sun Fire 880 internal
storage subsystem, or disk device. pathname can also be the WWN
of a SENA IB, SENA disk, or individual FC_AL device.


USAGE


Subcommands


display enclosure[,dev]...| pathname...
display -p pathname...
display -r enclosure[,dev]...| pathname...
display -v enclosure[,dev]...| pathname...

Displays enclosure or device specific data.

Subsystem data consists of enclosure environmental sense
information and status for all subsystem devices, including
disks.

Disk data consists of inquiry, capacity, and configuration
information.

-p
Displays performance information for the device or
subsystem specified by pathname. This option only applies
to subsystems that accumulate performance information.


-r
Displays error information for the FC_AL device specified
by the pathname, or, if the path is a SENA, for all devices
on the loop. The -r option only applies to SENA subsystems
and individual FC_AL devices.


-v
Displays in verbose mode, including mode sense data.


download [ -s ] [ -f filename_path ] enclosure...

Download the prom image pointed to the SENA subsystem Interface
Board unit or the Sun Fire 880 internal storage subsystem
specified by the enclosure or pathname.

When the SENA's download is complete, the SENA will be reset and
the downloaded code executed. If no filename is specified, the
default prom image will be used. The default prom image for the
SENA is in the directory /usr/lib/locale/C/LC_MESSAGES and is
named ibfirmware

When the Sun Fire 880 internal storage subsystem's download is
complete, the subsystem resets and the downloaded code begins
execution. The default firmware image for the Sun Fire 880
internal storage subsystem is in: /usr/platform/SUNW,Sun-
Fire-880/lib/images/int_fcbpl_fw.

-s
Save. The -s option is used to save the downloaded firmware
in the FEPROM. If -s is not specified, the downloaded
firmware will not be saved across power cycles.

The -s option does not apply to the Sun Fire 880 internal
storage subsystem as it always stores downloaded firmware
in the flash memory.

When using the -s option, the download subcommand modifies
the FEPROM on the subsystem and should be used with
caution.


enclosure_name new_name enclosure | pathname

Change the enclosure name of the enclosure or enclosures
specified by the enclosure or pathname. The new name (new_name)
must be 16 or less characters. Only alphabetic or numeric
characters are acceptable. This subcommand applies only to the
SENA and the Sun Fire 880 internal storage subsystem.


failover primary | secondary pathname

Select which Sun Storage T3 storage array partner group
controller accesses a given logical volume. If primary is
specified, the logical volume is accessed through the primary
controller. If secondary is specified, the logical volume is
accessed through the secondary controller specified by pathname.


fcal_s_download [ -f fcode-file ]

Download the fcode contained in the file fcode-file into all the
FC100/S Sbus Cards. This command is interactive and expects user
confirmation before downloading the fcode.

Use fcal_s_download only in single-user mode. Using
fcal_s_download to update a host adapter while there is I/O
activity through that adapter will cause the adapter to reset.
Newly updated FCode will not be executed or visible until a
system reboot.

-f fcode-file
When invoked without the -f option, the current
version of the fcode in each FC100/S Sbus card
is printed.


fcode_download -p
fcode_download -d dir-name

Locate the installed FC/S, FC100/S, FC100/P, or FC100/2P host bus
adapter cards and download the FCode files in dir-name to the
appropriate cards. The command determines the correct card for
each type of file, and is interactive. User confirmation is
required before downloading the FCode to each device.

Use fcode_download to load FCode only in single-user mode. Using
fcode_download to update a host adapter while there is I/O
activity through that adapter causes the adapter to reset. Newly
updated FCode will not be executed or visible until a system
reboot.

-d dir-name
Download the FCode files contained in the
directory dir-name to the appropriate adapter
cards.


-p
Prints the current version of FCode loaded on each
card. No download is performed.


inquiry enclosure[,dev ]... | pathname...

Display the inquiry information for the selected device specified
by the enclosure or pathname.


insert_device [ enclosure,dev... ]

Assist the user in the hot insertion of a new device or a chain
of new devices. Refer to NOTES for limitations on hotplug
operations. This subcommand applies only to the SENA, Sun Fire
880 internal storage subsystem, and individual FC_AL drives. For
the SENA, if more than one enclosure has been specified,
concurrent hot insertions on multiple busses can be performed.
With no arguments to the subcommand, entire enclosures or
individual FC_AL drives can be inserted. For the SENA or the Sun
Fire 880 internal storage subsystem, this subcommand guides the
user interactively through the hot insertion steps of a new
device or chain of devices. If a list of disks was entered it
will ask the user to verify the list of devices to be inserted is
correct, at which point the user can continue or quit. It then
interactively asks the user to insert the disk(s) or enclosure(s)
and then creates and displays the logical pathnames for the
devices.


led enclosure,dev...| pathname...

Display the current state of the LED associated with the disk
specified by the enclosure or pathname. This subcommand only
applies to subsystems that support this functionality.


led_blink enclosure,dev...| pathname...

Requests the subsystem to start blinking the LED associated with
the disk specified by the enclosure or pathname. This subcommand
only applies to subsystems that support this functionality.


led_off enclosure,dev...| pathname...

Requests the subsystem to disable (turn off) the LED associated
with the disk specified by the enclosure or pathname. On a SENA
subsystem, this may or may not cause the LED to turn off or stop
blinking depending on the state of the SENA subsystem. Refer to
the SENA Array Installation and Service Manual (p/n 802-7573).
This subcommand only applies to subsystems that support this
functionality.


led_on pathname...

Requests the subsystem to enable (turn on) the LED associated
with the disk specified by the pathname. This subcommand only
applies to subsystems that support this functionality.


power_off [ -F ] enclosure[,dev]... | pathname ...

When a SENA is addressed, this subcommand causes the SENA
subsystem to go into the power-save mode. The SENA drives are not
available when in the power-save mode. When a drive in a SENA is
addressed the drive is set to the drive off/unmated state. In the
drive off/unmated state, the drive is spun down (stopped) and in
bypass mode. This command does not apply to the Sun Fire 880
internal storage subsystem.

-F
The force option only applies to the SENA. Instructs luxadm
to attempt to power off one or more devices even if those
devices are being used by this host (and are, therefore,
busy).

Warning: Powering off a device which has data that is
currently being used will cause unpredictable results.
Users should attempt to power off the device normally
(without -F) first, only resorting to this option when sure
of the consequences of overriding normal checks.


power_on enclosure[,dev]..

Causes the SENA subsystem to go out of the power-save mode, when
this subcommand is addressed to a SENA. When this subcommand is
addressed to a drive the drive is set to its normal start-up
state. This command does not apply to the Sun Fire 880 internal
storage subsystem.


probe [ -p ]

Finds and displays information about all attached SENA
subsystems, Sun Fire 880 internal storage subsystems, and
individual FC_AL devices, including the logical pathname, the
WWNs, and enclosure names. This subcommand warns the user if it
finds different SENAs with the same enclosure names.

-p
Includes the physical pathname in the display.


qlgc_s_download [ -f fcode-file ]

Download the FCode contained in the file fcode-file into all the
FC100/P, FC100/2P PCI host adapter cards. This command is
interactive and expects user confirmation before downloading the
FCode to each device. Only use qlgc_s_download in single-user
mode. Using qlgc_s_download to update a host adapter while there
is I/O activity through that adapter will cause the adapter to
reset. Newly updated FCode will not be executed or visible until
a system reboot.

-f fcode-file
When invoked without the -f option, the current
version of the FCode in each FC100/P, FC100/2P
PCI card is printed.


release pathname

Release a reservation held on the specified disk. The pathname
should be the physical or logical pathname for the disk.

This subcommand is included for historical and diagnostic
purposes only.


remove_device [ -F ] enclosure[,dev]...| pathname...

Assists the user in hot removing a device or a chain of devices.
This subcommand can also be used to remove entire enclosures.
This subcommand applies to the SENA, Sun Fire 880 internal
storage subsystem, and individual FC_AL drives. Refer to NOTES
for limitations on hotplug operations. For the SENA, Sun Fire 880
internal storage subsystem, and individual FC_AL devices, this
subcommand guides the user through the hot removal of a device or
devices. During execution it will ask the user to verify the list
of devices to be removed is correct, at which point the user can
continue or quit. It then prepares the disk(s) or enclosure(s)
for removal and interactively asks the user to remove the disk(s)
or enclosure(s).

For Multi-Hosted disk, the steps taken are:

o Issue the luxadm remove_device command on the first
host. When prompted to continue, wait.

o Issue the luxadm remove_device command on the
secondary hosts. When prompted to continue, wait.

o Continue with the remove_device command on the first
host. Remove the device when prompted to do so.

o Complete the luxadm remove_device command on the
additional hosts.

-F
Instructs luxadm to attempt to hot plug one or more devices
even if those devices are being used by this host (and are,
therefore, busy or reserved), to force the hotplugging
operation.

Warning: Removal of a device which has data that is
currently being used will cause unpredictable results.
Users should attempt to hotplug normally (without -F)
first, only resorting to this option when sure of the
consequences of overriding normal hotplugging checks.


reserve pathname

Reserve the specified disk for exclusive use by the issuing host.
The pathname used should be the physical or logical pathname for
the disk.

This subcommand is included for historical and diagnostic
purposes only.


set_boot_dev [ -y ] pathname

Set the boot-device variable in the system PROM to the physical
device name specified by pathname, which can be a block special
device or the pathname of the directory on which the boot file
system is mounted. The command normally runs interactively
requesting confirmation for setting the default boot-device in
the PROM. The -y option can be used to run it non-interactively,
in which case no confirmation is requested or required.


start pathname

Spin up the specified disk(s) in a SENA.


stop pathname...

Spin down the specified disks in a SENA.


SENA, Sun Fire 880 Internal Storage Subsystem, and Individual FC_AL Drive
Expert Mode Subcommands
The following subcommands are for expert use only, and are applicable
only to the SENA, Sun Fire 880 internal storage subsystem, and fiber
channel loops. They should only be used by users that are
knowledgeable about the SENA subsystem and fiber channel loops.


If you specify a disk to an expert subcommand that operates on a bus,
the subcommand operates on the bus to which the specified disk is
attached.

-e bypass [-ab] enclosure,dev
-e bypass -f enclosure

Request the enclosure services controller to set the LRC (Loop
Redundancy Circuit) to the bypassed state for the port and device
specified.

This subcommand supports the following options:

-a
Bypass port a of the device specified.


-b
Bypass port b of the device specified.


-e dump_map fibre_channel_HBA_port

Display WWN data for a target device or host bus adapter on the
specified fibre channel port. If there are no target devices on
the specified port, an error is returned.


-e enable [-ab] enclosure,dev
-e enable -f enclosure

Request the enclosure services controller to set the LRC (Loop
Redundancy Circuit) to the enabled state for the port and device
specified.

This subcommand supports the following options:

-a
Enable port a of the device specified.


-b
Enable port b of the device specified.


-e forcelip enclosure[,dev] ... | pathname...

Force the link to reinitialize, using the Loop Initialization
Primitive (LIP) sequence. The enclosure or pathname can specify
any device on the loop. Use the pathname to specify a specific
path for multiple loop configurations.

This is an expert only command and should be used with caution.
It will reset all ports on the loop.


-e rdls enclosure[,dev] ... | pathname...

Read and display the link error status information for all
available devices on the loop that contains the device specified
by the enclosure or pathname.


Other Expert Mode Subcommands


See NOTES for limitations of these subcommands. They should only be
used by users that are knowledgeable about the systems they are
managing.


These commands do not apply to the Sun Fire 880 internal storage
subsystem.

-e bus_getstate pathname
Get and display the state of the
specified bus.


-e bus_quiesce pathname
Quiesce the specified bus.


-e bus_reset pathname
Reset the specified bus only.


-e bus_resetall pathname
Reset the specified bus and all devices.


-e bus_unquiesce pathname
Unquiesce the specified bus. the
specified device.


-e dev_getstate pathname
Get and display the state of the
specified device.


-e dev_reset pathname
Reset the specified device.


-e offline pathname
Take the specified device offline.


-e online pathname
Put the specified device online.


EXAMPLES


Example 1: Displaying the SENAs and Individual FC_AL Devices on a


System


The following example finds and displays all of the SENAs and
individual FC_AL devices on a system:


example% luxadm probe


Example 2: Displaying a SENA or Sun Fire 880 Internal Storage


Subsystem


The following example displays a SENA or Sun Fire 880 internal
storage subsystem:


example% luxadm display /dev/es/ses0


Example 3: Displaying Two Subsystems




The following example displays two subsystems using the enclosure
names:


example% luxadm display BOB system1


Example 4: Displaying Information about the First Disk




The following example displays information about the first disk in
the front of the enclosure named BOB. Use f to specify the front
disks. Use r to specify the rear disks.


example% luxadm display BOB,f0


Example 5: Displaying Information on a Sun Fire 880 Internal Storage


Subsystem


The Sun Fire 880 internal storage subsystem has only one set of
disks. In this case, use s to specify the slot:


example% luxadm display BOB,s0


Example 6: Displaying Information about a SENA disk, an Enclosure, or


an Individual FC_AL Drive


The following example displays information about a SENA disk, an
enclosure, or an individual FC_AL drive with the port WWN of
2200002037001246:


example% luxadm display 2200002037001246


Example 7: Using Unique Characters to Issue a Subcommand




The following example uses only as many characters as are required to
uniquely identify a subcommand:


example% luxadm disp BOB


Example 8: Displaying Error Information




The following example displays error information about the loop that
the enclosure BOB is on:


example% luxadm display -r BOB


Example 9: Downloading New Firmware into the Interface Board




The following example downloads new firmware into the Interface Board
in the enclosure named BOB (using the default path for the file to
download):


example% luxadm download -s BOB


Example 10: Displaying Information from the SCSI Inquiry Command




The following example displays information from the SCSI inquiry
command from all individual disks on the system, using only as many
characters as necessary to uniquely identify the inquiry subcommand:


example% luxadm inq /dev/rdsk/c?t?d?s2


Example 11: Hotplugging




The following example hotplugs a new drive into the first slot in the
front of the enclosure named BOB:


example% luxadm insert_device BOB,f0


The following example hotplugs a new drive into the first slot in the
Sun Fire 880 internal storage subsystem named SF880-1:


example% luxadm insert_device SF880-1,s0


Example 12: Running an Expert Subcommand




The following example runs an expert subcommand. The subcommand
forces a loop initialization on the loop that the enclosure BOB is
on:


example% luxadm -e forcelip BOB


Example 13: Using the Expert Mode Hot Plugging Subcommands




An example of using the expert mode hot plugging subcommands to hot
remove a disk follows. See NOTES for hot plugging limitations.


The first step reserves the SCSI device so that it can't be accessed
by way of its second SCSI bus:


example# luxadm reserve /dev/rdsk/c1t8d0s2


Example 14: Taking the Disk to be Removed Offline




The next two steps take the disk to be removed offline then quiesce
the bus:


example# luxadm -e offline /dev/rdsk/c1t8d0s2
example# luxadm -e bus_quiesce /dev/rdsk/c1t8d0s2


Example 15: Unquiescing the Bus




The user then removes the disk and continues by unquiescing the bus,
putting the disk back online, then unreserving it:


example# luxadm -e bus_unquiesce /dev/rdsk/c1t8d0s2
example# luxadm -e online /dev/rdsk/c1t8d0s2
example# luxadm release /dev/rdsk/c1t8d0s2


ENVIRONMENT VARIABLES


See environ(7) for a description of the LANG environment variable
that affects the execution of luxadm.

EXIT STATUS


The following exit values are returned:

0
Successful completion.


-1
An error occurred.


FILES


/usr/lib/firmware/fc_s/fc_s_fcode


/usr/lib/locale/C/LC_MESSAGES/ibfirmware


SEE ALSO


ses(4D), attributes(7), environ(7), devlinks(8), disks(8)

NOTES


Currently, only some device drivers support hot plugging. If hot
plugging is attempted on a disk or bus where it is not supported, an
error message of the form:

luxadm: can't acquire "PATHNAME": No such file or directory


will be displayed.


You must be careful not to quiesce a bus that contains the root or
the /usr filesystems or any swap data. If you do quiesce such a bus a
deadlock can result, requiring a system reboot.

May 21, 2022 LUXADM(8)

tribblix@gmail.com :: GitHub :: Privacy