SG_VPD(8) SG3_UTILS SG_VPD(8) (NAME) sg_vpd - VPD SCSI / (SYNOPSIS) sg_vpd [--all] [--descriptors] [--enumerate] [--examine] [--force] [--help] [--hex] [--ident] [--inhex=FN] [--json[=JO]] [--js-file=JFN] [--long] [--maxlen=LEN] [--page=PG] [--quiet] [--raw] [--sinq_inraw=RFN] [--vendor=VP] [--verbose] [--version] [DEVICE] (DESCRIPTION) DEVICE << >> (VPD Vital Product Data) (ASCII) . VPD SCSI INQUIRY . --inhex=FN . FN ( <<->> stdin) VPD . --raw ( ). VPD (Device Identification : 0x83) . SPC-3 . --ident . VPD ( INQUIRY) T10/BSR INCITS 566 SPC-6 . https://www.t10.org . DEVICE VPD << VPD >> (Supported VPD pages 0x0) . (OPTIONS) . . -a, --all VPD. DEVICE VPD << VPD >> . --long . --inhex=FN FN VPD ( ) . ( ) . VPD VPD ( SPC-4) . --page=PG VPD PG ( ) . -d, --descriptors INQUIRY (version descriptors) . '--page=sinq' --page=PG . --desc . -e, --enumerate VPD ( T10 ) (vendor specific). . DEVICE VPD . --page=PG PG VPD PG . --vendor=VP / VP . -E, --examine VPD ( 0x0 0xff) . 0x80 0x0 0xc0 . VPD 0x0 VPD . 0xc0 0xff . --page=PG 0xff . --page=PG PG . . sdparm mode VPD --examine . T10 ( VPD mode log ) << ...>> . -f, --force VPD 0x0 ( VPD << VPD >>) 0x0 . VPD 0x0 . 0x0 USB . -h, --help . DEVICE . -H, --hex VPD . ATA VPD . --inhex=FN '-HHHH' ( : 'sg_vpd -p di -HHHH /dev/sg3 > dev_id.hex'). '-HHHH' ( ) . -i, --ident VPD (0x83). '--page=di' . (logical unit designator) VPD . '--quiet --page=di_lu' . -I, --inhex=FN FN ( <<->> stdin) VPD ( INQUIRY ) . . --page=PG VPD ( INQUIRY ) . . (#) . --raw FN . -j[=JO], --json[=JO] JSON . <<=>> <<=>> . sg3_utils_json '?' JO . -J, --js-file=JFN JSON JFN . (truncate) . JSON stdout . --json[=JO] . --json[=JO] JO . -l, --long VPD . ATA VPD ( ) IDENTIFY (PACKET) DEVICE ( ) . -m, --maxlen=LEN LEN () <> CDB . ( LEN ) ( ATA VPD ) INQUIRY <> CDB . LEN INQUIRY . INQUIRY ( VPD ) LEN . sg_inq(8) . -p, --page=PG PG VPD . PG / . VPD --enumerate . () '0x' 'h' . VPD . ( ) VP ( --vendor=VP ). ( '-i' '-l' '-V') VPD << VPD >> (0x0) . PG '-1' 'sinq' INQUIRY . --enumerate ( ). PG VPD << VPD >> (0x0) <> [EDOM] . --force . -q, --quiet . -r, --raw --inhex=FN VPD . (pipe) . stdout stderr . --inhex=FN FN . -Q, --sinq_inraw=RFN RFN INQUIRY DEVICE FN . INQUIRY sysfs . /sys/class/scsi_device//device/inquiry . . VPD <> VPD . VPD ( Extended Inquiry VPD) INQUIRY . --all --examine --page=PG INQUIRY VPD . --raw . DEVICE . -M, --vendor=VP VP ( <> Seagate) / ( <> 3PAR HP) . ( 0xc0) . "xxx" VP . --page=PG PG . PG ( 0xc0) VP ( 0xc0) . -v, --verbose . -V, --version . VPD ATA (ATA INFORMATION VPD PAGE) VPD ( 0x89 'ai') SCSI ATA ( SAT) . SAT <<>> (signature) ATA ATA IDENTIFY (PACKET) DEVICE . hdparm ( ). IDENTIFY (PACKET) DEVICE --long ( --hex --raw) . --long IDENTIFY (PACKET) DEVICE ATA ( ) . '-HH' . hdparm '-HHH' '-rr' . 'dev/sdb' SATA SAT : ATA IDENTIFY (PACKET) DEVICE . (NOTES) VPD ( Extended INQUIRY) INQUIRY PG '-1' 'sinq' INQUIRY VPD . ( SPT Extended INQUIRY) '--long' INQUIRY ( PDT PROTECT) . DEVICE ( O_RDONLY). (EXIT STATUS) sg_vpd . sg3_utils(8) . (EXAMPLES) . sg3_utils(8) . VPD . : # sg_vpd /dev/sdb Supported VPD pages VPD page: Supported VPD pages [sv] Unit serial number [sn] Device identification [di] Extended inquiry data [ei] Block limits (SBC) [bl] VPD '--long' . VPD '--page=' . . VPD Extended inquiry data : # sg_vpd --page=ei /dev/sdb extended INQUIRY data VPD page: ACTIVATE_MICROCODE=0 SPT=0 GRD_CHK=0 APP_CHK=0 REF_CHK=0 UASK_SUP=0 GROUP_SUP=0 PRIOR_SUP=0 HEADSUP=1 ORDSUP=1 SIMPSUP=1 WU_SUP=0 CRD_SUP=0 NV_SUP=0 V_SUP=0 P_I_I_SUP=0 LUICLR=0 R_SUP=0 CBCS=0 Multi I_T nexus microcode download=0 Extended self-test completion minutes=0 POA_SUP=0 HRA_SUP=0 VSA_SUP=0 '--long' VPD Extended inquiry : # sg_vpd --page=ei --long /dev/sdb extended INQUIRY data VPD page: ACTIVATE_MICROCODE=0 SPT=1 [protection types 1 and 2 supported] GRD_CHK=1 .... ( ) 0xb0 VPD : # sg_vpd --page=0xb0 --enumerate Matching standard VPD pages: bl 0xb0 Block limits (SBC) oi 0xb0 OSD information sad 0xb0 Sequential access device capabilities (SSC) "--all" . VPD : # sg_vpd --all -HHHH /dev/sg3 > all_vpds.hex : # sg_vpd --all --inhex=all_vpds.hex : # sg_vpd --all --raw /dev/sg3 > all_vpds.bin # sg_vpd --all --raw --inhex=all_vpds.bin "--raw" (--inhex) all_vpds.bin . VPD T10 0xc0 : # sg_vpd --all --page=0xbf --raw --inhex=all_vpds.bin VPD ( 0 80h 83h) sysfs . VPD (root) . : sg_vpd --raw --inhex=/sys/class/scsi_generic/sg3/device/vpd_pg83 sg_vpd -rI /sys/class/scsi_generic/sg3/device/vpd_pg83 /dev/sg3 2:0:0:0 . sg_vpd -v -r -I /sys/class/scsi_disk/2:0:0:0/device/vpd_pg83 https://sg.danny.cz/sg/sg3_utils.html . (AUTHOR) Douglas Gilbert (REPORTING BUGS) . (COPYRIGHT) (C) 2006-2026 Douglas Gilbert BSD-2-Clause . . (SEE ALSO) sg_inq(sg3_utils), sg3_utils(sg3_utils), sdparm(sdparm), hdparm(hdparm) sg3_utils-1.49 2026-07-12 SG_VPD(8)