.TH SG_MAP "8" "May 2013" "sg3_utils\-1.36" SG3_UTILS
.SH NAME
sg_map \- displays mapping between Linux sg and other SCSI devices
.SH SYNOPSIS
.B sg_map
[\fI\-a\fR] [\fI-h\fR] [\fI\-i\fR] [\fI\-n\fR] [\fI\-scd\fR] [\fI\-sd\fR]
[\fI\-sr\fR] [\fI\-st\fR] [\fI\-V\fR] [\fI\-x\fR]
.SH DESCRIPTION
.\" Add any additional description here
.PP
Sometimes it is difficult to determine which SCSI device a sg device
name (e.g. /dev/sg0) refers to. This command loops through the
sg devices and finds the corresponding SCSI disk, cdrom or tape
device name (if any). Scanners are an example of SCSI devices
that have no alternate SCSI device name apart from their sg device
name.
.PP
This utility is deprecated and has not been updated for years, only very
obvious bugs will be fixed. Unless a very old version of Linux is being
used (e.g.  2.4 series or earlier), then please use a utility like lsscsi(8)
or the facilities offered by udev(8).
.SH OPTIONS
.TP
\fB\-a\fR
assume the sg devices have alphabetical device names and loop
through /dev/sga, /dev/sgb, etc. Default is numeric scan.
Note that sg device nodes with an alphabetical index have been
deprecated since the Linux kernel 2.2 series.
.TP
\fB\-h\fR
print usage message then exit.
.TP
\fB\-i\fR
in addition do a standard INQUIRY and output vendor, product and revision
strings for devices that are found.
.TP
\fB\-n\fR
assume the sg devices have numeric device names and loop
through /dev/sg0, /dev/sg1, etc. Default is numeric scan
.TP
\fB\-scd\fR
display mappings to SCSI cdrom device names of the form
/dev/scd0, /dev/scd1 etc
.TP
\fB\-sd\fR
display mappings to SCSI disk device names
.TP
\fB\-sr\fR
display mappings to SCSI cdrom device names of the form
/dev/sr0, /dev/sr1 etc
.TP
\fB\-st\fR
display mappings to SCSI tape device names
.TP
\fB\-V\fR
print out version string then exit (without further ado).
.TP
\fB\-x\fR
after each active sg device name is displayed there are
five digits: <host_number> <bus> <scsi_id> <lun> <scsi_type>
.SH NOTES
If no options starting with "\-s" are given then the mapping to
all SCSI disk, cdrom and tape device names is shown.
.PP
If the device file system (devfs) is present a line noting
this is output. The "native" devfs scsi hierarchy makes the
relationship between a sg device name and any corresponding
disk, cdrom or tape device name easy to establish. This
replaces the need for this command. However many applications
will continue to look for Linux SCSI device names in their
traditional places. [Devfs supplies a compatibility daemon
called devfsd whose default configuration adds back the
Linux device names in their traditional positions.
.PP
Quite often the mapping information can be derived by
observing the output of the command: "cat /proc/scsi/scsi".
However if devices have been added since boot this can
be deceptive.
.PP
In the Linux kernel 2.6 series something close to the mapping
shown by this utility can be found by analysing sysfs. The
main difference is that sysfs analysis will show the mapping
between sg nodes and other SCSI device nodes in terms of
major and minor numbers. While major 8, minor 16 will usually
be /dev/sdb this is not necessarily so. Facilities associated
with udev may assign major 8, minor 16 some other device node
name. This version of sg_map has been extended to cope with
sparse disk device node names of the form "/dev/sd<str>"
where <str> can be one of [a\-z,aa\-zz,aaa\-zzz]. See the sg_map26
utility for a more precise way (i.e. less directory scanning)
for mapping between sg device names and higher level names;
including finding user defined names.
.PP
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 5 consecutive errors.
.PP
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.
.SH EXAMPLES
.PP
My system has a SCSI disk, a cd writer and a dvd player:
.br
   $ sg_map
.br
   # Note: the devfs pseudo file system is present
.br
   /dev/sg0  /dev/sda
.br
   /dev/sg1  /dev/sr0
.br
   /dev/sg2  /dev/sr1
.PP
In order to find which sg device name corresponds to the disk:
.br
   $ sg_map \-sd
.br
   # Note: the devfs pseudo file system is present
.br
   /dev/sg0  /dev/sda
.br
   /dev/sg1
.br
   /dev/sg2
.PP
The "\-x" option gives the following output:
.br
   sg_map \-x
.br
   # Note: the devfs pseudo file system is present
.br
   /dev/sg0  1 0 1 0  0  /dev/sda
.br
   /dev/sg1  2 0 4 0  5  /dev/sr0
.br
   /dev/sg2  2 0 6 0  5  /dev/sr1
.PP
When a SCSI scanner is added the output becomes:
.br
   $ sg_map
.br
   # Note: the devfs pseudo file system is present
.br
   /dev/sg0  /dev/sda
.br
   /dev/sg1  /dev/sr0
.br
   /dev/sg2  /dev/sr1
.br
   /dev/sg3
.PP
By process of elimination /dev/sg3 must be the scanner.
.SH EXIT STATUS
The exit status of sg_map is 0 when it is successful. Otherwise see
the sg3_utils(8) man page.
.SH AUTHOR
Written by Douglas Gilbert
.SH "REPORTING BUGS"
Report bugs to <dgilbert at interlog dot com>.
.SH COPYRIGHT
Copyright \(co 2000\-2013 Douglas Gilbert
.br
This software is distributed under the GPL version 2. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
.SH "SEE ALSO"
.B sg_map26(8)
,
.B scsi_info(8)
,
.B scsidev(8)
,
.B devfsd(8)
,
.B lsscsi(8)
,
.B udev(7)
