sg_scan - does a scan of sg devices (or given SCSI/ATAPI/ATA devices)
and prints the results
sg_scan [-a] [-i] [-n] [-w] [-x] [DEVICE]*
If no DEVICE names are given, sg_scan does a scan of the sg devices and
outputs a line of information for each sg device that is currently
bound to a SCSI device. If one or more DEVICEs are given only those
devices are scanned. Each device is opened with the O_NONBLOCK flag so
that the scan will not "hang" on any device that another process holds
an O_EXCL lock on.
Any given DEVICE name is expected to comply with (to some extent) the
Storage Architecture Model (SAM see www.t10.org). Any device names
associated with the Linux SCSI subsystem (e.g. /dev/sda and /dev/st0m)
are suitable. Devices names associated with ATAPI devices (e.g. most
CD/DVD drives and ATAPI tape drives) are also suitable. If the device
does not fall into the above categories then an ATA IDENTIFY command is
-a do alphabetical scan (i.e. sga, sgb, sgc). Note that sg device
nodes with an alphabetical index have been deprecated since the
linux kernel 2.2 series.
-i do a SCSI INQUIRY, output results in a second (indented) line.
If the device is an ATA disk then output information from an ATA
-n do numeric scan (i.e. sg0, sg1...) [default]
-w use a read/write flag when opening sg device (default is
-x extra information output about queuing
This utility was written at a time when hotplugging of SCSI devices was
not supported in Linux. It used a simple algorithm to scan sg device
nodes in ascending numeric or alphabetical order, stopping after there
were 4 consecutive errors.
In the linux kernel 2.6 series, this utility uses sysfs to find which
sg device nodes are active and only checks those. Hence there can be
large "holes" in the numbering of sg device nodes (e.g. after an
adapter has been removed) and still all active sg device nodes will be
listed. This utility assumes that sg device nodes are named using the
normal conventions and searches from /dev/sg0 to /dev/sg4095 inclusive.
The exit status of sg_scan is 0 when it is successful. Otherwise see
the sg3_utils(8) man page.
Written by D. Gilbert and F. Jansen
Copyright © 1999-2006 Douglas Gilbert
This software is distributed under the GPL version 2. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR