man pages section 1M: System Administration Commands

Exit Print View

Updated: July 2014

sg_verify (1m)


sg_verify - invoke SCSI VERIFY command(s) on a block device


sg_verify   [--bpc=BPC]   [--count=COUNT]  [--dpo]  [--help]
[--lba=LBA] [--readonly] [--verbose]  [--version]  [--vrpro-


SG3_UTILS                                            SG_VERIFY(8)

     sg_verify - invoke SCSI VERIFY command(s) on a block device

     sg_verify   [--bpc=BPC]   [--count=COUNT]  [--dpo]  [--help]
     [--lba=LBA] [--readonly] [--verbose]  [--version]  [--vrpro-
     tect=VRP] DEVICE

     Sends  one or more SCSI VERIFY commands to DEVICE. It is the
     10 byte VERIFY command defined for block devices (see  SBC-2
     at  Verify starts at the logical block
     address given by the  --lba=LBA  option  and  continues  for
     --count=COUNT blocks. No more than --bpc=BPC blocks are ver-
     ified 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).

     Arguments to long options are mandatory for short options as
     well.  The options are arranged in alphabetical order  based
     on the long option name.

     -b, --bpc=BPC
          where  BPC  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 BPC is less than  COUNT
          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.

     -c, --count=COUNT
          where COUNT specifies the number of blocks  to  verify.
          The  default  value is 1 . If COUNT is greater than BPC
          (or its default value of 128) then multiple SCSI VERIFY
          commands are sent to the device. The sg_readcap utility
          can be used to find the maximum number of blocks that a
          block device (e.g. a disk) has.

     -d, --dpo
          disable  page  out changes the cache retention priority
          of blocks read on the device's cache to the lowest pri-
          ority.  This  means  that blocks read by other commands
          are more likely to remain in the device's cache.

     -h, --help
          output the usage message then exit.

     -l, --lba=LBA

sg3_utils-1.31      Last change: February 2011                  1

SG3_UTILS                                            SG_VERIFY(8)

          where LBA specifies the logical block  address  of  the
          first  block  to  start  the  verify  operation. LBA 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).   -r,  --readonly  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.

     -v, --verbose
          increase the level of verbosity, (i.e. debug output).

     -V, --version
          print the version string and then exit.

     -P, --vrprotect=VRP
          where VRP 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.

     See  attributes(5)  for  descriptions   of   the   following

     |Availability   | system/storage/sg3_utils |
     |Stability      | Uncommitted              |
     Various numeric arguments (e.g. LBA) may include multiplica-
     tive suffixes or be given in hexadecimal. See  the  "NUMERIC
     ARGUMENTS" section in the sg3_utils(8) man page.

     The  amount  of  error  correction and the number of retries
     attempted before a block is considered  defective  are  con-
     trolled  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
     sginfo utility.

     The exit status of sg_verify is 0  when  it  is  successful.
     Otherwise see the sg3_utils(8) man page.

sg3_utils-1.31      Last change: February 2011                  2

SG3_UTILS                                            SG_VERIFY(8)

     Written by Douglas Gilbert.

     Report bugs to <dgilbert at interlog dot com>.

     Copyright (C) 2004-2011 Douglas Gilbert
     This  software is distributed under a FreeBSD license. There
     is NO warranty; not even for MERCHANTABILITY or FITNESS  FOR

     sginfo(sg3_utils),       sg_modes(sg3_utils),       sg_read-
     cap(sg3_utils), sg_inq(sg3_utils)

     This  software  was   built   from   source   available   at    The  original
     community       source       was       downloaded       from

     Further  information about this software can be found on the
     open        source        community        website        at

sg3_utils-1.31      Last change: February 2011                  3