Provided by: smartmontools_5.41+svn3365-1_i386 bug

NAME

       smartctl - Control and Monitor Utility for SMART Disks

SYNOPSIS

       smartctl [options] device

FULL PATH

       /usr/sbin/smartctl

PACKAGE VERSION

       smartmontools-5.41 2011-06-09 r3365

DESCRIPTION

       smartctl   controls   the   Self-Monitoring,   Analysis  and  Reporting
       Technology (SMART) system built into many ATA-3 and later ATA, IDE  and
       SCSI-3  hard drives. The purpose of SMART is to monitor the reliability
       of the hard  drive  and  predict  drive  failures,  and  to  carry  out
       different  types  of  drive  self-tests.   This  version of smartctl is
       compatible with  ATA/ATAPI-7  and  earlier  standards  (see  REFERENCES
       below)

       smartctl is a command line utility designed to perform SMART tasks such
       as printing the SMART self-test and error logs, enabling and  disabling
       SMART automatic testing, and initiating device self-tests. Note: if the
       user issues a SMART command that is (apparently) not implemented by the
       device,  smartctl  will  print  a warning message but issue the command
       anyway (see the -T, --tolerance option below).  This should  not  cause
       problems:  on  most  devices,  unimplemented SMART commands issued to a
       drive are ignored and/or return an error.

       smartctl also provides support for polling TapeAlert messages from SCSI
       tape drives and changers.

       The  user  must  specify the device to be controlled or interrogated as
       the final argument to smartctl. The command set used by the  device  is
       often  derived  from  the  device  path but may need help with the '-d'
       option (for more information see the section on "ATA, SCSI command sets
       and SAT" below). Device paths are as follows:

       LINUX:   Use   the   forms  "/dev/hd[a-t]"  for  IDE/ATA  devices,  and
                "/dev/sd[a-z]" for SCSI devices.  For  SCSI  Tape  Drives  and
                Changers  with  TapeAlert  support use the devices "/dev/nst*"
                and "/dev/sg*".  For SATA  disks  accessed  with  libata,  use
                "/dev/sd[a-z]"  and  append  "-d  ata". For disks behind 3ware
                controllers you may need  "/dev/sd[a-z]"  or  "/dev/twe[0-9]",
                "/dev/twa[0-9]"  or  "/dev/twl[0-9]":  see  details below. For
                disks behind HighPoint RocketRAID  controllers  you  may  need
                "/dev/sd[a-z]".  For disks behind Areca SATA RAID controllers,
                you need "/dev/sg[2-9]"  (note  that  smartmontools  interacts
                with  the Areca controllers via a SCSI generic device which is
                different than the SCSI device used for  reading  and  writing
                data)!

       DARWIN:  Use  the  forms  /dev/disk[0-9]  or  equivalently disk[0-9] or
                equivalently /dev/rdisk[0-9].  Long forms are also  available:
                please  use  '-h'  to  see  some  examples. Note that there is
                currently no Darwin SCSI support.

       FREEBSD: Use  the  forms  "/dev/ad[0-9]+"  for  IDE/ATA   devices   and
                "/dev/da[0-9]+"  or  "/dev/pass[0-9]+"  for SCSI devices.  For
                SATA devices on AHCI bus use "/dev/ada[0-9]+" format.

       NETBSD/OPENBSD:
                Use the form "/dev/wd[0-9]+c" for IDE/ATA devices.   For  SCSI
                disk  and  tape devices, use the device names "/dev/sd[0-9]+c"
                and "/dev/st[0-9]+c" respectively.  Be  sure  to  specify  the
                correct "whole disk" partition letter for your architecture.

       SOLARIS: Use  the  forms "/dev/rdsk/c?t?d?s?" for IDE/ATA and SCSI disk
                devices, and "/dev/rmt/*" for SCSI tape devices.

       WINDOWS 9x/ME:
                Use the forms  "/dev/hd[a-d]"  for  standard  IDE/ATA  devices
                accessed  via  SMARTVSD.VXD, and "/dev/hd[e-h]" for additional
                devices accessed via a patched SMARTVSE.VXD (see INSTALL  file
                for  details).   Use  the  form "/dev/scsi[0-9][0-f]" for SCSI
                devices via an aspi dll on ASPI  adapter  0-9,  ID  0-15.  The
                prefix "/dev/" is optional.

       WINDOWS NT4/2000/XP/2003/Vista/Win7/2008:
                Use  the  forms  "/dev/sd[a-z]"  for IDE/(S)ATA and SCSI disks
                "\\.\PhysicalDrive[0-25]" (where  "a"  maps  to  "0").   These
                disks   can  also  be  referred  to  as  "/dev/pd[0-255]"  for
                "\\.\PhysicalDrive[0-255]".  ATA disks can also be referred to
                as  "/dev/hd[a-z]" for "\\.\PhysicalDrive[0-25]".  Use one the
                forms      "/dev/tape[0-255]",      "/dev/st[0-255]",       or
                "/dev/nst[0-255]" for SCSI tape drives "\\.\Tape[0-255]".

                Alternatively,  drive  letters  "X:"  or  "X:\" may be used to
                specify the ('basic') disk behind a mounted  partition.   This
                does not work with 'dynamic' disks.

                For  disks  behind 3ware 9000 controllers use "/dev/sd[a-z],N"
                where N specifies the disk number (3ware  'port')  behind  the
                controller  providing  the logical drive ('unit') specified by
                "/dev/sd[a-z]".  Alternatively,  use  "/dev/tw_cli/cx/py"  for
                controller  x,  port  y to run the 'tw_cli' tool and parse the
                output. This provides limited  monitoring  ('-i',  '-c',  '-A'
                below)  if  SMART  support  is  missing  in  the  driver.  Use
                "/dev/tw_cli/stdin" or "/dev/tw_cli/clip" to parse CLI or  3DM
                output  from  standard  input  or  clipboard.   The option '-d
                3ware,N' is not necessary on Windows.

                [NEW EXPERIMENTAL SMARTCTL FEATURE]  For  disks  behind  Intel
                Matrix  RAID  driver  use "/dev/csmi[0-9],N" where N specifies
                the port behind the logical scsi controller  "\\.\Scsi[0-9]:".
                The prefix "/dev/" is optional.

       CYGWIN:  See "WINDOWS NT4/2000/XP/2003/Vista/Win7/2008" above.

       OS/2,eComStation:
                Use the form "/dev/hd[a-z]" for IDE/ATA devices.

       if  '-'  is specified as the device path, smartctl reads and interprets
       it's own debug output from standard input.  See '-r ataioctl' below for
       details.

       Based  on  the device path, smartctl will guess the device type (ATA or
       SCSI).  If necessary, the '-d' option can be  used  to  over-ride  this
       guess

       Note that the printed output of smartctl displays most numerical values
       in base 10  (decimal),  but  some  values  are  displayed  in  base  16
       (hexadecimal).   To  distinguish  them,  the  base 16 values are always
       displayed with a leading "0x",  for  example:  "0xff".  This  man  page
       follows the same convention.

OPTIONS

       The  options  are grouped below into several categories.  smartctl will
       execute  the  corresponding  commands  in   the   order:   INFORMATION,
       ENABLE/DISABLE, DISPLAY DATA, RUN/ABORT TESTS.

       SHOW INFORMATION OPTIONS:

       -h, --help, --usage
              Prints a usage message to STDOUT and exits.

       -V, --version, --copyright, --license
              Prints  version,  copyright, license, home page and SVN revision
              information for your copy of smartctl to STDOUT and then  exits.
              Please  include  this  information  if you are reporting bugs or
              problems.

       -i, --info
              Prints the device model number, serial number, firmware version,
              and  ATA  Standard  version/revision  information.   Says if the
              device supports SMART, and  if  so,  whether  SMART  support  is
              currently  enabled  or disabled.  If the device supports Logical
              Block Address mode (LBA mode) print current user drive  capacity
              in bytes. (If drive is has a user protected area reserved, or is
              "clipped", this may be smaller than the potential maximum  drive
              capacity.)   Indicates  if  the  drive  is  in the smartmontools
              database (see '-v' options  below).   If  so,  the  drive  model
              family  may  also  be printed. If '-n' (see below) is specified,
              the power mode of the drive is printed.

       -a, --all
              Prints all  SMART  information  about  the  disk,  or  TapeAlert
              information  about  the  tape drive or changer.  For ATA devices
              this is equivalent to
              '-H -i -c -A -l error -l selftest -l selective'
              and for SCSI, this is equivalent to
              '-H -i -A -l error -l selftest'.
              Note that for ATA disks  this  does  not  enable  the  non-SMART
              options  and  the SMART options which require support for 48-bit
              ATA commands.

       -x, --xall
              Prints all SMART and non-SMART information about the device. For
              ATA devices this is equivalent to
              '-H -i -c -A -f brief -l xerror,error -l xselftest,selftest
              -l selective -l directory -l scttemp -l scterc -l sataphy'.
              and for SCSI, this is equivalent to
              '-H -i -A -l error -l selftest -l background -l sasphy'.

       --scan Scans  for  devices and prints each device name, device type and
              protocol ([ATA] or [SCSI]) info.  May  be  used  in  conjunction
              with  '-d  TYPE'  to  restrict the scan to a specific TYPE.  See
              also info about platform specific device scan and the DEVICESCAN
              directive on smartd(8) man page.

       --scan-open
              Same  as  --scan,  but  also  tries  to  open each device before
              printing device info.  The device open  may  change  the  device
              type due to autodetection (see also '-d test').

              This option can be used to create a draft smartd.conf file.  All
              options after '--'  are  appended  to  each  output  line.   For
              example:
              smartctl --scan-open -- -a -W 4,45,50 -m admin@work > smartd.conf

       RUN-TIME BEHAVIOR OPTIONS:

       -q TYPE, --quietmode=TYPE
              Specifies that smartctl should run in one of the two quiet modes
              described here.  The valid arguments to this option are:

              errorsonly - only print: For the '-l error' option, if  nonzero,
              the  number  of  errors  recorded in the SMART error log and the
              power-on time when they occurred; For the '-l selftest'  option,
              errors  recorded  in  the  device  self-test  log;  For the '-H'
              option,  SMART  "disk  failing"  status  or  device   Attributes
              (pre-failure  or  usage) which failed either now or in the past;
              For the '-A' option, device Attributes  (pre-failure  or  usage)
              which failed either now or in the past.

              silent  - print no output.  The only way to learn about what was
              found is to use the exit status of smartctl (see  RETURN  VALUES
              below).

              noserial - Do not print the serial number of the device.

       -d TYPE, --device=TYPE
              Specifies  the  type of the device.  The valid arguments to this
              option are:

              auto - attempt to guess the device type from the device name  or
              from  controller  type  info provided by the operating system or
              from a matching USB ID entry in the drive database.  This is the
              default.

              test - prints the guessed type, then opens the device and prints
              the  (possibly  changed)  TYPE  name  and  then  exists  without
              performing any further commands.

              ata  -  the  device  type  is  ATA.  This prevents smartctl from
              issuing SCSI commands to an ATA device.

              scsi - the device type is SCSI.   This  prevents  smartctl  from
              issuing ATA commands to a SCSI device.

              sat - the device type is SCSI to ATA Translation (SAT).  This is
              for ATA disks that have a SCSI to ATA  Translation  (SAT)  Layer
              (SATL)  between  the disk and the operating system.  SAT defines
              two ATA PASS THROUGH SCSI commands, one 12 bytes  long  and  the
              other  16  bytes long.  The default is the 16 byte variant which
              can be overridden with either '-d sat,12' or '-d sat,16'.

              usbcypress - this device type is for ATA disks that are behind a
              Cypress USB to PATA bridge.  This will use the ATACB proprietary
              scsi pass through command.  The default SCSI operation  code  is
              0x24,   but   although   it   can   be   overridden   with   '-d
              usbcypress,0xN', where N is  the  scsi  operation  code,  you're
              running the risk of damage to the device or filesystems on it.

              usbjmicron  - this device type is for SATA disks that are behind
              a JMicron USB to PATA/SATA  bridge.   The  48-bit  ATA  commands
              (required  e.g. for '-l xerror', see below) do not work with all
              of these bridges and are therefore disabled by  default.   These
              commands  can be enabled by '-d usbjmicron,x'.  If two disks are
              connected to a bridge  with  two  ports,  an  error  message  is
              printed  if  no PORT is specified.  The port can be specified by
              '-d usbjmicron[,x],PORT' where PORT is 0 (master) or 1  (slave).
              This  is  not  necessary if the device uses a port multiplier to
              connect multiple disks to one  port.   The  disks  appear  under
              separate  /dev/ice  names  then.  CAUTION: Specifying ',x' for a
              device which does not support it results in I/O errors  and  may
              disconnect  the  drive.   The same applies if the specified PORT
              does not exist or is not connected to a disk.

              usbsunplus - this device type is for SATA disks that are  behind
              a SunplusIT USB to SATA bridge.

              marvell  -  [Linux only] interact with SATA disks behind Marvell
              chip-set controllers  (using  the  Marvell  rather  than  libata
              driver).

              megaraid,N  -  [Linux  only]  the device consists of one or more
              SCSI/SAS disks connected to a  MegaRAID  controller.   The  non-
              negative  integer N (in the range of 0 to 127 inclusive) denotes
              which disk on the controller is monitored.  Use syntax such as:
              smartctl -a -d megaraid,2 /dev/sda
              smartctl -a -d megaraid,0 /dev/sdb
              This interface will also work for Dell  PERC  controllers.   The
              following /dev/XXX entry must exist:
              For PERC2/3/4 controllers: /dev/megadev0
              For PERC5/6 controllers: /dev/megaraid_sas_ioctl_node

              3ware,N - [FreeBSD and Linux only] the device consists of one or
              more ATA disks connected to a 3ware RAID controller.   The  non-
              negative  integer  N  (in  the  range  from  0 to 127 inclusive)
              denotes which disk on the controller is monitored.   Use  syntax
              such as:
              smartctl -a -d 3ware,2 /dev/sda
              smartctl -a -d 3ware,0 /dev/twe0
              smartctl -a -d 3ware,1 /dev/twa0
              smartctl -a -d 3ware,1 /dev/twl0
              The  first  two  forms,  which  refer  to devices /dev/sda-z and
              /dev/twe0-15, may be used with 3ware series 6000, 7000, and 8000
              series  controllers  that use the 3x-xxxx driver.  Note that the
              /dev/sda-z form is deprecated starting with the Linux 2.6 kernel
              series  and may not be supported by the Linux kernel in the near
              future.  The final form, which refers to  devices  /dev/twa0-15,
              must  be  used with 3ware 9000 series controllers, which use the
              3w-9xxx driver.

              The devices /dev/twl0-15 must be used with  the  3ware/LSI  9750
              series controllers which use the 3w-sas driver.

              Note  that  if  the  special  character  device nodes /dev/twl?,
              /dev/twa?  and  /dev/twe?  do  not  exist,  or  exist  with  the
              incorrect major or minor numbers, smartctl will recreate them on
              the fly.  Typically /dev/twa0 refers to  the  first  9000-series
              controller,   /dev/twa1   refers   to  the  second  9000  series
              controller, and so on.  The  /dev/twl0  devices  refers  to  the
              first  9750  series  controller, /dev/twl1 resfers to the second
              9750 series controller, and so on.  Likewise /dev/twe0 refers to
              the  first  6/7/8000-series  controller, /dev/twe1 refers to the
              second 6/7/8000 series controller, and so on.

              Note that for the 6/7/8000  controllers,  any  of  the  physical
              disks  can  be queried or examined using any of the 3ware's SCSI
              logical device  /dev/sd?   entries.   Thus,  if  logical  device
              /dev/sda  is made up of two physical disks (3ware ports zero and
              one) and logical  device  /dev/sdb  is  made  up  of  two  other
              physical  disks (3ware ports two and three) then you can examine
              the SMART data on any of the four physical  disks  using  either
              SCSI  device  /dev/sda  or  /dev/sdb.  If you need to know which
              logical SCSI device a particular physical disk (3ware  port)  is
              associated  with,  use  the dmesg or SYSLOG output to show which
              SCSI ID corresponds to a particular 3ware unit, and then use the
              3ware  CLI or 3dm tool to determine which ports (physical disks)
              correspond to particular 3ware units.

              If the value of N corresponds to a port that does not  exist  on
              the 3ware controller, or to a port that does not physically have
              a disk attached to it, the behavior of smartctl depends upon the
              specific  controller model, firmware, Linux kernel and platform.
              In some cases you will get a warning  message  that  the  device
              does  not  exist.   In  other  cases  you will be presented with
              'void' data for a non-existent device.

              Note that if the /dev/sd? addressing form is  used,  then  older
              3w-xxxx  drivers do not pass the "Enable Autosave" ('-S on') and
              "Enable Automatic Offline" ('-o on') commands to the  disk,  and
              produce  these  types of harmless syslog error messages instead:
              "3w-xxxx: tw_ioctl(): Passthru size (123392) too big".  This can
              be  fixed  by  upgrading  to version 1.02.00.037 or later of the
              3w-xxxx driver, or  by  applying  a  patch  to  older  versions.
              Alternatively, use the character device /dev/twe0-15 interface.

              The  selective  self-test  functions  ('-t select,A-B') are only
              supported using the  character  device  interface  /dev/twl0-15,
              /dev/twa0-15 and /dev/twe0-15.  The necessary WRITE LOG commands
              can not be passed through the SCSI interface.

              areca,N - [Linux only] the device consists of one or  more  SATA
              disks  connected to an Areca SATA RAID controller.  The positive
              integer N (in the range from 1 to 24  inclusive)  denotes  which
              disk on the controller is monitored.  Use syntax such as:
              smartctl -a -d areca,2 /dev/sg2
              smartctl -a -d areca,3 /dev/sg3
              The  first  line  above  addresses  the second disk on the first
              Areca RAID controller.  The second line addresses the third disk
              on  the  second  Areca  RAID  controller.   To help identify the
              correct device, use the command:
              cat /proc/scsi/sg/device_hdr /proc/scsi/sg/devices
              to show the SCSI generic devices (one per  line,  starting  with
              /dev/sg0).   The  correct  SCSI  generic  devices to address for
              smartmontools are the ones with the type field equal to  3.   If
              the incorrect device is addressed, please read the warning/error
              messages  carefully.   They  should  provide  hints  about  what
              devices to use.

              Important:  the Areca controller must have firmware version 1.46
              or later.  Lower-numbered firmware versions will give (harmless)
              SCSI error messages and no SMART information.

              cciss,N - [FreeBSD and Linux only] the device consists of one or
              more SCSI/SAS disks connected to a cciss RAID  controller.   The
              non-negative  integer  N  (in  the range from 0 to 15 inclusive)
              denotes which disk on the controller is monitored.

              If the controller firmware or driver provides a SAT Layer it may
              be  possible  to  monitor  also  SATA  disks  by specifiying '-d
              sat+cciss,N'.

              hpt,L/M/N - [FreeBSD and Linux only] the device consists of  one
              or   more   ATA   disks  connected  to  a  HighPoint  RocketRAID
              controller.  The integer L is the controller id, the  integer  M
              is the channel number, and the integer N is the PMPort number if
              it is available.  The allowed values  of  L  are  from  1  to  4
              inclusive,  M  are  from  1  to 8 inclusive and N from 1 to 4 if
              PMPort available.  And also these  values  are  limited  by  the
              model  of  the HighPoint RocketRAID controller.  Use syntax such
              as:
              smartctl -a -d hpt,1/3 /dev/sda    (under Linux)
              smartctl -a -d hpt,1/2/3 /dev/sda    (under Linux)
              smartctl -a -d hpt,1/3 /dev/hptrr    (under FreeBSD)
              smartctl -a -d hpt,1/2/3 /dev/hptrr    (under FreeBSD)
              Note that the /dev/sda-z form should be the  device  node  which
              stands  for  the  disks  derived  from  the HighPoint RocketRAID
              controllers under Linux and under FreeBSD, it is  the  character
              device    which   the   driver   registered   (eg,   /dev/hptrr,
              /dev/hptmv6).

       -T TYPE, --tolerance=TYPE
              [ATA only] Specifies how tolerant smartctl should be of ATA  and
              SMART command failures.

              The  behavior  of  smartctl  depends upon whether the command is
              "optional" or "mandatory". Here "mandatory" means  "required  by
              the ATA/ATAPI-5 Specification if the device implements the SMART
              command  set"  and  "optional"  means  "not  required   by   the
              ATA/ATAPI-5  Specification  even  if  the  device implements the
              SMART command set."  The "mandatory" ATA and SMART commands are:
              (1)  ATA  IDENTIFY  DEVICE,  (2)  SMART ENABLE/DISABLE ATTRIBUTE
              AUTOSAVE, (3) SMART ENABLE/DISABLE, and (4) SMART RETURN STATUS.

              The valid arguments to this option are:

              normal - exit on failure of any  mandatory  SMART  command,  and
              ignore  all  failures  of  optional SMART commands.  This is the
              default.  Note  that  on  some  devices,  issuing  unimplemented
              optional SMART commands doesn't cause an error.  This can result
              in  misleading  smartctl  messages  such  as  "Feature   X   not
              implemented", followed shortly by "Feature X: enabled".  In most
              such cases, contrary to the final  message,  Feature  X  is  not
              enabled.

              conservative - exit on failure of any optional SMART command.

              permissive  -  ignore  failure(s)  of  mandatory SMART commands.
              This option may be given more than once.  Each additional use of
              this  option  will  cause  one  more  additional  failure  to be
              ignored.  Note that the use of this option can lead to  messages
              like  "Feature  X  not implemented", followed shortly by "Error:
              unable to enable Feature X".  In a few such cases,  contrary  to
              the final message, Feature X is enabled.

              verypermissive  -  equivalent  to  giving  a large number of '-T
              permissive' options: ignore failures of any number of  mandatory
              SMART commands.  Please see the note above.

       -b TYPE, --badsum=TYPE
              [ATA  only]  Specifies  the  action  smartctl  should  take if a
              checksum  error  is  detected  in  the:  (1)   Device   Identity
              Structure,   (2)   SMART  Self-Test  Log  Structure,  (3)  SMART
              Attribute  Value  Structure,  (4)  SMART   Attribute   Threshold
              Structure, or (5) ATA Error Log Structure.

              The valid arguments to this option are:

              warn  -  report  the incorrect checksum but carry on in spite of
              it.  This is the default.

              exit - exit smartctl.

              ignore - continue silently without issuing a warning.

       -r TYPE, --report=TYPE
              Intended primarily to help smartmontools  developers  understand
              the  behavior  of  smartmontools  on  non-conforming  or  poorly
              conforming hardware.  This option reports  details  of  smartctl
              transactions  with  the device.  The option can be used multiple
              times.  When used just once, it shows a record  of  the  ioctl()
              transactions  with  the  device.   When used more than once, the
              detail of these ioctl() transactions  are  reported  in  greater
              detail.  The valid arguments to this option are:

              ioctl - report all ioctl() transactions.

              ataioctl - report only ioctl() transactions with ATA devices.

              scsiioctl  - report only ioctl() transactions with SCSI devices.
              Invoking this once shows  the  SCSI  commands  in  hex  and  the
              corresponding  status.  Invoking  it  a  second  time adds a hex
              listing of the first 64 bytes of data send to, or received  from
              the device.

              Any argument may include a positive integer to specify the level
              of detail that should  be  reported.   The  argument  should  be
              followed  by  a  comma  then  the  integer  with no spaces.  For
              example, ataioctl,2 The default level is 1, so  '-r  ataioctl,1'
              and '-r ataioctl' are equivalent.

              For testing purposes, the output of '-r ataioctl,2' can later be
              parsed by  smartctl  itself  if  '-'  is  used  as  device  path
              argument.   The  ATA  command  input parameters, sector data and
              return values are reconstructed from the debug report read  from
              stdin.   Then  smartctl  internally simulates an ATA device with
              the same behaviour. This is does not work for SCSI devices yet.

       -n POWERMODE, --nocheck=POWERMODE
              [ATA only] Specifies if smartctl should exit  before  performing
              any  checks  when  the  device is in a low-power mode. It may be
              used to prevent a disk from being spun-up by smartctl. The power
              mode  is  ignored by default.  A nonzero exit status is returned
              if the device is in one of the specified  low-power  modes  (see
              RETURN VALUES below).

              Note: If this option is used it may also be necessary to specify
              the device type with the '-d' option.  Otherwise the device  may
              spin up due to commands issued during device type autodetection.

              The valid arguments to this option are:

              never  -  check  the  device always, but print the power mode if
              '-i' is specified.

              sleep - check the device unless it is in SLEEP mode.

              standby - check the device unless it  is  in  SLEEP  or  STANDBY
              mode.   In  these  modes  most disks are not spinning, so if you
              want to prevent a disk from spinning up, this is  probably  what
              you want.

              idle  -  check the device unless it is in SLEEP, STANDBY or IDLE
              mode.  In the IDLE state, most disks are still spinning, so this
              is probably not what you want.

       SMART FEATURE ENABLE/DISABLE COMMANDS:

              Note:  if multiple options are used to both enable and disable a
              feature, then both the  enable  and  disable  commands  will  be
              issued.   The  enable  command  will always be issued before the
              corresponding disable command.

       -s VALUE, --smart=VALUE
              Enables or disables SMART on device.   The  valid  arguments  to
              this  option  are  on  and  off.   Note that the command '-s on'
              (perhaps used with with the '-o on' and '-S on' options)  should
              be  placed in a start-up script for your machine, for example in
              rc.local or rc.sysinit. In principle the SMART feature  settings
              are  preserved  over  power-cycling,  but  it doesn't hurt to be
              sure. It is not necessary (or useful) to enable SMART to see the
              TapeAlert messages.

       -o VALUE, --offlineauto=VALUE
              [ATA  only]  Enables  or  disables SMART automatic offline test,
              which scans the drive every four hours for  disk  defects.  This
              command  can be given during normal system operation.  The valid
              arguments to this option are on and off.

              Note that the SMART automatic offline test command is listed  as
              "Obsolete"   in   every   version   of  the  ATA  and  ATA/ATAPI
              Specifications.   It  was  originally  part  of  the   SFF-8035i
              Revision  2.0  specification,  but  was  never  part  of any ATA
              specification.  However it  is  implemented  and  used  by  many
              vendors.  [Good  documentation  can  be  found in IBM's Official
              Published Disk Specifications.  For example the  IBM  Travelstar
              40GNX  Hard  Disk  Drive  Specifications (Revision 1.1, 22 April
              2002, Publication # 1541, Document S07N-7715-02) page  164.  You
              can  also  read  the  SFF-8035i  Specification -- see REFERENCES
              below.]  You can tell if automatic offline testing is  supported
              by  seeing if this command enables and disables it, as indicated
              by  the  'Auto  Offline  Data  Collection'  part  of  the  SMART
              capabilities report (displayed with '-c').

              SMART  provides  three  basic  categories of testing.  The first
              category,  called  "online"  testing,  has  no  effect  on   the
              performance  of  the  device.   It  is  turned on by the '-s on'
              option.

              The second category of testing is called "offline" testing. This
              type  of test can, in principle, degrade the device performance.
              The '-o on' option causes this offline  testing  to  be  carried
              out, automatically, on a regular scheduled basis.  Normally, the
              disk will suspend offline testing while disk accesses are taking
              place,  and  then  automatically  resume  it when the disk would
              otherwise be idle, so in practice it has  little  effect.   Note
              that a one-time offline test can also be carried out immediately
              upon receipt of a user command.  See  the  '-t  offline'  option
              below,  which  causes  a one-time offline test to be carried out
              immediately.

              The choice (made by the SFF-8035i and ATA specification authors)
              of   the   word  testing  for  these  first  two  categories  is
              unfortunate, and often leads to confusion.  In fact these  first
              two  categories  of  online  and offline testing could have been
              more accurately described as online and offline data collection.

              The results of this automatic or immediate offline testing (data
              collection) are reflected in the values of the SMART Attributes.
              Thus, if problems or errors are detected, the  values  of  these
              Attributes will go below their failure thresholds; some types of
              errors may also appear in the SMART error log. These are visible
              with the '-A' and '-l error' options respectively.

              Some  SMART  attribute  values  are updated only during off-line
              data collection activities; the rest are updated  during  normal
              operation  of  the  device  or  during both normal operation and
              off-line testing.  The Attribute value  table  produced  by  the
              '-A' option indicates this in the UPDATED column.  Attributes of
              the first type are  labeled  "Offline"  and  Attributes  of  the
              second type are labeled "Always".

              The  third  category of testing (and the only category for which
              the word 'testing' is really an appropriate  choice)  is  "self"
              testing.    This   third   type   of   test  is  only  performed
              (immediately) when a command to run it is issued.  The '-t'  and
              '-X' options can be used to carry out and abort such self-tests;
              please see below for further details.

              Any errors detected in the self testing will  be  shown  in  the
              SMART  self-test  log,  which  can  be  examined  using  the '-l
              selftest' option.

              Note: in this manual page, the word "Test" is used in connection
              with  the second category just described, e.g. for the "offline"
              testing.  The words "Self-test" are used in connection with  the
              third category.

       -S VALUE, --saveauto=VALUE
              [ATA]   Enables   or   disables   SMART   autosave   of   device
              vendor-specific Attributes. The valid arguments to  this  option
              are on and off.  Note that this feature is preserved across disk
              power cycles, so you should only need to issue it once.

              The ATA standard does not specify  a  method  to  check  whether
              SMART  autosave  is  enabled.  Unlike  SCSI (below), smartctl is
              unable to print a warning if autosave is disabled.

              [SCSI] For SCSI devices this toggles the  value  of  the  Global
              Logging  Target  Save  Disabled  (GLTSD) bit in the Control Mode
              Page. Some disk manufacturers set  this  bit  by  default.  This
              prevents  error  counters,  power-up hours and other useful data
              from being placed in non-volatile storage, so these  values  may
              be  reset  to zero the next time the device is power-cycled.  If
              the GLTSD bit is set then 'smartctl -a' will  issue  a  warning.
              Use on to clear the GLTSD bit and thus enable saving counters to
              non-volatile   storage.   For   extreme   streaming-video   type
              applications you might consider using off to set the GLTSD bit.

       SMART READ AND DISPLAY DATA OPTIONS:

       -H, --health
              Check:  Ask  the  device  to  report  its SMART health status or
              pending  TapeAlert  messages.   SMART   status   is   based   on
              information  that it has gathered from online and offline tests,
              which were used to determine/update  its  SMART  vendor-specific
              Attribute  values.  TapeAlert  status is obtained by reading the
              TapeAlert log page.

              If the device reports failing health status, this  means  either
              that the device has already failed, or that it is predicting its
              own failure within the next 24 hours.  If this happens, use  the
              '-a'  option  to get more information, and get your data off the
              disk and to someplace safe as soon as you can.

       -c, --capabilities
              [ATA only] Prints only the generic  SMART  capabilities.   These
              show what SMART features are implemented and how the device will
              respond to some of the different SMART commands.  For example it
              shows  if the device logs errors, if it supports offline surface
              scanning, and so on.  If the device can  carry  out  self-tests,
              this  option also shows the estimated time required to run those
              tests.

              Note that the time required to run  the  Self-tests  (listed  in
              minutes)  are  fixed.   However  the  time  required  to run the
              Immediate Offline Test (listed in seconds)  is  variable.   This
              means  that  if  you  issue  a  command  to perform an Immediate
              Offline test with the '-t offline' option,  then  the  time  may
              jump  to  a  larger  value  and then count down as the Immediate
              Offline Test is carried out.  Please see  REFERENCES  below  for
              further   information  about  the  the  flags  and  capabilities
              described by this option.

       -A, --attributes
              [ATA] Prints only the vendor  specific  SMART  Attributes.   The
              Attributes  are  numbered  from 1 to 253 and have specific names
              and ID numbers. For example Attribute 12 is "power cycle count":
              how many times has the disk been powered up.

              Each  Attribute  has  a  "Raw"  value, printed under the heading
              "RAW_VALUE", and a "Normalized" value printed under the  heading
              "VALUE".   [Note:  smartctl prints these values in base-10.]  In
              the example just given, the "Raw Value" for Attribute  12  would
              be   the   actual  number  of  times  that  the  disk  has  been
              power-cycled, for example 365 if the disk  has  been  turned  on
              once  per  day for exactly one year.  Each vendor uses their own
              algorithm to convert this "Raw" value to a "Normalized" value in
              the range from 1 to 254.  Please keep in mind that smartctl only
              reports the different Attribute types, values, and thresholds as
              read  from  the  device.   It  does not carry out the conversion
              between "Raw" and "Normalized"  values:  this  is  done  by  the
              disk's firmware.

              The  conversion from Raw value to a quantity with physical units
              is not specified by the  SMART  standard.  In  most  cases,  the
              values  printed  by  smartctl  are  sensible.   For  example the
              temperature Attribute generally has its raw value equal  to  the
              temperature  in  Celsius.   However  in  some  cases vendors use
              unusual conventions.  For example the Hitachi disk on my  laptop
              reports its power-on hours in minutes, not hours. Some IBM disks
              track three temperatures rather than one, in their  raw  values.
              And so on.

              Each  Attribute  also has a Threshold value (whose range is 0 to
              255) which is  printed  under  the  heading  "THRESH".   If  the
              Normalized  value  is less than or equal to the Threshold value,
              then the Attribute is said to have failed.  If the Attribute  is
              a pre-failure Attribute, then disk failure is imminent.

              Each  Attribute also has a "Worst" value shown under the heading
              "WORST".  This is the smallest (closest to failure)  value  that
              the disk has recorded at any time during its lifetime when SMART
              was enabled.  [Note  however  that  some  vendors  firmware  may
              actually   increase  the  "Worst"  value  for  some  "rate-type"
              Attributes.]

              The Attribute table printed  out  by  smartctl  also  shows  the
              "TYPE"  of  the  Attribute.  Attributes  are one of two possible
              types: Pre-failure or Old age.  Pre-failure Attributes are  ones
              which, if less than or equal to their threshold values, indicate
              pending disk failure.  Old age, or usage  Attributes,  are  ones
              which  indicate end-of-product life from old-age or normal aging
              and wearout, if the Attribute value is less than or equal to the
              threshold.   Please  note: the fact that an Attribute is of type
              'Pre-fail' does not mean that your disk is about  to  fail!   It
              only  has  this  meaning  if  the Attribute's current Normalized
              value is less than or equal to the threshold value.

              If the Attribute's current Normalized  value  is  less  than  or
              equal to the threshold value, then the "WHEN_FAILED" column will
              display "FAILING_NOW". If not, but the worst recorded  value  is
              less than or equal to the threshold value, then this column will
              display "In_the_past".  If the "WHEN_FAILED" column has no entry
              (indicated  by  a  dash: '-') then this Attribute is OK now (not
              failing) and has also never failed in the past.

              The table column labeled "UPDATED" shows if the SMART  Attribute
              values  are  updated  during  both normal operation and off-line
              testing, or only during offline testing.  The former are labeled
              "Always" and the latter are labeled "Offline".

              So  to  summarize:  the  Raw  Attribute values are the ones that
              might have a real physical interpretation, such as  "Temperature
              Celsius",  "Hours",  or  "Start-Stop Cycles".  Each manufacturer
              converts these, using their detailed  knowledge  of  the  disk's
              operations  and failure modes, to Normalized Attribute values in
              the range 1-254.  The current and  worst  (lowest  measured)  of
              these  Normalized Attribute values are stored on the disk, along
              with a Threshold value that the manufacturer has determined will
              indicate that the disk is going to fail, or that it has exceeded
              its design age or aging limit.  smartctl does not calculate  any
              of the Attribute values, thresholds, or types, it merely reports
              them from the SMART data on the device.

              Note that starting with ATA/ATAPI-4, revision 4, the meaning  of
              these  Attribute  fields has been made entirely vendor-specific.
              However most ATA/ATAPI-5 disks seem to respect their meaning, so
              we have retained the option of printing the Attribute values.

              [SCSI]  For  SCSI devices the "attributes" are obtained from the
              temperature and start-stop  cycle  counter  log  pages.  Certain
              vendor   specific  attributes  are  listed  if  recognised.  The
              attributes are output in a relatively free format (compared with
              ATA disk attributes).

       -f FORMAT, --format=FORMAT
              [ATA  only]  Selects  the output format of the attributes to one
              of:

              old - Old smartctl format. This is the default unless  the  '-x'
              option is specified.

              brief  -  New  format  which fits into 80 colums (except in some
              rare cases).  This format also decodes four additional attribute
              flags.  This is the default if the '-x' option is specified.

       -l TYPE, --log=TYPE
              Prints  either the SMART Error Log, the SMART Self-Test Log, the
              SMART Selective Self-Test Log [ATA only], the Log Directory [ATA
              only],  or  the  Background  Scan  Results Log [SCSI only].  The
              valid arguments to this option are:

              error - [ATA] prints the Summary SMART error log.   SMART  disks
              maintain  a  log of the most recent five non-trivial errors. For
              each of these errors, the disk power-on lifetime  at  which  the
              error  occurred  is  recorded,  as  is  the device status (idle,
              standby, etc) at the time of the error.  For some  common  types
              of  errors,  the  Error  Register  (ER) and Status Register (SR)
              values are decoded and printed as text. The  meanings  of  these
              are:
                 ABRT:  Command ABoRTed
                 AMNF:  Address Mark Not Found
                 CCTO:  Command Completion Timed Out
                 EOM:   End Of Media
                 ICRC:  Interface Cyclic Redundancy Code (CRC) error
                 IDNF:  IDentity Not Found
                 ILI:   (packet command-set specific)
                 MC:    Media Changed
                 MCR:   Media Change Request
                 NM:    No Media
                 obs:   obsolete
                 TK0NF: TracK 0 Not Found
                 UNC:   UNCorrectable Error in Data
                 WP:    Media is Write Protected
              In  addition,  up  to  the  last five commands that preceded the
              error are listed, along with a timestamp measured from the start
              of  the corresponding power cycle. This is displayed in the form
              Dd+HH:MM:SS.msec where D is the number of days, HH is hours,  MM
              is minutes, SS is seconds and msec is milliseconds.  [Note: this
              time stamp wraps after 2^32 milliseconds, or 49 days 17 hours  2
              minutes  and  47.296  seconds.]   The key ATA disk registers are
              also recorded in the log.  The final column of the error log  is
              a  text-string  description  of  the  ATA command defined by the
              Command  Register  (CR)  and  Feature  Register   (FR)   values.
              Commands  that are obsolete in the most current (ATA-7) spec are
              listed like this: READ LONG (w/ retry) [OBS-4], indicating  that
              the  command became obsolete with or in the ATA-4 specification.
              Similarly, the notation [RET-N]  is  used  to  indicate  that  a
              command  was  retired in the ATA-N specification.  Some commands
              are not defined in any version of the ATA specification but  are
              in  common  use  nonetheless;  these  are  marked  [NS], meaning
              non-standard.

              The ATA Specification (ATA-5 Revision  1c,  Section  8.41.6.8.2)
              says:  "Error  log  structures  shall  include  UNC errors, IDNF
              errors for which the address requested was valid, servo  errors,
              write  fault  errors,  etc.  Error log data structures shall not
              include errors attributed to the receipt of faulty commands such
              as  command codes not implemented by the device or requests with
              invalid parameters or invalid  addresses."  The  definitions  of
              these terms are:
              UNC (UNCorrectable): data is uncorrectable.  This refers to data
              which has been read from the  disk,  but  for  which  the  Error
              Checking  and  Correction  (ECC)  codes  are  inconsistent.   In
              effect, this means that the data can not be read.
              IDNF (ID Not Found): user-accessible address could not be found.
              For READ LOG type commands, IDNF can also indicate that a device
              data log structure checksum was incorrect.

              If the command that  caused  the  error  was  a  READ  or  WRITE
              command, then the Logical Block Address (LBA) at which the error
              occurred will be printed in base 10 and base 16.  The LBA  is  a
              linear  address,  which  counts  512-byte  sectors  on the disk,
              starting from zero.  (Because of the limitations  of  the  SMART
              error  log, if the LBA is greater than 0xfffffff, then either no
              error log entry will be made, or the error log entry  will  have
              an  incorrect  LBA.  This  may happen for drives with a capacity
              greater  than  128  GiB  or  137  GB.)  On  Linux  systems   the
              smartmontools web page has instructions about how to convert the
              LBA address  to  the  name  of  the  disk  file  containing  the
              erroneous disk sector.

              Please   note   that   some   manufacturers   ignore   the   ATA
              specifications, and make entries in the error log if the  device
              receives a command which is not implemented or is not valid.

              error  -  [SCSI]  prints  the error counter log pages for reads,
              write and verifies.  The verify row is only output if it has  an
              element other than zero.

              xerror[,NUM][,error]   -   [ATA   only]   prints   the  Extended
              Comprehensive SMART  error  log  (General  Purpose  Log  address
              0x03).   Unlike  the  Summary  SMART  error  log (see '-l error'
              above), it provides sufficient space to log the contents of  the
              48-bit LBA register set introduced with ATA-6.  It also supports
              logs with more than one sector.  Each sector holds up to  4  log
              entries.  The  actual  number of log sectors is vendor specific,
              typical values for HDD are 2 (Samsung), 5 (Seagate) or  6  (WD).
              Some recent SSD devices have much larger error logs.

              Only the 8 most recent error log entries are printed by default.
              This number can be changed by the optional parameter NUM.

              If ',error' is appended and  the  Extended  Comprehensive  SMART
              error  log  is not supported, the Summary SMART self-test log is
              printed.

              Please note that some recent (e.g. Samsung) drives report errors
              only  in the Extended Comprehensive SMART error log. The Summary
              SMART error log can be read but is always empty.

              selftest - [ATA] prints  the  SMART  self-test  log.   The  disk
              maintains a self-test log showing the results of the self tests,
              which can be run using the '-t'  option  described  below.   For
              each of the most recent twenty-one self-tests, the log shows the
              type of test (short or extended, off-line or  captive)  and  the
              final  status  of  the  test.   If  the  test  did  not complete
              successfully, then the  percentage  of  the  test  remaining  is
              shown.  The time at which the test took place, measured in hours
              of disk lifetime, is also printed. [Note: this time stamp  wraps
              after  2^16  hours,  or  2730  days  and  16 hours, or about 7.5
              years.] If any errors were detected, the Logical  Block  Address
              (LBA)  of  the  first  error is printed in decimal notation.  On
              Linux systems the smartmontools web page has instructions  about
              how  to  convert  this  LBA address to the name of the disk file
              containing the erroneous block.

              selftest - [SCSI] the self-test log for  a  SCSI  device  has  a
              slightly  different  format than for an ATA device.  For each of
              the most recent twenty self-tests, it shows the type of test and
              the  status  (final  or in progress) of the test. SCSI standards
              use the terms "foreground" and "background" (rather  than  ATA's
              corresponding  "captive"  and "off-line") and "short" and "long"
              (rather than ATA's  corresponding  "short"  and  "extended")  to
              describe  the  type  of the test.  The printed segment number is
              only relevant when a test fails  in  the  third  or  later  test
              segment.   It  identifies  the  test that failed and consists of
              either the number of the segment that failed during the test, or
              the number of the test that failed and the number of the segment
              in which the test was run, using  a  vendor-specific  method  of
              putting  both  numbers  into  a  single byte.  The Logical Block
              Address (LBA) of the  first  error  is  printed  in  hexadecimal
              notation.   On  Linux  systems  the  smartmontools  web page has
              instructions about how to convert this LBA address to  the  name
              of  the  disk file containing the erroneous block.  If provided,
              the SCSI  Sense  Key  (SK),  Additional  Sense  Code  (ASC)  and
              Additional Sense Code Qualifier (ASQ) are also printed. The self
              tests can be run using the '-t' option  described  below  (using
              the ATA test terminology).

              xselftest[,NUM][,selftest]  -  [ATA  only]  prints  the Extended
              SMART self-test log (General Purpose Log address  0x07).  Unlike
              the  SMART  self-test log (see '-l selftest' above), it supports
              48-bit LBA and logs with more  than  one  sector.   Each  sector
              holds  up to 19 log entries. The actual number of log sectors is
              vendor specific, typical values are 1 (Seagate) or 2 (Samsung).

              Only the 25 most recent log entries are printed by default. This
              number can be changed by the optional parameter NUM.

              If  ',selftest' is appended and the Extended SMART self-test log
              is not supported, the old SMART self-test log is printed.

              selective - [ATA only] Please see the '-t select'  option  below
              for  a  description  of  selective  self-tests.   The  selective
              self-test log shows the start/end Logical Block Addresses  (LBA)
              of  each  of the five test spans, and their current test status.
              If the span is being tested or the  remainder  of  the  disk  is
              being read-scanned, the current 65536-sector block of LBAs being
              tested is also displayed.   The  selective  self-test  log  also
              shows  if  a  read-scan  of  the  remainder  of the disk will be
              carried out after the selective self-test has completed (see '-t
              afterselect'  option)  and the time delay before restarting this
              read-scan if it is interrupted (see '-t pending'  option).  This
              is  a  new  smartmontools  feature;  please  report  unusual  or
              incorrect behavior to the smartmontools-support mailing list.

              directory[,gs] - [ATA only] if the device supports  the  General
              Purpose  Logging  feature set (ATA-6 and above) then this prints
              the Log Directory (the log at address  0).   The  Log  Directory
              shows  what  logs are available and their length in sectors (512
              bytes).  The contents of the logs at address  1  [Summary  SMART
              error log] and at address 6 [SMART self-test log] may be printed
              using the previously-described error and selftest  arguments  to
              this  option.   If  your version of smartctl supports 48-bit ATA
              commands, both the General Purpose Log (GPL) and SMART Log  (SL)
              directories are printed in one combined table. The output can be
              restricted  to  the  GPL  directory  or  SL  directory  by   '-l
              directory,q' or '-l directory,s' respectively.

              background - [SCSI only] the background scan results log outputs
              information derived from Background Media Scans (BMS) done after
              power  up  and/or  periodocally  (e.g. every 24 hours) on recent
              SCSI disks. If  supported,  the  BMS  status  is  output  first,
              indicating  whether a background scan is currently underway (and
              if so a progress percentage), the amount of time  the  disk  has
              been  powered up and the number of scans already completed. Then
              there is a header and a line for each background  scan  "event".
              These  will  typically  be  either  recovered  or  unrecoverable
              errors. That latter group may need some attention.  There  is  a
              description  of the background scan mechansim in section 4.18 of
              SBC-3 revision 6 (see www.t10.org ).

              scttemp, scttempsts, scttemphist - [ATA only]  prints  the  disk
              temperature  information provided by the SMART Command Transport
              (SCT)  commands.   The  option   'scttempsts'   prints   current
              temperature  and  temperature  ranges returned by the SCT Status
              command,  'scttemphist'  prints  temperature  limits   and   the
              temperature  history  table  returned  by  the  SCT  Data  Table
              command, and 'scttemp' prints both.  The temperature values  are
              preserved  across power cycles.  The default temperature logging
              interval is  1  minute  and  can  be  configured  with  the  '-t
              scttempint,N[,p]'  option,  see  below.   The  SCT  commands are
              specified in the proposed  ATA-8  Command  Set  (ACS),  and  are
              already implemented in some recent ATA-7 disks.

              scterc[,READTIME,WRITETIME]   -  [ATA  only]  [NEW  EXPERIMENTAL
              SMARTCTL FEATURE] prints values  and  descriptions  of  the  SCT
              Error  Recovery  Control  settings. These are equivalent to TLER
              (as used by Western Digital),  CCTL  (as  used  by  Samsung  and
              Hitachi)  and  ERC  (as used by Seagate). READTIME and WRITETIME
              arguments (deciseconds) set the specified values.  Values  of  0
              disable  the feature, other values less than 65 are probably not
              supported. For RAID configurations, this  is  typically  set  to
              70,70 deciseconds.

              sataphy[,reset]  - [SATA only] prints values and descriptions of
              the SATA Phy Event Counters (General Purpose Log address  0x11).
              If '-l sataphy,reset' is specified, all counters are reset after
              reading the values.

              sasphy[,reset]  -  [SAS   (SCSI)   only]   prints   values   and
              descriptions  of  the  SAS (SSP) Protocol Specific log page (log
              page 0x18).  If '-l sasphy,reset' is specified, all counters are
              reset after reading the values.

              gplog,ADDR[,FIRST[-LAST|+SIZE]]  -  [ATA only] prints a hex dump
              of any log accessible via General Purpose Logging (GPL) feature.
              The  log  address  ADDR  is  the  hex  address listed in the log
              directory (see '-l directory' above).  The range of log  sectors
              (pages)  can  be  specified  by  decimal  values  FIRST-LAST  or
              FIRST+SIZE.  FIRST defaults to 0, SIZE defaults to 1.  LAST  can
              be set to 'max' to specify the last page of the log.

              smartlog,ADDR[,FIRST[-LAST|+SIZE]]  -  [ATA  only]  prints a hex
              dump of any log accessible via SMART Read Log command.  See  '-l
              gplog,...' above for parameter syntax.

              For example, all these commands:
                smartctl -l gplog,0x80,10-15 /dev/sda
                smartctl -l gplog,0x80,10+6 /dev/sda
                smartctl -l smartlog,0x80,10-15 /dev/sda
              print pages 10-15 of log 0x80 (first host vendor specific log).

              The  hex  dump  format  is compatible with the 'xxd -r' command.
              This command:
                smartctl -l gplog,0x11 /dev/sda | grep ^0 | xxd -r >log.bin
              writes a binary representation of the one sector log 0x11  (SATA
              Phy Event Counters) to file log.bin.

       -v                                        ID,FORMAT[:BYTEORDER][,NAME],
       --vendorattribute=ID,FORMAT[:BYTEORDER][,NAME]
              [ATA only] Sets a vendor-specific raw  value  print  FORMAT,  an
              optional  BYTEORDER and an optional NAME for Attribute ID.  This
              option may be used multiple times.

              The Attribute ID can be in  the  range  1  to  255.  If  'N'  is
              specified as ID, the settings for all Attributes are changed.

              The  optional  BYTEORDER  consists of 1 to 8 characters from the
              set '012345rvwz'. The characters '0' to '5' select the byte 0 to
              5  from  the  48-bit raw value, 'r' selects the reserved byte of
              the attribute data block, 'v' selects the normalized value,  'w'
              selects  the  worst  value  and  'z'  inserts  a zero byte.  The
              default BYTEORDER is '543210' for all 48-bit formats,  'r543210'
              for  the  54-bit formats, and '543210wv' for the 64-bit formats.
              For  example,  '-v  5,raw48:012345'  prints  the  raw  value  of
              attribute  5  with  big  endian  instead  of  little endian byte
              ordering.

              The NAME is a string of letters, digits and underscore.

              -v help - Prints (to STDOUT) a list of all  valid  arguments  to
              this option, then exits.

              Valid arguments for FORMAT are:

              raw8  -  Print  the  Raw  value  as  six  8-bit unsigned base-10
              integers.  This may be useful for decoding the  meaning  of  the
              Raw value.

              raw16  -  Print  the  Raw value as three 16-bit unsigned base-10
              integers.  This may be useful for decoding the  meaning  of  the
              Raw value.

              raw48  -  Print  the  Raw  value  as  a  48-bit unsigned base-10
              integer.  This is the default for most attributes.

              hex48 - Print the Raw value as a 12  digit  hexadecimal  number.
              This may be useful for decoding the meaning of the Raw value.

              raw64  -  Print  the  Raw  value  as  a  64-bit unsigned base-10
              integer.  This includes two bytes from the normalized and  worst
              attribute value.  This new raw format is used by some recent SSD
              devices.

              hex64 - Print the Raw value as a 16  digit  hexadecimal  number.
              This  includes two bytes from the normalized and worst attribute
              value.  This new raw format is used by some recent SSD devices.

              min2hour - Raw Attribute is power-on time in minutes.   Its  raw
              value  will  be displayed in the form "Xh+Ym".  Here X is hours,
              and Y is minutes in the  range  0-59  inclusive.   Y  is  always
              printed with two digits, for example "06" or "31" or "00".

              sec2hour  -  Raw Attribute is power-on time in seconds.  Its raw
              value will be displayed in  the  form  "Xh+Ym+Zs".   Here  X  is
              hours,  Y  is  minutes  in  the  range  0-59 inclusive, and Z is
              seconds in the range 0-59 inclusive.  Y and Z are always printed
              with two digits, for example "06" or "31" or "00".

              halfmin2hour - Raw Attribute is power-on time, measured in units
              of 30 seconds.  This format is used by some Samsung disks.   Its
              raw  value  will  be  displayed  in the form "Xh+Ym".  Here X is
              hours, and Y is minutes in  the  range  0-59  inclusive.   Y  is
              always  printed  with  two  digits,  for example "06" or "31" or
              "00".

              msec24hour32 - Raw Attribute is power-on time measured in 32-bit
              hours  and  24-bit milliseconds since last hour update.  It will
              be displayed in the form "Xh+Ym+Z.Ms".  Here X is  hours,  Y  is
              minutes, Z is seconds and M is milliseconds.

              tempminmax  -  Raw Attribute is the disk temperature in Celsius.
              Info about Min/Max temperature is printed if available.  This is
              the  default for Attributes 190 and 194.  The recording interval
              (lifetime, last power cycle, last soft  reset)  of  the  min/max
              values is device specific.

              temp10x  -  Raw  Attribute  is ten times the disk temperature in
              Celsius.

              raw16(raw16) - Print the raw attribute as a 16-bit value and two
              optional  16-bit values if these words are nonzero.  This is the
              default for Attributes 5 and 196.

              raw16(avg16) - Raw attribute is spin-up time.  It is printed  as
              a  16-bit  value  and  an optional "Average" 16-bit value if the
              word is nonzero.  This is the default for Attribute 3.

              raw24/raw24 - Raw Attribute  contains  two  24-bit  values.  The
              first is the number of load cycles.  The second is the number of
              unload cycles.  The difference between these two values  is  the
              number  of  times  that  the  drive was unexpectedly powered off
              (also called an emergency unload).  As  a  rule  of  thumb,  the
              mechanical  stress created by one emergency unload is equivalent
              to that created by one hundred normal unloads.

              raw24/raw32 - Raw attribute is an error rate which consists of a
              24-bit error count and a 32-bit total count.

              The following old arguments to '-v' are also still valid:

              9,minutes - same as: 9,min2hour,Power_On_Minutes.

              9,seconds - same as: 9,sec2hour,Power_On_Seconds.

              9,halfminutes - same as: 9,halfmin2hour,Power_On_Half_Minutes.

              9,temp - same as: 9,tempminmax,Temperature_Celsius.

              192,emergencyretractcyclect          -          same         as:
              192,raw48,Emerg_Retract_Cycle_Ct

              193,loadunload - same as: 193,raw24/raw24.

              194,10xCelsius - same as: 194,temp10x,Temperature_Celsius_x10.

              194,unknown - same as: 194,raw48,Unknown_Attribute.

              197,increasing - same as: 197,raw48,Total_Pending_Sectors.  Also
              means  that  Attribute number 197 (Current Pending Sector Count)
              is not reset  if  uncorrectable  sectors  are  reallocated  (see
              smartd.conf(5) man page).

              198,increasing  -  same  as:  198,raw48,Total_Offl_Uncorrectabl.
              Also means that  Attribute  number  198  (Offline  Uncorrectable
              Sector   Count)  is  not  reset  if  uncorrectable  sectors  are
              reallocated (see smartd.conf(5) man page).

              198,offlinescanuncsectorct          -          same          as:
              198,raw48,Offline_Scan_UNC_SectCt.

              200,writeerrorcount - same as: 200,raw48,Write_Error_Count.

              201,detectedtacount - same as: 201,raw48,Detected_TA_Count.

              220,temp - same as: 220,raw48,Temperature_Celsius.

              Note:  a  table  of  hard  drive models, listing which Attribute
              corresponds    to    temperature,    can    be     found     at:
              http://www.guzu.net/linux/hddtemp.db

       -F TYPE, --firmwarebug=TYPE
              [ATA  only]  Modifies the behavior of smartctl to compensate for
              some known and understood device firmware or driver bug.  Except
              'swapid',  the  arguments  to this option are exclusive, so that
              only the final option given is used.  The valid values are:

              none  -  Assume  that  the  device  firmware   obeys   the   ATA
              specifications.   This  is  the  default,  unless the device has
              presets for '-F' in the device database (see note below).

              samsung - In some Samsung disks (example: model SV4012H Firmware
              Version:  RM100-08) some of the two- and four-byte quantities in
              the SMART data structures are byte-swapped (relative to the  ATA
              specification).  Enabling this option tells smartctl to evaluate
              these quantities in byte-reversed order.  Some signs  that  your
              disk  needs  this  option are (1) no self-test log printed, even
              though you have run self-tests; (2) very large  numbers  of  ATA
              errors reported in the ATA error log; (3) strange and impossible
              values for the ATA error log timestamps.

              samsung2 - In some  Samsung  disks  the  number  of  ATA  errors
              reported  is  byte swapped.  Enabling this option tells smartctl
              to evaluate this quantity in byte-reversed order. An  indication
              that  your  Samsung disk needs this option is that the self-test
              log is printed correctly, but there are a very large  number  of
              errors  in the SMART error log.  This is because the error count
              is byte swapped.  Thus a disk with  five  errors  (0x0005)  will
              appear to have 20480 errors (0x5000).

              samsung3  -  Some  Samsung disks (at least SP2514N with Firmware
              VF100-37) report a self-test still in progress with 0% remaining
              when  the  test  was  already  completed.  Enabling  this option
              modifies the output  of  the  self-test  execution  status  (see
              options '-c' or '-a' above) accordingly.

              Note  that  an  explicit  '-F'  option  on the command line will
              over-ride any preset  values  for  '-F'  (see  the  '-P'  option
              below).

              swapid  -  Fixes byte swapped ATA identify strings (device name,
              serial number, firmware version) returned by some  buggy  device
              drivers.

       -P TYPE, --presets=TYPE
              [ATA  only]  Specifies  whether  smartctl  should use any preset
              options that are available for this drive. By  default,  if  the
              drive  is  recognized  in  the  smartmontools database, then the
              presets are used.

              smartctl can automatically set  appropriate  options  for  known
              drives.   For  example,  the  Maxtor 4D080H4 uses Attribute 9 to
              stores power-on time in minutes whereas  most  drives  use  that
              Attribute to store the power-on time in hours.  The command-line
              option '-v 9,minutes' ensures that smartctl correctly interprets
              Attribute  9  in  this  case,  but that option is preset for the
              Maxtor 4D080H4 and so need not be specified by the user  on  the
              smartctl command line.

              The  argument  show  will show any preset options for your drive
              and the argument showall will  show  all  known  drives  in  the
              smartmontools  database,  along  with  their preset options.  If
              there are no presets for your drive and you think  there  should
              be  (for example, a -v or -F option is needed to get smartctl to
              display correct values) then please  contact  the  smartmontools
              developers  so  that  this  information  can  be  added  to  the
              smartmontools database.  Contact information is at  the  end  of
              this man page.

              The valid arguments to this option are:

              use  - if a drive is recognized, then use the stored presets for
              it.  This is the default. Note that presets will  NOT  over-ride
              additional    Attribute    interpretation   ('-v   N,something')
              command-line options or explicit '-F' command-line options..

              ignore - do not use presets.

              show - show if the drive is recognized in the database,  and  if
              so, its presets, then exit.

              showall  -  list all recognized drives, and the presets that are
              set for them, then exit.

              The '-P showall' option takes up to two  optional  arguments  to
              match a specific drive type and firmware version. The command:
                smartctl -P showall
              lists all entries, the command:
                smartctl -P showall 'MODEL'
              lists all entries matching MODEL, and the command:
                smartctl -P showall 'MODEL' 'FIRMWARE'
              lists  all  entries  for  this  MODEL  and  a  specific FIRMWARE
              version.

       -B [+]FILE, --drivedb=[+]FILE
              [ATA only] Read the drive database from FILE.  The new  database
              replaces the built in database by default.  If '+' is specified,
              then the new entries prepend the built in entries.

              If this option is not specified, optional entries are read  from
              the  file  /etc/smart_drivedb.h (Windows: EXEDIR/drivedb-add.h).
              If         /usr/share/smartmontools/drivedb.h          (Windows:
              EXEDIR/drivedb.h)  is present, the contents of this file is used
              instead of the built in table.

              Run the script  /usr/sbin/update-smart-drivedb  to  update  this
              file from the smartmontools SVN repository.

              The  database  files  use  the same C/C++ syntax that is used to
              initialize the built in database array. C/C++ style comments are
              allowed.  Example:

                /* Full entry: */
                {
                  "Model family",    // Info about model family/series.
                  "MODEL1.*REGEX",   // Regular expression to match model of device.
                  "VERSION.*REGEX",  // Regular expression to match firmware version(s).
                  "Some warning",    // Warning message.
                  "-v 9,minutes"     // String of preset -v and -F options.
                },
                /* Minimal entry: */
                {
                  "",                // No model family/series info.
                  "MODEL2.*REGEX",   // Regular expression to match model of device.
                  "",                // All firmware versions.
                  "",                // No warning.
                  ""                 // No options preset.
                },
                /* USB ID entry: */
                {
                  "USB: Device; Bridge", // Info about USB device and bridge name.
                  "0x1234:0xabcd",   // Regular expression to match vendor:product ID.
                  "0x0101",          // Regular expression to match bcdDevice.
                  "",                // Not used.
                  "-d sat"           // String with device type option.
                },
                /* ... */

       SMART RUN/ABORT OFFLINE TEST AND SELF-TEST OPTIONS:

       -t TEST, --test=TEST
              Executes  TEST  immediately.   The  '-C'  option  can be used in
              conjunction with this option to run the short or long (and  also
              for  ATA devices, selective or conveyance) self-tests in captive
              mode (known as "foreground mode" for SCSI devices).   Note  that
              only  one  test type can be run at a time, so only one test type
              should be specified per command  line.   Note  also  that  if  a
              computer is shutdown or power cycled during a self-test, no harm
              should result.  The self-test will either  be  aborted  or  will
              resume automatically.

              The valid arguments to this option are:

              offline  -  [ATA]  runs  SMART  Immediate  Offline  Test.   This
              immediately starts the test described above.  This  command  can
              be  given  during  normal system operation.  The effects of this
              test are visible only in that it  updates  the  SMART  Attribute
              values,  and  if  errors are found they will appear in the SMART
              error log, visible with the '-l error' option.

              If the '-c' option to smartctl shows that  the  device  has  the
              "Suspend  Offline  collection  upon new command" capability then
              you can track the progress of the Immediate Offline  test  using
              the  '-c'  option to smartctl.  If the '-c' option show that the
              device has the  "Abort  Offline  collection  upon  new  command"
              capability  then  most commands will abort the Immediate Offline
              Test, so you should not try to track the progress  of  the  test
              with '-c', as it will abort the test.

              offline  -  [SCSI]  runs the default self test in foreground. No
              entry is placed in the self test log.

              short - [ATA] runs SMART Short  Self  Test  (usually  under  ten
              minutes).   This  command  can  be  given  during  normal system
              operation (unless run in captive mode  -  see  the  '-C'  option
              below).   This  is  a  test  in  a  different  category than the
              immediate or automatic offline tests.  The  "Self"  tests  check
              the  electrical  and  mechanical performance as well as the read
              performance of the disk.  Their results are reported in the Self
              Test  Error  Log,  readable with the '-l selftest' option.  Note
              that on  some  disks  the  progress  of  the  self-test  can  be
              monitored  by watching this log during the self-test; with other
              disks use the '-c' option to monitor progress.

              short - [SCSI] runs the "Background short" self-test.

              long - [ATA] runs SMART Extended Self Test  (tens  of  minutes).
              This  is  a  longer  and more thorough version of the Short Self
              Test described above.  Note  that  this  command  can  be  given
              during normal system operation (unless run in captive mode - see
              the '-C' option below).

              long - [SCSI] runs the "Background long" self-test.

              conveyance - [ATA  only]  runs  a  SMART  Conveyance  Self  Test
              (minutes).   This  self-test  routine  is  intended  to identify
              damage  incurred  during  transporting  of  the   device.   This
              self-test  routine  should  take  on  the  order  of  minutes to
              complete.  Note that this command can  be  given  during  normal
              system  operation  (unless  run  in  captive mode - see the '-C'
              option below).

              select,N-M, select,N+SIZE - [ATA only] runs  a  SMART  Selective
              Self  Test,  to  test  a  range  of disk Logical Block Addresses
              (LBAs), rather than the entire disk.  Each range of LBAs that is
              checked  is  called  a "span" and is specified by a starting LBA
              (N) and an ending LBA (M) with N less than or equal  to  M.  The
              range  can  also  be specified as N+SIZE. A span at the end of a
              disk can be specified by N-max.

              For example the commands:
                smartctl -t select,10-20 /dev/hda
                smartctl -t select,10+11 /dev/hda
              both runs a self test on one span  consisting  of  LBAs  ten  to
              twenty (inclusive). The command:
                smartctl -t select,100000000-max /dev/hda
              run  a  self  test from LBA 100000000 up to the end of the disk.
              The '-t' option can be given up to five times,  to  test  up  to
              five spans.  For example the command:
                smartctl -t select,0-100 -t select,1000-2000 /dev/hda
              runs  a  self test on two spans.  The first span consists of 101
              LBAs and the second span consists of 1001 LBAs.  Note  that  the
              spans can overlap partially or completely, for example:
                smartctl -t select,0-10 -t select,5-15 -t select,10-20 /dev/hda
              The  results  of  the  selective self-test can be obtained (both
              during and after the test) by printing the SMART self-test  log,
              using the '-l selftest' option to smartctl.

              Selective  self tests are particularly useful as disk capacities
              increase: an extended self test  (smartctl  -t  long)  can  take
              several  hours.   Selective  self-tests are helpful if (based on
              SYSLOG error messages,  previous  failed  self-tests,  or  SMART
              error log entries) you suspect that a disk is having problems at
              a particular range of Logical Block Addresses (LBAs).

              Selective self-tests can be run during normal  system  operation
              (unless done in captive mode - see the '-C' option below).

              The  following  variants  of the selective self-test command use
              spans based on the ranges from past tests already stored on  the
              disk:

              select,redo[+SIZE]  -  [ATA  only] redo the last SMART Selective
              Self Test  using  the  same  LBA  range.  The  starting  LBA  is
              identical  to  the  LBA  used  by last test, same for ending LBA
              unless a new span size is specified by optional +SIZE argument.

              For example the commands:
                smartctl -t select,10-20 /dev/hda
                smartctl -t select,redo /dev/hda
                smartctl -t select,redo+20 /dev/hda
              have the same effect as:
                smartctl -t select,10-20 /dev/hda
                smartctl -t select,10-20 /dev/hda
                smartctl -t select,10-29 /dev/hda

              select,next[+SIZE] - [ATA only] runs a SMART Selective Self Test
              on  the  LBA range which follows the range of the last test. The
              starting LBA is set to (ending LBA +1) of the last test.  A  new
              span size may be specified by the optional +SIZE argument.

              For example the commands:
                smartctl -t select,0-999 /dev/hda
                smartctl -t select,next /dev/hda
                smartctl -t select,next+2000 /dev/hda
              have the same effect as:
                smartctl -t select,0-999 /dev/hda
                smartctl -t select,1000-1999 /dev/hda
                smartctl -t select,2000-3999 /dev/hda

              If  the  last  test  ended  at the last LBA of the disk, the new
              range starts at LBA 0. The span size of the last span of a  disk
              is  adjusted  such  that  the total number of spans to check the
              full  disk  will  not  be  changed  by  future   uses   of   '-t
              select,next'.

              select,cont[+SIZE] - [ATA only] performs a 'redo' (above) if the
              self test status reports that the last test was aborted  by  the
              host. Otherwise it run the 'next' (above) test.

              afterselect,on - [ATA only] perform an offline read scan after a
              Selective Self-test has completed.  This  option  must  be  used
              together  with  one  or more of the select,N-M options above. If
              the LBAs that have been specified  in  the  Selective  self-test
              pass the test with no errors found, then read scan the remainder
              of the disk.  If the device is powered-cycled  while  this  read
              scan is in progress, the read scan will be automatically resumed
              after a time specified by the pending timer  (see  below).   The
              value of this option is preserved between selective self-tests.

              afterselect,off  -  [ATA only] do not read scan the remainder of
              the disk after a Selective self-test has completed.  This option
              must  be use together with one or more of the select,N-M options
              above.  The value of this option is preserved between  selective
              self-tests.

              pending,N  -  [ATA only] set the pending offline read scan timer
              to N minutes.  Here N is an integer in the range from 0 to 65535
              inclusive.   If  the  device  is  powered off during a read scan
              after a Selective self-test, then resume the test  automatically
              N minutes after power-up.  This option must be use together with
              one or more of the select,N-M options above. The value  of  this
              option is preserved between selective self-tests.

              scttempint,N[,p]  -  [ATA  only]  set  the time interval for SCT
              temperature logging to N minutes.  If  ',p'  is  specified,  the
              setting is preserved across power cycles. Otherwise, the setting
              is volatile and will be reverted to default (1 minute), or  last
              non-volatile  setting by the next hard reset.  This command also
              clears the temperature history table. See '-l scttemp' above for
              more information about SCT temperature logging.

              vendor,N  - [ATA only] issues the ATA command SMART EXECUTE OFF-
              LINE IMMEDIATE with  subcommand  N  in  LBA  LOW  register.  The
              subcommand  is  specified  as  a  hex value in the range 0x00 to
              0xff.  Subcommands 0x40-0x7e  and  0x90-0xff  are  reserved  for
              vendor  specific  use,  see  table  61 of T13/1699-D Revision 6a
              (ATA8-ACS).  Note that the subcommands  0x00-0x04,0x7f,0x81-0x84
              are  supported by other smartctl options (e.g. 0x01: '-t short',
              0x7f: '-X', 0x82: '-C -t long').

              WARNING: Only run subcommands documented by the  vendor  of  the
              device.

              Example for Intel (X18-M/X25-M G2 and 320 Series) SSDs only: The
              subcommand 0x40 ('-t vendor,0x40')  clears  the  timed  workload
              related  SMART  attributes  (226,  227, 228).  Note that the raw
              values of these attributes are held at 65535 (0xffff) until  the
              workload timer reaches 60 minutes.

       -C, --captive
              [ATA]  Runs self-tests in captive mode.  This has no effect with
              '-t offline' or if the '-t' option is not used.

              WARNING: Tests run in captive mode may busy out  the  drive  for
              the  length  of  the  test.   Only  run  captive tests on drives
              without any mounted partitions!

              [SCSI] Runs the self-test in "Foreground" mode.

       -X, --abort
              Aborts non-captive SMART Self Tests.   Note  that  this  command
              will  abort the Offline Immediate Test routine only if your disk
              has the "Abort Offline collection upon new command" capability.

ATA, SCSI command sets and SAT

       In the past there has been a clear distinction between storage  devices
       that  used  the  ATA  and SCSI command sets. This distinction was often
       reflected in  their  device  naming  and  hardware.  Now  various  SCSI
       transports (e.g. SAS, FC and iSCSI) can interconnect to both SCSI disks
       (e.g. FC and SAS) and ATA disks (especially SATA). USB  and  IEEE  1394
       storage  devices  use the SCSI command set externally but almost always
       contain ATA or SATA disks (or flash). The storage  subsystems  in  some
       operating  systems  have  started to remove the distinction between ATA
       and SCSI in their device naming policies.

       99% of operations that an OS  performs  on  a  disk  involve  the  SCSI
       INQUIRY,   READ  CAPACITY,  READ  and  WRITE  commands,  or  their  ATA
       equivalents. Since the SCSI commands are  slightly  more  general  than
       their  ATA  equivalents, many OSes are generating SCSI commands (mainly
       READ and WRITE) and letting a lower level translate them to  their  ATA
       equivalents  as  the need arises. An important note here is that "lower
       level" may be in external equipment and hence outside the control of an
       OS.

       SCSI to ATA Translation (SAT) is a standard (ANSI INCITS 431-2007) that
       specifies how this translation is done. For the other 1% of  operations
       that  an  OS  performs on a disk, SAT provides two options. First is an
       optional ATA PASS-THROUGH SCSI command (there are  two  variants).  The
       second  is  a  translation  from the closest SCSI command. Most current
       interest is in the "pass-through" option.

       The relevance  to  smartmontools  (and  hence  smartctl)  is  that  its
       interactions with disks fall solidly into the "1%" category. So even if
       the OS can happily treat (and name) a  disk  as  "SCSI",  smartmontools
       needs  to  detect  the native command set and act accordingly.  As more
       storage manufacturers (including external SATA drives) comply with SAT,
       smartmontools  is  able to automatically distinguish the native command
       set of the device. In some cases the '-d sat' option is needed  on  the
       command line.

       There are also virtual disks which typically have no useful information
       to convey to smartmontools, but could conceivably  in  the  future.  An
       example  of  a virtual disk is the OS's view of a RAID 1 box. There are
       most likely two SATA disks inside a RAID 1 box. Addressing  those  SATA
       disks  from  a  distant  OS  is  a challenge for smartmontools. Another
       approach is running a tool like smartmontools inside  the  RAID  1  box
       (e.g.   a Network Attached Storage (NAS) box) and fetching the logs via
       a browser.

EXAMPLES

       smartctl -a /dev/hda
       Print a large amount of SMART information for drive /dev/hda  which  is
       typically an ATA (IDE) or SATA disk in Linux.

       smartctl -a /dev/sdb
       Print a large amount of SMART information for drive /dev/sdb . This may
       be a SCSI disk or an ATA (SATA) disk.

       smartctl -s off /dev/hdd
       Disable SMART monitoring and data log collection on drive /dev/hdd .

       smartctl --smart=on --offlineauto=on --saveauto=on /dev/hda
       Enable SMART on drive /dev/hda, enable automatic offline testing  every
       four  hours, and enable autosaving of SMART Attributes.  This is a good
       start-up line for your system's init files.  You can issue this command
       on a running system.

       smartctl -t long /dev/hdc
       Begin  an  extended  self-test  of  drive /dev/hdc.  You can issue this
       command on a running system.  The results can be seen in the  self-test
       log visible with the '-l selftest' option after it has completed.

       smartctl -s on -t offline /dev/hda
       Enable  SMART on the disk, and begin an immediate offline test of drive
       /dev/hda.  You can issue this command on a running system.  The results
       are  only  used  to  update the SMART Attributes, visible with the '-A'
       option.  If any device errors occur, they are logged to the SMART error
       log, which can be seen with the '-l error' option.

       smartctl -A -v 9,minutes /dev/hda
       Shows  the  vendor  Attributes,  when the disk stores its power-on time
       internally in minutes rather than hours.

       smartctl -q errorsonly -H -l selftest /dev/hda
       Produces output only if the device returns failing SMART status, or  if
       some of the logged self-tests ended with errors.

       smartctl -q silent -a /dev/hda
       Examine  all  SMART  data  for  device /dev/hda, but produce no printed
       output.  You must use the exit status (the $?  shell variable) to learn
       if  any Attributes are out of bound, if the SMART status is failing, if
       there are errors recorded in the self-test log, or if there are  errors
       recorded in the disk error log.

       smartctl -a -d 3ware,0 /dev/sda
       Examine all SMART data for the first ATA disk connected to a 3ware RAID
       controller card.

       smartctl -a -d 3ware,0 /dev/twe0
       Examine all SMART data for the first ATA disk connected to a 3ware RAID
       6000/7000/8000 controller card.

       smartctl -a -d 3ware,0 /dev/twa0
       Examine all SMART data for the first ATA disk connected to a 3ware RAID
       9000 controller card.

       smartctl -a -d 3ware,0 /dev/twl0
       Examine all SMART data for the first SATA (not SAS) disk connected to a
       3ware RAID 9750 controller card.

       smartctl -t short -d 3ware,3 /dev/sdb
       Start  a  short self-test on the fourth ATA disk connected to the 3ware
       RAID controller card which is the second SCSI device /dev/sdb.

       smartctl -t long -d areca,4 /dev/sg2
       Start a long self-test on the fourth SATA disk connected  to  an  Areca
       RAID controller addressed by /dev/sg2.

       smartctl -a -d hpt,1/3 /dev/sda (under Linux)
       smartctl -a -d hpt,1/3 /dev/hptrr (under FreeBSD)
       Examine  all  SMART  data for the (S)ATA disk directly connected to the
       third channel of the first HighPoint RocketRAID controller card.

       smartctl -t short -d hpt,1/1/2 /dev/sda (under Linux)
       smartctl -t short -d hpt,1/1/2 /dev/hptrr (under FreeBSD)
       Start a short self-test on the (S)ATA disk connected to  second  pmport
       on the first channel of the first HighPoint RocketRAID controller card.

       smartctl -t select,10-100 -t select,30-300 -t afterselect,on -t pending,45 /dev/hda
       Run  a  selective self-test on LBAs 10 to 100 and 30 to 300.  After the
       these LBAs have been tested, read-scan the remainder of the  disk.   If
       the  disk  is  power-cycled  during  the  read-scan, resume the scan 45
       minutes after power to the device is restored.

       smartctl -a -d cciss,0 /dev/cciss/c0d0
       Examine all SMART data for the first SCSI disk  connected  to  a  cciss
       RAID controller card.

RETURN VALUES

       The return values of smartctl are defined by a bitmask.  If all is well
       with the disk, the return value (exit status) of  smartctl  is  0  (all
       bits  turned  off).  If a problem occurs, or an error, potential error,
       or fault is detected, then a non-zero  status  is  returned.   In  this
       case,  the  eight different bits in the return value have the following
       meanings for ATA disks; some of these values may also be  returned  for
       SCSI disks.

       Bit 0: Command line did not parse.

       Bit 1: Device  open  failed,  device  did not return an IDENTIFY DEVICE
              structure, or device is in a low-power  mode  (see  '-n'  option
              above).

       Bit 2: Some  SMART  command to the disk failed, or there was a checksum
              error in a SMART data structure (see '-b' option above).

       Bit 3: SMART status check returned "DISK FAILING".

       Bit 4: We found prefail Attributes <= threshold.

       Bit 5: SMART status check returned "DISK OK" but  we  found  that  some
              (usage  or  prefail)  Attributes  have been <= threshold at some
              time in the past.

       Bit 6: The device error log contains records of errors.

       Bit 7: The device self-test log contains records of errors.  [ATA only]
              Failed  self-tests  outdated  by  a  newer  successful  extended
              self-test are ignored.

              To test within the shell for whether or not the  different  bits
              are  turned  on  or  off,  you  can  use  the  following type of
              construction (this is bash syntax):
              smartstat=$(($? & 8))
              This looks at only at bit  3  of  the  exit  status  $?   (since
              8=2^3).   The shell variable $smartstat will be nonzero if SMART
              status check returned "disk failing" and zero otherwise.

NOTES

       The TapeAlert log page flags are cleared for  the  initiator  when  the
       page  is  read.  This  means that each alert condition is reported only
       once by  smartctl  for  each  initiator  for  each  activation  of  the
       condition.

AUTHOR

       Bruce Allen smartmontools-support@lists.sourceforge.net
       University of Wisconsin - Milwaukee Physics Department

CONTRIBUTORS

       The following have made large contributions to smartmontools:
       Casper Dik (Solaris SCSI interface)
       Christian Franke (Windows interface, C++ redesign, USB support, ...)
       Douglas Gilbert (SCSI subsystem)
       Guido Guenther (Autoconf/Automake packaging)
       Geoffrey Keating (Darwin ATA interface)
       Eduard Martinescu (FreeBSD interface)
       Frederic L. W. Meunier (Web site and Mailing list)
       Gabriele Pohl (Web site and Wiki, conversion from CVS to SVN)
       Keiji Sawada (Solaris ATA interface)
       Manfred Schwarb (Drive database)
       Sergey Svishchev (NetBSD interface)
       David Snyder and Sergey Svishchev (OpenBSD interface)
       Phil Williams (User interface and drive database)
       Yuri Dario (OS/2, eComStation interface)
       Shengfeng Zhou (Linux/FreeBSD HighPoint RocketRAID interface)
       Many other individuals have made smaller contributions and corrections.

CREDITS

       This  code  was derived from the smartsuite package, written by Michael
       Cornwell, and from the previous UCSC smartsuite  package.   It  extends
       these  to  cover  ATA-5 disks.  This code was originally developed as a
       Senior Thesis by Michael Cornwell at the Concurrent Systems  Laboratory
       (now  part  of the Storage Systems Research Center), Jack Baskin School
       of    Engineering,    University    of    California,    Santa    Cruz.
       http://ssrc.soe.ucsc.edu/ .

HOME PAGE FOR SMARTMONTOOLS:

       Please  see  the following web site for updates, further documentation,
       bug reports and patches: http://smartmontools.sourceforge.net/

SEE ALSO:

       smartd(8), badblocks(8), ide-smart(8).

REFERENCES FOR SMART

       An introductory article about smartmontools is  Monitoring  Hard  Disks
       with  SMART,  by Bruce Allen, Linux Journal, January 2004, pages 74-77.
       This is http://www.linuxjournal.com/article/6983 online.

       If you would like to understand better how SMART  works,  and  what  it
       does,  a good place to start is with Sections 4.8 and 6.54 of the first
       volume of the 'AT Attachment  with  Packet  Interface-7'  (ATA/ATAPI-7)
       specification  Revision  4b.   This  documents  the SMART functionality
       which the smartmontools utilities provide access to.   This  and  other
       versions  of  this  Specification  are  available from the T13 web site
       http://www.t13.org/ .

       The functioning of  SMART  was  originally  defined  by  the  SFF-8035i
       revision  2  and  the SFF-8055i revision 1.4 specifications.  These are
       publications of the Small Form Factors (SFF) Committee.

       Links to these and other documents may be found on the  Links  page  of
       the                 smartmontools                Wiki                at
       http://sourceforge.net/apps/trac/smartmontools/wiki/Links .

SVN ID OF THIS PAGE:

       $Id: smartctl.8.in 3320 2011-04-30 20:44:55Z chrfranke $