File:  [ELWIX - Embedded LightWeight unIX -] / embedaddon / smartmontools / smartd.8.in
Revision 1.1.1.3 (vendor branch): download - view: text, annotated - select for diffs - revision graph
Mon Jul 22 01:17:36 2013 UTC (10 years, 11 months ago) by misho
Branches: smartmontools, elwix, MAIN
CVS tags: v6_2, v6_1p0, v6_1, HEAD
6.1

    1: .ig
    2: Copyright (C) 2002-10 Bruce Allen <smartmontools-support@lists.sourceforge.net>
    3: Copyright (C) 2004-13 Christian Franke <smartmontools-support@lists.sourceforge.net>
    4: 
    5: $Id: smartd.8.in,v 1.1.1.3 2013/07/22 01:17:36 misho Exp $
    6: 
    7: This program is free software; you can redistribute it and/or modify
    8: it under the terms of the GNU General Public License as published by
    9: the Free Software Foundation; either version 2, or (at your option)
   10: any later version.
   11: 
   12: You should have received a copy of the GNU General Public License
   13: (for example COPYING); If not, see <http://www.gnu.org/licenses/>.
   14: 
   15: This code was originally developed as a Senior Thesis by Michael Cornwell
   16: at the Concurrent Systems Laboratory (now part of the Storage Systems
   17: Research Center), Jack Baskin School of Engineering, University of
   18: California, Santa Cruz. http://ssrc.soe.ucsc.edu/
   19: 
   20: ..
   21: .TH SMARTD 8 CURRENT_SVN_DATE CURRENT_SVN_VERSION CURRENT_SVN_DATE
   22: .SH NAME
   23: \fBsmartd\fP \- SMART Disk Monitoring Daemon
   24: 
   25: .SH SYNOPSIS
   26: .B smartd [options]
   27: 
   28: .\" %IF NOT OS Windows
   29: .SH FULL PATH
   30: .B /usr/local/sbin/smartd
   31: 
   32: .\" %ENDIF NOT OS Windows
   33: .SH PACKAGE VERSION
   34: CURRENT_SVN_VERSION CURRENT_SVN_DATE CURRENT_SVN_REV
   35: 
   36: .SH DESCRIPTION
   37: .\" %IF NOT OS ALL
   38: .\"! [This man page is generated for the OS_MAN_FILTER version of smartmontools.
   39: .\"! It does not contain info specific to other platforms.]
   40: .\"! .PP
   41: .\" %ENDIF NOT OS ALL
   42: \fBsmartd\fP is a daemon that monitors the Self-Monitoring, Analysis and
   43: Reporting Technology (SMART) system built into most ATA/SATA and SCSI/SAS
   44: hard drives and solid-state drives.
   45: The purpose of SMART is to monitor the reliability of the hard drive
   46: and predict drive failures, and to carry out different types of drive
   47: self-tests.
   48: This version of \fBsmartd\fP is compatible with
   49: ACS-2, ATA8-ACS, ATA/ATAPI-7 and earlier standards
   50: (see \fBREFERENCES\fP below).
   51: 
   52: \fBsmartd\fP will attempt to enable SMART monitoring on ATA devices
   53: (equivalent to \fBsmartctl -s on\fP) and polls these and SCSI devices
   54: every 30 minutes (configurable), logging SMART errors and changes of
   55: SMART Attributes via the SYSLOG interface.  The default location for
   56: these SYSLOG notifications and warnings is system-dependent
   57: (typically \fB/var/log/messages\fP or \fB/var/log/syslog\fP).
   58: To change this default location, please see the \fB\'-l\'\fP
   59: command-line option described below.
   60: 
   61: In addition to logging to a file, \fBsmartd\fP can also be configured
   62: to send email warnings if problems are detected.  Depending upon the
   63: type of problem, you may want to run self-tests on the disk, back up
   64: the disk, replace the disk, or use a manufacturer\'s utility to force
   65: reallocation of bad or unreadable disk sectors.  If disk problems are
   66: detected, please see the \fBsmartctl\fP manual page and the
   67: \fBsmartmontools\fP web page/FAQ for further guidance.
   68: 
   69: If you send a \fBUSR1\fP signal to \fBsmartd\fP it will immediately
   70: check the status of the disks, and then return to polling the disks
   71: every 30 minutes. See the \fB\'\-i\'\fP option below for additional
   72: details.
   73: 
   74: \fBsmartd\fP can be configured at start-up using the configuration
   75: file \fB/usr/local/etc/smartd.conf\fP (Windows: \fBEXEDIR/smartd.conf\fP).
   76: If the configuration file is subsequently modified, \fBsmartd\fP
   77: can be told to re-read the configuration file by sending it a
   78: \fBHUP\fP signal, for example with the command:
   79: .fi
   80: \fBkillall -HUP smartd\fP.
   81: .fi
   82: .\" %IF OS Windows
   83: (Windows: See NOTES below.)
   84: .\" %ENDIF OS Windows
   85: 
   86: On startup, if \fBsmartd\fP finds a syntax error in the configuration
   87: file, it will print an error message and then exit. However if
   88: \fBsmartd\fP is already running, then is told with a \fBHUP\fP signal
   89: to re-read the configuration file, and then find a syntax error in
   90: this file, it will print an error message and then continue, ignoring
   91: the contents of the (faulty) configuration file, as if the \fBHUP\fP
   92: signal had never been received.
   93: 
   94: When \fBsmartd\fP is running in debug mode, the \fBINT\fP signal
   95: (normally generated from a shell with CONTROL-C) is treated in the
   96: same way as a \fBHUP\fP signal: it makes \fBsmartd\fP reload its
   97: configuration file. To exit \fBsmartd\fP use CONTROL-\e
   98: .\" %IF OS Windows
   99: (Windows: CONTROL-Break).
  100: .\" %ENDIF OS Windows
  101: 
  102: On startup, in the absence of the configuration file
  103: \fB/usr/local/etc/smartd.conf\fP, the \fBsmartd\fP daemon first scans for all
  104: devices that support SMART.  The scanning is done as follows:
  105: .\" %IF OS Linux
  106: .IP \fBLINUX:\fP 9
  107: Examine all entries \fB"/dev/hd[a-t]"\fP for IDE/ATA
  108: devices, and \fB"/dev/sd[a-z]"\fP, \fB"/dev/sd[a-c][a-z]"\fP
  109: for SCSI or SATA devices.
  110: Disks behind RAID controllers are not included.
  111: .\" %ENDIF OS Linux
  112: .\" %IF OS FreeBSD
  113: .IP \fBFREEBSD:\fP 9
  114: Authoritative list of disk devices is obtained from SCSI (CAM) and ATA subsystems.
  115: Disks behind RAID controllers are not included.
  116: .\" %ENDIF OS FreeBSD
  117: .\" %IF OS NetBSD OpenBSD
  118: .IP \fBNETBSD/OPENBSD:\fP 9
  119: Authoritative list of disk devices is obtained from sysctl 
  120: \'hw.disknames\'.
  121: .\" %ENDIF OS NetBSD OpenBSD
  122: .\" %IF OS Solaris
  123: .IP \fBSOLARIS:\fP 9
  124: Examine all entries \fB"/dev/rdsk/*s0"\fP for IDE/ATA and SCSI disk
  125: devices, and entries \fB"/dev/rmt/*"\fP for SCSI tape devices.
  126: .\" %ENDIF OS Solaris
  127: .\" %IF OS Darwin
  128: .IP \fBDARWIN:\fP 9
  129: The IOService plane is scanned for ATA block storage devices.
  130: .\" %ENDIF OS Darwin
  131: .\" %IF OS Windows Cygwin
  132: .IP \fBWINDOWS\fP: 9
  133: Examine all entries \fB"/dev/sd[a\-z]"\fP, \fB"/dev/sd[a\-c][a\-z]"\fP
  134: and \fB"/dev/sdd[a\-x]"\fP ("\\\\.\\PhysicalDrive[0\-127]") for
  135: IDE/(S)ATA and SCSI disk devices.
  136: 
  137: If a 3ware 9000 controller is installed, examine all entries
  138: \fB"/dev/sdX,N"\fP for the first logical drive (\'unit\'
  139: \fB"/dev/sdX"\fP) and all physical disks (\'ports\' \fB",N"\fP)
  140: detected behind this controller. Same for a second controller if present.
  141: 
  142: If directive \'\-d csmi\' or no \'\-d\' directive is specified,
  143: examine all entries \fB"/dev/csmi[0\-9],N"\fP for drives behind an Intel
  144: ICHxR controller with RST driver.
  145: 
  146: Disks behind Areca RAID controllers are not included.
  147: .\" %ENDIF OS Windows Cygwin
  148: .PP
  149: \fBsmartd\fP then monitors
  150: for \fIall\fP possible SMART errors (corresponding to the \fB\'\-a\'\fP
  151: Directive in the configuration file; see the \fBsmartd.conf\fP(5) man page).
  152: 
  153: .SH 
  154: OPTIONS
  155: 
  156: .TP
  157: .B \-A PREFIX, \-\-attributelog=PREFIX
  158: Writes \fBsmartd\fP attribute information (normalized and raw
  159: attribute values) to files \'PREFIX\'\'MODEL\-SERIAL.ata.csv\' or \'PREFIX\'\'VENDOR\-MODEL\-SERIAL.scsi.csv\'.  At each
  160: check cycle attributes are logged as a line of semicolon separated triplets
  161: of the form "attribute-ID;attribute-norm-value;attribute-raw-value;".
  162: For SCSI devices error counters and temperature recorded in the form "counter-name;counter-value;"
  163: Each line is led by a date string of the form "yyyy-mm-dd HH:MM:SS" (in UTC).
  164: 
  165: .\" %IF ENABLE_ATTRIBUTELOG
  166: If this option is not specified, attribute information is written to files
  167: \'/usr/local/var/lib/smartmontools/attrlog.MODEL\-SERIAL.ata.csv\'.
  168: To disable attribute log files, specify this option with an empty string
  169: argument: \'-A ""\'.
  170: .\" %ENDIF ENABLE_ATTRIBUTELOG
  171: MODEL and SERIAL are build from drive identify information, invalid
  172: characters are replaced by underline.
  173: 
  174: If the PREFIX has the form \'/path/dir/\' (e.g. \'/var/lib/smartd/\'), then
  175: files \'MODEL\-SERIAL.ata.csv\' are created in directory \'/path/dir\'.
  176: If the PREFIX has the form \'/path/name\' (e.g. \'/var/lib/misc/attrlog\-\'),
  177: then files 'nameMODEL\-SERIAL.ata.csv' are created in directory '/path/'.
  178: The path must be absolute, except if debug mode is enabled.
  179: .TP
  180: .B \-B [+]FILE, \-\-drivedb=[+]FILE
  181: [ATA only] Read the drive database from FILE.  The new database replaces
  182: the built in database by default.  If \'+\' is specified, then the new entries
  183: prepend the built in entries.
  184: Please see the \fBsmartctl\fP(8) man page for further details.
  185: .TP
  186: .B \-c FILE, \-\-configfile=FILE
  187: Read \fBsmartd\fP configuration Directives from FILE, instead of from
  188: the default location \fB/usr/local/etc/smartd.conf\fP (Windows: \fBEXEDIR/smartd.conf\fP).
  189: If FILE does \fBnot\fP exist, then \fBsmartd\fP will print an error
  190: message and exit with nonzero status.  Thus, \'\-c /usr/local/etc/smartd.conf\'
  191: can be used to verify the existence of the default configuration file.
  192: 
  193: By using \'\-\' for FILE, the configuration is read from standard
  194: input. This is useful for commands like:
  195: .nf
  196: .B echo /dev/hdb \-m user@home \-M test | smartd \-c \- \-q onecheck
  197: .fi
  198: to perform quick and simple checks without a configuration file.
  199: .\" %IF ENABLE_CAPABILITIES
  200: .TP
  201: .B \-C, \-\-capabilities
  202: Use \fBcapabilities(7)\fP.
  203: 
  204: Warning: Mail notification does not work when used.
  205: .\" %ENDIF ENABLE_CAPABILITIES
  206: .TP
  207: .B \-d, \-\-debug
  208: Runs \fBsmartd\fP in "debug" mode. In this mode, it displays status
  209: information to STDOUT rather than logging it to SYSLOG and does not
  210: \fBfork(2)\fP into the background and detach from the controlling
  211: terminal.  In this mode, \fBsmartd\fP also prints more verbose
  212: information about what it is doing than when operating in "daemon"
  213: mode. In this mode, the \fBINT\fP signal (normally generated from a
  214: terminal with CONTROL-C) makes \fBsmartd\fP reload its configuration
  215: file.  Please use CONTROL-\e to exit
  216: .\" %IF OS Windows
  217: (Windows: CONTROL-Break).
  218: 
  219: [Windows only] The "debug" mode can be toggled by the command
  220: \fBsmartd sigusr2\fP. A new console for debug output is opened when
  221: debug mode is enabled.
  222: .\" %ENDIF OS Windows
  223: .TP
  224: .B \-D, \-\-showdirectives
  225: Prints a list (to STDOUT) of all the possible Directives which may
  226: appear in the configuration file /usr/local/etc/smartd.conf, and then exits.
  227: These Directives are also described later in this man page. They may
  228: appear in the configuration file following the device name.
  229: .TP
  230: .B \-h, \-\-help, \-\-usage
  231: Prints usage message to STDOUT and exits.
  232: .TP
  233: .B \-i N, \-\-interval=N
  234: Sets the interval between disk checks to \fIN\fP seconds, where
  235: \fIN\fP is a decimal integer.  The minimum allowed value is ten and
  236: the maximum is the largest positive integer that can be represented on
  237: your system (often 2^31-1).  The default is 1800 seconds.
  238: 
  239: Note that the superuser can make \fBsmartd\fP check the status of the
  240: disks at any time by sending it the \fBSIGUSR1\fP signal, for example
  241: with the command:
  242: .nf
  243: .B kill -SIGUSR1 <pid>
  244: .fi
  245: where \fB<pid>\fP is the process id number of \fBsmartd\fP.  One may
  246: also use:
  247: .nf
  248: .B killall -USR1 smartd
  249: .fi
  250: for the same purpose.
  251: .fi
  252: .\" %IF OS Windows
  253: (Windows: See NOTES below.)
  254: .\" %ENDIF OS Windows
  255: .TP
  256: .B \-l FACILITY, \-\-logfacility=FACILITY
  257: Uses syslog facility FACILITY to log the messages from \fBsmartd\fP.
  258: Here FACILITY is one of \fIlocal0\fP, \fIlocal1\fP, ..., \fIlocal7\fP,
  259: or \fIdaemon\fP [default].  If this command-line option is not used,
  260: then by default messages from \fBsmartd\fP are logged to the facility
  261: \fIdaemon\fP.
  262: 
  263: If you would like to have \fBsmartd\fP messages logged somewhere other
  264: than the default location, this can typically be accomplished with
  265: (for example) the following steps:
  266: .RS 7
  267: .IP \fB[1]\fP 4
  268: Modify the script that starts \fBsmartd\fP to include the \fBsmartd\fP
  269: command-line argument \'\-l local3\'.  This tells \fBsmartd\fP to log its
  270: messages to facility \fBlocal3\fP.
  271: .IP \fB[2]\fP 4
  272: Modify the \fBsyslogd\fP configuration file (typically
  273: \fB/etc/syslog.conf\fP) by adding a line of the form:
  274: .nf
  275: \fBlocal3.* /var/log/smartd.log\fP
  276: .fi
  277: This tells \fBsyslogd\fP to log all the messages from facility \fBlocal3\fP to
  278: the designated file: /var/log/smartd.log.
  279: .IP \fB[3]\fP 4
  280: Tell \fBsyslogd\fP to re-read its configuration file, typically by
  281: sending the \fBsyslogd\fP process a \fBSIGHUP\fP hang-up signal.
  282: .IP \fB[4]\fP 4
  283: Start (or restart) the \fBsmartd\fP daemon.
  284: .RE
  285: .\"  The following two lines are a workaround for a man2html bug.  Please leave them.
  286: .\" They define a non-existent option; useful because man2html can't correctly reset the margins.
  287: .TP
  288: .B \&
  289: For more detailed information, please refer to the man pages for
  290: \fBsyslog.conf\fP, \fBsyslogd\fP, and \fBsyslog\fP.  You may also want
  291: to modify the log rotation configuration files; see the man pages for
  292: \fBlogrotate\fP and examine your system\'s /etc/logrotate.conf file.
  293: .\" %IF OS Cygwin
  294: 
  295: Cygwin: If no \fBsyslogd\fP is running, the \'\-l\' option has no effect.
  296: In this case, all \fBsyslog\fP messages are written to Windows event log.
  297: .\" %ENDIF OS Cygwin
  298: .\" %IF OS Windows
  299: 
  300: Windows: Some \fBsyslog\fP functionality is implemented
  301: internally in \fBsmartd\fP as follows: If no \'\-l\' option
  302: (or \'\-l daemon\') is specified, messages are written to Windows
  303: event log or to file \fB./smartd.log\fP if event log is not available
  304: (access denied). By specifying other values of FACILITY,
  305: log output is redirected as follows:
  306: \'\-l local0\' to file \fB./smartd.log\fP,
  307: \'\-l local1\' to standard output (redirect with \'>\' to any file),
  308: \'\-l local2\' to standard error,
  309: \'\-l local[3-7]\': to file \fB./smartd[1-5].log\fP.
  310: .\" %ENDIF OS Windows
  311: .TP
  312: .B \-n, \-\-no\-fork
  313: Do not fork into background; this is useful when executed from modern
  314: init methods like initng, minit or supervise.
  315: .\" %IF OS Cygwin
  316: 
  317: On Cygwin, this allows running \fBsmartd\fP as service via cygrunsrv,
  318: see NOTES below.
  319: .\" %ENDIF OS Cygwin
  320: .\" %IF OS Windows
  321: 
  322: On Windows, this option is not available, use \'\-\-service\' instead.
  323: .\" %ENDIF OS Windows
  324: .TP
  325: .B \-p NAME, \-\-pidfile=NAME
  326: Writes pidfile \fINAME\fP containing the \fBsmartd\fP Process ID
  327: number (PID).  To avoid symlink attacks make sure the directory to
  328: which pidfile is written is only writable for root.  Without this
  329: option, or if the \-\-debug option is given, no PID file is written on
  330: startup.  If \fBsmartd\fP is killed with a maskable signal then the
  331: pidfile is removed.
  332: .TP
  333: .B \-q WHEN, \-\-quit=WHEN
  334: Specifies when, if ever, \fBsmartd\fP should exit.  The valid
  335: arguments are to this option are:
  336: 
  337: .I nodev
  338: \- Exit if there are no devices to monitor, or if any errors are found
  339: at startup in the configuration file.  This is the default.
  340: 
  341: .I errors
  342: \- Exit if there are no devices to monitor, or if any errors are found
  343: in the configuration file /usr/local/etc/smartd.conf at startup or whenever it
  344: is reloaded.
  345: 
  346: .I nodevstartup
  347: \- Exit if there are no devices to monitor at startup.  But continue
  348: to run if no devices are found whenever the configuration file is
  349: reloaded.
  350: 
  351: .I never
  352: \- Only exit if a fatal error occurs (no remaining system memory,
  353: invalid command line arguments). In this mode, even if there are no
  354: devices to monitor, or if the configuration file
  355: \fB/usr/local/etc/smartd.conf\fP has errors, \fBsmartd\fP will continue to run,
  356: waiting to load a configuration file listing valid devices.
  357: 
  358: .I onecheck
  359: \- Start \fBsmartd\fP in debug mode, then register devices, then check
  360: device\'s SMART status once, and then exit with zero exit status if all
  361: of these steps worked correctly.
  362: 
  363: This last option is intended for \'distribution-writers\' who want to
  364: create automated scripts to determine whether or not to automatically
  365: start up \fBsmartd\fP after installing smartmontools.  After starting
  366: \fBsmartd\fP with this command-line option, the distribution\'s install
  367: scripts should wait a reasonable length of time (say ten seconds).  If
  368: \fBsmartd\fP has not exited with zero status by that time, the script
  369: should send \fBsmartd\fP a SIGTERM or SIGKILL and assume that
  370: \fBsmartd\fP will not operate correctly on the host.  Conversely, if
  371: \fBsmartd\fP exits with zero status, then it is safe to run
  372: \fBsmartd\fP in normal daemon mode. If \fBsmartd\fP is unable to
  373: monitor any devices or encounters other problems then it will return
  374: with non-zero exit status.
  375: 
  376: .I showtests
  377: \- Start \fBsmartd\fP in debug mode, then register devices, then write
  378: a list of future scheduled self tests to stdout, and then exit with zero
  379: exit status if all of these steps worked correctly.
  380: Device's SMART status is not checked.
  381: 
  382: This option is intended to test whether the '\-s REGEX' directives in
  383: smartd.conf will have the desired effect. The output lists the next test
  384: schedules, limited to 5 tests per type and device. This is followed by a
  385: summary of all tests of each device within the next 90 days.
  386: .TP
  387: .B \-r TYPE, \-\-report=TYPE
  388: Intended primarily to help
  389: .B smartmontools
  390: developers understand the behavior of
  391: .B smartmontools
  392: on non-conforming or poorly-conforming hardware.  This option reports
  393: details of
  394: \fBsmartd\fP
  395: transactions with the device.  The option can be used multiple times.
  396: When used just once, it shows a record of the ioctl() transactions
  397: with the device.  When used more than once, the detail of these ioctl()
  398: transactions are reported in greater detail.  The valid arguments to
  399: this option are:
  400: 
  401: .I ioctl
  402: \- report all ioctl() transactions.
  403: 
  404: .I ataioctl
  405: \- report only ioctl() transactions with ATA devices.
  406: 
  407: .I scsiioctl
  408: \- report only ioctl() transactions with SCSI devices.
  409: 
  410: Any argument may include a positive integer to specify the level of
  411: detail that should be reported.  The argument should be followed by a
  412: comma then the integer with no spaces.  For example, \fIataioctl,2\fP
  413: The default level is 1, so \'\-r ataioctl,1\' and \'\-r ataioctl\' are
  414: equivalent.
  415: .TP
  416: .B \-s PREFIX, \-\-savestates=PREFIX
  417: Reads/writes \fBsmartd\fP state information from/to files
  418: \'PREFIX\'\'MODEL\-SERIAL.ata.state\' or \'PREFIX\'\'VENDOR\-MODEL\-SERIAL.scsi.state\'. 
  419: This preserves SMART attributes, drive min and max temperatures (\-W directive),
  420: info about last sent warning email
  421: (\-m directive), and the time of next check of the self-test REGEXP
  422: (\-s directive) across boot cycles.
  423: 
  424: .\" %IF ENABLE_SAVESTATES
  425: If this option is not specified, state information is maintained in files
  426: \'/usr/local/var/lib/smartmontools/smartd.MODEL\-SERIAL.ata.state\' for ATA devices and
  427: \'/usr/local/var/lib/smartmontools/smartd.VENDOR\-MODEL\-SERIAL.scsi.state\' for SCSI devices.
  428: To disable state files, specify this option with an empty string
  429: argument: \'\-s ""\'.
  430: .\" %ENDIF ENABLE_SAVESTATES
  431: MODEL and SERIAL are build from drive identify information, invalid
  432: characters are replaced by underline.
  433: 
  434: If the PREFIX has the form \'/path/dir/\' (e.g. \'/var/lib/smartd/\'), then
  435: files \'MODEL\-SERIAL.ata.state\' are created in directory \'/path/dir\'.
  436: If the PREFIX has the form \'/path/name\' (e.g. \'/var/lib/misc/smartd\-\'),
  437: then files 'nameMODEL\-SERIAL.ata.state' are created in directory '/path/'.
  438: The path must be absolute, except if debug mode is enabled.
  439: 
  440: The state information files are read on smartd startup. The files are
  441: always (re)written after reading the configuration file, before rereading
  442: the configuration file (SIGHUP), before smartd shutdown, and after a check
  443: forced by SIGUSR1. After a normal check cycle, a file is only rewritten if
  444: an important change (which usually results in a SYSLOG output) occurred.
  445: .TP
  446: .B \-w PATH, \-\-warnexec=PATH
  447: [NEW EXPERIMENTAL SMARTD FEATURE]
  448: Run the executable PATH instead of the default script when smartd
  449: needs to send warning messages.  PATH must point to an executable binary
  450: file or script.
  451: The default script is
  452: .\" %IF NOT OS Windows
  453: \fB/usr/local/etc/smartd_warning.sh\fP.
  454: .\" %ENDIF NOT OS Windows
  455: .\" %IF OS ALL
  456: (Windows: EXEDIR/smartd_warning.cmd)
  457: .\" %ENDIF OS ALL
  458: .\" %IF OS Windows
  459: .\"! \fBEXEDIR/smartd_warning.cmd\fP.
  460: .\" %ENDIF OS Windows
  461: .\" %IF OS Windows
  462: .TP
  463: .B \-\-service
  464: [Windows only] Enables \fBsmartd\fP to run as a Windows service.
  465: The option must be specified in the service command line as the first
  466: argument. It should not be used from console.
  467: See NOTES below for details.
  468: .\" %ENDIF OS Windows
  469: .TP
  470: .B \-V, \-\-version, \-\-license, \-\-copyright
  471: Prints version, copyright, license, home page and SVN revision
  472: information for your copy of \fBsmartd\fP to STDOUT and then exits.
  473: Please include this information if you are reporting bugs or problems.
  474: 
  475: .SH EXAMPLES
  476: 
  477: .B
  478: smartd
  479: .fi
  480: Runs the daemon in forked mode. This is the normal way to run
  481: \fBsmartd\fP.
  482: Entries are logged to SYSLOG.
  483: 
  484: .B
  485: smartd -d -i 30
  486: .fi
  487: Run in foreground (debug) mode, checking the disk status
  488: every 30 seconds.
  489: 
  490: .B
  491: smartd -q onecheck
  492: .fi
  493: Registers devices, and checks the status of the devices exactly
  494: once. The exit status (the bash
  495: .B $?
  496: variable) will be zero if all went well, and nonzero if no devices
  497: were detected or some other problem was encountered.
  498: 
  499: .fi 
  500: Note that \fBsmartmontools\fP provides a start-up script in
  501: \fB/usr/local/etc/rc.d/init.d/smartd\fP which is responsible for starting and
  502: stopping the daemon via the normal init interface.  Using this script,
  503: you can start \fBsmartd\fP by giving the command:
  504: .nf
  505: .B /usr/local/etc/rc.d/init.d/smartd start
  506: .fi
  507: and stop it by using the command:
  508: .nf
  509: .B /usr/local/etc/rc.d/init.d/smartd stop
  510: .fi
  511: .SH CONFIGURATION
  512: The syntax of the smartd.conf(5) file is discussed separately.
  513: .SH NOTES
  514: \fBsmartd\fP
  515: will make log entries at loglevel 
  516: .B LOG_INFO
  517: if the Normalized SMART Attribute values have changed, as reported using the
  518: .B \'\-t\', \'\-p\',
  519: or
  520: .B \'\-u\'
  521: Directives. For example:
  522: .nf
  523: .B \'Device: /dev/hda, SMART Attribute: 194 Temperature_Celsius changed from 94 to 93\'
  524: .fi
  525: Note that in this message, the value given is the \'Normalized\' not the \'Raw\' 
  526: Attribute value (the disk temperature in this case is about 22
  527: Celsius).  The 
  528: .B \'-R\'
  529: and 
  530: .B \'-r\'
  531: Directives modify this behavior, so that the information is printed
  532: with the Raw values as well, for example:
  533: .nf
  534: .B \'Device: /dev/hda, SMART Attribute: 194 Temperature_Celsius changed from 94 [Raw 22] to 93 [Raw 23]\'
  535: .fi
  536: Here the Raw values are the actual disk temperatures in Celsius.  The
  537: way in which the Raw values are printed, and the names under which the
  538: Attributes are reported, is governed by the various
  539: .B \'-v Num,Description\'
  540: Directives described previously.
  541: 
  542: Please see the
  543: .B smartctl
  544: manual page for further explanation of the differences between
  545: Normalized and Raw Attribute values.
  546: 
  547: \fBsmartd\fP
  548: will make log entries at loglevel
  549: .B LOG_CRIT
  550: if a SMART Attribute has failed, for example:
  551: .nf
  552: .B \'Device: /dev/hdc, Failed SMART Attribute: 5 Reallocated_Sector_Ct\'
  553: .fi
  554:  This loglevel is used for reporting enabled by the
  555: .B \'\-H\', \-f\', \'\-l\ selftest\',
  556: and
  557: .B \'\-l\ error\'
  558: Directives. Entries reporting failure of SMART Prefailure Attributes
  559: should not be ignored: they mean that the disk is failing.  Use the
  560: .B smartctl
  561: utility to investigate. 
  562: 
  563: .\" %IF OS Solaris
  564: Under Solaris with the default \fB/etc/syslog.conf\fP configuration,
  565: messages below loglevel \fBLOG_NOTICE\fP will \fBnot\fP be recorded.
  566: Hence all \fBsmartd\fP messages with loglevel \fBLOG_INFO\fP will be
  567: lost.  If you want to use the existing daemon facility to log all
  568: messages from \fBsmartd\fP, you should change \fB/etc/syslog.conf\fP
  569: from:
  570: .nf
  571:        ...;daemon.notice;...        /var/adm/messages
  572: .fi
  573: to read:
  574: .nf
  575:        ...;daemon.info;...          /var/adm/messages
  576: .fi
  577: Alternatively, you can use a local facility to log messages: please
  578: see the \fBsmartd\fP '\-l' command-line option described above.
  579: 
  580: .\" %ENDIF OS Solaris
  581: .\" %IF OS Cygwin
  582: The Cygwin Version of \fBsmartd\fP can be run as a service via the
  583: cygrunsrv tool. The start-up script provides Cygwin-specific commands
  584: to install and remove the service:
  585: .nf
  586: .B /usr/local/etc/rc.d/init.d/smartd install [options]
  587: .B /usr/local/etc/rc.d/init.d/smartd remove
  588: .fi
  589: The service can be started and stopped by the start-up script as usual
  590: (see \fBEXAMPLES\fP above).
  591: 
  592: .\" %ENDIF OS Cygwin
  593: .\" %IF OS Windows
  594: On Windows, the log messages are written to the event log or to a file.
  595: See documentation of the '\-l FACILITY' option above for details.
  596: 
  597: On Windows, the following built-in commands can be used to control
  598: \fBsmartd\fP, if running as a daemon:
  599: 
  600: \'\fBsmartd status\fP\' \- check status
  601: 
  602: \'\fBsmartd stop\fP\' \- stop smartd
  603: 
  604: \'\fBsmartd reload\fP\' \- reread config file
  605: 
  606: \'\fBsmartd restart\fP\' \- restart smartd
  607: 
  608: \'\fBsmartd sigusr1\fP\' \- check disks now
  609: 
  610: \'\fBsmartd sigusr2\fP\' \- toggle debug mode
  611: 
  612: The Windows Version of \fBsmartd\fP has buildin support for services:
  613: 
  614: \'\fBsmartd install [options]\fP\' installs a service
  615: named "smartd" (display name "SmartD Service") using the command line
  616: \'/INSTALLPATH/smartd.exe \-\-service [options]\'.
  617: This also installs smartd.exe as a event message file for the Windows
  618: event viewer.
  619: 
  620: \'\fBsmartd remove\fP\' can later be used to remove the service and
  621: event message entries from the registry.
  622: 
  623: Upon startup, the smartd service changes the working directory
  624: to its own installation path. If smartd.conf and blat.exe are stored
  625: in this directory, no \'-c\' option and \'-M exec\' directive is needed.
  626: 
  627: The debug mode (\'\-d\', \'\-q onecheck\') does not work if smartd is
  628: running as service.
  629: 
  630: The service can be controlled as usual with Windows commands \'net\'
  631: or \'sc\' (\'\fBnet start smartd\fP\', \'\fBnet stop smartd\fP\').
  632: 
  633: Pausing the service (\'\fBnet pause smartd\fP\') sets the interval between
  634: disk checks (\'\-i N\') to infinite.
  635: 
  636: Continuing the paused service (\'\fBnet continue smartd\fP\') resets the
  637: interval and rereads the configuration file immediately (like \fBSIGHUP\fP):
  638: 
  639: Continuing a still running service (\'\fBnet continue smartd\fP\' without
  640: preceding \'\fBnet pause smartd\fP\') does not reread configuration but
  641: checks disks immediately (like \fBSIGUSR1\fP).
  642: 
  643: .\" %ENDIF OS Windows
  644: .SH LOG TIMESTAMP TIMEZONE
  645: 
  646: When \fBsmartd\fP makes log entries, these are time-stamped.  The time
  647: stamps are in the computer's local time zone, which is generally set
  648: using either the environment variable \'\fBTZ\fP\' or using a
  649: time-zone file such as \fB/etc/localtime\fP.  You may wish to change
  650: the timezone while \fBsmartd\fP is running (for example, if you carry
  651: a laptop to a new time-zone and don't reboot it).  Due to a bug in the
  652: \fBtzset(3)\fP function of many unix standard C libraries, the
  653: time-zone stamps of \fBsmartd\fP might not change.  For some systems,
  654: \fBsmartd\fP will work around this problem \fIif\fP the time-zone is
  655: set using \fB/etc/localtime\fP. The work-around \fIfails\fP if the
  656: time-zone is set using the \'\fBTZ\fP\' variable (or a file that it
  657: points to).
  658: 
  659: 
  660: .SH RETURN VALUES
  661: The return value (exit status) of 
  662: \fBsmartd\fP
  663: can have the following values:
  664: .TP
  665: .B 0:
  666: Daemon startup successful, or \fBsmartd\fP was killed by a SIGTERM (or in debug mode, a SIGQUIT).
  667: .TP
  668: .B 1:
  669: Commandline did not parse.
  670: .TP
  671: .B 2:
  672: There was a syntax error in the config file.
  673: .TP
  674: .B 3:
  675: Forking the daemon failed.
  676: .TP
  677: .B 4:
  678: Couldn\'t create PID file.
  679: .TP
  680: .B 5:
  681: Config file does not exist (only returned in conjunction with the \'\-c\' option).
  682: .TP
  683: .B 6:
  684: Config file exists, but cannot be read.
  685: .TP
  686: .B 8:
  687: \fBsmartd\fP
  688: ran out of memory during startup.
  689: .TP
  690: .B 9:
  691: A compile time constant of\fB smartd\fP was too small.  This can be caused by an
  692: excessive number of disks, or by lines in \fB /usr/local/etc/smartd.conf\fP that are too long.
  693: Please report this problem to \fB smartmontools-support@lists.sourceforge.net\fP.
  694: .TP
  695: .B 10:
  696: An inconsistency was found in \fBsmartd\fP\'s internal data
  697: structures. This should never happen.  It must be due to either a
  698: coding or compiler bug.  \fIPlease\fP report such failures to
  699: smartmontools-support@lists.sourceforge.net.
  700: .TP
  701: .B 16:
  702: A device explicitly listed in
  703: .B /usr/local/etc/smartd.conf
  704: can\'t be monitored.
  705: .TP
  706: .B 17:
  707: \fBsmartd\fP
  708: didn\'t find any devices to monitor.
  709: .TP
  710: .B 254:
  711: When in daemon mode,
  712: \fBsmartd\fP
  713: received a SIGINT or SIGQUIT.  (Note that in debug mode, SIGINT has
  714: the same effect as SIGHUP, and makes \fBsmartd\fP reload its
  715: configuration file. SIGQUIT has the same effect as SIGTERM and causes
  716: \fBsmartd\fP to exit with zero exit status.
  717: .TP
  718: .B 132 and above
  719: \fBsmartd\fP
  720: was killed by a signal that is not explicitly listed above.  The exit
  721: status is then 128 plus the signal number.  For example if
  722: \fBsmartd\fP
  723: is killed by SIGKILL (signal 9) then the exit status is 137.
  724: 
  725: .PP
  726: .SH AUTHORS
  727: \fBBruce Allen\fP
  728: .br
  729: University of Wisconsin \- Milwaukee Physics Department
  730: .br
  731: \fBChristian Franke\fP (Windows interface, C++ redesign, most enhancements
  732: since 2009)
  733: .br
  734: \fBsmartmontools\-support@lists.sourceforge.net\fP
  735: 
  736: .PP
  737: .SH CONTRIBUTORS
  738: The following have made large contributions to smartmontools:
  739: .nf
  740: \fBCasper Dik\fP (Solaris SCSI interface)
  741: \fBDouglas Gilbert\fP (SCSI subsystem)
  742: \fBGuido Guenther\fP (Autoconf/Automake packaging)
  743: \fBGeoffrey Keating\fP (Darwin ATA interface)
  744: \fBEduard Martinescu\fP (FreeBSD interface)
  745: \fBFr\['e]d\['e]ric L. W. Meunier\fP (Web site and Mailing list)
  746: \fBGabriele Pohl\fP (Web site and Wiki, conversion from CVS to SVN)
  747: \fBKeiji Sawada\fP (Solaris ATA interface)
  748: \fBManfred Schwarb\fP (Drive database)
  749: \fBSergey Svishchev\fP (NetBSD interface)
  750: \fBDavid Snyder and Sergey Svishchev\fP (OpenBSD interface)
  751: \fBPhil Williams\fP (User interface and drive database)
  752: \fBShengfeng Zhou\fP (Linux/FreeBSD HighPoint RocketRAID interface)
  753: .fi
  754: Many other individuals have made smaller contributions and corrections.
  755: 
  756: .PP
  757: .SH CREDITS
  758: .fi
  759: This code was derived from the smartsuite package, written by Michael
  760: Cornwell, and from the previous UCSC smartsuite package.  It extends
  761: these to cover ATA-5 disks.  This code was originally developed as a
  762: Senior Thesis by Michael Cornwell at the Concurrent Systems Laboratory
  763: (now part of the Storage Systems Research Center), Jack Baskin School
  764: of Engineering, University of California, Santa
  765: Cruz. \fBhttp://ssrc.soe.ucsc.edu/\fP .
  766: .SH
  767: HOME PAGE FOR SMARTMONTOOLS: 
  768: .fi
  769: Please see the following web site for updates, further documentation, bug
  770: reports and patches: \fBhttp://smartmontools.sourceforge.net/\fP
  771: 
  772: .SH
  773: SEE ALSO:
  774: \fBsmartd.conf\fP(5), \fBsmartctl\fP(8), \fBsyslogd\fP(8),
  775: \fBsyslog.conf\fP(5), \fBbadblocks\fP(8), \fBide\-smart\fP(8), \fBregex\fP(7).
  776: 
  777: .SH
  778: REFERENCES FOR SMART
  779: .fi
  780: An introductory article about smartmontools is \fIMonitoring Hard
  781: Disks with SMART\fP, by Bruce Allen, Linux Journal, January 2004,
  782: pages 74-77. This is \fBhttp://www.linuxjournal.com/article/6983\fP
  783: online.
  784: 
  785: If you would like to understand better how SMART works, and what it
  786: does, a good place to start is with Sections 4.8 and 6.54 of the first
  787: volume of the \'AT Attachment with Packet Interface-7\' (ATA/ATAPI-7)
  788: specification Revision 4b.  This documents the SMART functionality which the
  789: \fBsmartmontools\fP utilities provide access to.
  790: 
  791: .fi
  792: The functioning of SMART was originally defined by the SFF-8035i
  793: revision 2 and the SFF-8055i revision 1.4 specifications.  These are
  794: publications of the Small Form Factors (SFF) Committee.
  795: 
  796: Links to these and other documents may be found on the Links page of the
  797: \fBsmartmontools\fP Wiki at
  798: \fBhttp://sourceforge.net/apps/trac/smartmontools/wiki/Links\fP .
  799: 
  800: .SH
  801: SVN ID OF THIS PAGE:
  802: $Id: smartd.8.in,v 1.1.1.3 2013/07/22 01:17:36 misho Exp $

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>