SG_PERSIST(8) SG3_UTILS SG_PERSIST(8) (NAME) sg_persist - SCSI PERSISTENT RESERVE (SYNOPSIS) sg_persist [] DEVICE sg_persist [] --device=DEVICE sg_persist --help | --version (DESCRIPTION) (Persistent Reservations and Registrations) . ( SPC-4 << >> "service actions" ) SCSI PERSISTENT RESERVE IN (PRIN) . SCSI PERSISTENT RESERVE OUT (PROUT) . . ( I_T nexus ) (reservation key) . ( I_T nexus ) . <<>> ( --prout-type=TYPE ). . READ KEYS PRIN . PRIN : READ RESERVATION REPORT CAPABILITIES READ FULL STATUS. . ( SPC-5 ANSI INCITS 502-2020) . ( <>) . ( PRIN) . ( PROUT) . PROUT ( --register) --out . SCSI RESERVE RELEASE ( ) . SPC-3 RESERVE RELEASE . RESERVE RELEASE SPC-4 B . SCSI RESERVE RELEASE <> . --help --version DEVICE . DEVICE ( ) --device=DEVICE . SPC-4 <<>> (sub-command) . << >> (service action) PROUT ( "service action reservation key") . <<>> . (OPTIONS) . . -l, --alloc-length=LEN (allocation length) PRIN . LEN . () . PRIN ... SPC-4 . LEN . -C, --clear Clear PROUT . ( ) . I_T_L nexus ( --param-rk=RK) . PERSISTENT RESERVE OUT (service action) CLEAR [0x3] . -d, --device=DEVICE DEVICE SCSI . DEVICE . : 'sg_persist --device=/dev/sg2' 'sg_persist /dev/sg2'. -h, --help . ( '-hh') . -H, --hex PRIN . ( ) PRIN SPC-4 . . -i, --in SCSI PERSISTENT RESERVE IN . . -m, --maxlen=LEN LEN ALLOCATION LENGTH PRIN . LEN (decimal) . '0x' '0X' 'h' ( 'H') . --maxlen=LEN sg3_utils . LEN --alloc-length=LEN . --alloc-length=LEN . -n, --no-inquiry PRIN PROUT SCSI INQUIRY . INQUIRY . -o, --out SCSI PERSISTENT RESERVE OUT . -Y, --param-alltgpt << >> (ALL_TG_PT) PROUT . 'register' 'register and ignore existing key' . -Z, --param-aptpl << >> (APTPL) PROUT . 'register' 'register and ignore existing key' 'register and move' . -K, --param-rk=RK PROUT . RK ( ) . . PROUT . -S, --param-sark=SARK (service action reservation key) PROUT . SARK ( ) . . PROUT . -P, --preempt Preempt PROUT . ( --param-sark=SARK) I_T_L nexus ( --param-rk=RK) (preempt) . --prout-type=TYPE . PERSISTENT RESERVE OUT PREEMPT [0x4] . -A, --preempt-abort Preempt and Abort PROUT . ( --param-sark=SARK) I_T_L nexus ( --param-rk=RK) . --prout-type=TYPE . ACA (abort) . PERSISTENT RESERVE OUT PREEMPT AND ABORT [0x5] . -T, --prout-type=TYPE 'type' PROUT . 'register-move' 'reserve' 'release' 'preempt (and abort)' . TYPE: 1-> (write exclusive) 3-> (exclusive access) 5-> - (write exclusive - registrants only) 6-> - (exclusive access - registrants only) 7-> - (write exclusive - all registrants) 8-> - (exclusive access - all registrants). ( ). ("persistent reservation type") read reservation PRIN ( ... SPC-4) . -s, --read-full-status Read Full Status PRIN . SCSI . (TransportIDs) . PERSISTENT RESERVE IN READ FULL STATUS [0x3] . -k, --read-keys Read Keys PRIN . ( ) SCSI . SCSI PRIN . PERSISTENT RESERVE IN READ KEYS [0x0] . -y, --readonly DEVICE . PRIN / . / SG_PERSIST_IN_RDONLY ( ) . . -r, --read-reservation Read Reservation PRIN . DEVICE . . (scope) (type) . PERSISTENT RESERVE IN READ RESERVATION [0x1] . -s, --read-status --read-full-status. -G, --register Register PROUT . : ) '--param-rk=0' '--param-sark=' ) '--param-rk=' '--param-sark=' ) '--param-rk=' '--param-sark=0'. PERSISTENT RESERVE OUT REGISTER [0x0] . -I, --register-ignore Register and Ignore Existing Key PROUT . --register . '--param-sark=' . PERSISTENT RESERVE OUT REGISTER AND IGNORE EXISTING KEY [0x6] . -M, --register-move ( ) ( ) PROUT . (transportID) . [ I_T nexus ( ) (logical unit) .] --prout-type=TYPE --param-rk=RK --param-sark=SARK ( ) . PERSISTENT RESERVE OUT REGISTER AND MOVE [0x7] . -Q, --relative-target-port=RTPI (relative target port identifier) 'register and move' PROUT . RTPI ffff ( ) . . -L, --release Release PROUT . . --prout-type=TYPE --param-rk=RK . PERSISTENT RESERVE OUT RELEASE [0x2] . -z, --replace-lost Replace Lost Reservation PROUT . << >>. . '--param-rk=0' ( ) '--param-sark=' --prout-type=TYPE . PERSISTENT RESERVE OUT REPLACE LOST RESERVATION [0x8] . -c, --report-capabilities Report Capabilities PRIN . DEVICE . PERSISTENT RESERVE IN REPORT CAPABILITIES [0x2] . -R, --reserve Reserve PROUT . ( ). --prout-type=TYPE --param-rk=RK . PERSISTENT RESERVE OUT RESERVE [0x1] . -X, --transport-id=TIDS TIDS . ( ) (TransportID) SPC-5 . iSCSI . TIDS ( "sas,5000c50005b32001" "6,0,0,0,5,0,c5,0,5,b3,20,1" ). TIDS "-" TransportID (stdin) . TIDS "file=" TransportID . << (TRANSPORT IDs)>> . -U, --unreg register and move PROUT. (I_T nexus) (unregister) . (I_T nexus) PROUT . PERSISTENT RESERVE OUT REGISTER AND MOVE [0x7] . UNREG . -v, --verbose cdb . PROUT . () . PRIN --hex . -V, --version . . -? . . (TRANSPORT IDs) (TransportIDs) (initiators) . . SPC-4 ( .. ). TransportID 'register and move' PROUT 'register' PROUT TransportID . --transport-id=TIDS TIDS ( ) TransportID SPC-4 . TIDS "fcp," "spi," "sbp," "srp," "iqn" "sas," "sop," . "iqn" iSCSI ( iSCSI qualified) . "iqn" ( "FCP,"). "fcp," N_PORT_NAME ( "fcp,10000000C9F3A571"). "spi," "," ( ) . "sbp," EUI-64 . "srp," . "sas," SAS ( "sas,5000c50005b32001"). "sop," (routing id) . iSCSI . iSCSI ( "iqn.5886.com.acme.diskarrays-sn-a8675309"). (ISID ) ",i,0x" : "iqn.5886.com.acme.diskarrays-sn-a8675309,i,0x1234567890ab". iSCSI () iSCSI () . iSCSI UTF-8 ( ) iSCSI UTF-8 . "LANG=en_US.utf-8" sg_persist (locale) . TIDS ( /) TransportID . TIDS "-" (stdin) . TIDS "file=" . TransportID SPC-4 . : "#" TransportID TransportID SPC-4 . (padding) . . SPC-3 SPEC_I_PT register and ignore existing key PROUT . SPC-4 CHECK CONDITION ILLEGAL REQUEST INVALID FIELD IN PARAMETER LIST . (NOTES) . DEVICE SCSI (sg) . . SCSI ( /dev/sdc /dev/st1m /dev/sg3) . "sg_persist --read-keys /dev/sdb" . . (scope) PROUT SPC-4 "LU_SCOPE" . scope . PROUT ( --prout-type=TYPE) RESERVATION CONFLICT . () : <<>> SPC . () PRIN PROUT . APTPL ( --param-aptpl) . (spin up ) . (EXAMPLES) . sg3_utils(8) . 'read keys' PRIN : sg_persist /dev/sdb () : sg_persist --in --read-keys --device=/dev/sdb '--read-reservation' '-r' : sg_persist -r /dev/sdb (register) 0x123abc : sg_persist --out --register --param-sark=123abc /dev/sdb (reserve) DEVICE ( 'write exclusive') : sg_persist --out --reserve --param-rk=123abc --prout-type=1 /dev/sdb (release) ( --param-rk --prout-type ): sg_persist --out --release --param-rk=123abc --prout-type=1 /dev/sdb (unregister) ( '--clear' ) : sg_persist --out --register --param-rk=123abc /dev/sdb (register) (unregister) . '--transport-id=file=transport_ids.txt' examples sg3_utils . sg_persist_tst.sh . Seagate Savvio 10K.3 1200 SSD SAS . (EXIT STATUS) sg_persist . sg3_utils(8) . (ENVIRONMENT VARIABLES) : SG_PERSIST_IN_RDONLY. PRIN DEVICE ( O_RDONLY). --readonly . (AUTHOR) Douglas Gilbert (REPORTING BUGS) . (COPYRIGHT) (C) 2004-2023 Douglas Gilbert GPL . . (SEE ALSO) sg3_utils(sg3_utils), scsires(internet) sg3_utils-1.48 March 2023 SG_PERSIST(8)