sg_opcodes(8) - phpMan

Command: man perldoc info search(apropos)  


SG_OPCODES(8)                               SG3_UTILS                               SG_OPCODES(8)

NAME
       sg_opcodes - report supported SCSI commands or task management functions

SYNOPSIS
       sg_opcodes [--alpha] [--compact] [--enumerate] [--help] [--hex] [--mask] [--mlu] [--no-in-
       quiry] [--opcode=OP] [--pdt=DT] [--raw] [--rctd] [--repd] [--sa=SA]  [--tmf]  [--unsorted]
       [--verbose] [--version] DEVICE

       sg_opcodes  [-a] [-c] [-e] [-H] [-m] [-M] [-n] [-o=OP] [-p=DT] [-q] [-R] [-s=SA] [-t] [-u]
       [-v] [-V] [-?]  DEVICE

DESCRIPTION
       This utility sends a SCSI REPORT SUPPORTED OPERATION CODES or a REPORT SUPPORTED TASK MAN-
       AGEMENT  FUNCTIONS command to the DEVICE and then outputs the response. The default action
       is to report supported operation codes. In this mode it will  either  list  all  supported
       commands  or give detailed information on a specific command identified by the --opcode=OP
       option (perhaps with additional information from the --sa=SA option).

       The name of a SCSI command depends on its peripheral device type (e.g. a disk). The REPORT
       SUPPORTED  OPERATION CODES and REPORT SUPPORTED TASK MANAGEMENT FUNCTIONS commands are not
       supported in the MMC command set for CD and DVD devices. This utility does an  INQUIRY  to
       obtain the peripheral device type and prints out the vendor, product and revision strings.

       A  similar  facility  to  query supported operation codes previously was available via the
       CmdDt bit in the SCSI INQUIRY command (see sg_inq(8)). However that facility was made  ob-
       solete  and replaced by the REPORT SUPPORTED OPERATION CODES command in SPC-3 (revision 4)
       during February 2002.

       This utility supports two command line syntaxes, the preferred one is shown first  in  the
       synopsis  and  explained  in  this section. A later section on the old command line syntax
       outlines the second group of options.

