smartd



SMARTD(8)                         2004/09/10                         SMARTD(8)




NAME

       smartd - SMART Disk Monitoring Daemon



SYNOPSIS

       smartd [options]



FULL PATH

       /usr/sbin/smartd



PACKAGE VERSION

       smartmontools-5.33 released 2004/09/10 at 04:11:35 UTC



DESCRIPTION

       smartd  is  a  daemon  that  monitors 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 smartd is
       compatible with  ATA/ATAPI-7  and  earlier  standards  (see  REFERENCES
       below).

       smartd  will attempt to enable SMART monitoring on ATA devices (equiva-
       lent to smartctl -s on) and polls these and SCSI devices every 30  min-
       utes   (configurable),  logging  SMART  errors  and  changes  of  SMART
       Attributes via the SYSLOG interface.  The default  location  for  these
       SYSLOG notifications and warnings is /var/log/messages.  To change this
       default location, please see the  -l  command-line  option  described
       below.

       In addition to logging to a file, smartd can also be configured to send
       email warnings if problems are detected.  Depending upon  the  type  of
       problem,  you may want to run self-tests on the disk, back up the disk,
       replace the disk, or use a manufacturer´s utility to force reallocation
       of  bad  or  unreadable  disk  sectors.  If disk problems are detected,
       please see the smartctl manual page and the smartmontools web  page/FAQ
       for further guidance.

       If  you send a USR1 signal to smartd it will immediately check the sta-
       tus of the disks, and then return to polling the disks  every  30  min-
       utes. See the -i option below for additional details.

       smartd  can  be  configured  at  start-up  using the configuration file
       /etc/smartd.conf (Windows: ./smartd.conf).  If the  configuration  file
       is  subsequently modified, smartd can be told to re-read the configura-
       tion file by sending it a HUP signal, for example with the command:
       killall -HUP smartd.
       (Windows: See NOTES below.)

       On startup, if smartd finds a syntax error in the  configuration  file,
       it  will  print  an  error  message and then exit. However if smartd is
       already running, then is told with a HUP signal to re-read the configu-
       ration  file,  and then find a syntax error in this file, it will print
       an error message and  then  continue,  ignoring  the  contents  of  the
       (faulty)  configuration  file,  as  if  the  HUP  signal had never been
       received.

       When smartd is running in debug mode, the QUIT signal (normally  gener-
       ated  from  a shell with CONTROL-C) is treated in the same way as a HUP
       signal: it makes smartd reload its configuration file. To  exit  smartd
       use CONTROL-\ (Cygwin: 2x CONTROL-C, Windows: CONTROL-Break).

       On  startup, in the absence of the configuration file /etc/smartd.conf,
       the smartd daemon first scans for all devices that support SMART.   The
       scanning is done as follows:

       LINUX:   Examine  all  entries  "/dev/hd[a-t]" for IDE/ATA devices, and
                "/dev/sd[a-z]" for SCSI devices.

       FREEBSD: Examine all entries "/dev/ad[0-9]+" for  IDE/ATA  devices  and
                "/dev/da[0-9]+" for SCSI devices.

       NETBSD/OPENBSD:
                Authoritative  list  of  disk  devices is obtained from sysctl
                ´hw.disknames´.

       SOLARIS: Examine all entries "/dev/rdsk/c?t?d?s?" for IDE/ATA and  SCSI
                disk  devices, and entries "/dev/rmt/*" for SCSI tape devices.

       DARWIN:  The IOService plane is scanned for ATA block storage  devices.

       WINDOWS: Examine  all entries "/dev/hd[a-j]" ("\\.\PhysicalDrive[0-9]")
                for IDE/ATA devices on WinNT4/2000/XP, "/dev/hd[a-d]" (bitmask
                from  "\\.\SMARTVSD") for IDE/ATA devices on Win95/98/98SE/ME,
                and "/dev/scsi[0-3][0-7]" (ASPI adapter 0-3, ID 0-7) for  SCSI
                devices on all versions of Windows.

       CYGWIN:  See "WINDOWS" above.

       smartd  then  monitors  for all possible SMART errors (corresponding to
       the -a Directive in the configuration file;  see  CONFIGURATION  FILE
       below).



