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