man sg_ident (Administration système) - report or set device identifier

NAME

sg_ident - report or set device identifier

SYNOPSIS

sg_ident [--ascii] [--clear] [--help] [--raw] [--set] [--verbose] [--version] <scsi_device>

DESCRIPTION

Send a REPORT DEVICE IDENTIFIER or SET DEVICE IDENTIFIER SCSI command to the given device. SCSI devices that support these two commands allow users to write (set) an identifier and report it back at some later time. The identifier is persistent (i.e. stored on some non-volatile medium within the SCSI device that will survive a power outage).

Typically the space allocated for the identifier is limited: SPC-4 (revision 0) states the maximum length is 512 bytes and all devices (that support these commands) shall support lengths up to 64 bytes. The author has seen older disks that only support 16 bytes.

The default action when no options are given is to invoke the Report Device Identifier command. Error reports are sent to stderr. If no errors occur then the length of the device identifier is output (to stdout). This is followed by an ASCII-HEX rendering of each byte of the identifier (up to 16 bytes per line) which an ASCII representation to the right with dots replacing non printable characters. each

--ascii | -A
invokes the Report Device Identifier command and if anything is found interprets it as ASCII (or UTF-8 depending on the environment) and prints the identifier to stdout.
--clear | -C
invokes the Set Device Identifier command with an identifier length of zero. This has the effect of clearing the existing device identifier.
--help | -h
output the usage message then exit.
--raw | -r
invokes the Report Device Identifier command and if anything is found sends the identifier (which may be binary) to stdout. Nothing else is sent to stdout however error reports are sent to stderr.
--set | -S
first read stdin until an EOF is detected then invokes the Set Device Identifier command to set what has been fetched from stdin as the device identifier. The amount of data read must be between 1 and 512 bytes length (inclusive).
--verbose | -v
increase the level of verbosity, (i.e. debug output).
--version | -V
print the version string and then exit.

This utility facilitates users writing their own identifiers to their SCSI devices. There are several other types of identifiers that the user cannot change. These include the SCSI INQUIRY command with its standard vendor and product identification strings and the product revision level; plus the large amount of information provided by the "Device Identification" VPD page (see sg_inq). There is also the READ MEDIA SERIAL NUMBER command (see sg_rmsn). The MMC-4 command set for CDs and DVDs has a "media serial number" feature (0x109) [and a "logical unit serial number" feature]. These can be viewed with sg_get_config.

When this utility succeeds its process exits with a status of 0; if problems are encountered the process status is 1 .

EXAMPLES

First, to see if there is an existing device identifier whose format is unknown, use no options:

# sg_ident /dev/sdb

Reported device identifier length = 10

Device identifier:

00 31 32 33 34 35 36 37 38 39 30 1234567890

If it is ASCII then it can printed as such:

# sg_ident --ascii /dev/sdb

Reported device identifier length = 10

Device identifier:

1234567890

The device identifier can be copied to a file, cleared and then re-asserted with this sequence:

# sg_ident --raw /dev/sdb > t

# sg_ident --clear /dev/sdb

# cat t | sg_ident --set /dev/sdb

AUTHORS

Written by Douglas Gilbert.

REPORTING BUGS

Report bugs to <dgilbert at interlog dot com>.

COPYRIGHT

Copyright © 2005 Douglas Gilbert

This software is distributed under a FreeBSD license. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

SEE ALSO

sg_inq(sg3_utils), sg_rmsn(sg3_utils), sg_get_config(sg3_utils)