OPTIONS

       Long  options are not supported on all systems.  Use smartd -h to see
       the available options.

       -c FILE, --configfile=FILE

              Read smartd configuration Directives from FILE, instead of  from
              the  default location /etc/smartd.conf (Windows: ./smartd.conf).
              If FILE does not exist, then smartd will print an error  message
              and  exit  with nonzero status.  Thus, ´-c /etc/smartd.conf´ can
              be used to verify the existence  of  the  default  configuration
              file.

              By  using  ´-´ for FILE, the configuration is read from standard
              input. This is useful for commands like:
              echo /dev/hdb -m user@home -M test | smartd -c - -q onecheck
              to perform quick and simple checks without a configuration file.


       -d, --debug
              Runs  smartd  in  "debug" mode. In this mode, it displays status
              information to STDOUT rather than logging it to SYSLOG and  does
              not  fork(2) into the background and detach from the controlling
              terminal.  In this mode, smartd also prints more verbose  infor-
              mation  about  what  it is doing than when operating in "daemon"
              mode. In this mode, the QUIT signal (normally generated  from  a
              terminal  with  CONTROL-C) makes smartd reload its configuration
              file.  Please use CONTROL-\ to exit (Cygwin: 2x CONTROL-C,  Win-
              dows: CONTROL-Break).

              Windows  only:  The  "debug"  mode can be toggled by the command
              smartd sigusr2. A new console for debug output  is  opened  when
              debug mode is enabled.

       -D, --showdirectives
              Prints  a  list (to STDOUT) of all the possible Directives which
              may appear in the configuration file /etc/smartd.conf, and  then
              exits.   These  Directives  are also described later in this man
              page. They may appear in the configuration  file  following  the
              device name.

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

       -i N, --interval=N
              Sets the interval between disk checks to N seconds, where N is a
              decimal integer.  The minimum allowed value is ten and the maxi-
              mum  is  the largest positive integer that can be represented on
              your system (often 2^31-1).  The default is 1800 seconds.

              Note that the superuser can make smartd check the status of  the
              disks  at any time by sending it the SIGUSR1 signal, for example
              with the command:
              kill -SIGUSR1 <pid>
              where <pid> is the process id number of smartd.   One  may  also
              use:
              killall -USR1 smartd
              for the same purpose.
              (Windows: See NOTES below.)


       -l FACILITY, --logfacility=FACILITY
              Uses  syslog  facility FACILITY to log the messages from smartd.
              Here FACILITY is one of local0, local1, ..., local7,  or  daemon
              [default].   If  this  command-line  option is not used, then by
              default messages from smartd are logged to the facility  daemon.

              If you would like to have smartd messages logged somewhere other
              than the default /var/log/messages location, this can  typically
              be accomplished with (for example) the following steps:

              [1] Modify  the  script that starts smartd to include the smartd
                  command-line argument ´-l local3´.  This tells smartd to log
                  its messages to facility local3.

              [2] Modify  the  syslogd configuration file (typically /etc/sys-
                  log.conf) by adding a line of the form:
                  local3.* /var/log/smartd.log
                  This tells syslogd to log all  the  messages  from  facility
                  local3 to the designated file: /var/log/smartd.log.

              [3] Tell syslogd to re-read its configuration file, typically by
                  sending the syslogd process a SIGHUP hang-up signal.

              [4] Start (or restart) the smartd daemon.

              For more detailed information, please refer to the man pages for
              syslog.conf,  syslogd,  and syslog.  You may also want to modify
              the log rotation configuration files;  see  the  man  pages  for
              logrotate and examine your system´s /etc/logrotate.conf file.

              Cygwin:  The current release of Cygwin writes syslog(3) messages
              to Windows event log or  to  file  C:/CYGWIN_SYSLOG.TXT  if  the
              event  log  is  not available.  The FACILITY parameter is always
              ignored by Cygwin.

              Windows: Some syslog(3) functionality is implemented  internally
              in  smartd  as  follows:  If  no ´-l´ option (or ´-l daemon´) is
              specified, messages are written to Windows event log or to  file
              ./smartd.log  if  event log is not available (Win9x/ME or access
              denied). By specifying other values of FACILITY, log  output  is
              redirected  as  follows:  ´-l  local0´ to file ./smartd.log, ´-l
              local1´ to standard output (redirect with ´>´ to any file),  ´-l
              local2´   to   standard   error,   ´-l   local[3-7]´:   to  file
              ./smartd[1-5].log.

              When using the event log,  the  enclosed  utility  syslogevt.exe
              should  be  registered  as  an event message file to avoid error
              messages from the event viewer. Use  ´syslogevt  -r  smartd´  to
              register,  ´syslogevt  -u  smartd´ to unregister and ´syslogevt´
              for more help.


       -p NAME, --pidfile=NAME
              Writes pidfile NAME containing  the  smartd  Process  ID  number
              (PID).   To  avoid  symlink  attacks  make sure the directory to
              which pidfile is written is only  writable  for  root.   Without
              this  option,  or if the --debug option is given, no PID file is
              written on startup.  If smartd is killed with a maskable  signal
              then the pidfile is removed.

       -q WHEN, --quit=WHEN
              Specifies  when,  if  ever, smartd should exit.  The valid argu-
              ments are to this option are:

              nodev - Exit if there are no  devices  to  monitor,  or  if  any
              errors  are found at startup in the configuration file.  This is
              the default.

              errors - Exit if there are no devices  to  monitor,  or  if  any
              errors  are  found in the configuration file /etc/smartd.conf at
              startup or whenever it is reloaded.

              nodevstartup - Exit if  there  are  no  devices  to  monitor  at
              startup.   But  continue to run if no devices are found whenever
              the configuration file is reloaded.

              never - Only exit if a fatal error occurs (no  remaining  system
              memory,  invalid  command line arguments). In this mode, even if
              there are no devices to monitor, or if  the  configuration  file
              /etc/smartd.conf  has errors, smartd will continue to run, wait-
              ing to load a configuration file listing valid devices.

              onecheck - Start smartd in debug mode,  then  register  devices,
              then  check  device´s SMART status once, and then exit with zero
              exit status if all of these steps worked correctly.

              This last option is intended for ´distribution-writers´ who want
              to create automated scripts to determine whether or not to auto-
              matically start up smartd after installing smartmontools.  After
              starting  smartd  with  this  command-line option, the distribu-
              tion´s install scripts should wait a reasonable length  of  time
              (say ten seconds).  If smartd has not exited with zero status by
              that time, the script should send smartd a  SIGTERM  or  SIGKILL
              and  assume  that smartd will not operate correctly on the host.
              Conversely, if smartd exits with zero status, then it is safe to
              run smartd in normal daemon mode. If smartd is unable to monitor
              any devices or encounters other problems  then  it  will  return
              with non-zero exit status.

       -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 smartd
              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.

              Any argument may include a positive integer to specify the level
              of detail that should be reported.  The argument should be  fol-
              lowed  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.


       --service
              Windows  only:  Enables  smartd to run as a Windows service.  It
              must be specified in the service command line as the first argu-
              ment.  See NOTES below for details.


       -V, --version, --license, --copyright
              Prints license, copyright, and CVS version information onto STD-
              OUT and then exits. Please include this information if  you  are
              reporting bugs, or have specific questions about the behavior of
              smartd.



EXAMPLES

       smartd
       Runs the daemon in forked mode. This is the normal way to  run  smartd.
       Entries are logged to SYSLOG (by default /var/log/messages.)

       smartd -d -i 30
       Run  in foreground (debug) mode, checking the disk status every 30 sec-
       onds.

       smartd -q onecheck
       Registers devices, and checks the status of the devices  exactly  once.
       The  exit status (the bash $?  variable) will be zero if all went well,
       and nonzero if no devices were  detected  or  some  other  problem  was
       encountered.

       Note    that    smartmontools    provides    a   start-up   script   in
       /etc/rc.d/init.d/smartd which is responsible for starting and  stopping
       the  daemon  via the normal init interface.  Using this script, you can
       start smartd by giving the command:
       /etc/rc.d/init.d/smartd start
       and stop it by using the command:
       /etc/rc.d/init.d/smartd stop

       If you want smartd to start running whenever your  machine  is  booted,
       this can be enabled by using the command:
       /sbin/chkconfig --add smartd
       and disabled using the command:
       /sbin/chkconfig --del smartd




