Annotation of embedaddon/smartmontools/smartd.conf.5.in, revision 1.1.1.1
1.1 misho 1: .ig
2: Copyright (C) 2002-10 Bruce Allen <smartmontools-support@lists.sourceforge.net>
3:
4: $Id: smartd.conf.5.in 3445 2011-10-12 21:53:02Z chrfranke $
5:
6: This program is free software; you can redistribute it and/or modify it
7: under the terms of the GNU General Public License as published by the Free
8: Software Foundation; either version 2, or (at your option) any later
9: version.
10:
11: You should have received a copy of the GNU General Public License (for
12: example COPYING); if not, write to the Free Software Foundation, Inc., 675
13: Mass Ave, Cambridge, MA 02139, USA.
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: .TH SMARTD.CONF 5 CURRENT_SVN_DATE CURRENT_SVN_VERSION CURRENT_SVN_DATE
21: .SH NAME
22: \fBsmartd.conf\fP \- SMART Disk Monitoring Daemon Configuration File\fP
23:
24: .\" %IF NOT OS Windows
25: .SH FULL PATH
26: .B /usr/local/etc/smartd.conf
27:
28: .\" %ENDIF NOT OS Windows
29: .SH PACKAGE VERSION
30: CURRENT_SVN_VERSION CURRENT_SVN_DATE CURRENT_SVN_REV
31:
32: .SH DESCRIPTION
33: .\" %IF NOT OS ALL
34: .\"! [This man page is generated for the OS_MAN_FILTER version of smartmontools.
35: .\"! It does not contain info specific to other platforms.]
36: .\"! .PP
37: .\" %ENDIF NOT OS ALL
38: \fB/usr/local/etc/smartd.conf\fP is the configuration file for the \fBsmartd\fP
39: daemon, which monitors the Self-Monitoring, Analysis and Reporting
40: Technology (SMART) system built into many ATA-3 and later ATA, IDE and
41: SCSI-3 hard drives.
42:
43: If the configuration file \fB/usr/local/etc/smartd.conf\fP is present,
44: \fBsmartd\fP reads it at startup, before \fBfork\fP(2)ing into the
45: background. If \fBsmartd\fP subsequently receives a \fBHUP\fP signal,
46: it will then re-read the configuration file. If \fBsmartd\fP is
47: running in debug mode, then an \fBINT\fP signal will also make it
48: re-read the configuration file. This signal can be generated by typing
49: \fB\<CONTROL-C\>\fP in the terminal window where \fBsmartd\fP is
50: running.
51:
52: .SH CONFIGURATION FILE /usr/local/etc/smartd.conf
53: In the absence of a configuration file
54: \fBsmartd\fP will try to open all available devices.
55: .\" %IF OS Linux
56: Ubder linux will try to open the 20 ATA devices
57: .B /dev/hd[a-t]
58: and the 26 SCSI devices
59: .B /dev/sd[a-z].
60: .\" %ENDIF OS Linux
61: .\" %IF OS FreeBSD
62: Under FreeBSD,
63: \fBsmartd\fP
64: will try to open all existing ATA/SATA devices (using ATA subsystem)
65: .B /dev/ad[0-9]+
66: and all existing SCSI/SAS/AHCI devices (using CAM subsystem).
67: .\" %ENDIF OS FreeBSD
68: .\" %IF OS NetBSD OpenBSD
69: Under NetBSD/OpenBSD,
70: \fBsmartd\fP
71: will try to open all existing ATA devices (with entries in /dev)
72: .B /dev/wd[0-9]+c
73: and all existing SCSI devices
74: .B /dev/sd[0-9]+c.
75: .\" %ENDIF OS NetBSD OpenBSD
76: .\" %IF OS Solaris
77: Under Solaris \fBsmartd\fP will try to open all entries \fB"/dev/rdsk/c?t?d?s?"\fP for IDE/ATA and SCSI disk
78: devices, and entries \fB"/dev/rmt/*"\fP for SCSI tape devices.
79: .\" %ENDIF OS Solaris
80: .\" %IF OS Windows
81: Under Windows \fBsmartd\fP will try to open all entries \fB"/dev/hd[a-j]"\fP ("\\\\.\\PhysicalDrive[0-9]")
82: for IDE/ATA devices on WinNT4/2000/XP, \fB"/dev/hd[a-d]"\fP
83: (bitmask from "\\\\.\\SMARTVSD") for IDE/ATA devices on Win95/98/98SE/ME,
84: and \fB"/dev/scsi[0-9][0-7]"\fP (ASPI adapter 0-9, ID 0-7) for SCSI
85: devices on all versions of Windows.
86: .\" %ENDIF OS Windows
87: .\" %IF OS Darwin
88: Under Darwin, \fBsmartd\fP will open any ATA block storage device.
89: .\" %ENDIF OS Darwin
90:
91: This can be annoying if you have an ATA or SCSI device that hangs or
92: misbehaves when receiving SMART commands. Even if this causes no
93: problems, you may be annoyed by the string of error log messages about
94: block-major devices that can\'t be found, and SCSI devices that can\'t
95: be opened.
96:
97: One can avoid this problem, and gain more control over the types of
98: events monitored by
99: \fBsmartd\fP,
100: by using the configuration file
101: .B /usr/local/etc/smartd.conf.
102: This file contains a list of devices to monitor, with one device per
103: line. An example file is included with the
104: .B smartmontools
105: distribution. You will find this sample configuration file in
106: \fB/usr/local/share/doc/smartmontools/\fP. For security, the configuration file
107: should not be writable by anyone but root. The syntax of the file is as
108: follows:
109: .IP \(bu 4
110: There should be one device listed per line, although you may have
111: lines that are entirely comments or white space.
112: .IP \(bu 4
113: Any text following a hash sign \'#\' and up to the end of the line is
114: taken to be a comment, and ignored.
115: .IP \(bu 4
116: Lines may be continued by using a backslash \'\e\' as the last
117: non-whitespace or non-comment item on a line.
118: .IP \(bu 4
119: Note: a line whose first character is a hash sign \'#\' is treated as
120: a white-space blank line, \fBnot\fP as a non-existent line, and will
121: \fBend\fP a continuation line.
122: .PP 0
123: .fi
124: Here is an example configuration file. It\'s for illustrative purposes
125: only; please don\'t copy it onto your system without reading to the end
126: of the
127: .B DIRECTIVES
128: Section below!
129:
130: .nf
131: .B ################################################
132: .B # This is an example smartd startup config file
133: .B # /usr/local/etc/smartd.conf for monitoring three
134: .B # ATA disks, three SCSI disks, six ATA disks
135: .B # behind two 3ware controllers, three SATA disks
136: .B # directly connected to the HighPoint Rocket-
137: .B # RAID controller, two SATA disks connected to
138: .B # the HighPoint RocketRAID controller via a pmport
139: .B # device, four SATA disks connected to an Areca
140: .B # RAID controller, and one SATA disk.
141: .B #
142: .nf
143: .B # First ATA disk on two different interfaces. On
144: .B # the second disk, start a long self-test every
145: .B # Sunday between 3 and 4 am.
146: .B #
147: .B \ \ /dev/hda -a -m admin@example.com,root@localhost
148: .B \ \ /dev/hdc -a -I 194 -I 5 -i 12 -s L/../../7/03
149: .B #
150: .nf
151: .B # SCSI disks. Send a TEST warning email to admin on
152: .B # startup.
153: .B #
154: .B \ \ /dev/sda
155: .B \ \ /dev/sdb -m admin@example.com -M test
156: .B #
157: .nf
158: .B # Strange device. It\'s SCSI. Start a scheduled
159: .B # long self test between 5 and 6 am Monday/Thursday
160: .B \ \ /dev/weird -d scsi -s L/../../(1|4)/05
161: .B #
162: .nf
163: .B # An ATA disk may appear as a SCSI device to the
164: .B # OS. If a SCSI to ATA Translation (SAT) layer
165: .B # is between the OS and the device then this can be
166: .B # flagged with the '-d sat' option. This situation
167: .B # may become common with SATA disks in SAS and FC
168: .B # environments.
169: .B \ \ /dev/sda -a -d sat
170: .B #
171: .nf
172: .\" %IF OS Linux
173: .B # Three disks connected to a MegaRAID controller
174: .B # Start short self-tests daily between 1-2, 2-3, and
175: .B # 3-4 am.
176: .B \ \ /dev/sda -d megaraid,0 -a -s S/../.././01
177: .B \ \ /dev/sda -d megaraid,1 -a -s S/../.././02
178: .B \ \ /dev/sda -d megaraid,2 -a -s S/../.././03
179: .B
180: .B #
181: .\" %ENDIF OS Linux
182: .nf
183: .B # Four ATA disks on a 3ware 6/7/8000 controller.
184: .B # Start short self-tests daily between midnight and 1am,
185: .B # 1-2, 2-3, and 3-4 am. Starting with the Linux 2.6
186: .B # kernel series, /dev/sdX is deprecated in favor of
187: .B # /dev/tweN. For example replace /dev/sdc by /dev/twe0
188: .B # and /dev/sdd by /dev/twe1.
189: .B \ \ /dev/sdc -d 3ware,0 -a -s S/../.././00
190: .B \ \ /dev/sdc -d 3ware,1 -a -s S/../.././01
191: .B \ \ /dev/sdd -d 3ware,2 -a -s S/../.././02
192: .B \ \ /dev/sdd -d 3ware,3 -a -s S/../.././03
193: .B #
194: .nf
195: .B # Two ATA disks on a 3ware 9000 controller.
196: .B # Start long self-tests Sundays between midnight and
197: .B # 1am and 2-3 am
198: .B \ \ /dev/twa0 -d 3ware,0 -a -s L/../../7/00
199: .B \ \ /dev/twa0 -d 3ware,1 -a -s L/../../7/02
200: .B #
201: .nf
202: .B # Two SATA (not SAS) disks on a 3ware 9750 controller.
203: .B # Start long self-tests Sundays between midnight and
204: .B # 1am and 2-3 am
205: .B \ \ /dev/twl0 -d 3ware,0 -a -s L/../../7/00
206: .B \ \ /dev/twl0 -d 3ware,1 -a -s L/../../7/02
207: .B #
208: .nf
209: .B # Three SATA disks on a HighPoint RocketRAID controller.
210: .B # Start short self-tests daily between 1-2, 2-3, and
211: .B # 3-4 am.
212: .\" %IF OS Linux
213: .B # under Linux
214: .B \ \ /dev/sde -d hpt,1/1 -a -s S/../.././01
215: .B \ \ /dev/sde -d hpt,1/2 -a -s S/../.././02
216: .B \ \ /dev/sde -d hpt,1/3 -a -s S/../.././03
217: .\" %ENDIF OS Linux
218: .\" %IF OS FreeBSD
219: .B # under FreeBSD
220: .B /dev/hptrr -d hpt,1/1 -a -s S/../.././01
221: .B /dev/hptrr -d hpt,1/2 -a -s S/../.././02
222: .B /dev/hptrr -d hpt,1/3 -a -s S/../.././03
223: .\" %ENDIF OS FreeBSD
224: .B #
225: .nf
226: .B # Two SATA disks connected to a HighPoint RocketRAID
227: .B # via a pmport device. Start long self-tests Sundays
228: .B # between midnight and 1am and 2-3 am.
229: .\" %IF OS Linux
230: .B # under Linux
231: .B \ \ /dev/sde -d hpt,1/4/1 -a -s L/../../7/00
232: .B \ \ /dev/sde -d hpt,1/4/2 -a -s L/../../7/02
233: .\" %ENDIF OS Linux
234: .\" %IF OS FreeBSD
235: .B # under FreeBSD
236: .B \ \ /dev/hptrr -d hpt,1/4/1 -a -s L/../../7/00
237: .B \ \ /dev/hptrr -d hpt,1/4/2 -a -s L/../../7/02
238: .B #
239: .\" %ENDIF OS FreeBSD
240: .nf
241: .B # Three SATA disks connected to an Areca
242: .B # RAID controller. Start long self-tests Sundays
243: .B # between midnight and 3 am.
244: .\" %IF OS Linux
245: .B \ \ /dev/sg2 -d areca,1 -a -s L/../../7/00
246: .B \ \ /dev/sg2 -d areca,2 -a -s L/../../7/01
247: .B \ \ /dev/sg2 -d areca,3 -a -s L/../../7/02
248: .\" %ENDIF OS Linux
249: .\" %IF OS FreeBSD
250: .B \ \ /dev/arcmsr0 -d areca,1 -a -s L/../../7/00
251: .B \ \ /dev/arcmsr0 -d areca,2 -a -s L/../../7/01
252: .B \ \ /dev/arcmsr0 -d areca,3 -a -s L/../../7/02
253: .\" %ENDIF OS FreeBSD
254: .B #
255: .nf
256: .B # The following line enables monitoring of the
257: .B # ATA Error Log and the Self-Test Error Log.
258: .B # It also tracks changes in both Prefailure
259: .B # and Usage Attributes, apart from Attributes
260: .B # 9, 194, and 231, and shows continued lines:
261: .B #
262: .B \ \ /dev/hdd\ -l\ error\ \e
263: .B \ \ \ \ \ \ \ \ \ \ \ -l\ selftest\ \e
264: .B \ \ \ \ \ \ \ \ \ \ \ -t\ \e\ \ \ \ \ \ # Attributes not tracked:
265: .B \ \ \ \ \ \ \ \ \ \ \ -I\ 194\ \e\ \ # temperature
266: .B \ \ \ \ \ \ \ \ \ \ \ -I\ 231\ \e\ \ # also temperature
267: .B \ \ \ \ \ \ \ \ \ \ \ -I 9\ \ \ \ \ \ # power-on hours
268: .B #
269: .B ################################################
270: .fi
271:
272: .PP
273: .SH CONFIGURATION FILE DIRECTIVES
274: .PP
275:
276: If a non-comment entry in the configuration file is the text string
277: .B DEVICESCAN
278: in capital letters, then
279: \fBsmartd\fP
280: will ignore any remaining lines in the configuration file, and will
281: scan for devices.
282: .B DEVICESCAN
283: may optionally be followed by Directives that will apply to all
284: devices that are found in the scan. Please see below for additional
285: details.
286:
287: .sp 2
288: The following are the Directives that may appear following the device
289: name or
290: .B DEVICESCAN
291: on any line of the
292: .B /usr/local/etc/smartd.conf
293: configuration file. Note that
294: .B these are NOT command-line options for
295: \fBsmartd\fP.
296: The Directives below may appear in any order, following the device
297: name.
298:
299: .B For an ATA device,
300: if no Directives appear, then the device will be monitored
301: as if the \'\-a\' Directive (monitor all SMART properties) had been given.
302:
303: .B If a SCSI disk is listed,
304: it will be monitored at the maximum implemented level: roughly
305: equivalent to using the \'\-H \-l selftest\' options for an ATA disk.
306: So with the exception of \'\-d\', \'\-m\', \'\-l selftest\', \'\-s\', and
307: \'\-M\', the Directives below are ignored for SCSI disks. For SCSI
308: disks, the \'\-m\' Directive sends a warning email if the SMART status
309: indicates a disk failure or problem, if the SCSI inquiry about disk
310: status fails, or if new errors appear in the self-test log.
311:
312: .B If a 3ware controller is used
313: then the corresponding SCSI (/dev/sd?) or character device (/dev/twe?,
314: /dev/twa? or /dev/twl?) must be listed, along with the \'\-d 3ware,N\'
315: Directive (see below). The individual ATA disks hosted by the 3ware
316: controller appear to \fBsmartd\fP as normal ATA devices. Hence all
317: the ATA directives can be used for these disks (but see note below).
318:
319: .\" %IF OS Linux FreeBSD
320: .B If an Areca controller is used
321: then the corresponding device (SCSI /dev/sg? on Linux or /dev/arcmsr0 on
322: FreeBSD) must be listed, along with the \'\-d areca,N\' Directive (see below).
323: The individual SATA disks hosted by the Areca controller appear to \fBsmartd\fP
324: as normal ATA devices. Hence all the ATA directives can be used for
325: these disks. Areca firmware version 1.46 or later which supports
326: smartmontools must be used; Please see the \fBsmartctl\fP(8) man page
327: for further details.
328: .\" %ENDIF OS Linux FreeBSD
329: .TP
330: .B \-d TYPE
331: Specifies the type of the device.
332: The valid arguments to this directive are:
333:
334: .I auto
335: - attempt to guess the device type from the device name or from
336: controller type info provided by the operating system or from
337: a matching USB ID entry in the drive database.
338: This is the default.
339:
340: .I ata
341: \- the device type is ATA. This prevents
342: \fBsmartd\fP
343: from issuing SCSI commands to an ATA device.
344:
345: .\" %IF NOT OS Darwin
346: .I scsi
347: \- the device type is SCSI. This prevents
348: \fBsmartd\fP
349: from issuing ATA commands to a SCSI device.
350:
351: .I sat
352: \- the device type is SCSI to ATA Translation (SAT).
353: This is for ATA disks that have a SCSI to ATA Translation (SAT) Layer
354: (SATL) between the disk and the operating system.
355: SAT defines two ATA PASS THROUGH SCSI commands, one 12 bytes long and
356: the other 16 bytes long. The default is the 16 byte variant which can be
357: overridden with either \'\-d sat,12\' or \'\-d sat,16\'.
358:
359: .I usbcypress
360: \- this device type is for ATA disks that are behind a Cypress USB to PATA
361: bridge. This will use the ATACB proprietary scsi pass through command.
362: The default SCSI operation code is 0x24, but although it can be overridden
363: with \'\-d usbcypress,0xN\', where N is the scsi operation code,
364: you're running the risk of damage to the device or filesystems on it.
365:
366: .I usbjmicron
367: - this device type is for SATA disks that are behind a JMicron USB to
368: PATA/SATA bridge. The 48-bit ATA commands (required e.g. for \'\-l xerror\',
369: see below) do not work with all of these bridges and are therefore disabled by
370: default. These commands can be enabled by \'\-d usbjmicron,x\'.
371: If two disks are connected to a bridge with two ports, an error message is printed
372: if no PORT is specified.
373: The port can be specified by \'\-d usbjmicron[,x],PORT\' where PORT is 0
374: (master) or 1 (slave). This is not necessary if the device uses a port
375: multiplier to connect multiple disks to one port. The disks appear under
376: separate /dev/ice names then.
377: CAUTION: Specifying \',x\' for a device which does not support it results
378: in I/O errors and may disconnect the drive. The same applies if the specified
379: PORT does not exist or is not connected to a disk.
380:
381: .I usbsunplus
382: \- this device type is for SATA disks that are behind a SunplusIT USB to SATA
383: bridge.
384:
385: .\" %ENDIF NOT OS Darwin
386: .\" %IF OS Linux
387: .I marvell
388: \- [Linux only] interact with SATA disks behind Marvell chip-set
389: controllers (using the Marvell rather than libata driver).
390:
391: .I megaraid,N
392: \- [Linux only] the device consists of one or more SCSI/SAS disks connected
393: to a MegaRAID controller. The non-negative integer N (in the range of 0 to
394: 127 inclusive) denotes which disk on the controller is monitored.
395: This interface will also work for Dell PERC controllers.
396: In log files and email messages this disk will be identified as
397: megaraid_disk_XXX with XXX in the range from 000 to 127 inclusive.
398: Please see the \fBsmartctl\fP(8) man page for further details.
399:
400: .\" %ENDIF OS Linux
401: .\" %IF OS FreeBSD Linux
402: .I 3ware,N
403: \- [FreeBSD and Linux only] the device consists of one or more ATA disks
404: connected to a 3ware RAID controller. The non-negative integer N
405: (in the range from 0 to 127 inclusive) denotes which disk on the controller
406: is monitored.
407: In log files and email messages this disk will be identified as 3ware_disk_XXX
408: with XXX in the range from 000 to 127 inclusive.
409:
410: Note that while you may use \fBany\fP of the 3ware SCSI logical devices /dev/tw*
411: to address \fBany\fP of the physical disks (3ware ports), error and log
412: messages will make the most sense if you always list the 3ware SCSI
413: logical device corresponding to the particular physical disks.
414: Please see the \fBsmartctl\fP(8) man page for further details.
415:
416: .\" %ENDIF OS FreeBSD Linux
417: .\" %IF OS Linux FreeBSD
418: .I areca,N
419: \- [Linux and FreeBSD only] the device consists of one or more SATA disks connected to an
420: Areca SATA RAID controller. The positive integer N (in the range from 1 to
421: 24 inclusive) denotes which disk on the controller is monitored.
422: In log files and email messages this disk will be identifed as
423: areca_disk_XX with XX in the range from 01 to 24 inclusive.
424: Please see the \fBsmartctl\fP(8) man page for further details.
425:
426: .\" %ENDIF OS Linux FreeBSD
427: .\" %IF OS FreeBSD Linux
428: .I cciss,N
429: \- [FreeBSD and Linux only] the device consists of one or more SCSI/SAS disks
430: connected to a cciss RAID controller. The non-negative integer N (in the range
431: from 0 to 15 inclusive) denotes which disk on the controller is monitored.
432: In log files and email messages this disk will be identified as cciss_disk_XX
433: with XX in the range from 00 to 15 inclusive.
434: Please see the \fBsmartctl\fP(8) man page for further details.
435:
436: .I hpt,L/M/N
437: \- [FreeBSD and Linux only] the device consists of one or more ATA disks
438: connected to a HighPoint RocketRAID controller. The integer L is the
439: controller id, the integer M is the channel number, and the integer N
440: is the PMPort number if it is available. The allowed values of L are
441: from 1 to 4 inclusive, M are from 1 to 16 inclusive and N from 1 to 4
442: if PMPort available. And also these values are limited by the model
443: of the HighPoint RocketRAID controller.
444: In log files and email messages this disk will be identified as
445: hpt_X/X/X and X/X/X is the same as L/M/N, note if no N indicated, N set
446: to the default value 1.
447: Please see the \fBsmartctl\fP(8) man page for further details.
448:
449: .\" %ENDIF OS FreeBSD Linux
450: .I removable
451: \- the device or its media is removable. This indicates to
452: \fBsmartd\fP
453: that it should continue (instead of exiting, which is the default
454: behavior) if the device does not appear to be present when
455: \fBsmartd\fP is started. This Directive may be used in conjunction
456: with the other \'\-d\' Directives.
457: .TP
458: .B \-n POWERMODE[,N][,q]
459: [ATA only] This \'nocheck\' Directive is used to prevent a disk from
460: being spun-up when it is periodically polled by \fBsmartd\fP.
461:
462: ATA disks have five different power states. In order of increasing
463: power consumption they are: \'OFF\', \'SLEEP\', \'STANDBY\', \'IDLE\',
464: and \'ACTIVE\'. Typically in the OFF, SLEEP, and STANDBY modes the
465: disk\'s platters are not spinning. But usually, in response to SMART
466: commands issued by \fBsmartd\fP, the disk platters are spun up. So if
467: this option is not used, then a disk which is in a low\-power mode may
468: be spun up and put into a higher\-power mode when it is periodically
469: polled by \fBsmartd\fP.
470:
471: Note that if the disk is in SLEEP mode when \fBsmartd\fP is started,
472: then it won't respond to \fBsmartd\fP commands, and so the disk won't
473: be registered as a device for \fBsmartd\fP to monitor. If a disk is in
474: any other low\-power mode, then the commands issued by \fBsmartd\fP to
475: register the disk will probably cause it to spin\-up.
476:
477: The \'\fB\-n\fP\' (nocheck) Directive specifies if \fBsmartd\fP\'s
478: periodic checks should still be carried out when the device is in a
479: low\-power mode. It may be used to prevent a disk from being spun\-up
480: by periodic \fBsmartd\fP polling. The allowed values of POWERMODE
481: are:
482:
483: .I never
484: \- \fBsmartd\fP will poll (check) the device regardless of its power
485: mode. This may cause a disk which is spun\-down to be spun\-up when
486: \fBsmartd\fP checks it. This is the default behavior if the '\-n'
487: Directive is not given.
488:
489: .I sleep
490: \- check the device unless it is in SLEEP mode.
491:
492: .I standby
493: \- check the device unless it is in SLEEP or STANDBY mode. In
494: these modes most disks are not spinning, so if you want to prevent
495: a laptop disk from spinning up each time that \fBsmartd\fP polls,
496: this is probably what you want.
497:
498: .I idle
499: \- check the device unless it is in SLEEP, STANDBY or IDLE mode.
500: In the IDLE state, most disks are still spinning, so this is probably
501: not what you want.
502:
503: Maximum number of skipped checks (in a row) can be specified by
504: appending positive number \',N\' to POWERMODE (like \'\-n standby,15\').
505: After N checks are skipped in a row, powermode is ignored and the
506: check is performed anyway.
507:
508: When a periodic test is skipped, \fBsmartd\fP normally writes an
509: informal log message. The message can be suppressed by appending
510: the option \',q\' to POWERMODE (like \'\-n standby,q\').
511: This prevents a laptop disk from spinning up due to this message.
512:
513: Both \',N\' and \',q\' can be specified together.
514: .TP
515: .B \-T TYPE
516: Specifies how tolerant
517: \fBsmartd\fP
518: should be of SMART command failures. The valid arguments to this
519: Directive are:
520:
521: .I normal
522: \- do not try to monitor the disk if a mandatory SMART command fails, but
523: continue if an optional SMART command fails. This is the default.
524:
525: .I permissive
526: \- try to monitor the disk even if it appears to lack SMART
527: capabilities. This may be required for some old disks (prior to
528: ATA\-3 revision 4) that implemented SMART before the SMART standards
529: were incorporated into the ATA/ATAPI Specifications. This may also be
530: needed for some Maxtor disks which fail to comply with the ATA
531: Specifications and don't properly indicate support for error\- or
532: self\-test logging.
533:
534: [Please see the \fBsmartctl \-T\fP command-line option.]
535: .TP
536: .B \-o VALUE
537: [ATA only] Enables or disables SMART Automatic Offline Testing when
538: \fBsmartd\fP
539: starts up and has no further effect. The valid arguments to this
540: Directive are \fIon\fP and \fIoff\fP.
541:
542: The delay between tests is vendor-specific, but is typically four
543: hours.
544:
545: Note that SMART Automatic Offline Testing is \fBnot\fP part of the ATA
546: Specification. Please see the
547: .B smartctl \-o
548: command-line option documentation for further information about this
549: feature.
550: .TP
551: .B \-S VALUE
552: Enables or disables Attribute Autosave when \fBsmartd\fP
553: starts up and has no further effect. The valid arguments to this
554: Directive are \fIon\fP and \fIoff\fP. Also affects SCSI devices.
555: [Please see the \fBsmartctl \-S\fP command-line option.]
556: .TP
557: .B \-H
558: [ATA only] Check the SMART health status of the disk. If any Prefailure
559: Attributes are less than or equal to their threshold values, then disk
560: failure is predicted in less than 24 hours, and a message at loglevel
561: .B \'LOG_CRIT\'
562: will be logged to syslog. [Please see the
563: .B smartctl \-H
564: command-line option.]
565: .TP
566: .B \-l TYPE
567: Reports increases in the number of errors in one of three SMART logs. The
568: valid arguments to this Directive are:
569:
570: .I error
571: \- [ATA only] report if the number of ATA errors reported in the Summary SMART
572: error log has increased since the last check.
573:
574: .I xerror
575: \- [ATA only] report if the number of ATA errors reported in the Extended
576: Comprehensive SMART error log has increased since the last check.
577:
578: If both \'\-l error\' and \'\-l xerror\' are specified, smartd checks
579: the maximum of both values.
580:
581: [Please see the \fBsmartctl \-l xerror\fP command-line option.]
582:
583: .I selftest
584: \- report if the number of failed tests reported in the SMART
585: Self-Test Log has increased since the last check, or if the timestamp
586: associated with the most recent failed test has increased. Note that
587: such errors will \fBonly\fP be logged if you run self-tests on the
588: disk (and it fails a test!). Self-Tests can be run automatically by
589: \fBsmartd\fP: please see the \fB\'\-s\'\fP Directive below.
590: Self-Tests can also be run manually by using the \fB\'\-t\ short\'\fP
591: and \fB\'\-t\ long\'\fP options of \fBsmartctl\fP and the results of
592: the testing can be observed using the \fBsmartctl \'\-l\ selftest\'\fP
593: command-line option.
594: [Please see the \fBsmartctl \-l\fP and \fB\-t\fP command-line
595: options.]
596:
597: [ATA only] Failed self-tests outdated by a newer successful extended
598: self\-test are ignored. The warning email counter is reset if the
599: number of failed self tests dropped to 0. This typically happens when
600: an extended self\-test is run after all bad sectors have been reallocated.
601:
602: .I offlinests
603: \- [ATA only] report if the Offline Data Collection status has changed
604: since the last check. The report will be logged as LOG_CRIT if the new
605: status indicates an error. With some drives the status often changes,
606: therefore \'\-l offlinests\' is not enabled by '\-a\' Directive.
607:
608: .I selfteststs
609: \- [ATA only] report if the Self-Test execution status has changed
610: since the last check. The report will be logged as LOG_CRIT if the new
611: status indicates an error.
612:
613: .I scterc,READTIME,WRITETIME
614: \- [ATA only] [NEW EXPERIMENTAL SMARTD FEATURE] sets the SCT Error
615: Recovery Control settings to the specified values (deciseconds)
616: when \fBsmartd\fP starts up and has no further effect.
617: Values of 0 disable the feature, other values less than 65 are probably
618: not supported. For RAID configurations, this is typically set to
619: 70,70 deciseconds.
620: [Please see the \fBsmartctl \-l scterc\fP command-line option.]
621:
622: .TP
623: .B \-s REGEXP
624: Run Self-Tests or Offline Immediate Tests, at scheduled times. A
625: Self- or Offline Immediate Test will be run at the end of periodic
626: device polling, if all 12 characters of the string \fBT/MM/DD/d/HH\fP
627: match the extended regular expression \fBREGEXP\fP. Here:
628: .RS 7
629: .IP \fBT\fP 4
630: is the type of the test. The values that \fBsmartd\fP will try to
631: match (in turn) are: \'L\' for a \fBL\fPong Self-Test, \'S\' for a
632: \fBS\fPhort Self-Test, \'C\' for a \fBC\fPonveyance Self-Test (ATA
633: only), and \'O\' for an \fBO\fPffline Immediate Test (ATA only). As
634: soon as a match is found, the test will be started and no additional
635: matches will be sought for that device and that polling cycle.
636:
637: To run scheduled Selective Self-Tests, use \'n\' for \fBn\fPext span,
638: \'r\' to \fBr\fPedo last span, or \'c\' to \fBc\fPontinue with next span
639: or redo last span based on status of last test.
640: The LBA range is based on the first span from the last test.
641: See the \fBsmartctl \-t select,[next|redo|cont]\fP options for
642: further info.
643:
644: [NEW EXPERIMENTAL SMARTD FEATURE] Some disks (e.g. WD) do not preserve
645: the selective self test log accross power cycles. If state persistence
646: (\'\-s\' option) is enabled, the last test span is preserved by smartd
647: and used if (and only if) the selective self test log is empty.
648:
649: .IP \fBMM\fP 4
650: is the month of the year, expressed with two decimal digits. The
651: range is from 01 (January) to 12 (December) inclusive. Do \fBnot\fP
652: use a single decimal digit or the match will always fail!
653: .IP \fBDD\fP 4
654: is the day of the month, expressed with two decimal digits. The
655: range is from 01 to 31 inclusive. Do \fBnot\fP
656: use a single decimal digit or the match will always fail!
657: .IP \fBd\fP 4
658: is the day of the week, expressed with one decimal digit. The
659: range is from 1 (Monday) to 7 (Sunday) inclusive.
660: .IP \fBHH\fP 4
661: is the hour of the day, written with two decimal digits, and given in
662: hours after midnight. The range is 00 (midnight to just before 1am)
663: to 23 (11pm to just before midnight) inclusive. Do \fBnot\fP use a
664: single decimal digit or the match will always fail!
665: .RE
666: .\" The following two lines are a workaround for a man2html bug. Please leave them.
667: .\" They define a non-existent option; useful because man2html can't correctly reset the margins.
668: .TP
669: .B \&
670: Some examples follow. In reading these, keep in mind that in extended
671: regular expressions a dot \fB\'.\'\fP matches any single character, and
672: a parenthetical expression such as \fB\'(A|B|C)\'\fP denotes any one of the three possibilities \fBA\fP,
673: \fBB\fP, or \fBC\fP.
674:
675: To schedule a short Self-Test between 2-3am every morning, use:
676: .nf
677: \fB \-s S/../.././02\fP
678: .fi
679: To schedule a long Self-Test between 4-5am every Sunday morning, use:
680: .nf
681: \fB \-s L/../../7/04\fP
682: .fi
683: To schedule a long Self-Test between 10-11pm on the first and
684: fifteenth day of each month, use:
685: .nf
686: \fB \-s L/../(01|15)/./22\fP
687: .fi
688: To schedule an Offline Immediate test after every midnight, 6am,
689: noon,and 6pm, plus a Short Self-Test daily at 1-2am and a Long
690: Self-Test every Saturday at 3-4am, use:
691: .nf
692: \fB \-s (O/../.././(00|06|12|18)|S/../.././01|L/../../6/03)\fP
693: .fi
694: If Long Self-Tests of a large disks take longer than the system uptime,
695: a full disk test can be performed by several Selective Self-Tests.
696: To setup a full test of a 1TB disk within 20 days (one 50GB span
697: each day), run this command once:
698: .nf
699: smartctl -t select,0-99999999 /dev/sda
700: .fi
701: To run the next test spans on Monday-Friday between 12-13am, run smartd
702: with this directive:
703: .nf
704: \fB \-s n/../../[1-5]/12\fP
705: .fi
706:
707:
708: Scheduled tests are run immediately following the regularly-scheduled
709: device polling, if the current local date, time, and test type, match
710: \fBREGEXP\fP. By default the regularly-scheduled device polling
711: occurs every thirty minutes after starting \fBsmartd\fP. Take caution
712: if you use the \'\-i\' option to make this polling interval more than
713: sixty minutes: the poll times may fail to coincide with any of the
714: testing times that you have specified with \fBREGEXP\fP. In this case
715: the test will be run following the next device polling.
716:
717: Before running an offline or self-test, \fBsmartd\fP checks to be sure
718: that a self-test is not already running. If a self-test \fBis\fP
719: already running, then this running self test will \fBnot\fP be
720: interrupted to begin another test.
721:
722: \fBsmartd\fP will not attempt to run \fBany\fP type of test if another
723: test was already started or run in the same hour.
724:
725: To avoid performance problems during system boot, \fBsmartd\fP will
726: not attempt to run any scheduled tests following the very first
727: device polling (unless \'\-q onecheck\' is specified).
728:
729: Each time a test is run, \fBsmartd\fP will log an entry to SYSLOG.
730: You can use these or the '-q showtests' command-line option to verify
731: that you constructed \fBREGEXP\fP correctly. The matching order
732: (\fBL\fP before \fBS\fP before \fBC\fP before \fBO\fP) ensures that
733: if multiple test types are all scheduled for the same hour, the
734: longer test type has precedence. This is usually the desired behavior.
735:
736: If the scheduled tests are used in conjunction with state persistence
737: (\'\-s\' option), smartd will also try to match the hours since last
738: shutdown (or 90 days at most). If any test would have been started
739: during downtime, the longest (see above) of these tests is run after
740: second device polling.
741:
742: If the \'\-n\' directive is used and any test would have been started
743: during disk standby time, the longest of these tests is run when the
744: disk is active again.
745:
746: Unix users: please beware that the rules for extended regular
747: expressions [regex(7)] are \fBnot\fP the same as the rules for
748: file\-name pattern matching by the shell [glob(7)]. \fBsmartd\fP will
749: issue harmless informational warning messages if it detects characters
750: in \fBREGEXP\fP that appear to indicate that you have made this
751: mistake.
752: .TP
753: .B \-m ADD
754: Send a warning email to the email address \fBADD\fP if the \'\-H\',
755: \'\-l\', \'\-f\', \'\-C\', or \'\-O\' Directives detect a failure or a
756: new error, or if a SMART command to the disk fails. This Directive
757: only works in conjunction with these other Directives (or with the
758: equivalent default \'\-a\' Directive).
759:
760: To prevent your email in-box from getting filled up with warning
761: messages, by default only a single warning will be sent for each of
762: the enabled alert types, \'\-H\', \'\-l\', \'\-f\', \'\-C\', or
763: \'\-O\' even if more than one failure or error is detected or if the
764: failure or error persists. [This behavior can be modified; see the
765: \'\-M\' Directive below.]
766:
767: To send email to more than one user, please use the following "comma
768: separated" form for the address: \fBuser1@add1,user2@add2,...,userN@addN\fP
769: (with no spaces).
770:
771: To test that email is being sent correctly, use the \'\-M test\'
772: Directive described below to send one test email message on
773: \fBsmartd\fP
774: startup.
775:
776: By default, email is sent using the system
777: .B mail
778: command. In order that
779: \fBsmartd\fP
780: find the mail command (normally /bin/mail) an executable named
781: .B \'mail\'
782: must be in the path of the shell or environment from which
783: \fBsmartd\fP
784: was started. If you wish to specify an explicit path to the mail
785: executable (for example /usr/local/bin/mail) or a custom script to
786: run, please use the \'\-M exec\' Directive below.
787:
788: .\" %IF OS Solaris
789: Note that by default under Solaris, in the previous paragraph,
790: \'\fBmailx\fP\' and \'\fB/bin/mailx\fP\' are used, since Solaris
791: \'/bin/mail\' does not accept a \'\-s\' (Subject) command-line
792: argument.
793:
794: .\" %ENDIF OS Solaris
795: .\" %IF OS Windows
796: On Windows, the \'\fBBlat\fP\' mailer
797: (\fBhttp://blat.sourceforge.net/\fP) is used by default.
798: This mailer uses a different command line syntax, see
799: \'\-M exec\' below.
800:
801: .\" %ENDIF OS Windows
802: Note also that there is a special argument
803: .B <nomailer>
804: which can be given to the \'\-m\' Directive in conjunction with the \'\-M
805: exec\' Directive. Please see below for an explanation of its effect.
806:
807: If the mailer or the shell running it produces any STDERR/STDOUT
808: output, then a snippet of that output will be copied to SYSLOG. The
809: remainder of the output is discarded. If problems are encountered in
810: sending mail, this should help you to understand and fix them. If
811: you have mail problems, we recommend running \fBsmartd\fP in debug
812: mode with the \'-d\' flag, using the \'-M test\' Directive described
813: below.
814: .\" %IF OS Windows
815:
816: The following extension is available on Windows:
817: By specifying \'\fBmsgbox\fP\' as a mail address, a warning
818: "email" is displayed as a message box on the screen.
819: Using both \'\fBmsgbox\fP\' and regular mail addresses is possible,
820: if \'\fBmsgbox\fP\' is the first word in the comma separated list.
821: With \'\fBsysmsgbox\fP\', a system modal (always on top) message box
822: is used.
823:
824: If running as a service, a service notification message box
825: (always shown on current visible desktop) is used. Please note that
826: service notification message boxes are no longer supported on Windows
827: Vista/2008 or later.
828: .\" %ENDIF OS Windows
829: .TP
830: .B \-M TYPE
831: These Directives modify the behavior of the
832: \fBsmartd\fP
833: email warnings enabled with the \'\-m\' email Directive described above.
834: These \'\-M\' Directives only work in conjunction with the \'\-m\'
835: Directive and can not be used without it.
836:
837: Multiple \-M Directives may be given. If more than one of the
838: following three \-M Directives are given (example: \-M once \-M daily)
839: then the final one (in the example, \-M daily) is used.
840:
841: The valid arguments to the \-M Directive are (one of the following
842: three):
843:
844: .I once
845: \- send only one warning email for each type of disk problem detected. This
846: is the default unless state persistence (\'\-s\' option) is enabled.
847:
848: .I daily
849: \- send additional warning reminder emails, once per day, for each type
850: of disk problem detected. This is the default if state persistence
851: (\'\-s\' option) is enabled.
852:
853: .I diminishing
854: \- send additional warning reminder emails, after a one-day interval,
855: then a two-day interval, then a four-day interval, and so on for each
856: type of disk problem detected. Each interval is twice as long as the
857: previous interval.
858:
859: If a disk problem is no longer detected, the internal email counter is
860: reset. If the problem reappears a new warning email is sent immediately.
861:
862: In addition, one may add zero or more of the following Directives:
863:
864: .I test
865: \- send a single test email
866: immediately upon
867: \fBsmartd\fP
868: startup. This allows one to verify that email is delivered correctly.
869: Note that if this Directive is used,
870: \fBsmartd\fP
871: will also send the normal email warnings that were enabled with the \'\-m\' Directive,
872: in addition to the single test email!
873:
874: .I exec PATH
875: \- run the executable PATH instead of the default mail command, when
876: \fBsmartd\fP
877: needs to send email. PATH must point to an executable binary file or
878: script.
879:
880: By setting PATH to point to a customized script, you can make
881: \fBsmartd\fP perform useful tricks when a disk problem is detected
882: (beeping the console, shutting down the machine, broadcasting warnings
883: to all logged-in users, etc.) But please be careful. \fBsmartd\fP
884: will \fBblock\fP until the executable PATH returns, so if your
885: executable hangs, then \fBsmartd\fP will also hang. Some sample
886: scripts are included in
887: /usr/local/share/doc/smartmontools/examplescripts/.
888:
889: The return status of the executable is recorded by \fBsmartd\fP in
890: SYSLOG. The executable is not expected to write to STDOUT or
891: STDERR. If it does, then this is interpreted as indicating that
892: something is going wrong with your executable, and a fragment of this
893: output is logged to SYSLOG to help you to understand the problem.
894: Normally, if you wish to leave some record behind, the executable
895: should send mail or write to a file or device.
896:
897: Before running the executable, \fBsmartd\fP sets a number of
898: environment variables. These environment variables may be used to
899: control the executable\'s behavior. The environment variables
900: exported by \fBsmartd\fP are:
901: .RS 7
902: .IP \fBSMARTD_MAILER\fP 4
903: is set to the argument of \-M exec, if present or else to \'mail\'
904: (examples: /bin/mail, mail).
905: .IP \fBSMARTD_DEVICE\fP 4
906: is set to the device path (examples: /dev/hda, /dev/sdb).
907: .IP \fBSMARTD_DEVICETYPE\fP 4
908: is set to the device type specified by \'-d\' directive or
909: \'auto\' if none.
910: .IP \fBSMARTD_DEVICESTRING\fP 4
911: is set to the device description. For SMARTD_DEVICETYPE of ata or
912: scsi, this is the same as SMARTD_DEVICE. For 3ware RAID controllers,
913: the form used is \'/dev/sdc [3ware_disk_01]\'. For HighPoint
914: RocketRAID controller, the form is \'/dev/sdd [hpt_1/1/1]\' under Linux
915: or \'/dev/hptrr [hpt_1/1/1]\' under FreeBSD. For Areca controllers, the
916: form is \'/dev/sg2 [areca_disk_09]\' on Linux or \'/dev/arcmsr0 [areca_disk_09]\' on FreeBSD. In these cases the device string
917: contains a space and is NOT quoted. So to use $SMARTD_DEVICESTRING in a
918: bash script you should probably enclose it in double quotes.
919: .IP \fBSMARTD_FAILTYPE\fP 4
920: gives the reason for the warning or message email. The possible values that
921: it takes and their meanings are:
922: .nf
923: .fi
924: \fIEmailTest\fP: this is an email test message.
925: .nf
926: .fi
927: \fIHealth\fP: the SMART health status indicates imminent failure.
928: .nf
929: .fi
930: \fIUsage\fP: a usage Attribute has failed.
931: .nf
932: .fi
933: \fISelfTest\fP: the number of self-test failures has increased.
934: .nf
935: .fi
936: \fIErrorCount\fP: the number of errors in the ATA error log has increased.
937: .nf
938: .fi
939: \fICurrentPendingSector\fP: one of more disk sectors could not be
940: read and are marked to be reallocated (replaced with spare sectors).
941: .nf
942: .fi
943: \fIOfflineUncorrectableSector\fP: during off\-line testing, or self\-testing,
944: one or more disk sectors could not be read.
945: .nf
946: .fi
947: \fITemperature\fP: Temperature reached critical limit (see \-W directive).
948: .nf
949: .fi
950: \fIFailedHealthCheck\fP: the SMART health status command failed.
951: .nf
952: .fi
953: \fIFailedReadSmartData\fP: the command to read SMART Attribute data failed.
954: .nf
955: .fi
956: \fIFailedReadSmartErrorLog\fP: the command to read the SMART error log failed.
957: .nf
958: .fi
959: \fIFailedReadSmartSelfTestLog\fP: the command to read the SMART self-test log failed.
960: .nf
961: .fi
962: \fIFailedOpenDevice\fP: the open() command to the device failed.
963: .IP \fBSMARTD_ADDRESS\fP 4
964: is determined by the address argument ADD of the \'\-m\' Directive.
965: If ADD is \fB<nomailer>\fP, then \fBSMARTD_ADDRESS\fP is not set.
966: Otherwise, it is set to the comma-separated-list of email addresses
967: given by the argument ADD, with the commas replaced by spaces
968: (example:admin@example.com root). If more than one email address is
969: given, then this string will contain space characters and is NOT
970: quoted, so to use it in a bash script you may want to enclose it in
971: double quotes.
972: .IP \fBSMARTD_MESSAGE\fP 4
973: is set to the one sentence summary warning email message string from
974: \fBsmartd\fP.
975: This message string contains space characters and is NOT quoted. So to
976: use $SMARTD_MESSAGE in a bash script you should probably enclose it in
977: double quotes.
978: .IP \fBSMARTD_FULLMESSAGE\fP 4
979: is set to the contents of the entire email warning message string from
980: \fBsmartd\fP.
981: This message string contains space and return characters and is NOT quoted. So to
982: use $SMARTD_FULLMESSAGE in a bash script you should probably enclose it in
983: double quotes.
984: .IP \fBSMARTD_TFIRST\fP 4
985: is a text string giving the time and date at which the first problem
986: of this type was reported. This text string contains space characters
987: and no newlines, and is NOT quoted. For example:
988: .nf
989: .fi
990: Sun Feb 9 14:58:19 2003 CST
991: .IP \fBSMARTD_TFIRSTEPOCH\fP 4
992: is an integer, which is the unix epoch (number of seconds since Jan 1,
993: 1970) for \fBSMARTD_TFIRST\fP.
994: .RE
995: .\" The following two lines are a workaround for a man2html bug. Please leave them.
996: .\" They define a non-existent option; useful because man2html can't correctly reset the margins.
997: .TP
998: .B \&
999: The shell which is used to run PATH is system-dependent. For vanilla
1000: Linux/glibc it\'s bash. For other systems, the man page for
1001: \fBpopen\fP(3) should say what shell is used.
1002:
1003: If the \'\-m ADD\' Directive is given with a normal address argument,
1004: then the executable pointed to by PATH will be run in a shell with
1005: STDIN receiving the body of the email message, and with the same
1006: command-line arguments:
1007: .nf
1008: -s "$SMARTD_SUBJECT" $SMARTD_ADDRESS
1009: .fi
1010: that would normally be provided to \'mail\'. Examples include:
1011: .nf
1012: .B -m user@home -M exec /bin/mail
1013: .B -m admin@work -M exec /usr/local/bin/mailto
1014: .B -m root -M exec /Example_1/bash/script/below
1015: .fi
1016:
1017: .\" %IF OS Windows
1018: Note that on Windows, the syntax of the \'\fBBlat\fP\' mailer is
1019: used:
1020: .nf
1021: - -q -subject "$SMARTD_SUBJECT" -to "$SMARTD_ADDRESS"
1022: .fi
1023:
1024: .\" %ENDIF OS Windows
1025: If the \'\-m ADD\' Directive is given with the special address argument
1026: .B <nomailer>
1027: then the executable pointed to by PATH is run in a shell with
1028: .B no
1029: STDIN and
1030: .B no
1031: command-line arguments, for example:
1032: .nf
1033: .B -m <nomailer> -M exec /Example_2/bash/script/below
1034: .fi
1035: If the executable produces any STDERR/STDOUT output, then \fBsmartd\fP
1036: assumes that something is going wrong, and a snippet of that output
1037: will be copied to SYSLOG. The remainder of the output is then
1038: discarded.
1039:
1040: Some EXAMPLES of scripts that can be used with the \'\-M exec\'
1041: Directive are given below. Some sample scripts are also included in
1042: /usr/local/share/doc/smartmontools/examplescripts/.
1043: .TP
1044: .B \-f
1045: [ATA only] Check for \'failure\' of any Usage Attributes. If these
1046: Attributes are less than or equal to the threshold, it does NOT indicate
1047: imminent disk failure. It "indicates an advisory condition where the usage
1048: or age of the device has exceeded its intended design life period."
1049: [Please see the \fBsmartctl \-A\fP command-line option.]
1050: .TP
1051: .B \-p
1052: [ATA only] Report anytime that a Prefail Attribute has changed
1053: its value since the last check, 30 minutes ago. [Please see the
1054: .B smartctl \-A
1055: command-line option.]
1056: .TP
1057: .B \-u
1058: [ATA only] Report anytime that a Usage Attribute has changed its value
1059: since the last check, 30 minutes ago. [Please see the
1060: .B smartctl \-A
1061: command-line option.]
1062: .TP
1063: .B \-t
1064: [ATA only] Equivalent to turning on the two previous flags \'\-p\' and \'\-u\'.
1065: Tracks changes in \fIall\fP device Attributes (both Prefailure and
1066: Usage). [Please see the \fBsmartctl\fP \-A command-line option.]
1067: .TP
1068: .B \-i ID
1069: [ATA only] Ignore device Attribute number \fBID\fP when checking for failure
1070: of Usage Attributes. \fBID\fP must be a decimal integer in the range
1071: from 1 to 255. This Directive modifies the behavior of the \'\-f\'
1072: Directive and has no effect without it.
1073:
1074: This is useful, for example, if you have a very old disk and don\'t
1075: want to keep getting messages about the hours-on-lifetime Attribute
1076: (usually Attribute 9) failing. This Directive may appear multiple
1077: times for a single device, if you want to ignore multiple Attributes.
1078: .TP
1079: .B \-I ID
1080: [ATA only] Ignore device Attribute \fBID\fP when tracking changes in the
1081: Attribute values. \fBID\fP must be a decimal integer in the range
1082: from 1 to 255. This Directive modifies the behavior of the \'\-p\',
1083: \'\-u\', and \'\-t\' tracking Directives and has no effect without one
1084: of them.
1085:
1086: This is useful, for example, if one of the device Attributes is the disk
1087: temperature (usually Attribute 194 or 231). It\'s annoying to get reports
1088: each time the temperature changes. This Directive may appear multiple
1089: times for a single device, if you want to ignore multiple Attributes.
1090: .TP
1091: .B \-r ID[!]
1092: [ATA only] When tracking, report the \fIRaw\fP value of Attribute \fBID\fP
1093: along with its (normally reported) \fINormalized\fP value. \fBID\fP must
1094: be a decimal integer in the range from 1 to 255. This Directive modifies
1095: the behavior of the \'\-p\', \'\-u\', and \'\-t\' tracking Directives
1096: and has no effect without one of them. This Directive may be given
1097: multiple times.
1098:
1099: A common use of this Directive is to track the device Temperature
1100: (often ID=194 or 231).
1101:
1102: If the optional flag \'!\' is appended, a change of the Normalized
1103: value is considered critical. The report will be logged as LOG_CRIT
1104: and a warning email will be sent if \'-m\' is specified.
1105: .TP
1106: .B \-R ID[!]
1107: [ATA only] When tracking, report whenever the \fIRaw\fP value of Attribute
1108: \fBID\fP changes. (Normally \fBsmartd\fP only tracks/reports changes
1109: of the \fINormalized\fP Attribute values.) \fBID\fP must be a decimal
1110: integer in the range from 1 to 255. This Directive modifies the
1111: behavior of the \'\-p\', \'\-u\', and \'\-t\' tracking Directives and
1112: has no effect without one of them. This Directive may be given
1113: multiple times.
1114:
1115: If this Directive is given, it automatically implies the \'\-r\'
1116: Directive for the same Attribute, so that the Raw value of the
1117: Attribute is reported.
1118:
1119: A common use of this Directive is to track the device Temperature
1120: (often ID=194 or 231). It is also useful for understanding how
1121: different types of system behavior affects the values of certain
1122: Attributes.
1123:
1124: If the optional flag \'!\' is appended, a change of the Raw
1125: value is considered critical. The report will be logged as
1126: LOG_CRIT and a warning email will be sent if \'-m\' is specified.
1127: An example is \'-R 5!\' to warn when new sectors are reallocated.
1128: .TP
1129: .B \-C ID[+]
1130: [ATA only] Report if the current number of pending sectors is
1131: non-zero. Here \fBID\fP is the id number of the Attribute whose raw
1132: value is the Current Pending Sector count. The allowed range of
1133: \fBID\fP is 0 to 255 inclusive. To turn off this reporting, use
1134: ID\ =\ 0. If the \fB\-C ID\fP option is not given, then it defaults to
1135: \fB\-C 197\fP (since Attribute 197 is generally used to monitor
1136: pending sectors). If the name of this Attribute is changed by a
1137: \'\-v 197,FORMAT,NAME\' directive, the default is changed to
1138: \fB\-C 0\fP.
1139:
1140: If \'+\' is specified, a report is only printed if the number of sectors
1141: has increased between two check cycles. Some disks do not reset this
1142: attribute when a bad sector is reallocated.
1143: See also \'\-v 197,increasing\' below.
1144:
1145: The warning email counter is reset if the number of pending sectors
1146: dropped to 0. This typically happens when all pending sectors have
1147: been reallocated or could be read again.
1148:
1149: A pending sector is a disk sector (containing 512 bytes of your data)
1150: which the device would like to mark as ``bad" and reallocate.
1151: Typically this is because your computer tried to read that sector, and
1152: the read failed because the data on it has been corrupted and has
1153: inconsistent Error Checking and Correction (ECC) codes. This is
1154: important to know, because it means that there is some unreadable data
1155: on the disk. The problem of figuring out what file this data belongs
1156: to is operating system and file system specific. You can typically
1157: force the sector to reallocate by writing to it (translation: make the
1158: device substitute a spare good sector for the bad one) but at the
1159: price of losing the 512 bytes of data stored there.
1160: .TP
1161: .B \-U ID[+]
1162: [ATA only] Report if the number of offline uncorrectable sectors is
1163: non-zero. Here \fBID\fP is the id number of the Attribute whose raw
1164: value is the Offline Uncorrectable Sector count. The allowed range of
1165: \fBID\fP is 0 to 255 inclusive. To turn off this reporting, use
1166: ID\ =\ 0. If the \fB\-U ID\fP option is not given, then it defaults to
1167: \fB\-U 198\fP (since Attribute 198 is generally used to monitor
1168: offline uncorrectable sectors). If the name of this Attribute is changed
1169: by a \'\-v 198,FORMAT,NAME\' (except \'\-v 198,FORMAT,Offline_Scan_UNC_SectCt\'),
1170: directive, the default is changed to \fB\-U 0\fP.
1171:
1172: If \'+\' is specified, a report is only printed if the number of sectors
1173: has increased since the last check cycle. Some disks do not reset this
1174: attribute when a bad sector is reallocated.
1175: See also \'\-v 198,increasing\' below.
1176:
1177: The warning email counter is reset if the number of offline uncorrectable
1178: sectors dropped to 0. This typically happens when all offline uncorrectable
1179: sectors have been reallocated or could be read again.
1180:
1181: An offline uncorrectable sector is a disk sector which was not
1182: readable during an off\-line scan or a self\-test. This is important
1183: to know, because if you have data stored in this disk sector, and you
1184: need to read it, the read will fail. Please see the previous \'\-C\'
1185: option for more details.
1186: .TP
1187: .B \-W DIFF[,INFO[,CRIT]]
1188: Report if the current temperature had changed by at least \fBDIFF\fP
1189: degrees since last report, or if new min or max temperature is detected.
1190: Report or Warn if the temperature is greater or equal than one of
1191: \fBINFO\fP or \fBCRIT\fP degrees Celsius.
1192: If the limit \fBCRIT\fP is reached, a message with loglevel
1193: \fB\'LOG_CRIT\'\fP will be logged to syslog and a warning email
1194: will be send if '-m' is specified. If only the limit \fBINFO\fP is
1195: reached, a message with loglevel \fB\'LOG_INFO\'\fP will be logged.
1196:
1197: The warning email counter is reset if the temperature dropped below
1198: \fBINFO\fP or \fBCRIT\fP-5 if \fBINFO\fP is not specified.
1199:
1200: If this directive is used in conjunction with state persistence
1201: (\'\-s\' option), the min and max temperature values are preserved
1202: across boot cycles. The minimum temperature value is not updated
1203: during the first 30 minutes after startup.
1204:
1205: To disable any of the 3 reports, set the corresponding limit to 0.
1206: Trailing zero arguments may be omitted. By default, all temperature
1207: reports are disabled (\'-W 0\').
1208:
1209: To track temperature changes of at least 2 degrees, use:
1210: .nf
1211: \fB \-W 2
1212: .fi
1213: To log informal messages on temperatures of at least 40 degrees, use:
1214: .nf
1215: \fB \-W 0,40
1216: .fi
1217: For warning messages/mails on temperatures of at least 45 degrees, use:
1218: .nf
1219: \fB \-W 0,0,45
1220: .fi
1221: To combine all of the above reports, use:
1222: .nf
1223: \fB \-W 2,40,45
1224: .fi
1225:
1226: For ATA devices, smartd interprets Attribute 194 as Temperature Celsius
1227: by default. This can be changed to Attribute 9 or 220 by the drive
1228: database or by the \'-v\' directive, see below.
1229: .TP
1230: .B \-F TYPE
1231: [ATA only] Modifies the behavior of \fBsmartd\fP to compensate for
1232: some known and understood device firmware bug. The arguments to this
1233: Directive are exclusive, so that only the final Directive given is
1234: used. The valid values are:
1235:
1236: .I none
1237: \- Assume that the device firmware obeys the ATA specifications. This
1238: is the default, unless the device has presets for \'\-F\' in the
1239: device database.
1240:
1241: .I samsung
1242: \- In some Samsung disks (example: model SV4012H Firmware Version:
1243: RM100\-08) some of the two\- and four\-byte quantities in the SMART data
1244: structures are byte\-swapped (relative to the ATA specification).
1245: Enabling this option tells \fBsmartd\fP to evaluate these quantities
1246: in byte\-reversed order. Some signs that your disk needs this option
1247: are (1) no self\-test log printed, even though you have run self\-tests;
1248: (2) very large numbers of ATA errors reported in the ATA error log;
1249: (3) strange and impossible values for the ATA error log timestamps.
1250:
1251: .I samsung2
1252: \- In some Samsung disks the number of ATA errors reported is byte swapped.
1253: Enabling this option tells \fBsmartd\fP to evaluate this quantity in
1254: byte\-reversed order.
1255:
1256: .I samsung3
1257: \- Some Samsung disks (at least SP2514N with Firmware VF100\-37) report
1258: a self\-test still in progress with 0% remaining when the test was already
1259: completed. If this directive is specified, \fBsmartd\fP will not skip the
1260: next scheduled self\-test (see Directive \'\-s\' above) in this case.
1261:
1262: Note that an explicit \'\-F\' Directive will over\-ride any preset
1263: values for \'\-F\' (see the \'\-P\' option below).
1264:
1265:
1266: [Please see the \fBsmartctl \-F\fP command-line option.]
1267: .TP
1268: .B \-v ID,FORMAT[:BYTEORDER][,NAME]
1269: [ATA only] Sets a vendor\-specific raw value print FORMAT, an optional
1270: BYTEORDER and an optional NAME for Attribute ID.
1271: This directive may be used multiple times.
1272: Please see \fBsmartctl -v\fP command-line option for further details.
1273:
1274: The following arguments affect smartd warning output:
1275:
1276: .I 197,increasing
1277: \- Raw Attribute number 197 (Current Pending Sector Count) is not
1278: reset if uncorrectable sectors are reallocated. This sets \'-C 197+\'
1279: if no other \'-C\' directive is specified.
1280:
1281: .I 198,increasing
1282: \- Raw Attribute number 198 (Offline Uncorrectable Sector Count) is not
1283: reset if uncorrectable sector are reallocated. This sets \'-U 198+\'
1284: if no other \'-U\' directive is specified.
1285: .TP
1286: .B \-P TYPE
1287: [ATA only] Specifies whether \fBsmartd\fP should use any preset options
1288: that are available for this drive.
1289: The valid arguments to this Directive are:
1290:
1291: .I use
1292: \- use any presets that are available for this drive. This is the default.
1293:
1294: .I ignore
1295: \- do not use any presets for this drive.
1296:
1297: .I show
1298: \- show the presets listed for this drive in the database.
1299:
1300: .I showall
1301: \- show the presets that are available for all drives and then exit.
1302:
1303: [Please see the
1304: .B smartctl \-P
1305: command-line option.]
1306: .TP
1307: .B \-a
1308: Equivalent to turning on all of the following Directives:
1309: .B \'\-H\'
1310: to check the SMART health status,
1311: .B \'\-f\'
1312: to report failures of Usage (rather than Prefail) Attributes,
1313: .B \'\-t\'
1314: to track changes in both Prefailure and Usage Attributes,
1315: .B \'\-l\ error\'
1316: to report increases in the number of ATA errors,
1317: .B \'\-l\ selftest\'
1318: to report increases in the number of Self-Test Log errors,
1319: .B \'\-l\ selfteststs\'
1320: to report changes of Self-Test execution status,
1321: .B \'\-C 197\'
1322: to report nonzero values of the current pending sector count, and
1323: .B \'\-U 198\'
1324: to report nonzero values of the offline pending sector count.
1325:
1326: Note that \-a is the default for ATA devices. If none of these other
1327: Directives is given, then \-a is assumed.
1328: .TP
1329: .B #
1330: Comment: ignore the remainder of the line.
1331: .TP
1332: .B \e
1333: Continuation character: if this is the last non-white or non-comment
1334: character on a line, then the following line is a continuation of the current
1335: one.
1336: .PP
1337: If you are not sure which Directives to use, I suggest experimenting
1338: for a few minutes with
1339: .B smartctl
1340: to see what SMART functionality your disk(s) support(s). If you do
1341: not like voluminous syslog messages, a good choice of
1342: \fBsmartd\fP
1343: configuration file Directives might be:
1344: .nf
1345: .B \-H \-l\ selftest \-l\ error \-f.
1346: .fi
1347: If you want more frequent information, use:
1348: .B -a.
1349:
1350: .TP
1351: .B ADDITIONAL DETAILS ABOUT DEVICESCAN
1352: If a non-comment entry in the configuration file is the text
1353: string \fBDEVICESCAN\fP in capital letters, then \fBsmartd\fP will
1354: ignore any remaining lines in the configuration file, and will scan
1355: for devices.
1356:
1357: Configuration entries for devices not found by the platform\-specific
1358: device scanning may precede the \fBDEVICESCAN\fP entry.
1359:
1360: If \fBDEVICESCAN\fP is not followed by any Directives, then smartd
1361: will scan for both ATA and SCSI devices, and will monitor all possible
1362: SMART properties of any devices that are found.
1363:
1364: \fBDEVICESCAN\fP may optionally be followed by any valid Directives,
1365: which will be applied to all devices that are found in the scan. For
1366: example
1367: .nf
1368: .B DEVICESCAN -m root@example.com
1369: .fi
1370: will scan for all devices, and then monitor them. It will send one
1371: email warning per device for any problems that are found.
1372: .nf
1373: .B DEVICESCAN -d ata -m root@example.com
1374: .fi
1375: will do the same, but restricts the scan to ATA devices only.
1376: .nf
1377: .B DEVICESCAN -H -d ata -m root@example.com
1378: .fi
1379: will do the same, but only monitors the SMART health status of the
1380: devices, (rather than the default \-a, which monitors all SMART
1381: properties).
1382:
1383: .TP
1384: .B EXAMPLES OF SHELL SCRIPTS FOR \'\-M exec\'
1385: These are two examples of shell scripts that can be used with the \'\-M
1386: exec PATH\' Directive described previously. The paths to these scripts
1387: and similar executables is the PATH argument to the \'\-M exec PATH\'
1388: Directive.
1389:
1390: Example 1: This script is for use with \'\-m ADDRESS -M exec PATH\'. It appends
1391: the output of
1392: .B smartctl -a
1393: to the output of the smartd email warning message and sends it to ADDRESS.
1394:
1395: .nf
1396: \fB
1397: #! /bin/bash
1398:
1399: # Save the email message (STDIN) to a file:
1400: cat > /root/msg
1401:
1402: # Append the output of smartctl -a to the message:
1403: /usr/local/sbin/smartctl -a -d $SMART_DEVICETYPE $SMARTD_DEVICE >> /root/msg
1404:
1405: # Now email the message to the user at address ADD:
1406: /bin/mail -s "$SMARTD_SUBJECT" $SMARTD_ADDRESS < /root/msg
1407: \fP
1408: .fi
1409:
1410: Example 2: This script is for use with \'\-m <nomailer> \-M exec
1411: PATH\'. It warns all users about a disk problem, waits 30 seconds, and
1412: then powers down the machine.
1413:
1414: .nf
1415: \fB
1416: #! /bin/bash
1417:
1418: # Warn all users of a problem
1419: wall \'Problem detected with disk: \' "$SMARTD_DEVICESTRING"
1420: wall \'Warning message from smartd is: \' "$SMARTD_MESSAGE"
1421: wall \'Shutting down machine in 30 seconds... \'
1422:
1423: # Wait half a minute
1424: sleep 30
1425:
1426: # Power down the machine
1427: /sbin/shutdown -hf now
1428: \fP
1429: .fi
1430:
1431: Some example scripts are distributed with the smartmontools package,
1432: in /usr/local/share/doc/smartmontools/examplescripts/.
1433:
1434: Please note that these scripts typically run as root, so any files
1435: that they read/write should not be writable by ordinary users or
1436: reside in directories like /tmp that are writable by ordinary users
1437: and may expose your system to symlink attacks.
1438:
1439: As previously described, if the scripts write to STDOUT or STDERR,
1440: this is interpreted as indicating that there was an internal error
1441: within the script, and a snippet of STDOUT/STDERR is logged to SYSLOG.
1442: The remainder is flushed.
1443:
1444: .PP
1445: .SH AUTHOR
1446: \fBBruce Allen\fP smartmontools\-support@lists.sourceforge.net
1447: .fi
1448: University of Wisconsin \- Milwaukee Physics Department
1449:
1450: .PP
1451: .SH CONTRIBUTORS
1452: The following have made large contributions to smartmontools:
1453: .nf
1454: \fBCasper Dik\fP (Solaris SCSI interface)
1455: \fBChristian Franke\fP (Windows interface, C++ redesign, USB support, ...)
1456: \fBDouglas Gilbert\fP (SCSI subsystem)
1457: \fBGuido Guenther\fP (Autoconf/Automake packaging)
1458: \fBGeoffrey Keating\fP (Darwin ATA interface)
1459: \fBEduard Martinescu\fP (FreeBSD interface)
1460: \fBFr\['e]d\['e]ric L. W. Meunier\fP (Web site and Mailing list)
1461: \fBGabriele Pohl\fP (Web site and Wiki, conversion from CVS to SVN)
1462: \fBKeiji Sawada\fP (Solaris ATA interface)
1463: \fBManfred Schwarb\fP (Drive database)
1464: \fBSergey Svishchev\fP (NetBSD interface)
1465: \fBDavid Snyder and Sergey Svishchev\fP (OpenBSD interface)
1466: \fBPhil Williams\fP (User interface and drive database)
1467: \fBShengfeng Zhou\fP (Linux/FreeBSD HighPoint RocketRAID interface)
1468: .fi
1469: Many other individuals have made smaller contributions and corrections.
1470:
1471: .PP
1472: .SH CREDITS
1473: .fi
1474: This code was derived from the smartsuite package, written by Michael
1475: Cornwell, and from the previous UCSC smartsuite package. It extends
1476: these to cover ATA\-5 disks. This code was originally developed as a
1477: Senior Thesis by Michael Cornwell at the Concurrent Systems Laboratory
1478: (now part of the Storage Systems Research Center), Jack Baskin School
1479: of Engineering, University of California, Santa
1480: Cruz. \fBhttp://ssrc.soe.ucsc.edu/\fP .
1481: .SH
1482: HOME PAGE FOR SMARTMONTOOLS:
1483: .fi
1484: Please see the following web site for updates, further documentation, bug
1485: reports and patches: \fBhttp://smartmontools.sourceforge.net/\fP
1486:
1487: .SH
1488: SEE ALSO:
1489: \fBsmartd\fP(8), \fBsmartctl\fP(8), \fBsyslogd\fP(8),
1490: \fBsyslog.conf\fP(5), \fBbadblocks\fP(8), \fBide\-smart\fP(8), \fBregex\fP(7).
1491:
1492: .SH
1493: SVN ID OF THIS PAGE:
1494: $Id: smartd.conf.5.in 3445 2011-10-12 21:53:02Z chrfranke $
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>