1SG_VERIFY(8) SG3_UTILS SG_VERIFY(8)
2
3
4
6 sg_verify - invoke SCSI VERIFY command(s) on a block device
7
9 sg_verify [--bpc=BPC] [--count=COUNT] [--dpo] [--help] [--lba=LBA]
10 [--verbose] [--version] DEVICE
11
13 Sends one or more SCSI VERIFY commands to DEVICE. It is the 10 byte
14 VERIFY command defined for block devices (see SBC-2 at
15 http://www.t10.org). Verify starts at the logical block address given
16 by the --lba=LBA option and continues for --count=COUNT blocks. No more
17 than --bpc=BPC blocks are verified by each VERIFY command so if neces‐
18 sary multiple VERIFY commands are sent. No news is good news (i.e. if
19 there are no verify errors detected no messages are sent to stderr and
20 the Unix return status is 0).
21
23 Arguments to long options are mandatory for short options as well.
24
25 -b, --bpc=BPC
26 where BPC specifies the maximum number of blocks that will be
27 verified by a single SCSI VERIFY command. The default value is
28 128 blocks which equates to 64 KB for a disk with 512 byte
29 blocks. If BPC is less than COUNT then multiple SCSI VERIFY com‐
30 mands are sent to the device. For recent block devices (disks)
31 this value may be constrained by the maximum transfer length
32 field in the block limits VPD page.
33
34 -c, --count=COUNT
35 where COUNT specifies the number of blocks to verify. The
36 default value is 1 . If COUNT is greater than BPC (or its
37 default value of 128) then multiple SCSI VERIFY commands are
38 sent to the device. The sg_readcap utility can be used to find
39 the maximum number of blocks that a block device (e.g. a disk)
40 has.
41
42 -d, --dpo
43 disable page out changes the cache retention priority of blocks
44 read on the device's cache to the lowest priority. This means
45 that blocks read by other commands are more likely to remain in
46 the device's cache.
47
48 -h, --help
49 output the usage message then exit.
50
51 -l, --lba=LBA
52 where LBA specifies the logical block address of the first block
53 to start the verify operation. LBA is assumed to be decimal
54 unless prefixed by '0x' or a trailing 'h' (see below). The
55 default value is 0 (i.e. the start of the device).
56
57 -v, --verbose
58 increase the level of verbosity, (i.e. debug output).
59
60 -V, --version
61 print the version string and then exit.
62
64 The BPC, COUNT and LBA arguments may be followed by one of these multi‐
65 plicative suffixes: c C *1; w W *2; b B *512; k K KiB *1,024; KB
66 *1,000; m M MiB *1,048,576; MB *1,000,000; g G GiB *1,073,741,824; GB
67 *1,000,000,000; t T TiB *(2**40); TB *(10**12); p P PiB *(2**50) and PB
68 *(10**15). The "T" and "P" based suffixes can only be used for COUNT
69 and LBA. Also a suffix of the form "x<n>" multiplies the leading number
70 by <n>.
71
72 Alternatively numerical values can be given in hexadecimal preceded by
73 either "0x" or "0X" (or has a trailing "h" or "H"). When hex numbers
74 are given, multipliers cannot be used.
75
76 The amount of error correction and the number of retries attempted
77 before a block is considered defective are controlled in part by the
78 Verify Error Recovery mode page. A note in the SBC-2 (draft) standard
79 advises that to minimize the number of checks (and hence have the most
80 "sensitive" verify check) do the following in that mode page. Set the
81 EER bit to 0, the PER bit to 1, the DTE bit to 1, the DCR bit to 1, the
82 verify retry count to 0 and the verify error recovery timeout to 0.
83 Mode pages can be modified with the sginfo utility.
84
86 The exit status of sg_verify is 0 when it is successful. Otherwise see
87 the sg3_utils(8) man page.
88
90 Written by Douglas Gilbert.
91
93 Report bugs to <dgilbert at interlog dot com>.
94
96 Copyright © 2004-2007 Douglas Gilbert
97 This software is distributed under a FreeBSD license. There is NO war‐
98 ranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PUR‐
99 POSE.
100
102 sginfo(sg3_utils), sg_modes(sg3_utils), sg_readcap(sg3_utils),
103 sg_inq(sg3_utils)
104
105
106
107sg3_utils-1.23 January 2007 SG_VERIFY(8)