.TH SG_VERIFY "8" "February 2011" "sg3_utils\-1.31" SG3_UTILS .SH NAME sg_verify \- invoke SCSI VERIFY command(s) on a block device .SH SYNOPSIS .B sg_verify [\fI\-\-bpc=BPC\fR] [\fI\-\-count=COUNT\fR] [\fI\-\-dpo\fR] [\fI\-\-help\fR] [\fI\-\-lba=LBA\fR] [\fI\-\-readonly\fR] [\fI\-\-verbose\fR] [\fI\-\-version\fR] [\fI\-\-vrprotect=VRP\fR] \fIDEVICE\fR .SH DESCRIPTION .\" Add any additional description here .PP Sends one or more SCSI VERIFY commands to \fIDEVICE\fR. It is the 10 byte VERIFY command defined for block devices (see SBC\-2 at http://www.t10.org). Verify starts at the logical block address given by the \fI\-\-lba=LBA\fR option and continues for \fI\-\-count=COUNT\fR blocks. No more than \fI\-\-bpc=BPC\fR blocks are verified by each VERIFY command so if necessary multiple VERIFY commands are sent. No news is good news (i.e. if there are no verify errors detected no messages are sent to stderr and the Unix return status is 0). .SH 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. .TP \fB\-b\fR, \fB\-\-bpc\fR=\fIBPC\fR where \fIBPC\fR specifies the maximum number of blocks that will be verified by a single SCSI VERIFY command. The default value is 128 blocks which equates to 64 KB for a disk with 512 byte blocks. If \fIBPC\fR is less than \fICOUNT\fR then multiple SCSI VERIFY commands are sent to the device. For recent block devices (disks) this value may be constrained by the maximum transfer length field in the block limits VPD page. .TP \fB\-c\fR, \fB\-\-count\fR=\fICOUNT\fR where \fICOUNT\fR specifies the number of blocks to verify. The default value is 1 . If \fICOUNT\fR is greater than \fIBPC\fR (or its default value of 128) then multiple SCSI VERIFY commands are sent to the device. The .B sg_readcap utility can be used to find the maximum number of blocks that a block device (e.g. a disk) has. .TP \fB\-d\fR, \fB\-\-dpo\fR disable page out changes the cache retention priority of blocks read on the device's cache to the lowest priority. This means that blocks read by other commands are more likely to remain in the device's cache. .TP \fB\-h\fR, \fB\-\-help\fR output the usage message then exit. .TP \fB\-l\fR, \fB\-\-lba\fR=\fILBA\fR where \fILBA\fR specifies the logical block address of the first block to start the verify operation. \fILBA\fR is assumed to be decimal unless prefixed by '0x' or a trailing 'h' (see below). The default value is 0 (i.e. the start of the device). \fB\-r\fR, \fB\-\-readonly\fR opens the DEVICE read\-only rather than read\-write which is the default. The Linux sg driver needs read\-write access for the SCSI VERIFY command but other access methods may require read\-only access. .TP \fB\-v\fR, \fB\-\-verbose\fR increase the level of verbosity, (i.e. debug output). .TP \fB\-V\fR, \fB\-\-version\fR print the version string and then exit. .TP \fB\-P\fR, \fB\-\-vrprotect\fR=\fIVRP\fR where \fIVRP\fR is the value in the vrprotect field in the VERIFY command cdb. It must be a value between 0 and 7 inclusive. The default value is zero. .SH NOTES Various numeric arguments (e.g. \fILBA\fR) may include multiplicative suffixes or be given in hexadecimal. See the "NUMERIC ARGUMENTS" section in the sg3_utils(8) man page. .PP The amount of error correction and the number of retries attempted before a block is considered defective are controlled in part by the Verify Error Recovery mode page. A note in the SBC\-2 (draft) standard advises that to minimize the number of checks (and hence have the most "sensitive" verify check) do the following in that mode page. Set the EER bit to 0, the PER bit to 1, the DTE bit to 1, the DCR bit to 1, the verify retry count to 0 and the verify error recovery timeout to 0. Mode pages can be modified with the .B sginfo utility. .SH EXIT STATUS The exit status of sg_verify is 0 when it is successful. Otherwise see the sg3_utils(8) man page. .SH AUTHORS Written by Douglas Gilbert. .SH "REPORTING BUGS" Report bugs to . .SH COPYRIGHT Copyright \(co 2004\-2011 Douglas Gilbert .br This software is distributed under a FreeBSD license. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. .SH "SEE ALSO" .B sginfo(sg3_utils), sg_modes(sg3_utils), sg_readcap(sg3_utils), .B sg_inq(sg3_utils)