ainfo(1)

ainfo - display array information

As shipped in IRIX 6.5. First release of IRIX 6.5.

NAME
     ainfo - display array information

SYNOPSIS
     ainfo [options...] request

DESCRIPTION
     The ainfo command is used to display various information about arrays
     known to the array services daemon.  This information could be useful for
     both interactive users and shell scripts, and can be displayed in formats
     appropriate for either.  The type of information displayed is determined
     by the request argument which is described below.

     Many of the options are used to narrow down a request or to specify a
     particular element to be described.  Not all of the options make sense
     for every request.  Options that are not used by a particular request
     will be ignored silently.  The valid options include:

     -a arrayname or -array arrayname
          Specifies the name of a specific array about which information is
          required.  If not specified, the array services daemon's default
          destination will be used.

     -b or -brief
          Brief: specifies brief output, intended for use by shell scripts.
          This is the same as specifying "-f 2".

     -D or -direct
          When used with -s, indicates that the request should be sent
          directly to the specified server, rather than forwarded to that
          server by the local array services daemon.  This will fail on
          systems that use array services authentication unless the -Kl and
          -Kr options are also specified.  -D is the default behavior under
          normal circumstances (but see the description of the ARRAYD_FORWARD
          variable, below).

     -F or -forward
          When used with -s, indicates that the request should be forwarded to
          the specified server via the local array services daemon, rather
          than sent directly to it.  -F will become the default behavior if
          the value of the ARRAYD_FORWARD environment variable begins with the
          letter "Y" (as in "yes"; it may be either upper or lower case).

     -f number or -format number
          Format: many requests can display their information in several
          formats.  This option is used to select which format is to be used.
          See the descriptions of the individual requests to see which formats
          are available for each.  The default format is always "1", which is
          typically appropriate for a human user.  The other formats are
          usually intended for use by shell scripts.  The output generated by
          format 1 for a given request may change from version to version of
          ainfo as new fields are added or modified.  However, unless
          otherwise specified, the output generated by the other formats
          generally should not change in future versions of ainfo, so that old
          scripts will still run properly.  Instead, new formats will be added
          to handle the new or modified fields.

     -h ASH or -ash ASH or -arsess ASH
          Specifies a particular array session handle about which information
          is required.

     -i PID or -pid PID or -process PID
          Specifies a particular process ID about which information is
          required.

     -Kl key or -localkey key
          Use key for the local authentication key when communicating directly
          with a remote array services daemon.  key is an unsigned 64-bit
          value.  The default local key is obtained from the environment
          variable ARRAYD_LOCALKEY; if that does not exist, no key is used.
          The actual role played by key depends on the authentication method
          used by array services in a particular configuration.  In general,
          it is not used when communicating with an array services daemon on
          the local machine.

     -Kr key or -remotekey key
          Use key for the remote authentication key when communicating
          directly with a remote array services daemon.  key is an unsigned
          64-bit value.  The default remote key is obtained from the
          environment variable ARRAYD_REMOTEKEY; if that does not exist, no
          key is used.  The actual role played by key depends on the
          authentication method used by array services in a particular
          configuration.  In general, it is not used when communicating with
          an array services daemon on the local machine.

     -l or -local
          Local: several requests normally display information about several
          different machines in an array.  This option indicates that only
          information about the machine running the array services daemon
          (typically the local machine) should be displayed.  Requests that
          use the -a option will generally ignore it if -l is specified.

     -p port or -port port
          Specifies the port address of the array services daemon.  Defaults
          to the value of the ARRAYD_PORT environment variable if present, or
          the standard port number of the "sgi-arrayd" service otherwise.

     -s server or -server server
          Specifies the hostname or IP address of the array services daemon.
          Defaults to the value of the ARRAYD environment variable if present,
          or "localhost" otherwise.

     -t value or -timeout value
          Specifies the timeout value (in seconds) used in waiting for a
          response from the array services daemon.  The default is 15 seconds.
          It should only be necessary to specify this option on very heavily
          loaded systems.

     -v   Verbose messages: display additional progress messages.  Repeated
          occurrences (either "-v -v ..." or "-vv...") increases the
          verbosity, although this is generally only useful for debugging
          ainfo itself.

