SG_MAP(8)

NAME
sg_map - displays mapping between sg and other SCSI devices

SYNOPSIS
sg_map [-a] [-i] [-n] [-scd] [-sd] [-sr] [-st] [-x]

DESCRIPTION

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.

-a  assume the sg devices have alphabetical device names and loop through /dev/sga, /dev/sgb, etc. Default is numeric scan

-i  in addition do a standard INQUIRY and output vendor, product and revision strings for devices that are found.

-n  assume the sg devices have numeric device names and loop through /dev/sg0, /dev/sg1, etc. Default is numeric scan

-sd display mappings to SCSI disk device names

-scd
    display mappings to SCSI cdrom device names of the form /dev/scd0, /dev/scd1 etc

-sr display mappings to SCSI cdrom device names of the form /dev/sr0, /dev/sr1 etc

-st display mappings to SCSI tape device names

-x  after each active sg device name is displayed there are five digits: <host_number> <bus> <scsi_id> <lun> <scsi_type>

If no options starting with "-s" are given then the mapping to all SCSI disk, cdrom and tape device names is shown.

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.

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.

EXAMPLES

My system has a SCSI disk, a cd writer and a dvd player:
   $ sg_map
   # Note: the devfs pseudo file system is present
   /dev/sg0 /dev/sda
   /dev/sg1 /dev/sr0
   /dev/sg2 /dev/sr1

In order to find which sg device name corresponds to the disk:
   $ sg_map -sd
   # Note: the devfs pseudo file system is present
   /dev/sg0 /dev/sda
   /dev/sg1
   /dev/sg2

The "-x" option gives the following output:
   sg_map -x
   # Note: the devfs pseudo file system is present
   /dev/sg0 1 0 1 0 0 /dev/sda
   /dev/sg1 2 0 4 0 5 /dev/sr0
   /dev/sg2 2 0 6 0 5 /dev/sr1

When a SCSI scanner is added the output becomes:
   $ sg_map
   # Note: the devfs pseudo file system is present
   /dev/sg0 /dev/sda
   /dev/sg1 /dev/sr0
   /dev/sg2 /dev/sr1
   /dev/sg3

By process of elimination /dev/sg3 must be the scanner.

AUTHOR
Written by Doug Gilbert

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

COPYRIGHT
Copyright © 2000, 2001 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
scsi_info(8) , scsidev(8) , devfsd(8)