sg_modes man page on DragonFly

Man page or keyword search:  
man Server   44335 pages
apropos Keyword Search (all sections)
Output format
DragonFly logo
[printable version]

SG_MODES(8)			   SG3_UTILS			   SG_MODES(8)

NAME
       sg_modes - reads mode pages with SCSI MODE SENSE command

SYNOPSIS
       sg_modes [--all] [--control=PC] [--dbd] [--dbout] [--examine] [--flexi‐
       ble]    [--help]	   [--hex]    [--list]	  [--llbaa]	[--maxlen=LEN]
       [--page=PG[,SPG]] [--raw] [-R] [--six] [--verbose] [--version] [DEVICE]

       sg_modes [-6] [-a] [-A] [-c=PC] [-d] [-D] [-e] [-f] [-h] [-H] [-l] [-L]
       [-m=LEN] [-p=PG[,SPG]] [-r] [-subp=SPG] [-v] [-V] [-?] [DEVICE]

DESCRIPTION
       This utility sends a MODE SENSE SCSI command to the DEVICE and  outputs
       the  response.  There is a 6 byte and 10 byte (cdb) variant of the MODE
       SENSE command, this utility defaults to the 10 byte variant.

       This utility decodes mode page headers and block descriptors  but  out‐
       puts  the contents of each mode page in hex. It also has no facility to
       change the mode page contents or block descriptor data. Mode page  con‐
       tents are decoded and can be changed by the sdparm utility.

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

       If no page is given (and --list is not selected) then --all is assumed.
       The --all option requests all mode pages (but not subpages) in a single
       response.

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

       -a, --all
	      output all the mode pages reported by the DEVICE. This  is  what
	      the  page	 code 63 (0x3f) is defined to do. When used once, mode
	      subpages are not fetched. When used twice (e.g. '-aa'), all mode
	      pages   and  subpages  are  requested  which  is	equivalent  to
	      '--page=63,255'.

       -c, --control=PC
	      PC is the page control value. Up to four different  versions  of
	      each page are held by the device:
		0 : current values (i.e. those active at present)
		1 : changeable values
		2 : default values (i.e. the manufacturer's settings)
		3 : saved values
	      The  changeable  values are bit masks showing which fields could
	      be changed  with	a  MODE	 SELECT.  The  saved  values  will  be
	      re-instated  the	next time the device is power cycled or reset.
	      If this option is not given then current values [0] are assumed.

       -d, --dbd
	      disable block descriptors. By default, block  descriptors	 (usu‐
	      ally  one	 (for  disks)  or  none)  are returned in a MODE SENSE
	      response. This option sets the "disable block descriptors" (DBD)
	      bit  in  the  cdb	 which	instructs the device not to return any
	      block descriptors in its response. Older devices may not support
	      this  setting  and  may  return  an "illegal request" sense key;
	      alternatively they may ignore it. Oddly the Reduced  Block  Com‐
	      mand set (RBC) requires this bit set.

       -D, --dbout
	      disable  outputting  block  descriptors. Irrespective of whether
	      block descriptors are present in the response or not,  they  are
	      not output.

       -e, --examine
	      examine each mode page in the range 0 through to 62 (inclusive).
	      If some response is given then print out the mode page  name  or
	      number (in hex) if the name is not known.

       -f, --flexible
	      Some  devices, bridges and/or drivers attempt crude translations
	      between MODE SENSE 6 and 10 byte commands without correcting the
	      response.	 This  will  cause  the response to be mis-interpreted
	      (usually with an error saying the response is  malformed).  With
	      this  option,  the  length of the response is checked, and if it
	      looks wrong, the response is then decoded as if the  other  mode
	      sense (cdb length) was sent.

       -h, --help
	      print out the usage message then exit.

       -H, --hex
	      The  default  action  is	to decode known mode page numbers (and
	      subpage numbers) into text. When this option is used  once,  the
	      response is output in hexadecimal to stdout. When this option is
	      used twice, mode page numbers and page control values are output
	      in hex.
	      When  this  option is used three times, the full response to the
	      MODE SENSE command is output in hex to stdout without any decod‐
	      ing.  This  form can be redirected to a file (or piped) and then
	      used 'sdparm --inhex=' to decode.

       -l, --list
	      lists all common page and subpage codes and their names that are
	      found in the command set that matches the peripheral type of the
	      given DEVICE.  If no DEVICE and no --page=PG is given  then  the
	      common page and subpage codes and their names are listed for SBC
	      (e.g. a disk). If no DEVICE is given and a  --page=PG  is	 given
	      then  the	 common	 page  and  subpage  codes and their names are
	      listed for the command set whose peripheral device type  matches
	      the  value  given	 to  PG. For example 'sg_mode --list --page=1'
	      lists the command mode pages  and	 subpages  for	tape  devices.
	      Additionally  if a sub_page_code is given then it is interpreted
	      as a transport identifier and command  transport	specific  mode
	      page  codes  and	their names are listed following the main mode
	      page list.  Other options are ignored.

       -L, --llbaa
	      set the Long LBA Accepted (LLBAA) bit in	the  MODE  SENSE  (10)
	      cdb.  This  bit is not defined in the MODE SENSE (6) cdb so set‐
	      ting the '-L' and '--six' options is reported as an error.  When
	      set  the	DEVICE	may  respond with 16 byte block descriptors as
	      indicated by the 'LongLBA' field in the response. In most	 cases
	      setting this option is not needed.

       -m, --maxlen=LEN
	      The  LEN argument is the maximum response length in bytes. It is
	      the 'allocation length' field in the cdb. When not given (or LEN
	      is  zero)	 then  the  allocation length field is set to 4096 for
	      MODE SENSE (10) or 252 for MODE SENSE (6). The LEN argument must
	      be  non-negative	and  no greater than 65535 for MODE SENSE (10)
	      and not greater than 255 for MODE SENSE (6).

       -O, --old
	      switch to older style options.

       -p, --page=PG
	      page code to fetch. The PG is assumed  to	 be  a	decimal	 value
	      unless  prefixed	by  '0x' or has a trailing 'h'. It should be a
	      value between 0 and 63 (inclusive). When not given and a default
	      is  required  then  a value of 63 (0x3f), which fetches all mode
	      pages, is used.

       -p, --page=PG,SPG
	      page code and subpage code values to fetch. Both	arguments  are
	      assumed  to  be  decimal unless flagged as hexadecimal. The page
	      code should be between 0 and  63	inclusive.  The	 subpage  code
	      should be between 0 and 255 inclusive. The default value for the
	      subpage code is 0.

       -r, --raw
	      output the response in binary  to	 stdout.  Error	 messages  and
	      warnings,	 if  any, are sent to stderr. When this option is used
	      twice (e.g. '-rr') then has the same action as '-R'

       -R     output the selected mode page to stdout a byte  per  line.  Each
	      line  contains  two  hexadecimal	digits	(e.g. "3e"). Useful as
	      input (after editing) to the sg_wr_mode(8) utility.

       -6, --six
	      by default this utility sends a 10 byte MODE  SENSE  command  to
	      the  DEVICE.  However some SCSI devices only support 6 byte MODE
	      SENSE commands (e.g. SCSI-2 tape drives). This parameter	forces
	      the use of 6 byte MODE SENSE commands.

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

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

NOTES
       If  the	normal	sg_modes utility fails with "illegal command operation
       code" then try the '--six' (or '-6') option.

       This utility performs a SCSI INQUIRY command to determine  the  periph‐
       eral  type  of the device (e.g. 0 -> Direct Access Device (disk)) prior
       to sending a MODE SENSE command.	 This  helps  in  decoding  the	 block
       descriptor and mode pages.

       This  utility opens DEVICE with a read-only flag (e.g. in Unix with the
       O_RDONLY flag).

       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 example "sg_modes -a /dev/sda"  will
       work in the 2.6 series kernels.

EXIT STATUS
       The  exit  status of sg_modes 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	 .  In	sg3_utils version 1.23 and later these
       older options can be selected by either setting the  SG3_UTILS_OLD_OPTS
       environment variable or using '--old' (or '-O) as the first option.

       -6     by  default  this	 utility sends a 10 byte MODE SENSE command to
	      the DEVICE. This parameter forces the use of 6 byte  MODE	 SENSE
	      commands.	 See --six in the main description.

       -a     see --all in the main description.

       -A     output  all the mode pages and subpages supported by the DEVICE.
	      Same as '--all --all' in the new syntax.

       -c=PC  PC is the page control  value.  See  --control=PC	 in  the  main
	      description.

       -d     see --dbd in the main description.

       -D     see --dbout in the main description.

       -e     see --examine in the main description.

       -f     see --flexible in the main description.

       -h     The  default  action  is	to decode known mode page numbers (and
	      subpage numbers) into text. With this option mode	 page  numbers
	      (and subpage numbers) are output in hexadecimal.

       -H     same action as the '-h' option.

       -l     see --list in the main description.

       -L     see --llbaa in the main description.

       -N     switch to the newer style options.

       -m=LEN see --maxlen=LEN in the main description.

       -p=PG  PG is page code to fetch. Should be a hexadecimal number between
	      0 and 3f inclusive (0 to 63 decimal).  The  default  value  when
	      required is 3f (fetch all mode pages).

       -p=PG,SPG
	      page code and subpage code values to fetch. The page code should
	      be a hexadecimal number between 0 and 3f inclusive. The  subpage
	      code  should be a hexadecimal number between 0 and ff inclusive.
	      The default value for the subpage code is 0.

       -r     output the selected mode page to stdout a byte  per  line.  Each
	      line  contains  two  hexadecimal	digits	(e.g. "3e"). Useful as
	      input (after editing) to the sg_wr_mode(8) utility.

       -subp=SPG
	      sub page code to fetch. Should be a hexadecimal number between 0
	      and 0xff inclusive. The default value is 0.

       -v     increase verbosity of output.

       -V     print out version string then exit.

       -?     output usage message then exit. Ignore all other parameters.

AUTHOR
       Written by Douglas Gilbert

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

COPYRIGHT
       Copyright © 2000-2015 Douglas Gilbert
       This  software is distributed under the GPL version 2. There is NO war‐
       ranty; not even for MERCHANTABILITY or FITNESS FOR  A  PARTICULAR  PUR‐
       POSE.

SEE ALSO
       sdparm(8),   sg_wr_mode(8),   sginfo(8),	  sgmode(scsirastools),	 scsi‐
       info(net), scu(net), seatools(seagate)

       All these utilities offer some facility to change mode page  (or	 block
       descriptor) parameters.

sg3_utils-1.41			 January 2015			   SG_MODES(8)
[top]

List of man pages available for DragonFly

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net