REQUESTS
     Several different types of information can be requested.  In most cases,
     each type of information can be displayed in several formats.  The
     keyword used to specify a particular request may be in upper or lower
     case, and for some requests, it may only be necessary to specify a
     leading substring of the keyword.  The following descriptions will show
     the minimum leading substring of each keyword in upper case.

   ARRAYs
     Displays information about all arrays known to the array services daemon.
     The -a, -h, -i and -l options are all ignored with this request.

     Format 1 output:
          Arrays known to array services daemon target-info
          ARRAY name
              IDENT id
              ATTRIBUTES
                  array_attr_1
                  array_attr_2...

          ARRAY ...

          If the -p or -s options were specified, that information will be
          included in target-info.  name is the ASCII name of the array, as
          specified in the arrayd.conf file.  id is the array identifier
          number, as specified in the arrayd.conf file with an ARRAY IDENT
          statement.  It is always printed as a 4-digit hexadecimal preceded
          by "0x".  The array_attr_N values are arbitrary strings assigned to
          the array by the system administrator.  If no array attributes are
          present, the "ATTRIBUTES" line will not be printed.

     Format 2 output:
          array name #attributes array_attr_1 array_attr_2...

     Format 3 output:
          array name id #attributes array_attr_1 array_attr_2...

          This is the same as format 2, with the addition of the id field.

   ASH
     Displays the array session handle of the process specified by the -i
     option.  If the -i option is not specified, then the array session handle
     for the current process will be displayed.  The process is assumed to
     reside on the local machine.  The -a, -h and -l options are ignored.

     Format 1 output:
          Array session handle of process pid: ash

          pid is the process ID specified by the -i option.  ash is the array
          session handle of process pid.  It is displayed in hex preceded by
          the string "0x".

     Format 2 output:
          pid

   DFLTArray
     Displays information about the default array that is used by the array
     services daemon when one has not been specified explicitly.  The -a, -h,
     -i and -l options are ignored.  The format of the output is nearly
     identical to that of the ARRAYS request:

     Format 1 output:
          Default array according to array services daemon target-info
          ARRAY name
              ATTRIBUTES
                  array_attr_1
                  array_attr_2...

          If the -p or -s options were specified, that information will be
          included in target-info.  name is the ASCII name of the array, as
          specified in the arrayd.conf file.  The array_attr_N values are
          arbitrary strings assigned to the array by the system administrator.
          If no array attributes are present, the "ATTRIBUTES" line will not
          be printed.

     Format 2 output:
          array name #attributes array_attr_1 array_attr_2...

   MACHines
     Displays information about each of the machines in the array specified by
     the -a option.  The -h, -i and -l options are ignored.

     Format 1 output:
          Machines in array-name target-info
          MACHINE name
              HOSTNAME hostname
              PORT     portnum
              IP_ADDR  IPaddress
              IDENT    id
              ATTRIBUTES
                  attr1
                  attr2...

          MACHINE ...

          target-info includes information about the array services daemon
          that was contacted and the particular array being described.  If the
          -a, -p or -s options were specified, that information will be
          included in target-info.  name is the "familiar" name of the
          machine, while hostname is the official network hostname of the
          machine and IPaddress is the network address corresponding to that
          hostname.  portnum is the port number of the machine's array
          services daemon.  id is the server identifier of the machine's array
          services daemon.  It is always printed as a 4-digit hexadecimal
          number preceded by "0x" unless the array services daemon specified
          in target-info does not have a SERVER IDENT entry for that machine,
          in which case "unknown" is printed.  The attrN values are arbitrary
          strings assigned to this machine by the system administrator.  If a
          particular machine has no machine attributes, the ATTRIBUTES line
          will not be displayed.

     Format 2 output:
          machine name hostname portnum IPaddress #attrs attr1 attr2...

          The output for each machine will appear on a single line without any
          intervening newlines.

     Format 3 output:
          hostname
          hostname...

          This format would be useful in scripts that need to contact each
          machine in an array via the network.

     Format 4 output:
          machine name hostname portnum IPaddress id #attrs attr1 attr2...

          This is the same as format 2, with the addition of the ident value
          just prior to the attributes.  The output for each machine will
          appear on a single line without any intervening newlines.

   NEWASH
     Obtains a new global array session handle for the array specified by the
     -a option.  This does not actually start a new array session, it simply
     allocates a unique handle for one.  The -h, -i and -l options are all
     ignored.

     Format 1 output:
          Allocating new global ASH target-info
          array-session-handle

          target-info includes information about the array services daemon
          that was contacted and the particular array for which the handle was
          allocated.  If the -a, -p or -s options were specified, that
          information will be included in target-info.  The array-session-
          handle is displayed as a 64-bit hex value preceded by the string
          "0x".

     Format 2 output:
          array-session-handle

          The array-session-handle is displayed as a 64-bit hex value preceded
          by the string "0x".

   NODEINFO
     Displays information about the overall configuration of each machine in
     the array specified by the -a option, or of the server machine only if
     the -l option was specified.  The -h and -i options are ignored.

     Format 1 output:
          Node information for target-info
          MACHINE name
              VERSION  vers
              #pe PROCESSOR BOARD[S]
                  BOARD: TYPE btype   SPEED speed
                      CPU:   TYPE ctype   REVISION crev
                      FPU:   TYPE ftype   REVISION frev

                  BOARD...

              #ip IP INTERFACE[S]  HOSTNAME hostname   HOSTID hostid
                  DEVICE dev  NETWORK netaddr  ADDRESS ipaddr status
                  DEVICE...

              #gfx GRAPHICS INTERFACE[S]
                  TYPE gtype  CTRLR ctrlr  UNIT unit  STATE state
                  TYPE...

              MEMORY
                  memsize MB MAIN MEMORY
                  INTERLEAVE interleave

              ARRAY MACHINE arraymach
                  ARRAY SERVICES PORT port
                  #attr ATTRIBUTES
                          attr
                          attr...

          MACHINE ...

          target-info includes information about the array services daemon
          that was contacted and the particular machine or array being
          described.  If the -a, -p or -s options were specified, that
          information will be included in target-info.  name is the hostname
          of the machine according to the machine's array services daemon.
          This is typically the value returned by gethostname(2) on that
          machine, though the system adminstrator can override this value by
          specifying a LOCAL HOSTNAME entry in the machine's arrayd.conf file.
          vers is the NodeInfo version number.  This will change whenever the
          output format is modified in some way.  The minor number of the
          version is rolled when additional fields are added to the end of any
          line or section.  The major number is rolled if previously existing
          fields are changed.  Programs that parse the output of ainfo should
          inspect this value and act accordingly if it does not recognize the
          version number.

          The fields in the PROCESSOR BOARD and GRAPHICS INTERFACE sections
          are taken directly from the inventory_t structures returned by
          getinvent(3).  These are described in <sys/invent.h>.

          hostname is the hostname of the machine's primary network interface
          as determined by gethostname(2).  This is typically the same as name
          unless a different machine name was specified with a LOCAL HOSTNAME
          entry in the machine's arrayd.conf file.  hostid is the machine's
          official hostid, as obtained by gethostid(2).  It is displayed as a
          hex value.  dev is the device name of a particular network interface
          (for example, "hip0").  net is the network address of the interface;
          this is generally the IP address of the interface AND'ed with the
          interface's netmask.  ip is the official IP address of the
          interface.  status is either the string "UP" or "DOWN", indicating
          whether or not the interface is active.

          The ARRAY MACHINE section is only displayed when the -l has not been
          specified.  arraymach is the "logical" name of the machine in the
          array.  In most cases this will be the same as the machine's
          hostname, though the system administrator can override this in the
          machine's arrayd.conf file.  port is the IP port number of the array
          services daemon on that machine.  attr is an attribute string for
          that machine.  There may be zero or more of these, depending on the
          configuration.

          The remaining fields are fairly self explanatory.

     Format 2 output:
          nodeinfo.top vers name
          nodeinfo.pe #pe btype/speed/ctype/crev/ftype/frev btype/...
          nodeinfo.ip hostname hostid #ip dev/netaddr/ipaddr/status dev/...
          nodeinfo.gfx #gfx gtype/ctrlr/unit/state gtype/...
          nodeinfo.mem memsize interleave
          nodeinfo.am arraymach port #attrs attr attr...

          The fields of individual interface entries (for example, between the
          type, ctrlr, unit and state fields of a graphics interface entry)
          are separated by "/" characters with no intervening spaces.  Unlike
          format 1, the array machine information will be present whether or
          not -l was specified; if -l was specified, arraymach will be "<n/a>"
          and port will be -1.  The output for each machine will appear on
          exactly 6 lines.

   PIDs
     This is a synonym for the PROCESSES request, described below.

   PROCesses
     Displays the process IDs of those processes on the local machine running
     in the array session whose handle is specified by the -h option.  The -a,
     -i and -l options are ignored for this request.

     Format 1 output:
          Process IDs in ASH array-session-handle
                  process-ID
                  process-ID...

     Format 2 output:
          process-ID process-ID...

          This format is convenient with commands such as kill(1).

     Format 3 output:
          process-ID,process-ID,...

          This format is convenient for use with the -p option of the ps(1)
          command.

   SESSIONs
     Displays the array session handles of the global array sessions in the
     array specified by the -a option, or only on the server machine if -l is
     specified.  The -h and -i options are ignored.

     Format 1 output:
          Global array sessions target-info
                  array-session-handle-1
                  array-session-handle-2...

          target-info includes information about the array services daemon
          that was contacted and the particular array being described.  If the
          -a, -p or -s options were specified, that information will be
          included in target-info.  Each array-session-handle is displayed as
          a 64-bit hex value preceded by the string "0x".

     Format 2 output:
          array-session-handle-1 array-session-handle-2...

          Each array-session-handle is displayed as a 64-bit hex value
          preceded by the string "0x".

NOTES
     The array services daemon (arrayd(1M)) must be running on all machines
     about which information is being obtained.  It does not necessarily have
     to be running on the machine that executes "ainfo(1)".
SEE ALSO
     array(1), arrayd(1M), arrayd.conf(4).