OPTIONS
       Arguments to long options are mandatory for short options as well.

       -a, --alpha
              when all supported commands are being listed there is no requirement for the device
              server  (i.e.  the  DEVICE) to sort the list of commands. When this option is given
              the list of supported commands is sorted by name (alphabetically). When this option
              and  the --unsorted option are both _not_ given then the list of supported commands
              is sorted numerically (first by operation code and then by service action).

       -c, --compact
              some command names, especially those associated with some service actions, are get-
              ting longer. This may cause line wrap in the one line per command mode on some ter-
              minals. When this option is given the opcode and service action fields are combined
              into a single field with the service action, prefixed by a comma shown directly af-
              ter the opcode. If there is no service action associated with the command, then the
              comma  and the service action are not shown after the opcode. The CDB size field is
              not shown when this option is given.

       -e, --enumerate
              this option prints the name of the SCSI command based on the given opcode,  periph-
              eral  device  type  and optionally the service action. If given, DEVICE is ignored.
              The opcode, peripheral device type and service action default to zero if not given.
              Thus if this option is the only option given then "Test Unit ready" is output since
              its opcode is 0, it has no service action and it is common to all peripheral device
              types since it is defined in the SCSI Primary Commands (SPC) standard(s).

       -h, --help
              outputs  the usage message summarizing command line options then exits. Ignores DE-
              VICE if given.

       -H, --hex
              outputs the response in ASCII hexadecimal to stdout.

       -m, --mask
              additionally prints out the cdb mask in hex. So a 12 byte cdb will have a  12  byte
              hexadecimal  mask.  If  the hexadecimal is expanded (mentally) to binary then a "1"
              means the corresponding position in the cdb may be set. And "0"  means  the  corre-
              sponding  position  in  the cdb must not be set. For "0" mask positions that a user
              tries to set in a cdb, the device may either ignore it or report  an  error,  typi-
              cally with a sense key of "illegal request".

       -M, --mlu
              additionally prints out an indication (0 or 1) whether the command effects all log-
              ical units in the containing target. MLU (Multiple Logical Units) is a bit  in  the
              REPORT SUPPORTED OPERATION CODES response introduced by proposal 18-045r1 (and pos-
              sibly in spc5r20). Without the option, the default output format  which  lists  all
              opcodes, does not include a MLU indication.

       -n, --no-inquiry
              Prior to calling a SCSI REPORT SUPPORTED OPERATION CODES or a REPORT SUPPORTED TASK
              MANAGEMENT FUNCTIONS command, a SCSI INQUIRY command is performed. The reason is to
              determine  the  peripheral  device  type  (pdt) of the DEVICE as this is helpful in
              translating operation codes to the command names. By default this utility prints  a
              summary of INQUIRY command response on stdout. If this option (or the --raw option)
              is given then that summary is not printed on stdout.

       -O, --old
              Switch to older style options. Please use as first option.

       -o, --opcode=OP
              the DEVICE will be queried for the given operation code (i.e. the OP  value)  which
              is  the  first  byte of a SCSI command. OP is decimal unless prefixed by "0x" or it
              has a trailing "h". OP should be in the range 0 to 255 (0xff) inclusive. When  this
              option  is  not  given then all available SCSI commands supported by the DEVICE are
              listed.

       -p, --pdt=DT
              where DT is the peripheral device type. This is used together with the  --enumerate
              to  differentiate  when  a command opcode (and perhaps service action) is shared by
              multiple device types.
              This option may also be used with the --no-inquiry option to suppress this  utility
              doing  an  INQUIRY  command since the main reason for doing that is to find the pe-
              ripheral device type of the DEVICE.

       -r, --raw
              output the response in binary to stdout. Error messages and warnings, if  any,  are
              sent to stderr.

       -R, --rctd
              set  report  command  timeout descriptor (RCTD) bit in the cdb. The response may or
              may not contain command timeout descriptors. If available they are output. If  sup-
              ported  there  are  two values: a nominal command timeout and a recommended command
              timeout. Both have units of seconds. A value of zero means that no timeout is indi-
              cated and this is shown in the corresponding decoded output as "-".

       -q, --repd
              set read extended parameter data (REPD) bit in the report task management functions
              cdb. 16 bytes rather than the default 4 bytes expected in the  response.  This  was
              added in SPC-4 (revision 26).

       -s, --sa=SA
              the DEVICE will be queried for a command with the given service action (i.e. the SA
              value). Used in conjunction with the --opcode=OP option.  If  this  option  is  not
              given,  --opcode=OP is given and the command in question does have a service action
              then a value of 0 will be assumed. SA is decimal and expected to be in the range  0
              to 65535 (0xffff) inclusive.

       -t, --tmf
              list  supported  task  management functions. This is done with the SCSI REPORT SUP-
              PORTED TASK MANAGEMENT FUNCTIONS command.  When this option is chosen the  --alpha,
              --opcode=OP, --rctd, --sa=SA and --unsorted options are ignored.

       -u, --unsorted
              when all supported commands are being listed there is no requirement for the device
              server (i.e. the DEVICE) to sort the list of commands. When this  option  is  given
              the  list  of supported commands is in the order given by the DEVICE. When this op-
              tion is not given the supported commands are sorted numerically (first by operation
              code and then by service action).

       -v, --verbose
              increase level of verbosity. Can be used multiple times.

       -V, --version
              print out version string then exit.

NOTES
       As of SPC-5 revision 8 the recognized task management functions are: abort set, abort task
       set, clear ACA, clear task set, logical unit reset, query task, query asynchronous  event,
       query  task  set,  and I_T nexus reset.  In SPC-4 revision 26 target reset and wakeup task
       management functions were made obsolete.

       In the 2.4 series of Linux kernels the DEVICE must be a SCSI generic (sg) device.  In  the
       2.6 series block devices (e.g. SCSI disks and DVD drives) can also be specified. For exam-
       ple "sg_opcodes /dev/sda" will work in the 2.6 series kernels.