CONFIGURATION FILE /etc/smartd.conf

       In  the absence of a configuration file, under Linux smartd will try to
       open the 20 ATA devices /dev/hd[a-t] and the 26 SCSI devices /dev/sd[a-
       z].   Under  FreeBSD,  smartd will try to open all existing ATA devices
       (with entries in /dev) /dev/ad[0-9]+  and  all  existing  SCSI  devices
       /dev/da[0-9]+.   Under  NetBSD/OpenBSD,  smartd  will  try  to open all
       existing ATA devices (with entries  in  /dev)  /dev/wd[0-9]+c  and  all
       existing SCSI devices /dev/sd[0-9]+c.  Under Solaris smartd will try to
       open  all  entries  "/dev/rdsk/c?t?d?s?"  for  IDE/ATA  and  SCSI  disk
       devices, and entries "/dev/rmt/*" for SCSI tape devices.  Under Windows
       smartd  will  try  to  open  all  entries  "/dev/hd[a-j]"  ("\\.\Physi-
       calDrive[0-9]")  for  IDE/ATA devices on WinNT4/2000/XP, "/dev/hd[a-d]"
       (bitmask from "\\.\SMARTVSD") for IDE/ATA devices on  Win95/98/98SE/ME,
       and  "/dev/scsi[0-3][0-7]"  (ASPI adapter 0-3, ID 0-7) for SCSI devices
       on all versions of Windows.  Under Darwin, smartd  will  open  any  ATA
       block storage device.

       This  can  be  annoying if you have an ATA or SCSI device that hangs or
       misbehaves when receiving SMART commands.  Even if this causes no prob-
       lems,  you  may  be  annoyed  by the string of error log messages about
       block-major devices that can´t be found, and SCSI devices that can´t be
       opened.

       One  can  avoid  this  problem, and gain more control over the types of
       events  monitored  by  smartd,  by   using   the   configuration   file
       /etc/smartd.conf.   This  file  contains  a list of devices to monitor,
       with one device per line.  An example file is included with the  smart-
       montools  distribution. You will find this sample configuration file in
       /usr/share/doc/smartmontools-5.33/.  For  security,  the  configuration
       file  should not be writable by anyone but root. The syntax of the file
       is as follows:

       ·   There should be one device listed per line, although you  may  have
           lines that are entirely comments or white space.

       ·   Any text following a hash sign ´#´ and up to the end of the line is
           taken to be a comment, and ignored.

       ·   Lines may be continued by using a backslash ´\´ as  the  last  non-
           whitespace or non-comment item on a line.

       ·   Note: a line whose first character is a hash sign ´#´ is treated as
           a white-space blank line, not as a non-existent line, and will  end
           a continuation line.

       Here  is an example configuration file.  It´s for illustrative purposes
       only; please don´t copy it onto your system without reading to the  end
       of the DIRECTIVES Section below!

       ################################################
       # This is an example smartd startup config file
       # /etc/smartd.conf for monitoring three
       # ATA disks, three SCSI disks, and six ATA disks
       # behind two 3ware controllers.
       #
       # First ATA disk on each of two interfaces. On
       # the second disk, start a long self-test every
       # Sunday between 3 and 4 am.
       #
         /dev/hda -a -m admin@example.com,root@localhost
         /dev/hdc -a -I 194 -I 5 -i 12 -s L/../../7/03
       #
       # SCSI disks. Send a TEST warning email to admin on
       # startup.
       #
         /dev/sda
         /dev/sdb -m admin@example.com -M test
       #
       # Strange device. Its SCSI. Start a scheduled
       # long self test between 5 and 6 am Monday/Thursday
         /dev/weird -d scsi -s L/../../(1|4)/05
       #
       # Four ATA disks on a 3ware 6/7/8000 controller.
       # Start short self-tests daily between midnight and 1am,
       # 1-2, 2-3, and 3-4 am
       # (Note that the syntax /dev/twe0 is also allowed.)
         /dev/sdc -d 3ware,0 -a -s S/../.././00
         /dev/sdc -d 3ware,1 -a -s S/../.././01
         /dev/sdd -d 3ware,2 -a -s S/../.././02
         /dev/sdd -d 3ware,3 -a -s S/../.././03
       #
       # Two ATA disks on a 3ware 9000 controller.
       # Start long self-tests Sundays between midnight and
       # 1am and 2-3 am
         /dev/twa0 -d 3ware,0 -a -s L/../../7/00
         /dev/twa0 -d 3ware,1 -a -s L/../../7/02
       #
       # The following line enables monitoring of the
       # ATA Error Log and the Self-Test Error Log.
       # It also tracks changes in both Prefailure
       # and Usage Attributes, apart from Attributes
       # 9, 194, and 231, and shows continued lines:
       #
         /dev/hdd -l error \
                  -l selftest \
                  -t \      # Attributes not tracked:
                  -I 194 \  # temperature
                  -I 231 \  # also temperature
                  -I 9      # power-on hours
       #
       ################################################




CONFIGURATION FILE DIRECTIVES

       If  the  first  non-comment entry in the configuration file is the text
       string DEVICESCAN in capital  letters,  then  smartd  will  ignore  any
       remaining  lines  in the configuration file, and will scan for devices.
       DEVICESCAN may optionally be followed by Directives that will apply  to
       all  devices  that  are  found in the scan.  Please see below for addi-
       tional details.



       The following are the Directives that may appear following  the  device
       name  or  DEVICESCAN  on any line of the /etc/smartd.conf configuration
       file. Note that these are NOT command-line  options  for  smartd.   The
       Directives below may appear in any order, following the device name.

       For  an  ATA  device,  if no Directives appear, then the device will be
       monitored as if the ´-a´ Directive (monitor all SMART  properties)  had
       been given.

       If  a  SCSI  disk is listed, it will be monitored at the maximum imple-
       mented level: roughly equivalent to using the ´-H -l selftest´  options
       for  an  ATA disk.  So with the exception of ´-d´, ´-m´, ´-l selftest´,
       ´-s´, and ´-M´, the Directives below are ignored for SCSI  disks.   For
       SCSI  disks, the ´-m´ Directive sends a warning email if the SMART sta-
       tus indicates a disk failure or problem, if the SCSI inquiry about disk
       status fails, or if new errors appear in the self-test log.

       If a 3ware controller is used then the corresponding SCSI (/dev/sd?) or
       character device (/dev/twe?  or /dev/twa?) must be listed,  along  with
       the  ´-d  3ware,N´  Directive  (see  below).   The individual ATA disks
       hosted by the 3ware controller appear to smartd as normal ATA  devices.
       Hence  all the ATA directives can be used for these disks (but see note
       below).


       -d TYPE
              Specifies the type of the device.  This Directive  may  be  used
              multiple  times for one device, but the arguments ata, scsi, and
              3ware,N are mutually-exclusive. If more than one is  given  then
              smartd will use the last one which appears.

              If  none  of  these  three  arguments is given, then smartd will
              first attempt to guess the device type by looking at whether the
              sixth  character  in  the device name is an ´s´ or an ´h´.  This
              will work for device names like /dev/hda or /dev/sdb, and corre-
              sponds  to  choosing  ata  or scsi respectively. If smartd can´t
              guess from this sixth character, then  it  will  simply  try  to
              access the device using first ATA and then SCSI ioctl()s.

              The valid arguments to this Directive are:

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

              scsi - the device type is SCSI.  This prevents smartd from issu-
              ing ATA commands to a SCSI device.

              3ware,N - 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  15 inclusive) denotes which disk on the con-
              troller is monitored.  In log files and email messages this disk
              will be identified as 3ware_disk_XX with XX in the range from 00
              to 15 inclusive.

              This Directive may at first appear confusing, because the  3ware
              controller  is  a  SCSI  device (such as /dev/sda) and should be
              listed as such in the the configuration file.  However when  the
              ´-d  3ware,N´  Directive is used, then the corresponding disk is
              addressed using native ATA commands which are  ´passed  through´
              the  SCSI driver. All ATA Directives listed in this man page may
              be used.  Note that while you may use any of the 3ware SCSI log-
              ical  devices  /dev/sd?  to  address  any  of the physical disks
              (3ware ports), error and log messages will make the  most  sense
              if  you  always list the 3ware SCSI logical device corresponding
              to the particular physical disks.  Please see the  smartctl  man
              page for further details.

              ATA disks behind 3ware controllers may alternatively be accessed
              via   a   character   device   interface   /dev/twe0-15   (3ware
              6000/7000/8000  controllers) and /dev/twa0-15 (3ware 9000 series
              controllers).  Note that the 9000 series controllers may only be
              accessed  using  the character device interface /dev/twa0-15 and
              not the SCSI device interface /dev/sd?.  Please see the smartctl
              man page for further details.

              Note  that  older  3w-xxxx  drivers  do  not  pass  the  ´Enable
              Autosave´ (-S on) and ´Enable Automatic Offline´  (-o  on)  com-
              mands  to  the  disk, if the SCSI interface is used, 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.   See
              http://smartmontools.sourceforge.net/ for instructions.   Alter-
              natively use the character device interfaces /dev/twe0-15 (3ware
              6/7/8000 series controllers) or /dev/twa0-15 (3ware 9000  series
              controllers).


              3ware controllers are currently ONLY supported under Linux.

              removable  -  the  device or its media is removable.  This indi-
              cates to smartd that it should  continue  (instead  of  exiting,
              which  is the default behavior) if the device does not appear to
              be present when smartd is started.  This Directive may  be  used
              in conjunction with the other ´-d´ Directives.


       -n POWERMODE
              This  ´nocheck´  Directive  is used to prevent a disk from being
              spun-up when it is periodically polled by smartd.

              ATA disks have five different power states. In order of increas-
              ing  power  consumption  they  are:  ´OFF´,  ´SLEEP´, ´STANDBY´,
              ´IDLE´, and ´ACTIVE´.  Typically in the OFF, SLEEP, and  STANDBY
              modes  the  disk´s  platters  are  not spinning. But usually, in
              response to SMART commands issued by smartd, the  disk  platters
              are  spun  up.  So if this option is not used, then a disk which
              is  in  a  low-power  mode  may  be  spun  up  and  put  into  a
              higher-power mode when it is periodically polled by smartd.

              Note  that  if the disk is in SLEEP mode when smartd is started,
              then it won’t respond to smartd commands, and so the disk  won’t
              be registered as a device for smartd to monitor. If a disk is in
              any other low-power mode, then the commands issued by smartd  to
              register the disk will probably cause it to spin-up.

              The  ´-n´  (nocheck)  Directive  specifies  if smartd´s periodic
              checks should still be carried out  when  the  device  is  in  a
              low-power  mode.   It  may  be used to prevent a disk from being
              spun-up by periodic smartd polling.  The allowed values of  POW-
              ERMODE are:

              never  -  smartd  will poll (check) the device regardless of its
              power mode. This may cause a  disk  which  is  spun-down  to  be
              spun-up  when smartd checks it.  This is the default behavior if
              the ’-n’ Directive is not given.

              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 laptop disk from spinning up  each  time  that
              smartd polls, 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.



       -T TYPE
              Specifies  how  tolerant smartd should be of SMART command fail-
              ures.  The valid arguments to this Directive are:

              normal - do not try to monitor the disk  if  a  mandatory  SMART
              command  fails, but continue if an optional SMART command fails.
              This is the default.

              permissive - try to monitor the disk even if it appears to  lack
              SMART  capabilities.   This  may  be required for some old disks
              (prior to ATA-3 revision 4) that implemented  SMART  before  the
              SMART  standards were incorporated into the ATA/ATAPI Specifica-
              tions.  This may also be needed for some Maxtor disks which fail
              to  comply  with the ATA Specifications and don’t properly indi-
              cate support for error- or self-test logging.

              [Please see the smartctl -T command-line option.]

       -o VALUE
              Enables or disables SMART Automatic Offline Testing when  smartd
              starts  up  and  has  no further effect.  The valid arguments to
              this Directive are on and off.

              The delay between tests is  vendor-specific,  but  is  typically
              four hours.

              Note that SMART Automatic Offline Testing is not part of the ATA
              Specification.  Please see the smartctl -o  command-line  option
              documentation for further information about this feature.

       -S VALUE
              Enables or disables Attribute Autosave when smartd starts up and
              has no further effect.  The valid arguments  to  this  Directive
              are  on  and  off.   Also affects SCSI devices.  [Please see the
              smartctl -S command-line option.]

       -H     Check the SMART health status of the disk.   If  any  Prefailure
              Attributes  are  less  than  or equal to their threshold values,
              then disk failure is predicted in less than 24 hours, and a mes-
              sage  at  loglevel  LOG_CRITICAL  will  be  logged  to syslog.
              [Please see the smartctl -H command-line option.]

       -l TYPE
              Reports increases in the number of errors  in  one  of  the  two
              SMART logs.  The valid arguments to this Directive are:

              error  -  report if the number of ATA errors reported in the ATA
              Error Log has increased since the last check.

              selftest - report if the number of failed tests reported in  the
              SMART  Self-Test  Log  has increased since the last check, or if
              the timestamp associated with the most recent  failed  test  has
              increased.  Note that such errors will only be logged if you run
              self-tests on the disk (and it fails a test!).   Self-Tests  can
              be  run  automatically  by smartd: please see the -s Directive
              below.  Self-Tests  can  also  be  run  manually  by  using  the
              -t short  and -t long options of smartctl and the results of
              the testing can be observed  using  the  smartctl  -l selftest
              command-line option.]

              [Please see the smartctl -l and -t command-line options.]

       -s REGEXP
              Run  Self-Tests  or Offline Immediate Tests, at scheduled times.
              A Self- or Offline Immediate Test will be  run  at  the  end  of
              periodic  device  polling,  if  all  12 characters of the string
              T/MM/DD/d/HH match the extended regular expression REGEXP. Here:

              T   is the type of the test.  The values that smartd will try to
                  match (in turn) are: ´L´ for a Long  Self-Test,  ´S´  for  a
                  Short  Self-Test, ´C´ for a Conveyance Self-Test (ATA only),
                  and ´O´ for an Offline Immediate Test (ATA only).   As  soon
                  as  a  match is found, the test will be started and no addi-
                  tional matches will be  sought  for  that  device  and  that
                  polling cycle.

              MM  is the month of the year, expressed with two decimal digits.
                  The range is from 01 (January) to 12  (December)  inclusive.
                  Do  not  use a single decimal digit or the match will always
                  fail!

              DD  is the day of the month, expressed with two decimal  digits.
                  The  range  is from 01 to 31 inclusive.  Do not use a single
                  decimal digit or the match will always fail!

              d   is the day of the week, expressed with  one  decimal  digit.
                  The range is from 1 (Monday) to 7 (Sunday) inclusive.

              HH  is the hour of the day, written with two decimal digits, and
                  given in hours after midnight.  The range is 00 (midnight to
                  just before 1am) to 23 (11pm to just before midnight) inclu-
                  sive.  Do not use a single decimal digit or the  match  will
                  always fail!

              Some  examples  follow.   In reading these, keep in mind that in
              extended regular expressions a dot . matches any single  char-
              acter,  and a parenthetical expression such as (A|B|C) denotes
              any one of the three possibilities A, B, or C.

              To schedule a short Self-Test between 2-3am every morning, use:
               -s S/../.././02
              To schedule a long Self-Test between 4-5am every Sunday morning,
              use:
               -s L/../../7/04
              To  schedule  a  long Self-Test between 10-11pm on the first and
              fifteenth day of each month, use:
               -s L/../(01|15)/./22
              To schedule an Offline Immediate test after every midnight, 6am,
              noon,and  6pm,  plus a Short Self-Test daily at 1-2am and a Long
              Self-Test every Saturday at 3-4am, use:
               -s (O/../.././(00|06|12|18)|S/../.././01|L/../../6/03)

              Scheduled tests are run  immediately  following  the  regularly-
              scheduled  device  polling, if the current local date, time, and
              test type, match REGEXP.   By  default  the  regularly-scheduled
              device  polling  occurs  every  thirty  minutes  after  starting
              smartd.  Take caution if you use the ´-i´ option  to  make  this
              polling  interval  more  than  sixty minutes: the poll times may
              fail to coincide with any of the testing  times  that  you  have
              specified  with REGEXP, and so the self tests may not take place
              as you wish.

              Before running an offline or self-test, smartd checks to be sure
              that  a  self-test  is  not  already running.  If a self-test is
              already running, then this running self test will not be  inter-
              rupted to begin another test.

              smartd  will not attempt to run any type of test if another test
              was already started or run in the same hour.

              Each time a test is run, smartd will log  an  entry  to  SYSLOG.
              You  can  use  these  to verify that you constructed REGEXP cor-
              rectly.  The matching order (L  before  S  before  C  before  O)
              ensures  that  if  multiple test types are all scheduled for the
              same hour, the longer test type has precedence.  This is usually
              the desired behavior.

              Unix  users:  please  beware that the rules for extended regular
              expressions [regex(7)]  are  not  the  same  as  the  rules  for
              file-name  pattern matching by the shell [glob(7)].  smartd will
              issue harmless informational  warning  messages  if  it  detects
              characters  in REGEXP that appear to indicate that you have made
              this mistake.


       -m ADD Send a warning email to the email address ADD if the ´-H´, ´-l´,
              ´-f´,  ´-C´, or ´-O´ Directives detect a failure or a new error,
              or if a SMART command to the disk  fails.  This  Directive  only
              works  in  conjunction  with these other Directives (or with the
              equivalent default ´-a´ Directive).

              To prevent your email in-box from getting filled up with warning
              messages, by default only a single warning will be sent for each
              of the enabled alert types, ´-H´, ´-l´, ´-f´, ´-C´, or ´-O´ even
              if  more than one failure or error is detected or if the failure
              or error persists.  [This behavior can be modified; see the ´-M´
              Directive below.]

              To  send  email  to more than one user, please use the following
              "comma      separated"      form      for      the      address:
              user1@add1,user2@add2,...,userN@addN (with no spaces).

              To  test  that  email is being sent correctly, use the ´-M test´
              Directive described below to send  one  test  email  message  on
              smartd startup.

              By  default,  email  is  sent using the system mail command.  In
              order that smartd find the mail command (normally /bin/mail)  an
              executable  named  mail  must  be  in the path of the shell or
              environment from which smartd was started.  If you wish to spec-
              ify  an  explicit  path  to  the  mail  executable  (for example
              /usr/local/bin/mail) or a custom script to run, please  use  the
              ´-M exec´ Directive below.

              Note  that  by default under Solaris, in the previous paragraph,
              ´mailx´ and ´/bin/mailx´ are  used,  since  Solaris  ´/bin/mail´
              does not accept a ´-s´ (Subject) command-line argument.

              On  Windows, the ´Blat´ mailer (http://blat.sourceforge.net/) is
              used by default.  This mailer uses a different command line syn-
              tax, see ´-M exec´ below.

              Note  also that there is a special argument <nomailer> which can
              be given to the ´-m´ Directive in conjunction with the ´-M exec´
              Directive. Please see below for an explanation of its effect.

              If the mailer or the shell running it produces any STDERR/STDOUT
              output, then a snippet of that output will be copied to  SYSLOG.
              The  remainder  of  the  output  is  discarded.  If problems are
              encountered in sending mail, this should help you to  understand
              and  fix  them.  If you have mail problems, we recommend running
              smartd in debug mode with the ´-d´ flag,  using  the  ´-M  test´
              Directive described below.

              The  following  extension is available on Windows: By specifying
              ´msgbox´ as a mail address, a warning "email" is displayed as  a
              message box on the screen.  Using both ´msgbox´ and regular mail
              addresses is possible, if ´msgbox´ is  the  first  word  in  the
              comma  separated list.  With ´sysmsgbox´, a system modal (always
              on top) message box is used. If running as a service, a  service
              notification  message box (always shown on current visible desk-
              top) is used.


       -M TYPE
              These Directives modify the behavior of the smartd  email  warn-
              ings  enabled  with  the  ´-m´  email Directive described above.
              These ´-M´ Directives only work in  conjunction  with  the  ´-m´
              Directive and can not be used without it.

              Multiple  -M  Directives may be given.  If conflicting -M Direc-
              tives are given (example: -M once -M daily) then the  final  one
              (in the example, -M daily) is used.

              The valid arguments to the -M Directive are:

              once - send only one warning email for each type of disk problem
              detected.  This is the default.

              daily - send additional warning reminder emails, once  per  day,
              for each type of disk problem detected.

              diminishing  -  send additional warning reminder emails, after a
              one-day interval, then  a  two-day  interval,  then  a  four-day
              interval, and so on for each type of disk problem detected. Each
              interval is twice as long as the previous interval.

              test - send a single test email immediately upon smartd startup.
              This allows one to verify that email is delivered correctly.

              exec  PATH - run the executable PATH instead of the default mail
              command, when smartd needs to send email.  PATH must point to an
              executable binary file or script.

              By  setting  PATH  to point to a customized script, you can make
              smartd perform useful tricks when a  disk  problem  is  detected
              (beeping  the  console,  shutting down the machine, broadcasting
              warnings to all logged-in users, etc.)  But please  be  careful.
              smartd  will block until the executable PATH returns, so if your
              executable hangs,  then  smartd  will  also  hang.  Some  sample
              scripts  are included in /usr/share/doc/smartmontools-5.33/exam-
              plescripts/.

              The return status of the executable is  recorded  by  smartd  in
              SYSLOG.  The  executable  is  not expected to write to STDOUT or
              STDERR.  If it does, then this is interpreted as indicating that
              something is going wrong with your executable, and a fragment of
              this output is logged to SYSLOG to help you  to  understand  the
              problem.  Normally, if you wish to leave some record behind, the
              executable should send mail or write to a file or device.

              Before running the executable, smartd sets a number of  environ-
              ment variables.  These environment variables may be used to con-
              trol  the  executable´s  behavior.   The  environment  variables
              exported by smartd are:

              SMARTD_MAILER
                  is  set  to  the  argument of -M exec, if present or else to
                  ´mail´ (examples: /bin/mail, mail).

              SMARTD_DEVICE
                  is set to the device path (examples: /dev/hda, /dev/sdb).

              SMARTD_DEVICETYPE
                  is set to the  device  type  (possible  values:  ata,  scsi,
                  3ware,N).  Here  N=0,...,15  denotes  the  ATA disk behind a
                  3ware RAID controller.

              SMARTD_DEVICESTRING
                  is set to the device description.  For SMARTD_DEVICETYPE  of
                  ata  or  scsi, this is the same as SMARTD_DEVICE.  For 3ware
                  RAID   controllers,   the    form    used    is    ´/dev/sdc
                  [3ware_disk_01]´.  In this case the device string contains a
                  space and is NOT quoted.  So to use $SMARTD_DEVICESTRING  in
                  a  bash  script  you  should  probably  enclose it in double
                  quotes.

              SMARTD_FAILTYPE
                  gives the reason for the warning or message email.  The pos-
                  sible values that it takes and their meanings are:
                  EmailTest: this is an email test message.
                  Health:  the SMART health status indicates imminent failure.
                  Usage: a usage Attribute has failed.
                  SelfTest: the number of self-test failures has increased.
                  ErrorCount: the number of errors in the ATA  error  log  has
                  increased.
                  CurrentPendingSector:  one of more disk sectors could not be
                  read and are marked to be reallocated (replaced  with  spare
                  sectors).
                  OfflineUncorrectableSector:   during  off-line  testing,  or
                  self-testing, one or more disk sectors could not be read.
                  FailedHealthCheck: the SMART health status command failed.
                  FailedReadSmartData: the command  to  read  SMART  Attribute
                  data failed.
                  FailedReadSmartErrorLog: the command to read the SMART error
                  log failed.
                  FailedReadSmartSelfTestLog: the command to  read  the  SMART
                  self-test log failed.
                  FailedOpenDevice: the open() command to the device failed.

              SMARTD_ADDRESS
                  is determined by the address argument ADD of the ´-m´ Direc-
                  tive.  If ADD is <nomailer>, then SMARTD_ADDRESS is not set.
                  Otherwise,  it  is  set to the comma-separated-list of email
                  addresses  given  by  the  argument  ADD,  with  the  commas
                  replaced  by  spaces  (example:admin@example.com  root).  If
                  more than one email address is given, then this string  will
                  contain  space characters and is NOT quoted, so to use it in
                  a bash script you may want to enclose it in double quotes.

              SMARTD_MESSAGE
                  is set to the one sentence  summary  warning  email  message
                  string  from  smartd.   This  message  string contains space
                  characters and is NOT quoted. So to use $SMARTD_MESSAGE in a
                  bash script you should probably enclose it in double quotes.

              SMARTD_FULLMESSAGE
                  is set to the contents of the entire email  warning  message
                  string  from smartd.  This message string contains space and
                  return  characters  and   is   NOT   quoted.   So   to   use
                  $SMARTD_FULLMESSAGE  in  a  bash  script you should probably
                  enclose it in double quotes.

              SMARTD_TFIRST
                  is a text string giving the time and date at which the first
                  problem of this type was reported. This text string contains
                  space characters and no newlines, and  is  NOT  quoted.  For
                  example:
                  Sun Feb  9 14:58:19 2003 CST

              SMARTD_TFIRSTEPOCH
                  is  an  integer,  which is the unix epoch (number of seconds
                  since Jan 1, 1970) for SMARTD_TFIRST.

              The shell which is used to run  PATH  is  system-dependent.  For
              vanilla  Linux/glibc  it´s bash. For other systems, the man page
              for popen(3) should say what shell is used.

              If the ´-m ADD´ Directive is given with a normal  address  argu-
              ment,  then  the  executable pointed to by PATH will be run in a
              shell with STDIN receiving the body of the  email  message,  and
              with the same command-line arguments:
              -s "$SMARTD_SUBJECT" $SMARTD_ADDRESS
              that would normally be provided to ´mail´.  Examples include:
              -m user@home -M exec /bin/mail
              -m admin@work -M exec /usr/local/bin/mailto
              -m root -M exec /Example_1/bash/script/below

              Note that on Windows, the syntax of the ´Blat´ mailer is used:
              - -q -subject "$SMARTD_SUBJECT" -to "$SMARTD_ADDRESS"

              If  the  ´-m  ADD´  Directive  is given with the special address
              argument <nomailer> then the executable pointed to  by  PATH  is
              run  in a shell with no STDIN and no command-line arguments, for
              example:
              -m <nomailer> -M exec /Example_2/bash/script/below
              If the executable produces any STDERR/STDOUT output, then smartd
              assumes  that  something  is  going wrong, and a snippet of that
              output will be copied to SYSLOG.  The remainder of the output is
              then discarded.

              Some  EXAMPLES  of  scripts  that can be used with the ´-M exec´
              Directive are given below. Some sample scripts are also included
              in /usr/share/doc/smartmontools-5.33/examplescripts/.


       -f     Check   for   ´failure´  of  any  Usage  Attributes.   If  these
              Attributes are less than or equal to the threshold, it does  NOT
              indicate  imminent disk failure.  It "indicates an advisory con-
              dition where the usage or age of the  device  has  exceeded  its
              intended  design life period."  [Please see the smartctl -A com-
              mand-line option.]

       -p     Report anytime that a Prefail Attribute has  changed  its  value
              since  the  last check, 30 minutes ago. [Please see the smartctl
              -A command-line option.]

       -u     Report anytime that a Usage  Attribute  has  changed  its  value
              since  the  last check, 30 minutes ago. [Please see the smartctl
              -A command-line option.]

       -t     Equivalent to turning on the two previous flags ´-p´  and  ´-u´.
              Tracks  changes  in  all  device Attributes (both Prefailure and
              Usage). [Please see the smartctl -A command-line option.]

       -i ID  Ignore device Attribute number ID when checking for  failure  of
              Usage  Attributes.   ID  must  be a decimal integer in the range
              from 1 to 255.  This Directive modifies the behavior of the ´-f´
              Directive and has no effect without it.

              This  is  useful,  for  example, if you have a very old disk and
              don´t want to keep getting messages about the  hours-on-lifetime
              Attribute  (usually  Attribute  9)  failing.  This Directive may
              appear multiple times for a single device, if you want to ignore
              multiple Attributes.

       -I ID  Ignore   device  Attribute  ID  when  tracking  changes  in  the
              Attribute values.  ID must be a decimal  integer  in  the  range
              from  1  to  255.   This  Directive modifies the behavior of the
              ´-p´, ´-u´, and ´-t´ tracking Directives and has no effect with-
              out one of them.

              This  is useful, for example, if one of the device Attributes is
              the disk temperature (usually Attribute 194 or 231). It´s annoy-
              ing  to  get  reports  each  time the temperature changes.  This
              Directive may appear multiple times for a single device, if  you
              want to ignore multiple Attributes.

       -r ID  When  tracking,  report the Raw value of Attribute ID along with
              its (normally reported) Normalized value.  ID must be a  decimal
              integer in the range from 1 to 255.  This Directive modifies the
              behavior of the ´-p´, ´-u´, and ´-t´ tracking Directives and has
              no effect without one of them.  This Directive may be given mul-
              tiple times.

              A common use of this Directive is to track the  device  Tempera-
              ture (often ID=194 or 231).


       -R ID  When  tracking,  report  whenever  the Raw value of Attribute ID
              changes.  (Normally smartd only tracks/reports  changes  of  the
              Normalized  Attribute  values.)  ID must be a decimal integer in
              the range from 1 to 255.  This Directive modifies  the  behavior
              of  the  ´-p´,  ´-u´,  and  ´-t´  tracking Directives and has no
              effect without one of them.  This Directive may be given  multi-
              ple times.

              If  this  Directive  is given, it automatically implies the ´-r´
              Directive for the same Attribute, so that the Raw value  of  the
              Attribute is reported.

              A  common  use of this Directive is to track the device Tempera-
              ture (often ID=194 or 231).  It is also useful for understanding
              how  different  types  of  system behavior affects the values of
              certain Attributes.


       -C ID  [ATA only] Report if the current number of  pending  sectors  is
              non-zero.   Here  ID is the id number of the Attribute whose raw
              value is the Current Pending Sector count.  The allowed range of
              ID  is  0  to  255  inclusive.   To turn off this reporting, use
              ID = 0.  If the -C ID option is not given, then it  defaults  to
              -C 197 (since Attribute 197 is generally used to monitor pending
              sectors).

              A pending sector is a disk sector (containing 512 bytes of  your
              data)  which the device would like to mark as ‘‘bad" and reallo-
              cate.  Typically this is because your  computer  tried  to  read
              that sector, and the read failed because the data on it has been
              corrupted and has inconsistent  Error  Checking  and  Correction
              (ECC)  codes.   This is important to know, because it means that
              there is some unreadable data on the disk.  The problem of  fig-
              uring out what file this data belongs to is operating system and
              file system specific.  You can typically  force  the  sector  to
              reallocate  by  writing to it (translation: make the device sub-
              stitute a spare good sector for the bad one) but at the price of
              losing the 512 bytes of data stored there.


       -U ID  [ATA only] Report if the number of offline uncorrectable sectors
              is non-zero.  Here ID is the id number of  the  Attribute  whose
              raw  value  is  the  Offline  Uncorrectable  Sector  count.  The
              allowed range of ID is 0 to 255 inclusive.   To  turn  off  this
              reporting,  use  ID = 0.  If the -U ID option is not given, then
              it defaults to -U 198 (since Attribute 198 is generally used  to
              monitor offline uncorrectable sectors).


              An  offline  uncorrectable sector is a disk sector which was not
              readable during an off-line scan or a self-test.  This is impor-
              tant  to know, because if you have data stored in this disk sec-
              tor, and you need to read it, the read will  fail.   Please  see
              the previous ´-C´ option for more details.


       -F TYPE
              [ATA  only]  Modifies  the  behavior of smartd to compensate for
              some known and understood device firmware bug.  The arguments to
              this  Directive  are exclusive, so that only the final Directive
              given is used.  The valid values are:

              none - Assume that the device firmware obeys the ATA  specifica-
              tions.   This  is the default, unless the device has presets for
              ´-F´ in the device database.

              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 smartd 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 more recent Samsung disks (firmware revisions end-
              ing in "-23") the number of ATA errors reported is byte swapped.
              Enabling this option tells smartd to evaluate this  quantity  in
              byte-reversed order.

              Note  that  an explicit ´-F´ Directive will over-ride any preset
              values for ´-F´ (see the ´-P´ option below).


              [Please see the smartctl -F command-line option.]


       -v N,OPTION
              Modifies the labeling for Attribute N, for disks which use  non-
              standard  Attribute  definitions.   This is useful in connection
              with the Attribute tracking/reporting Directives.

              This Directive may appear multiple  times.  Valid  arguments  to
              this Directive are:

              9,minutes  - Raw Attribute number 9 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´.

              9,seconds  - Raw Attribute number 9 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´.

              9,halfminutes  -  Raw  Attribute number 9 is power-on time, mea-
              sured in units of 30 seconds.  This format is used by some  Sam-
              sung  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´.

              9,temp - Raw Attribute number 9 is the disk temperature in  Cel-
              sius.

              192,emergencyretractcyclect  -  Raw  Attribute number 192 is the
              Emergency Retract Cycle Count.

              193,loadunload - Raw Attribute number 193 contains  two  values.
              The  first is the number of load cycles.  The second is the num-
              ber 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.

              194,10xCelsius - Raw Attribute number 194 is ten times the  disk
              temperature  in  Celsius.   This  is  used by some Samsung disks
              (example: model SV1204H with RK100-13 firmware).

              194,unknown  -  Raw  Attribute  number  194  is  NOT  the   disk
              temperature,  and its interpretation is unknown. This is primar-
              ily useful for the -P (presets) Directive.

              198,offlinescanuncsectorct - Raw Attribute  number  198  is  the
              Offline Scan UNC Sector Count.

              200,writeerrorcount  -  Raw  Attribute  number  200 is the Write
              Error Count.

              201,detectedtacount - Raw Attribute number 201 is  the  Detected
              TA Count.

              220,temp  -  Raw Attribute number 220 is the disk temperature in
              Celsius.

              Note: a table of hard drive models, listing which Attribute cor-
              responds   to   temperature,   can  be  found  at:  http://core-
              dump.free.fr/linux/hddtemp.db

              N,raw8 - Print the  Raw  value  of  Attribute  N  as  six  8-bit
              unsigned  base-10 integers.  This may be useful for decoding the
              meaning of the Raw value.  The form ´N,raw8´ prints  Raw  values
              for  ALL  Attributes  in  this  form.   The  form  (for example)
              ´123,raw8´ only prints the Raw value for Attribute 123  in  this
              form.

              N,raw16  -  Print  the  Raw value of Attribute N as three 16-bit
              unsigned base-10 integers.  This may be useful for decoding  the
              meaning  of the Raw value.  The form ´N,raw16´ prints Raw values
              for ALL  Attributes  in  this  form.   The  form  (for  example)
              ´123,raw16´  only prints the Raw value for Attribute 123 in this
              form.

              N,raw48 - Print the  Raw  value  of  Attribute  N  as  a  48-bit
              unsigned  base-10  integer.  This may be useful for decoding the
              meaning of the Raw value.  The form ´N,raw48´ prints Raw  values
              for  ALL  Attributes  in  this  form.   The  form  (for example)
              ´123,raw48´ only prints the Raw value for Attribute 123 in  this
              form.


       -P TYPE
              Specifies  whether smartd should use any preset options that are
              available for this drive.  The valid arguments to this Directive
              are:

              use  -  use any presets that are available for this drive.  This
              is the default.

              ignore - do not use any presets for this drive.

              show - show the presets listed for this drive in the database.

              showall - show the presets that are available for all drives and
              then exit.

              [Please see the smartctl -P command-line option.]


       -a     Equivalent  to  turning on all of the following Directives: -H
              to check the SMART health status, -f  to  report  failures  of
              Usage (rather than Prefail) Attributes, -t to track changes in
              both Prefailure and Usage Attributes,  -l selftest  to  report
              increases  in  the number of Self-Test Log errors, -l error to
              report increases in the number of ATA errors, -C 197 to report
              nonzero values of the current pending sector count, and -U 198
              to report nonzero values of the offline pending sector count.

              Note that -a is the default for ATA devices.  If none  of  these
              other Directives is given, then -a is assumed.


       #      Comment: ignore the remainder of the line.

       \      Continuation  character:  if  this is the last non-white or non-
              comment character on a line, then the following line is  a  con-
              tinuation of the current one.

       If  you  are  not sure which Directives to use, I suggest experimenting
       for a few minutes with smartctl to see what  SMART  functionality  your
       disk(s)  support(s).   If you do not like voluminous syslog messages, a
       good choice of smartd configuration file Directives might be:
       -H -l selftest -l error -f.
       If you want more frequent information, use: -a.


       ADDITIONAL DETAILS ABOUT DEVICESCAN
              If the first non-comment entry in the configuration file is  the
              text  string  DEVICESCAN  in  capital  letters, then smartd will
              ignore any remaining lines in the configuration file,  and  will
              scan for devices.

              If  DEVICESCAN  is  not  followed by any Directives, then smartd
              will scan for both ATA and SCSI devices, and  will  monitor  all
              possible SMART properties of any devices that are found.

              DEVICESCAN  may  optionally be followed by any valid Directives,
              which will be applied to all devices that are found in the scan.
              For example
              DEVICESCAN -m root@example.com
              will  scan for all devices, and then monitor them.  It will send
              one email warning per device for any problems that are found.
              DEVICESCAN -d ata -m root@example.com
              will do the same, but restricts the scan to ATA devices only.
              DEVICESCAN -H -d ata -m root@example.com
              will do the same, but only monitors the SMART health  status  of
              the  devices,  (rather  than  the default -a, which monitors all
              SMART properties).


       EXAMPLES OF SHELL SCRIPTS FOR -M exec
              These are two examples of shell scripts that can  be  used  with
              the ´-M exec PATH´ Directive described previously.  The paths to
              these scripts and similar executables is the  PATH  argument  to
              the ´-M exec PATH´ Directive.

              Example  1:  This  script  is  for  use with ´-m ADDRESS -M exec
              PATH´.  It appends the output of smartctl -a to  the  output  of
              the smartd email warning message and sends it to ADDRESS.


              #! /bin/bash

              # Save the email message (STDIN) to a file:
              cat > /root/msg

              # Append the output of smartctl -a to the message:
              /usr/sbin/smartctl -a -d $SMART_DEVICETYPE $SMARTD_DEVICE >> /root/msg

              # Now email the message to the user at address ADD:
              /bin/mail -s "$SMARTD_SUBJECT" $SMARTD_ADDRESS < /root/msg

              Example  2:  This  script is for use with ´-m <nomailer> -M exec
              PATH´. It warns  all  users  about  a  disk  problem,  waits  30
              seconds, and then powers down the machine.


              #! /bin/bash

              # Warn all users of a problem
              wall Problem detected with disk:  "$SMARTD_DEVICESTRING"
              wall Warning message from smartd is:  "$SMARTD_MESSAGE"
              wall Shutting down machine in 30 seconds... 

              # Wait half a minute
              sleep 30

              # Power down the machine
              /sbin/shutdown -hf now

              Some  example  scripts  are  distributed  with the smartmontools
              package, in /usr/share/doc/smartmontools-5.33/examplescripts/.

              Please note that these scripts typically run  as  root,  so  any
              files  that  they  read/write should not be writable by ordinary
              users or reside in directories like /tmp that  are  writable  by
              ordinary users and may expose your system to symlink attacks.

              As  previously  described,  if  the  scripts  write to STDOUT or
              STDERR, this is interpreted as  indicating  that  there  was  an
              internal error within the script, and a snippet of STDOUT/STDERR
              is logged to SYSLOG.  The remainder is flushed.




