sg_raw man page on Alpinelinux

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

SG_RAW(8)			   SG3_UTILS			     SG_RAW(8)

NAME
       sg_raw - send arbitrary SCSI command to a device

SYNOPSIS
       sg_raw [OPTIONS] DEVICE CDB0 CDB1 ...

DESCRIPTION
       This  utility sends an arbitrary SCSI command (between 6 and 256 bytes)
       to the DEVICE. There may be no associated data transfer; or data may be
       read  from  a file and sent to the DEVICE; or data may be received from
       the DEVICE and then displayed or written to a file. If supported by the
       pass  through, bidirectional commands may be sent (i.e. containing both
       data to be sent to the DEVICE and received from the DEVICE).

       The SCSI command may be between 6 and 256 bytes long. Each command byte
       is  specified  in plain hex format (00..FF) without a prefix or suffix.
       See EXAMPLES section below.

       The commands pass through a generic SCSI interface which is implemented
       for several operating systems including Linux, FreeBSD and Windows.

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

       -b, --binary
	      Dump data in binary form, even when writing to stdout.

       -h, --help
	      Display usage information and exit.

       -i, --infile=IFILE
	      Read data from IFILE instead of stdin. This option is ignored if
	      --send is not specified.

       -k, --skip=LEN
	      Skip the first LEN bytes of  the	input  file  or	 stream.  This
	      option is ignored if --send is not specified.

       -n, --nosense
	      Don't display SCSI Sense information.

       -o, --outfile=OFILE
	      Write  data received from the DEVICE to OFILE. The data is writ‐
	      ten in binary. By default, data is dumped in hex format to  std‐
	      out.   If	 OFILE is '-' then data is dumped in binary to stdout.
	      This option is ignored if --request is not specified.

       -r, --request=RLEN
	      Expect to receive up to RLEN bytes  of  data  from  the  DEVICE.
	      RLEN  may	 be  suffixed  with  'k' to use kilobytes (1024 bytes)
	      instead of bytes.

       -R, --readonly
	      Open DEVICE read-only. The default (without this option)	is  to
	      open it read-write.

       -s, --send=SLEN
	      Read  SLEN  bytes of data, either from stdin or from a file, and
	      send them to the DEVICE.

       -t, --timeout=SEC
	      Wait up to SEC seconds for  command  completion  (default:  20).
	      Note  that if a command times out the operating system may start
	      by aborting the command and  if  that  is	 unsuccessful  it  may
	      attempt to reset the device.

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

       -V, --version
	      Display version and license information and exit.

NOTES
       The  sg_inq  utility can be used to send an INQUIRY command to a device
       to determine its peripheral device  type	 (e.g.	'1'  for  a  streaming
       device  (tape drive)) which determines which SCSI command sets a device
       should support (e.g. SPC and SSC). The sg_vpd utility probes the	 Vital
       Product Pages of a devices which may contain useful information.

       The ability to send more than a 16 byte CDB (in some cases 12 byte CDB)
       may be restricted by the pass-through interface, the low	 level	driver
       or the transport.

EXAMPLES
       These  examples,	 apart	from the last one, use Linux device names. For
       suitable device names in other  supported  Operating  Systems  see  the
       sg3_utils(8) man page.

       sg_raw /dev/scd0 1b 00 00 00 02 00
	      Eject the medium in CD drive /dev/scd0.

       sg_raw -r 1k /dev/sg0 12 00 00 00 60 00
	      Perform an INQUIRY on /dev/sg0 and dump the response data (up to
	      1024 bytes) to stdout.

       sg_raw -s 512 -i i512.bin /dev/sda 3b 02 00 00 00 00 00 02 00 00
	      Showing an example of writing 512 bytes to a sector on a disk is
	      a	 little	 dangerous.  Instead  this  example will read i512.bin
	      (assumed to be 512 bytes long) and use  the  SCSI	 WRITE	BUFFER
	      command  to  send it to the "data" buffer (that is mode 2). This
	      is a safe operation.

       sg_raw -r 512 -o o512.bin /dev/sda 3c 02 00 00 00 00 00 02 00 00
	      This will use the SCSI READ BUFFER command  to  read  512	 bytes
	      from  the	 "data"	 buffer	 (i.e.	mode  2)  then write it to the
	      o512.bin file.  When used in conjunction with the previous exam‐
	      ple,  if	both commands work then 'cmp i512.bin o512.bin' should
	      show a match.

       sg_raw --infile=urandom.bin --send=512 --request=512  --outfile=out.bin
       "/dev/bsg/7:0:0:0" 53 00 00 00 00 00 00 00 01 00
	      This is a bidirectional XDREADWRITE(10) command being sent via a
	      Linux bsg device. Note that  data	 is  being  read  from	"uran‐
	      dom.bin"	and sent to the device (data-out) while resulting data
	      (data-in) is placed in the "out.bin" file. Also note the	length
	      of both is 512 bytes which corresponds to the transfer length of
	      1 (block) in the cdb (i.e.  the second last byte).

       sg_raw.exe PhysicalDrive1 a1 0c 0e 00 00 00 00 00 00 e0 00 00
	      This example is from Windows and shows a ATA  STANDBY  IMMEDIATE
	      command  being  sent to PhysicalDrive1. That ATA command is con‐
	      tained within the SCSI ATA PASS-THROUGH(12) command (see the SAT
	      or  SAT-2	 standard  at  http://www.t10.org).  Notice  that  the
	      STANDBY IMMEDIATE command does not send  or  receive  any	 addi‐
	      tional  data,  however if it fails sense data should be returned
	      and displayed.

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

AUTHOR
       Written by Ingo van Lil

REPORTING BUGS
       Report bugs to <inguin at gmx dot de>.

COPYRIGHT
       Copyright © 2001-2012 Ingo van Lil
       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
       sg_inq, sg_vpd, sg3_utils (sg3_utils), plscsi

sg3_utils-1.35			 December 2012			     SG_RAW(8)
[top]

List of man pages available for Alpinelinux

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