EXIT STATUS
       The exit status of sg_opcodes is 0 when it is successful. Otherwise see  the  sg3_utils(8)
       man page.

OLDER COMMAND LINE OPTIONS
       The options in this section were the only ones available prior to sg3_utils version 1.23 .
       Since then this utility defaults to the newer command line options which can be overridden
       by  using --old (or -O) as the first option. See the ENVIRONMENT VARIABLES section for an-
       other way to force the use of these older command line options.

       -a     sort command alphabetically. Equivalent to --alpha in main description.

       -c     see the --compact option above.

       -e     see the --enumerate option above.

       -H     see the --hex option above.

       -m     see the --mask option above.

       -n     don't print a summary of the SCSI INQUIRY response on stdout.

       -N, --new
              Switch to the newer style options.

       -o=OP  the DEVICE will be queried for the given operation code (i.e.   OP)  which  is  the
              first  byte  of a SCSI command. OP is hexadecimal and expected to be in the range 0
              to ff inclusive.  When this option is not given then all  available  SCSI  commands
              supported by the DEVICE are listed.

       -p=DT  see the --pdt=DT option above.

       -q     set  the  read extended parameter data (REPD) bit in report TMF cdb.  Equivalent to
              --repd in main description.

       -R     set the report command timeout descriptor (RCTD) bit in cdb. Equivalent  to  --rctd
              in main description.

       -s=SA  the  DEVICE  will be queried for a command with the given service action (i.e. SA).
              Used in conjunction with the -o=OP option. If this option is not  given,  -o=OP  is
              given and the command in question does have a service action then a value of 0 will
              be assumed.  SA is hexadecimal and expected to be in the range 0 to ffff inclusive.

       -t     list supported task management functions. Equivalent to --tmf in the main  descrip-
              tion.

       -u     output  all  supported  commands in the order given by DEVICE.  Equivalent to --un-
              sorted in main description.

       -v     increase level of verbosity. Can be used multiple times.

       -V     print out version string then exit.

       -?     output usage message. Ignore all other parameters.

EXAMPLES
       The examples in this page use Linux device names. For suitable device names in other  sup-
       ported Operating Systems see the sg3_utils(8) man page.

       To see the information about a specific command give its operation code to the '--op=' op-
       tion. A command line invocation is shown first followed by a typical response:

          # sg_opcodes --op=93h /dev/sdb

         Opcode=0x93
         Command_name: Write same(16)
         Command supported [conforming to SCSI standard]
         Usage data: 93 e2 00 00 00 00 ff ff ff ff 00 00 ff ff 00 00

       The next example shows the supported task management functions:

          # sg_opcodes --tmf -n /dev/sdb

       Task Management Functions supported by device:
           Abort task
           Abort task set
           Clear ACA
           Clear task set
           Logical unit reset
           Query task

       Enumerate can be used to look up a SCSI command name in the absence of a device that  sup-
       ports that command. The opcode and service action (if required) should be supplied:

          # sg_opcodes --enumerate --op=0x9b,0xa

         SCSI command:
           Read buffer(16), read data from echo buffer

ENVIRONMENT VARIABLES
       Since  sg3_utils  version  1.23  the environment variable SG3_UTILS_OLD_OPTS can be given.
       When it is present this utility will expect the older command line options. So  the  pres-
       ence  of  this environment variable is equivalent to using --old (or -O) as the first com-
       mand line option.

AUTHOR
       Written by Douglas Gilbert

REPORTING BUGS
       Report bugs to <dgilbert at interlog dot com>.

COPYRIGHT
       Copyright (C) 2004-2018 Douglas Gilbert
       This software is distributed under the GPL version 2. There is NO warranty; not  even  for
       MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

SEE ALSO
       sg_inq(sg3_utils)

sg3_utils-1.43                              June 2018                               SG_OPCODES(8)

Generated by $Id: phpMan.php,v 4.55 2007/09/05 04:42:51 chedong Exp $ Author: Che Dong
On Apache
Under GNU General Public License
2024-04-20 07:55 @3.14.132.214 CrawledBy Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
Valid XHTML 1.0!Valid CSS!