sesmgr  -  Fibre Channel Drive Enclosure Status/Configura­
       tion Command Line Interface


SYNOPSIS

       The command line syntax of sesmgr takes  multiple  flavors
       depending on the option.

       sesmgr getversion
       sesmgr poll
       sesmgr topology [-c channel-ID [-c channel-ID] . . .
       sesmgr  getstatus [-v] [-c channel-ID] [-e enclosure-ID] .
       .
       sesmgr remove -t target-ID [-t target-ID] . . .
       sesmgr ledon -t target-ID [-t target-ID] . . .
       sesmgr ledoff -t target-ID [-t target-ID] . . .
       sesmgr bypass -t target-ID -p A|B [-t target-ID -p A|B]  .
       . .
       sesmgr  unbypass -t target-ID -p A|B [-t target-ID -p A|B]
       . . .
       sesmgr slotbypass -e enclosure-ID -s slot-ID  -p  A|B  [-e
       enclosure-ID -s slot-ID -p A|B] . . .
       sesmgr  slotunbypass -e enclosure-ID -s slot-ID -p A|B [-e
       enclosure-ID -s slot-ID -p A|B] . . .
       sesmgr insert -e enclosure-ID [-e enclosure-ID] . . .
       sesmgr alarmon -e enclosure-ID [-e enclosure-ID] . . .
       sesmgr alarmmute -e enclosure-ID [-e enclosure-ID] . . .
       sesmgr alarmoff -e enclosure-ID [-e enclosure-ID] . . .


DESCRIPTION

       The sesmgr command is a user front end to sesdaemon  which
       collects  status of all supported fibre channel enclosures
       and allows for configuration changes.


COMMANDS

       getversion     This command will report the version  level
                      of  sesmgr.  poll This command will request
                      that the daemon re-scan  the  SAN  for  its
                      configuration and also update the status of
                      all known devices.  Typically  this  should
                      only  need to be done if the SAN configura­
                      tion is manually  changed  outside  of  the
                      sesmgr command set.

       topology       This command will print the daemon's under­
                      standing of the topology of  the  SAN.   It
                      will print all of the drive target's world­
                      wide names, port id's, port numbers, and if
                      the  controller  is  in loop mode, the name
                      the device is known  by.   A  list  of  all

                      able to manage is also printed.  This  list
                      would include RAIDS (as its not easily pos­
                      sible to distinguish them from JBODS), tar­
                      gets in unsupported enclosures, and targets
                      in enclosures which  do  not  have  working
                      devices  in  the  SES capable slots for the
                      ports reachable by the host running sesdae­
                      mon.  Targets which are not disk drives are
                      ignored by sesdaemon.

       getstatus      This command reports  status  of  supported
                      fibre channel drive enclosures.

                      For  this  option,  -v (verbose) alone will
                      print a detailed status of all  enclosures,
                      -v  with  specified  channel  numbers  will
                      print a detailed status for the  enclosures
                      on the listed channels.  If enclosure argu­
                      ments are specified then a detailed  status
                      will  be  printed for only those enclosures
                      (and the -v flag is unnecessary).

                      If the -v flag is not used,  and  no  argu­
                      ments are specified, then overall summaries
                      of all fibre channel  controllers  will  be
                      printed.   Or  only for the specified chan­
                      nels if channel arguments are used.

       remove         This  command  will  allow   for   physical
                      removal of a drive.  I.E. it will spin-down
                      the specified disk drive,  and  prompt  the
                      user   for  removal,  then  after  all  the
                      removes have taken place it  will  SOP_SCAN
                      the effected controllers.

                      Note:   This  command  issues  the spindown
                      command  to  the  drive  immediately  which
                      locks  the drive heads.  However, the drive
                      requires additional time to  stop  rotating
                      and will still be turning when the exchange
                      prompt is issued.

       insert         This command will  allow  for  inserting  a
                      drive  into a specified enclosure.  I.E. it
                      will prompt for insertion,  and  after  all
                      the  inserts have taken place, it will spin
                      it up the  drives,  SOP_SCAN  the  effected
                      controllers,  and  call  ioconfig to update
                      the hardware graph.

       ledon          This command will turn "ON"  the  indicator
                      "LED"  associated  with  the specified disk
                      device.

                      "LED"  associated  with  the specified disk
                      device.

       bypass         This  command  will  perform  an  enclosure
                      bypass  to remove the specified disk on the
                      specified port from the fibre channel loop.

       unbypass       This  command  will  perform  an  enclosure
                      unbypass to add the specified disk  on  the
                      specified port onto the fibre channel loop.
                      slotbypass This command operates  the  same
                      as  bypass  except that instead of taking a
                      target argument, it takes an enclosure  and
                      slot  argument.   This command will work on
                      an enclosure slot which  does  not  have  a
                      drive  in  it.   slotunbypass  This command
                      operates the same as unbypass  except  that
                      instead  of  taking  a  target argument, it
                      takes an enclosure and slot argument.  This
                      command  is  useful for cases where the WWN
                      of a target is not yet known (such as after
                      a  drive  swap).  alarmon This command will
                      sound the alarm on the specified enclosure.
                      alarmoff  This  command  will  turn off the
                      alarm on the specified  enclosure  provided
                      that  the  enclosure  is clear of any other
                      hardware conditions which  also  result  in
                      the alarm sounding.  alarmmute This command
                      will mute the enclosure's alarm.  Generally
                      this  will  result  in  a periodic reminder
                      tone instead of totally silencing it.


COMMAND LINE OPTIONS

       -c channel-ID  Use this option to limit a  status  command
                      to a particular fibre channel controller.

       -e enclosure-ID
                      Use  this  option  to  specify a particular
                      enclosure.  Enclosures are identified by  a
                      64  bit  hex number similar to a world wide
                      name.  (Don't forget the 0x prefix  on  the
                      arguments for this option.)

       -s slot-ID     Use  this option for slotbypass and slotun­
                      bypass to  specify  the  enclosure's  drive
                      slot.   Slots are numbered starting from 0.

       -t target-ID   Use this option to direct an  action  at  a
                      particular drive or set of drives.  Targets
                      are identified by their world wide name,  a
                      64  bit  hex  number  unique to each drive.
                      (Don't  forget  the  0x  prefix.)   If  the

                      is also possible to specify it by  its  sc*
                      name in /hw/scsi (eg sc4d65l0).


EXAMPLES

       Obtaining  the  revision  level  of the instance of sesmgr
       running locally

            sesmgr getversion

            sample output:

            sesdaemon version 1.0, Thu May 11 18:46:09 PDT 2000

       Obtaining a brief channel status summary:

            sesmgr getstatus

            sample output:

             CHANNEL | DRIVES    POWER    LCC     FANS     TEMP    ALARM
             --------+--------------------------------------------------
          pci01.08.0 |  NONE     NONE     NONE     NONE     NONE    NONE
          pci01.09.0 |   OK      FAIL      OK       OK       OK      ON
          pci01.0a.0 |   OK       OK       OK       OK       OK     NONE

       The example shows that channel pci01.09.0 has one or  more
       enclosures  reporting a power supply fault and an alarm is
       sounding. Channel pci01.08.0 shows "NONE" which  indicates
       a few possibilities.

       o  There  are  no recognized fibre channel enclosures con­
          nect to the channel.
       o  There is a communication problem on the channel.
       o  "NONE" can also mean that none of the recognized enclo­
          sures  support that feature.  As on channel pci01.0a.0,
          the enclosures do not include an alarm.

       Obtaining a detailed status of an enclosure:

            sesmgr getstatus -e 0x50050cc00000205c

            sample output:
       Enclosure ID:  0x50050cc00000205c
         Vendor ID: XYRATEX
         Product ID: SS-1202-FCAL
         FRU's (Inst/Max):  11 of 12 drives
                            2 of 3 power supplies
                            1 of 2 recognized lcc's
         Last successful status poll: Tue May 16 17:19:17 2000

         | 1/1  | 2/1  | 3/1  | 4/1  |    1/1     0x20000020374bab85
         |  OK  |  OK  |  OK  |  OK  |    2/1     0x20000020374bb5e2
         |      |      |      |      |    3/1     0x20000020374bb504
         +---------------------------+    4/1     0x20000020374b17ee
         | 1/2  | 2/2  | 3/2  | 4/2  |    1/2     0x20000020374baf03
         |  OK  | OUT  |  OK  |  OK  |    2/2     0x0
         |      |      |      |      |    3/2     0x20000020374bafdc
         +---------------------------+    4/2     0x20000020374b194f
         | 1/3  | 2/3  | 3/3  | 4/3  |    1/3     0x20000020374bb280*
         |  OK  |  OK  |  OK  |  OK  |    2/3     0x20000020374bb007
         |      |      |      |      |    3/3     0x20000020374bafe1
         +---------------------------+    4/3     0x20000020374bb271*
         FAN0  OK     FAN1  OK     FAN2 OUT
         PS0   OK     PS1   OK     PS2  OUT
         TEMP  OK      29 C        ALARM  OK

       The example shows that slot 2/2 does not have a  drive  in
       it,  and  both fan 2 and power supply 2 are not installed.
       Also this enclosure either has only one fibre channel loop
       connection  or else only one is visible (connected) to the
       host.

       Illuminating the LEDs associated with disk 1/1 and 2/1:

            sesmgr ledon -t 0x20000020374bab85 -t node_0x20000020374bb5e2


LIMITATIONS

       Commands which change the enclosure  status  will  not  be
       reflected by getstatus until the next status poll executes
       (or until a poll command is run).

       Currently the only supported enclosures are the Xyratex 12
       slot, Xyratex 16 slot, and Clariion 10 slot enclosures.

       Not  all  enclosures will support all commands or types of
       FRU's.  For example, the Xyratex 12  slot  enclosure  does
       not support enclosure bypass and unbypass.  And the Clari­
       ion enclosure does not have an alarm.

       The ledon and ledoff  commands  may  indicate  differently
       depending on the enclosure's implementation.  For example,
       the Xyratex 12 will slowly blink the activity led when its
       "on",  and  leave  it  lit  solidly  when "off".  Clariion
       enclosures will solidly indicate on the fault LED.

       Removing a drive can send a controller into error recovery
       mode  as  it  tries  to  find the target and bring it back
       online.

       It may take a while for SOP_SCAN to complete depending  on
       how large and how busy the SAN is.

       pci01.09.0/target82), the  code  will  find  that  device.
       However commands to that device may use alternate paths.

       On  poll  updates  its  possible that failed equipment may
       disappear and no longer be shown as failed.   Failed  tar­
       gets  can be dropped from the target list, but they should
       still be printed in their  enclosure  slot  by  getstatus.
       Enclosures  which  are no longer reachable (and their tar­
       gets) may be dropped entirely.  This is due to a  configu­
       ration update assumption that targets which do not respond
       were intentionally moved.

       bypass and unbypass can fail if the commands  can  not  be
       issued  on  the same loop that the specified device's port
       is on.

       If a drive is bypassed so that the system no  longer  sees
       an  active target, and the daemon is restarted, the target
       may no longer be seen.  In this situation it will  not  be
       possible  to issue an unbypass command to the target.  Use
       the slotunbypass command instead.

       In the event that an enclosure hasnt been heard from  dur­
       ing a period three times sesdaemn's poll period, getstatus
       will show OLD for the status fields.  If an enclosure  has
       been disconnected, use the poll command to update the con­
       figuration and status information.   More  typically,  OLD
       indicates that there is a communications problem.  Depend­
       ing on the nature of the problem, error recovery can  hold
       off  the  sequential  polling  of  other  controllers.  Be
       advised however that OLD will NOT be listed if the  enclo­
       sures for a controller can be reached via alternate paths.

       In order to run sesmgr under TRIX, the user  must  have  a
       MAC label of dblow and a capability of CAP_PRIV_PORT.


FILES

       /usr/sbin/sesmgr


SEE ALSO

       xscsiha(8), sesdaemon(8)


Man(1) output converted with man2html