NOTES

       smartd will make log entries at loglevel  LOG_INFO  if  the  Normalized
       SMART  Attribute values have changed, as reported using the -t, -p,
       or -u Directives. For example:
       Device: /dev/hda, SMART Attribute: 194 Temperature_Celsius changed from 94 to 93
       Note that in this message, the value given is the ´Normalized´ not  the
       ´Raw´  Attribute  value  (the disk temperature in this case is about 22
       Celsius).  The -R and -r Directives modify this behavior,  so  that
       the information is printed with the Raw values as well, for example:
       Device: /dev/hda, SMART Attribute: 194 Temperature_Celsius changed from 94 [Raw 22] to 93 [Raw 23]
       Here  the  Raw values are the actual disk temperatures in Celsius.  The
       way in which the Raw values are printed, and the names under which  the
       Attributes  are  reported,  is governed by the various -v Num,Descrip-
       tion Directives described previously.

       Please see the smartctl manual page for further explanation of the dif-
       ferences between Normalized and Raw Attribute values.

       smartd  will make log entries at loglevel LOG_CRIT if a SMART Attribute
       has failed, for example:
       Device: /dev/hdc, Failed SMART Attribute: 5 Reallocated_Sector_Ct
        This loglevel  is  used  for  reporting  enabled  by  the  -H,  -f,
       -l selftest,  and -l error Directives. Entries reporting failure of
       SMART Prefailure Attributes should not be ignored: they mean  that  the
       disk is failing.  Use the smartctl utility to investigate.

       Under Solaris with the default /etc/syslog.conf configuration, messages
       below loglevel LOG_NOTICE will not be recorded.  Hence all smartd  mes-
       sages  with  loglevel  LOG_INFO  will  be lost.  If you want to use the
       existing daemon facility to log all messages from  smartd,  you  should
       change /etc/syslog.conf from:
              ...;daemon.notice;...        /var/adm/messages
       to read:
              ...;daemon.info;...          /var/adm/messages
       Alternatively, you can use a local facility to log messages: please see
       the smartd ’-l’ command-line option described above.

       On Cygwin and Windows, the log messages are written to the event log or
       to  a  file.  See  documentation  of the ’-l FACILITY’ option above for
       details.

       On Windows, the following built-in commands  can  be  used  to  control
       smartd, if running as a daemon:

       ´smartd status´ - check status

       ´smartd stop´ - stop smartd

       ´smartd reload´ - reread config file

       ´smartd restart´ - restart smartd

       ´smartd sigusr1´ - check disks now

       ´smartd sigusr2´ - toggle debug mode

       On WinNT4/2000/XP, smartd can also be run as a Windows service:

       ´smartd  install  [options]´ installs a service named "smartd" (display
       name "SmartD Service") using the command line  ´/installpath/smartd.exe
       --service [options]´.

       ´smartd remove´ can later be used to remove the service entry from reg-
       istry.

       Upon startup, the smartd service changes the working directory  to  its
       own  installation  path. If smartd.conf and blat.exe are stored in this
       directory, no ´-c´ option and ´-M exec´ directive is needed.

       The debug mode (´-d´, ´-q onecheck´) does not work if smartd is running
       as service.

       The  service  can be controlled as usual with Windows commands ´net´ or
       ´sc´ (´net start smartd´, ´net stop smartd´).

       Pausing the service (´net pause smartd´) sets the interval between disk
       checks (´-i N´) to infinite.

       Continuing the paused service (´net continue smartd´) resets the inter-
       val and rereads the configuration file immediately (like SIGHUP):

       Continuing a still running service (´net continue smartd´ without  pre-
       ceding  ´net  pause  smartd´)  does not reread configuration but checks
       disks immediately (like SIGUSR1).



