sg_stpg
(1m)
Name
sg_stpg - sends a SCSI SET TARGET PORT GROUPS command
Synopsis
sg_stpg [--active] [--help] [--hex] [--offline] [--opti-
mized] [--raw] [--standby] [--state=S,S...] [--tp=P,P...]
[--unavailable] [--verbose] [--version] DEVICE
Description
SG3_UTILS SG_STPG(8)
NAME
sg_stpg - sends a SCSI SET TARGET PORT GROUPS command
SYNOPSIS
sg_stpg [--active] [--help] [--hex] [--offline] [--opti-
mized] [--raw] [--standby] [--state=S,S...] [--tp=P,P...]
[--unavailable] [--verbose] [--version] DEVICE
DESCRIPTION
Send a SCSI SET TARGET PORT GROUPS command to DEVICE. This
utility has different modes depending on whether the --tp=
option is given.
If --tp= is given then the SET TARGET PORT GROUPS command
parameter block is built with a descriptor for each element
in the list given to --tp=. The corresponding asymmetric
access state value is either taken from the --state= list
or, if that is not given, from one of the explicit state
options (e.g. --unavailable), used repeatedly if required.
If --tp= is not given then a sequence of SCSI commands are
sent to the DEVICE leading up to the SET TARGET PORT GROUPS
command. First an INQUIRY is sent to fetch the device iden-
tification VPD page to find the (primary) target port group
associated with DEVICE. Then a REPORT TARGET PORT GROUPS
command is issued to find the current state and whether a
transition to the requested state is supported. If so the
SET TARGET PORT GROUPS command is sent.
Target port group access is described in SPC-4 found at
www.t10.org in section 5.8 (in rev 11 dated 2007/5/14). The
SET TARGET PORT GROUPS command is also described in that
document.
OPTIONS
Arguments to long options are mandatory for short options as
well. The options are arranged in alphabetical order based
on the long option name.
-a, --active
set active/non-optimized state.
-h, --help
output the usage message then exit.
-H, --hex
output response to the REPORT TARGET PORT GROUPS com-
mand in hex then exit.
-O, -l, --offline
set offline state. This is the appropriate state to set
a target port to prior to removing the device. Note
sg3_utils-1.25 Last change: September 2007 1
SG3_UTILS SG_STPG(8)
that a relative target port identifier should be given
with this state (rather than a target port group iden-
tifier that all other states take).
-o, --optimized
set active/optimized state. If no other state options
or --tp= option are given then active/optimized is the
default state.
-r, --raw
output response to the REPORT TARGET PORT GROUPS com-
mand in binary to stdout then exit.
-s, --standby
set standby state. Port group shall accept those com-
mands listed for "unavailable" state plus LOG
SELECT/SENSE, MODE SELECT/SENSE, RECEIVE DIAGNOSTIC
RESULTS, SEND DIAGNOSTIC, PERSISTENT RESERVE IN/OUT
commands.
-S, --state=S,S...
specifies a comma separated list (one element of more)
of states. Either a number or an abbreviation can be
given. A number is assumed to be a decimal number
unless it is prefixed by "0x" or has a trailing "h" in
which case a hexadecimal value is assumed. Only the
values 0, 1, 2, 3 or 14 are accepted. The accepted
abbreviations are "an", "ao", "o", "s" or "u"; which
represent active/non-optimized(1), active/optimized(0),
offline(14), standby(2) or unavailable(3) respectively.
-t, --tp=P,P...
specifies a comma separated list (one element of more).
Each elements is either a target port group identifier
(when the corresponding state is other than "offline")
or a relative target port identifier (when the corre-
sponding state is "offline"). Each element is assumed
to be a decimal number unless it is prefixed by "0x" or
has a trailing "h" in which case a hexadecimal value is
assumed.
-u, --unavailable
set unavailable state. Port group shall only accept
INQUIRY, REPORT LUNS, REPORT/SET TARGET PORT GROUPS,
REQUEST SENSE and READ/WRITE BUFFER commands.
-v, --verbose
increase the level of verbosity, (i.e. debug output).
-V, --version
print the version string and then exit.
sg3_utils-1.25 Last change: September 2007 2
SG3_UTILS SG_STPG(8)
ATTRIBUTES
See attributes(5) for descriptions of the following
attributes:
+---------------+--------------------------+
|ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+---------------+--------------------------+
|Availability | system/storage/sg3_utils |
+---------------+--------------------------+
|Stability | Uncommitted |
+---------------+--------------------------+
NOTES
The SET TARGET PORT GROUPS command should be supported when-
ever the TPGS value in a standard INQUIRY response is 2 or
3. [View with sg_inq utility.]
Notice that the offline state is termed as a "secondary tar-
get port asymmetric access state" and takes a relative tar-
get port identifier (i.e. acts on a single target port).
All the other states are termed as "primary target port
asymmetric access states" and each takes a target port group
identifier (i.e. acts on one or more target ports).
When --tp= is given then the same number of elements should
be given to the --state= option. If more than one list ele-
ment is given to --tp= and an equal number of elements is
_not_ given to the the --state= option, then if only one
state is specified then it is repeated.
EXIT STATUS
The exit status of sg_stpg is 0 when it is successful. Oth-
erwise see the sg3_utils(8) man page.
AUTHORS
Written by Douglas Gilbert.
REPORTING BUGS
Report bugs to <dgilbert at interlog dot com>.
COPYRIGHT
Copyright (C) 2007 Hannes Reinecke, Christophe Varoqui and
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, sg_rtpg (sg3_utils)
This software was built from source available at
https://java.net/projects/solaris-userland. The original
sg3_utils-1.25 Last change: September 2007 3
SG3_UTILS SG_STPG(8)
community source was downloaded from
http://sg.danny.cz/sg/p/sg3_utils-1.33.tgz
Further information about this software can be found on the
open source community website at
http://sg.danny.cz/sg/sg3_utils.html.
sg3_utils-1.25 Last change: September 2007 4