LOG TIMESTAMP TIMEZONE

       When smartd makes log entries, these are time-stamped.  The time stamps
       are  in  the  computer’s  local time zone, which is generally set using
       either the environment variable ´TZ´ or using a time-zone file such  as
       /etc/localtime.   You  may  wish to change the timezone while smartd is
       running (for example, if you carry a laptop  to  a  new  time-zone  and
       don’t  reboot  it).  Due to a bug in the tzset(3) function of many unix
       standard C libraries, the time-zone stamps of smartd might not  change.
       For some systems, smartd will work around this problem if the time-zone
       is set using /etc/localtime. The work-around fails if the time-zone  is
       set using the ´TZ´ variable (or a file that it points to).




RETURN VALUES

       The return value (exit status) of smartd can have the following values:

       0:     Daemon startup successful, or smartd was killed by a SIGTERM (or
              in debug mode, a SIGQUIT).

       1:     Commandline did not parse.

       2:     There was a syntax error in the config file.

       3:     Forking the daemon failed.

       4:     Couldn´t create PID file.

       5:     Config  file  does  not exist (only returned in conjunction with
              the ´-c´ option).

       6:     Config file exists, but cannot be read.

       8:     smartd ran out of memory during startup.

       9:     A compile time constant of smartd was too small.   This  can  be
              caused  by  an  excessive  number  of  disks,  or  by  lines  in
              /etc/smartd.conf that are too long.  Please report this  problem
              to  smartmontools-support@lists.sourceforge.net.

       10     An inconsistency was found in smartd´s internal data structures.
              This should never happen.  It must be due to either a coding  or
              compiler bug.  Please report such failures to smartmontools-sup-
              port@lists.sourceforge.net.

       16:    A device explicitly listed in /etc/smartd.conf  can´t  be  moni-
              tored.

       17:    smartd didn´t find any devices to monitor.

       254:   When in daemon mode, smartd received a SIGINT or SIGQUIT.  (Note
              that in debug mode, SIGINT has the same effect  as  SIGHUP,  and
              makes smartd reload its configuration file. SIGQUIT has the same
              effect as SIGTERM and causes smartd to exit with zero exit  sta-
              tus.

       132 and above
              smartd  was  killed  by  a  signal that is not explicitly listed
              above.  The exit status is then 128 plus the signal number.  For
              example  if smartd is killed by SIGKILL (signal 9) then the exit
              status is 137.




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)
       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)
       Keiji Sawada (Solaris ATA interface)
       Sergey Svishchev (NetBSD interface)
       David Snyder and Sergey Svishchev (OpenBSD interface)
       Phil Williams (User interface and drive database)
       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.conf(5), smartctl(8), syslogd(8), syslog.conf(5),  badblocks(8),
       ide-smart(8), regex(7).



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.php?sid=6983 online.

       If  you  would  like  to understand better how SMART works, and what it
       does, a good place to start is  Section 8.41 of the ´AT Attachment with
       Packet  Interface-5´  (ATA/ATAPI-5)  specification.  This documents the
       SMART functionality which the smartmontools  utilities  provide  access
       to.     You    can    find    Revision    1   of   this   document   at
       http://www.t13.org/project/d1321r1c.pdf .

       Future versions of the specifications  (ATA/ATAPI-6  and  ATA/ATAPI-7),
       and  later revisions (2, 3) of the ATA/ATAPI-5 specification are avail-
       able from http://www.t13.org/#FTP_site .

       The functioning of SMART was originally defined by the SFF-8035i  revi-
       sion 2 and the SFF-8055i revision 1.4 specifications.  These are publi-
       cations of the Small Form Factors (SFF) Committee.  Links to these doc-
       uments may be found in the References section of the smartmontools home
       page at http://smartmontools.sourceforge.net/ .



CVS ID OF THIS PAGE:

       $Id: smartd.8.in,v 1.87 2004/09/07 13:01:51 ballen4705 Exp $



smartmontools-5.33                2004/09/10                         SMARTD(8)

Man(1) output converted with man2html