]> git.proxmox.com Git - mirror_smartmontools-debian.git/blob - smartctl.8.in
Correct maintscript syntax
[mirror_smartmontools-debian.git] / smartctl.8.in
1 .ig
2 Copyright (C) 2002-10 Bruce Allen <smartmontools-support@lists.sourceforge.net>
3 Copyright (C) 2004-14 Christian Franke <smartmontools-support@lists.sourceforge.net>
4
5 $Id: smartctl.8.in 3965 2014-07-20 14:46:41Z chrfranke $
6
7 This program is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation; either version 2, or (at your option)
10 any later version.
11
12 You should have received a copy of the GNU General Public License
13 (for example COPYING); If not, see <http://www.gnu.org/licenses/>.
14
15 This code was originally developed as a Senior Thesis by Michael Cornwell
16 at the Concurrent Systems Laboratory (now part of the Storage Systems
17 Research Center), Jack Baskin School of Engineering, University of
18 California, Santa Cruz. http://ssrc.soe.ucsc.edu/
19
20 ..
21 .TH SMARTCTL 8 CURRENT_SVN_DATE CURRENT_SVN_VERSION CURRENT_SVN_DATE
22 .SH NAME
23 \fBsmartctl\fP \- Control and Monitor Utility for SMART Disks
24
25 .SH SYNOPSIS
26 .B smartctl [options] device
27
28 .SH PACKAGE VERSION
29 CURRENT_SVN_VERSION CURRENT_SVN_DATE CURRENT_SVN_REV
30
31 .SH DESCRIPTION
32 .\" %IF NOT OS ALL
33 .\"! [This man page is generated for the OS_MAN_FILTER version of smartmontools.
34 .\"! It does not contain info specific to other platforms.]
35 .\"! .PP
36 .\" %ENDIF NOT OS ALL
37 \fBsmartctl\fP controls the Self-Monitoring, Analysis and
38 Reporting Technology (SMART) system built into most ATA/SATA and SCSI/SAS
39 hard drives and solid-state drives.
40 The purpose of SMART is to monitor the reliability of the hard drive
41 and predict drive failures, and to carry out different types of drive
42 self-tests.
43 \fBsmartctl\fP also supports some features not related to SMART.
44 This version of \fBsmartctl\fP is compatible with
45 ACS-3, ACS-2, ATA8-ACS, ATA/ATAPI-7 and earlier standards
46 (see \fBREFERENCES\fP below).
47
48 \fBsmartctl\fP also provides support for polling TapeAlert messages
49 from SCSI tape drives and changers.
50
51 The user must specify the device to be controlled or interrogated as
52 the final argument to \fBsmartctl\fP. The command set used by the device
53 is often derived from the device path but may need help with the \'\-d\'
54 option (for more information see the section on "ATA, SCSI command sets
55 and SAT" below). Device paths are as follows:
56 .\" %IF OS Linux
57 .IP \fBLINUX\fP: 9
58 Use the forms \fB"/dev/hd[a\-t]"\fP for IDE/ATA devices, and
59 \fB"/dev/sd[a\-z]"\fP for SCSI devices. For SCSI Tape Drives and
60 Changers with TapeAlert support use the devices \fB"/dev/nst*"\fP and
61 \fB"/dev/sg*"\fP. For SATA disks accessed with libata, use
62 \fB"/dev/sd[a\-z]"\fP and append \fB"\-d ata"\fP. For disks behind
63 3ware controllers you may need \fB"/dev/sd[a\-z]"\fP or
64 \fB"/dev/twe[0\-9]"\fP, \fB"/dev/twa[0\-9]"\fP or \fB"/dev/twl[0\-9]"\fP: see details
65 below. For disks behind HighPoint RocketRAID controllers you may need
66 \fB"/dev/sd[a\-z]"\fP. For disks behind Areca SATA RAID controllers,
67 you need \fB"/dev/sg[2\-9]"\fP (note that smartmontools interacts with
68 the Areca controllers via a SCSI generic device which is different
69 than the SCSI device used for reading and writing data)! For HP Smart
70 Array RAID controllers, there are three currently supported drivers: cciss,
71 hpsa, and hpahcisr. For disks accessed via the cciss driver the device nodes
72 are of the form \fB"/dev/cciss/c[0\-9]d0"\fP. For disks accessed via
73 the hpahcisr and hpsa drivers, the device nodes you need are \fB"/dev/sg[0\-9]*"\fP.
74 ("lsscsi \-g" is helpful in determining which scsi generic device node corresponds
75 to which device.) Use the nodes corresponding to the RAID controllers,
76 not the nodes corresponding to logical drives. See the \fB\-d\fP option below, as well.
77 .\" %ENDIF OS Linux
78 .\" %IF OS Darwin
79 .IP \fBDARWIN\fP: 9
80 Use the forms \fB/dev/disk[0\-9]\fP or equivalently \fBdisk[0\-9]\fP or equivalently
81 \fB/dev/rdisk[0\-9]\fP. Long forms are also available: please use \'\-h\' to see some
82 examples. Note that there is currently no Darwin SCSI support.
83
84 Use the OS X SAT SMART Driver to access SMART data on SAT capable USB and
85 Firewire devices (see INSTALL file).
86 .\" %ENDIF OS Darwin
87 .\" %IF OS FreeBSD
88 .IP \fBFREEBSD\fP: 9
89 Use the forms \fB"/dev/ad[0\-9]+"\fP for IDE/ATA
90 devices and \fB"/dev/da[0\-9]+"\fP or \fB"/dev/pass[0\-9]+"\fP for SCSI devices.
91 For SATA devices on AHCI bus use \fB"/dev/ada[0\-9]+"\fP format. For HP Smart
92 Array RAID controllers, use \fB"/dev/ciss[0\-9]"\fP (and see the \fB-d\fP option,
93 below).
94 .\" %ENDIF OS FreeBSD
95 .\" %IF OS NetBSD OpenBSD
96 .IP \fBNETBSD/OPENBSD\fP: 9
97 Use the form \fB"/dev/wd[0\-9]+c"\fP for IDE/ATA
98 devices. For SCSI disk and tape devices, use the device names
99 \fB"/dev/sd[0\-9]+c"\fP and \fB"/dev/st[0\-9]+c"\fP respectively.
100 Be sure to specify the correct "whole disk" partition letter for
101 your architecture.
102 .\" %ENDIF OS NetBSD OpenBSD
103 .\" %IF OS Solaris
104 .IP \fBSOLARIS\fP: 9
105 Use the forms \fB"/dev/rdsk/c?t?d?s?"\fP for IDE/ATA and SCSI disk
106 devices, and \fB"/dev/rmt/*"\fP for SCSI tape devices.
107 .\" %ENDIF OS Solaris
108 .\" %IF OS Windows Cygwin
109 .IP \fBWINDOWS\fP: 9
110 Use the forms \fB"/dev/sd[a\-z]"\fP for IDE/(S)ATA and SCSI disks
111 "\\\\.\\PhysicalDrive[0\-25]" (where "a" maps to "0").
112 Use \fB"/dev/sd[a\-z][a\-z]"\fP for "\\\\.\\PhysicalDrive[26\-...]".
113 These disks can also be referred to as \fB"/dev/pd[0\-255]"\fP for
114 "\\\\.\\PhysicalDrive[0\-255]".
115 ATA disks can also be referred to as \fB"/dev/hd[a\-z]"\fP for
116 "\\\\.\\PhysicalDrive[0\-25]".
117 Use one the forms \fB"/dev/tape[0\-255]"\fP, \fB"/dev/st[0\-255]"\fP,
118 or \fB"/dev/nst[0\-255]"\fP for SCSI tape drives "\\\\.\\Tape[0\-255]".
119
120 Alternatively, drive letters \fB"X:"\fP or \fB"X:\\"\fP may be used to
121 specify the (\'basic\') disk behind a mounted partition. This does
122 not work with \'dynamic\' disks.
123
124 For disks behind 3ware 9000 controllers use \fB"/dev/sd[a\-z],N"\fP where
125 N specifies the disk number (3ware \'port\') behind the controller
126 providing the logical drive (\'unit\') specified by \fB"/dev/sd[a\-z]"\fP.
127 Alternatively, use \fB"/dev/tw_cli/cx/py"\fP for controller x, port y
128 to run the \'tw_cli\' tool and parse the output. This provides limited
129 monitoring (\'\-i\', \'\-c\', \'\-A\' below) if SMART support is missing
130 in the driver. Use \fB"/dev/tw_cli/stdin"\fP or \fB"/dev/tw_cli/clip"\fP
131 to parse CLI or 3DM output from standard input or clipboard.
132 The option \'\-d 3ware,N\' is not necessary on Windows.
133
134 For disks behind an Intel ICHxR controller with RST driver use
135 \fB"/dev/csmi[0\-9],N"\fP where N specifies the port behind the logical
136 scsi controller "\\\\.\\Scsi[0\-9]:".
137
138 [NEW EXPERIMENTAL SMARTCTL FEATURE] For SATA or SAS disks behind an Areca
139 controller use \fB"/dev/arcmsr[0\-9]"\fP, see \'\-d areca,N[/E]\' below.
140
141 The prefix \fB"/dev/"\fP is optional.
142 .\" %ENDIF OS Windows Cygwin
143 .\" %IF OS OS2
144 .IP \fBOS/2,eComStation\fP: 9
145 Use the form \fB"/dev/hd[a\-z]"\fP for IDE/ATA devices.
146 .\" %ENDIF OS OS2
147 .PP
148 if \'\-\' is specified as the device path, \fBsmartctl\fP reads and
149 interprets it's own debug output from standard input.
150 See \'\-r ataioctl\' below for details.
151 .PP
152 Based on the device path, \fBsmartctl\fP will guess the device type
153 (ATA or SCSI). If necessary, the \'\-d\' option can be used to override
154 this guess
155
156 Note that the printed output of \fBsmartctl\fP displays most numerical
157 values in base 10 (decimal), but some values are displayed in base 16
158 (hexadecimal). To distinguish them, the base 16 values are always
159 displayed with a leading \fB"0x"\fP, for example: "0xff". This man
160 page follows the same convention.
161
162 .SH OPTIONS
163 The options are grouped below into several categories. \fBsmartctl\fP
164 will execute the corresponding commands in the order: INFORMATION,
165 ENABLE/DISABLE, DISPLAY DATA, RUN/ABORT TESTS.
166
167 .TP
168 .B SHOW INFORMATION OPTIONS:
169 .TP
170 .B \-h, \-\-help, \-\-usage
171 Prints a usage message to STDOUT and exits.
172 .TP
173 .B \-V, \-\-version, \-\-copyright, \-\-license
174 Prints version, copyright, license, home page and SVN revision
175 information for your copy of \fBsmartctl\fP to STDOUT and then exits.
176 Please include this information if you are reporting bugs or problems.
177 .TP
178 .B \-i, \-\-info
179 Prints the device model number, serial number, firmware version, and
180 ATA Standard version/revision information. Says if the device
181 supports SMART, and if so, whether SMART support is currently enabled
182 or disabled. If the device supports Logical Block Address mode (LBA
183 mode) print current user drive capacity in bytes. (If drive is has a
184 user protected area reserved, or is "clipped", this may be smaller
185 than the potential maximum drive capacity.) Indicates if the drive is
186 in the smartmontools database (see \'\-v\' options below). If so, the
187 drive model family may also be printed. If \'\-n\' (see below) is
188 specified, the power mode of the drive is printed.
189 .TP
190 .B \-\-identify[=[w][nvb]]
191 [ATA only] Prints an annotated table of the IDENTIFY DEVICE data.
192 By default, only valid words (words not equal to 0x0000 or 0xffff)
193 and nonzero bits and bit fields are printed.
194 This can be changed by the optional argument which consists of one or
195 two characters from the set \'wnvb\'.
196 The character \'w\' enables printing of all 256 words. The character
197 \'n\' suppresses printing of bits, \'v\' enables printing of all bits
198 from valid words, \'b\' enables printing of all bits.
199 For example \'\-\-identify=n\' (valid words, no bits) produces the
200 shortest output and \'\-\-identify=wb\' (all words, all bits) produces
201 the longest output.
202 .TP
203 .B \-a, \-\-all
204 Prints all SMART information about the disk, or TapeAlert information
205 about the tape drive or changer. For ATA devices this is equivalent
206 to
207 .nf
208 \'\-H \-i \-c \-A \-l error \-l selftest \-l selective\'
209 .fi
210 and for SCSI, this is equivalent to
211 .nf
212 \'\-H \-i \-A \-l error \-l selftest\'.
213 .fi
214 Note that for ATA disks this does \fBnot\fP enable the non-SMART options
215 and the SMART options which require support for 48-bit ATA commands.
216 .TP
217 .B \-x, \-\-xall
218 Prints all SMART and non-SMART information about the device. For ATA
219 devices this is equivalent to
220 .nf
221 \'\-H \-i \-g all \-c \-A \-f brief \-l xerror,error \-l xselftest,selftest
222 \-l selective \-l directory \-l scttemp \-l scterc \-l devstat \-l sataphy\'.
223 .fi
224 and for SCSI, this is equivalent to
225 .nf
226 \'\-H \-i \-A \-l error \-l selftest \-l background \-l sasphy\'.
227 .fi
228 .TP
229 .B \-\-scan
230 Scans for devices and prints each device name, device type and protocol
231 ([ATA] or [SCSI]) info. May be used in conjunction with \'\-d TYPE\'
232 to restrict the scan to a specific TYPE. See also info about platform
233 specific device scan and the \fBDEVICESCAN\fP directive on
234 \fBsmartd\fP(8) man page.
235 .TP
236 .B \-\-scan\-open
237 Same as \-\-scan, but also tries to open each device before printing
238 device info. The device open may change the device type due
239 to autodetection (see also \'\-d test\').
240
241 This option can be used to create a draft \fBsmartd.conf\fP file.
242 All options after \'\-\-\' are appended to each output line.
243 For example:
244 .nf
245 smartctl \-\-scan\-open \-\- \-a \-W 4,45,50 \-m admin@work > smartd.conf
246 .fi
247 .TP
248 .B \-g NAME, \-\-get=NAME
249 Get non-SMART device settings. See \'\-s, \-\-set\' below for further info.
250
251 .TP
252 .B RUN-TIME BEHAVIOR OPTIONS:
253 .TP
254 .B \-q TYPE, \-\-quietmode=TYPE
255 Specifies that \fBsmartctl\fP should run in one of the two quiet modes
256 described here. The valid arguments to this option are:
257
258 .I errorsonly
259 \- only print: For the \'\-l error\' option, if nonzero, the number
260 of errors recorded in the SMART error log and the power-on time when
261 they occurred; For the \'\-l selftest\' option, errors recorded in the device
262 self-test log; For the \'\-H\' option, SMART "disk failing" status or device
263 Attributes (pre-failure or usage) which failed either now or in the
264 past; For the \'\-A\' option, device Attributes (pre-failure or usage)
265 which failed either now or in the past.
266
267 .I silent
268 \- print no output. The only way to learn about what was found is to
269 use the exit status of \fBsmartctl\fP (see RETURN VALUES below).
270
271 .I noserial
272 \- Do not print the serial number of the device.
273 .TP
274 .B \-d TYPE, \-\-device=TYPE
275 Specifies the type of the device.
276 The valid arguments to this option are:
277
278 .I auto
279 \- attempt to guess the device type from the device name or from
280 controller type info provided by the operating system or from
281 a matching USB ID entry in the drive database.
282 This is the default.
283
284 .I test
285 \- prints the guessed type, then opens the device and prints the
286 (possibly changed) TYPE name and then exists without performing
287 any further commands.
288
289 .I ata
290 \- the device type is ATA. This prevents
291 \fBsmartctl\fP
292 from issuing SCSI commands to an ATA device.
293
294 .\" %IF NOT OS Darwin
295 .I scsi
296 \- the device type is SCSI. This prevents
297 \fBsmartctl\fP
298 from issuing ATA commands to a SCSI device.
299
300 .I sat[,auto][,N]
301 \- the device type is SCSI to ATA Translation (SAT).
302 This is for ATA disks that have a SCSI to ATA Translation (SAT) Layer
303 (SATL) between the disk and the operating system.
304 SAT defines two ATA PASS THROUGH SCSI commands, one 12 bytes long and
305 the other 16 bytes long. The default is the 16 byte variant which can be
306 overridden with either \'\-d sat,12\' or \'\-d sat,16\'.
307
308 If \'\-d sat,auto\' is specified, device type SAT (for ATA/SATA disks) is
309 only used if the SCSI INQUIRY data reports a SATL (VENDOR: "ATA ").
310 Otherwise device type SCSI (for SCSI/SAS disks) is used.
311
312 .I usbcypress
313 \- this device type is for ATA disks that are behind a Cypress USB to PATA
314 bridge. This will use the ATACB proprietary scsi pass through command.
315 The default SCSI operation code is 0x24, but although it can be overridden
316 with \'\-d usbcypress,0xN\', where N is the scsi operation code,
317 you're running the risk of damage to the device or filesystems on it.
318
319 .I usbjmicron[,p][,x][,PORT]
320 \- this device type is for SATA disks that are behind a JMicron USB to
321 PATA/SATA bridge. The 48-bit ATA commands (required e.g. for \'\-l xerror\',
322 see below) do not work with all of these bridges and are therefore disabled by
323 default. These commands can be enabled by \'\-d usbjmicron,x\'.
324 If two disks are connected to a bridge with two ports, an error message is printed
325 if no PORT is specified.
326 The port can be specified by \'\-d usbjmicron[,x],PORT\' where PORT is 0
327 (master) or 1 (slave). This is not necessary if the device uses a port
328 multiplier to connect multiple disks to one port. The disks appear under
329 separate /dev/ice names then.
330 CAUTION: Specifying \',x\' for a device which does not support it results
331 in I/O errors and may disconnect the drive. The same applies if the specified
332 PORT does not exist or is not connected to a disk.
333
334 [NEW EXPERIMENTAL SMARTCTL FEATURE]
335 The Prolific PL2507/3507 USB bridges with older firmware support a pass-through
336 command similar to JMicron and work with \'\-d usbjmicron,0\'.
337 Newer Prolific firmware requires a modified command which can be selected by
338 \'\-d usbjmicron,p\'.
339 Note that this does not yet support the SMART status command.
340
341 .I usbsunplus
342 \- this device type is for SATA disks that are behind a SunplusIT USB to SATA
343 bridge.
344
345 .\" %ENDIF NOT OS Darwin
346 .\" %IF OS Linux
347 .I marvell
348 \- [Linux only] interact with SATA disks behind Marvell chip-set
349 controllers (using the Marvell rather than libata driver).
350
351 .I megaraid,N
352 \- [Linux only] the device consists of one or more SCSI/SAS disks connected
353 to a MegaRAID controller. The non-negative integer N (in the range of 0 to
354 127 inclusive) denotes which disk on the controller is monitored.
355 Use syntax such as:
356 .nf
357 \fBsmartctl \-a \-d megaraid,2 /dev/sda\fP
358 .fi
359 .nf
360 \fBsmartctl \-a \-d megaraid,0 /dev/sdb\fP
361 .fi
362 .nf
363 \fBsmartctl \-a \-d megaraid,0 /dev/bus/0\fP
364 .fi
365 This interface will also work for Dell PERC controllers.
366 It is possible to set RAID device name as /dev/bus/N, where N is a SCSI bus
367 number.
368
369 The following entry in /proc/devices must exist:
370 .br
371 For PERC2/3/4 controllers: \fBmegadevN\fP
372 .br
373 For PERC5/6 controllers: \fBmegaraid_sas_ioctlN\fP
374
375 .I aacraid,H,L,ID
376 \- [Linux only] [NEW EXPERIMENTAL SMARTCTL FEATURE]
377 the device consists of one or more SCSI/SAS disks connected to an AacRaid controller.
378 The non-negative integers H,L,ID (Host number, Lun, ID) denote which disk
379 on the controller is monitored.
380 Use syntax such as:
381 .nf
382 \fBsmartctl \-a \-d aacraid,0,0,66 /dev/sda\fP
383 .fi
384 .nf
385 \fBsmartctl \-a \-d aacraid,0,0,66 /dev/sdb\fP
386 .fi
387 The L and ID numbers of a disk can be found in /proc/scsi/scsi
388
389 The following entry in /proc/devices must exist: \fBaac\fP.
390 Character device nodes /dev/aacH (H=Host number) are created if required.
391
392 .\" %ENDIF OS Linux
393 .\" %IF OS FreeBSD Linux
394 .I 3ware,N
395 \- [FreeBSD and Linux only] the device consists of one or more ATA disks
396 connected to a 3ware RAID controller. The non-negative integer N
397 (in the range from 0 to 127 inclusive) denotes which disk on the controller
398 is monitored.
399 Use syntax such as:
400 .nf
401 \fBsmartctl \-a \-d 3ware,2 /dev/sda\fP [Linux only]
402 .fi
403 .nf
404 \fBsmartctl \-a \-d 3ware,0 /dev/twe0\fP
405 .fi
406 .nf
407 \fBsmartctl \-a \-d 3ware,1 /dev/twa0\fP
408 .fi
409 .nf
410 \fBsmartctl \-a \-d 3ware,1 /dev/twl0\fP [Linux only]
411 .fi
412 .nf
413 \fBsmartctl \-a \-d 3ware,1 /dev/tws0\fP [FreeBSD only]
414 .fi
415 The first two forms, which refer to devices /dev/sda\-z and /dev/twe0\-15,
416 may be used with 3ware series 6000, 7000, and 8000 series controllers
417 that use the 3x-xxxx driver.
418 \fBNote that the /dev/sda\-z form is deprecated\fP starting with
419 the Linux 2.6 kernel series and may not be supported by the Linux
420 kernel in the near future. The final form, which refers to devices
421 /dev/twa0\-15, must be used with 3ware 9000 series controllers, which
422 use the 3w\-9xxx driver.
423
424 The devices /dev/twl0\-15 [Linux] or /dev/tws0\-15 [FreeBSD] must be used with the 3ware/LSI 9750 series
425 controllers which use the 3w-sas driver.
426
427 Note that if the special character device nodes /dev/tw[ls]?, /dev/twa?
428 and /dev/twe? do not exist, or exist with the incorrect major or minor
429 numbers, smartctl will recreate them on the fly. Typically /dev/twa0
430 refers to the first 9000-series controller, /dev/twa1 refers to the
431 second 9000 series controller, and so on. The /dev/twl0 devices refers
432 to the first 9750 series controller, /dev/twl1 resfers to the second
433 9750 series controller, and so on. Likewise /dev/twe0 refers to
434 the first 6/7/8000-series controller, /dev/twe1 refers to the second
435 6/7/8000 series controller, and so on.
436
437 Note that for the 6/7/8000 controllers, \fBany\fP of the physical
438 disks can be queried or examined using \fBany\fP of the 3ware's SCSI
439 logical device /dev/sd? entries. Thus, if logical device /dev/sda is
440 made up of two physical disks (3ware ports zero and one) and logical
441 device /dev/sdb is made up of two other physical disks (3ware ports
442 two and three) then you can examine the SMART data on \fBany\fP of the
443 four physical disks using \fBeither\fP SCSI device /dev/sda \fBor\fP
444 /dev/sdb. If you need to know which logical SCSI device a particular
445 physical disk (3ware port) is associated with, use the dmesg or SYSLOG
446 output to show which SCSI ID corresponds to a particular 3ware unit,
447 and then use the 3ware CLI or 3dm tool to determine which ports
448 (physical disks) correspond to particular 3ware units.
449
450 If the value of N corresponds to a port that does \fBnot\fP exist on
451 the 3ware controller, or to a port that does not physically have a
452 disk attached to it, the behavior of \fBsmartctl\fP depends upon the
453 specific controller model, firmware, Linux kernel and platform. In
454 some cases you will get a warning message that the device does not
455 exist. In other cases you will be presented with \'void\' data for a
456 non-existent device.
457
458 Note that if the /dev/sd? addressing form is used, then older 3w-xxxx
459 drivers do not pass the "Enable Autosave"
460 (\'\fB\-S on\fP\') and "Enable Automatic Offline" (\'\fB\-o on\fP\')
461 commands to the disk, and produce these types of harmless syslog error
462 messages instead: "\fB3w-xxxx: tw_ioctl(): Passthru size (123392) too
463 big\fP". This can be fixed by upgrading to version 1.02.00.037 or
464 later of the 3w-xxxx driver, or by applying a patch to older
465 versions. Alternatively, use the character device /dev/twe0\-15 interface.
466
467 The selective self-test functions (\'\-t select,A\-B\') are only supported
468 using the character device interface /dev/twl0\-15, /dev/tws0\-15, /dev/twa0\-15 and /dev/twe0\-15.
469 The necessary WRITE LOG commands can not be passed through the SCSI
470 interface.
471
472 .\" %ENDIF OS FreeBSD Linux
473 .\" %IF OS FreeBSD Linux Windows Cygwin
474 .I areca,N
475 \- [FreeBSD, Linux, Windows and Cygwin only] the device consists of one or more SATA disks
476 connected to an Areca SATA RAID controller. The positive integer N (in the range
477 from 1 to 24 inclusive) denotes which disk on the controller is monitored.
478 .\" %ENDIF OS FreeBSD Linux Windows Cygwin
479 .\" %IF OS Linux
480 On Linux use syntax such as:
481 .nf
482 \fBsmartctl \-a \-d areca,2 /dev/sg2\fP
483 .fi
484 .nf
485 \fBsmartctl \-a \-d areca,3 /dev/sg3\fP
486 .fi
487 .\" %ENDIF OS Linux
488 .\" %IF OS FreeBSD
489 On FreeBSD use syntax such as:
490 .nf
491 \fBsmartctl \-a \-d areca,2 /dev/arcmsr1\fP
492 .fi
493 .nf
494 \fBsmartctl \-a \-d areca,3 /dev/arcmsr2\fP
495 .fi
496 .\" %ENDIF OS FreeBSD
497 .\" %IF OS Windows Cygwin
498 [NEW EXPERIMENTAL SMARTCTL FEATURE] On Windows and Cygwin use syntax such as:
499 .nf
500 \fBsmartctl \-a \-d areca,2 /dev/arcmsr0\fP
501 .fi
502 .nf
503 \fBsmartctl \-a \-d areca,3 /dev/arcmsr1\fP
504 .fi
505 .\" %ENDIF OS Windows Cygwin
506 .\" %IF OS FreeBSD Linux Windows Cygwin
507 The first line above addresses the second disk on the first Areca RAID controller.
508 The second line addresses the third disk on the second Areca RAID
509 controller.
510 .\" %ENDIF OS FreeBSD Linux Windows Cygwin
511 .\" %IF OS Linux
512 To help identify the correct device on Linux, use the command:
513 .nf
514 \fBcat /proc/scsi/sg/device_hdr /proc/scsi/sg/devices\fP
515 .fi
516 to show the SCSI generic devices (one per line, starting with
517 /dev/sg0). The correct SCSI generic devices to address for
518 smartmontools are the ones with the type field equal to 3. If the
519 incorrect device is addressed, please read the warning/error messages
520 carefully. They should provide hints about what devices to use.
521 .\" %ENDIF OS Linux
522 .\" %IF OS FreeBSD Linux Windows Cygwin
523
524 Important: the Areca controller must have firmware version 1.46 or
525 later. Lower-numbered firmware versions will give (harmless) SCSI
526 error messages and no SMART information.
527
528 .I areca,N/E
529 \- [FreeBSD, Linux, Windows and Cygwin only] [NEW EXPERIMENTAL SMARTCTL FEATURE] the
530 device consists of one or more SATA or SAS disks connected to an Areca SAS RAID controller.
531 The integer N (range 1 to 128) denotes the channel (slot) and E (range
532 1 to 8) denotes the enclosure.
533 Important: This requires Areca SAS controller firmware version 1.51 or later.
534
535 .\" %ENDIF OS FreeBSD Linux Windows Cygwin
536 .\" %IF OS FreeBSD Linux
537 .I cciss,N
538 \- [FreeBSD and Linux only] the device consists of one or more SCSI/SAS or SATA disks
539 connected to a cciss RAID controller. The non-negative integer N (in the range
540 from 0 to 15 inclusive) denotes which disk on the controller is monitored.
541
542 To look at disks behind HP Smart Array controllers, use syntax
543 such as:
544 .\" %ENDIF OS FreeBSD Linux
545 .\" %IF OS Linux
546 .nf
547 \fBsmartctl \-a \-d cciss,0 /dev/cciss/c0d0\fP (cciss driver under Linux)
548 .fi
549 .nf
550 \fBsmartctl \-a \-d cciss,0 /dev/sg2\fP (hpsa or hpahcisr drivers under Linux)
551 .fi
552 .\" %ENDIF OS Linux
553 .\" %IF OS FreeBSD
554 .nf
555 \fBsmartctl \-a \-d cciss,0 /dev/ciss0\fP (under FreeBSD)
556 .fi
557 .\" %ENDIF OS FreeBSD
558 .\" %IF OS FreeBSD Linux
559
560 .I hpt,L/M/N
561 \- [FreeBSD and Linux only] the device consists of one or more ATA disks
562 connected to a HighPoint RocketRAID controller. The integer L is the
563 controller id, the integer M is the channel number, and the integer N
564 is the PMPort number if it is available. The allowed values of L are
565 from 1 to 4 inclusive, M are from 1 to 128 inclusive and N from 1 to 4
566 if PMPort available. And also these values are limited by the model
567 of the HighPoint RocketRAID controller.
568 Use syntax such as:
569 .\" %ENDIF OS FreeBSD Linux
570 .\" %IF OS Linux
571 .nf
572 \fBsmartctl \-a \-d hpt,1/3 /dev/sda\fP (under Linux)
573 .fi
574 .nf
575 \fBsmartctl \-a \-d hpt,1/2/3 /dev/sda\fP (under Linux)
576 .fi
577 .\" %ENDIF OS Linux
578 .\" %IF OS FreeBSD
579 .nf
580 \fBsmartctl \-a \-d hpt,1/3 /dev/hptrr\fP (under FreeBSD)
581 .fi
582 .nf
583 \fBsmartctl \-a \-d hpt,1/2/3 /dev/hptrr\fP (under FreeBSD)
584 .fi
585 .\" %ENDIF OS FreeBSD
586 .\" %IF OS FreeBSD Linux
587 Note that the /dev/sda\-z form should be the device node which stands for
588 the disks derived from the HighPoint RocketRAID controllers under Linux and
589 under FreeBSD, it is the character device which the driver registered (eg,
590 /dev/hptrr, /dev/hptmv6).
591 .\" %ENDIF OS FreeBSD Linux
592 .TP
593 .B \-T TYPE, \-\-tolerance=TYPE
594 [ATA only] Specifies how tolerant \fBsmartctl\fP should be of ATA and SMART
595 command failures.
596
597 The behavior of \fBsmartctl\fP depends upon whether the command is
598 "\fBoptional\fP" or "\fBmandatory\fP". Here "\fBmandatory\fP" means
599 "required by the ATA Specification if the device implements
600 the SMART command set" and "\fBoptional\fP" means "not required by the
601 ATA Specification even if the device implements the SMART
602 command set." The "\fBmandatory\fP" ATA and SMART commands are: (1)
603 ATA IDENTIFY DEVICE, (2) SMART ENABLE/DISABLE ATTRIBUTE AUTOSAVE, (3)
604 SMART ENABLE/DISABLE, and (4) SMART RETURN STATUS.
605
606 The valid arguments to this option are:
607
608 .I normal
609 \- exit on failure of any \fBmandatory\fP SMART command, and ignore
610 all failures of \fBoptional\fP SMART commands. This is the default.
611 Note that on some devices, issuing unimplemented optional SMART
612 commands doesn\'t cause an error. This can result in misleading
613 \fBsmartctl\fP messages such as "Feature X not implemented", followed
614 shortly by "Feature X: enabled". In most such cases, contrary to the
615 final message, Feature X is \fBnot\fP enabled.
616
617 .I conservative
618 \- exit on failure of any \fBoptional\fP SMART command.
619
620 .I permissive
621 \- ignore failure(s) of \fBmandatory\fP SMART commands. This option
622 may be given more than once. Each additional use of this option will
623 cause one more additional failure to be ignored. Note that the use of
624 this option can lead to messages like "Feature X not supported",
625 followed shortly by "Feature X enable failed". In a few
626 such cases, contrary to the final message, Feature X \fBis\fP enabled.
627
628 .I verypermissive
629 \- equivalent to giving a large number of \'\-T permissive\' options:
630 ignore failures of \fBany number\fP of \fBmandatory\fP SMART commands.
631 Please see the note above.
632 .TP
633 .B \-b TYPE, \-\-badsum=TYPE
634 [ATA only] Specifies the action \fBsmartctl\fP should take if a checksum
635 error is detected in the: (1) Device Identity Structure, (2) SMART
636 Self-Test Log Structure, (3) SMART Attribute Value Structure, (4) SMART
637 Attribute Threshold Structure, or (5) ATA Error Log Structure.
638
639 The valid arguments to this option are:
640
641 .I warn
642 \- report the incorrect checksum but carry on in spite of it. This is the
643 default.
644
645 .I exit
646 \- exit \fBsmartctl\fP.
647
648 .I ignore
649 \- continue silently without issuing a warning.
650 .TP
651 .B \-r TYPE, \-\-report=TYPE
652 Intended primarily to help \fBsmartmontools\fP developers understand
653 the behavior of \fBsmartmontools\fP on non-conforming or poorly
654 conforming hardware. This option reports details of \fBsmartctl\fP
655 transactions with the device. The option can be used multiple times.
656 When used just once, it shows a record of the ioctl() transactions
657 with the device. When used more than once, the detail of these
658 ioctl() transactions are reported in greater detail. The valid
659 arguments to this option are:
660
661 .I ioctl
662 \- report all ioctl() transactions.
663
664 .I ataioctl
665 \- report only ioctl() transactions with ATA devices.
666
667 .I scsiioctl
668 \- report only ioctl() transactions with SCSI devices. Invoking this once
669 shows the SCSI commands in hex and the corresponding status. Invoking
670 it a second time adds a hex listing of the first 64 bytes of data send to,
671 or received from the device.
672
673 Any argument may include a positive integer to specify the level of detail
674 that should be reported. The argument should be followed by a comma then
675 the integer with no spaces. For example,
676 .I ataioctl,2
677 The default
678 level is 1, so \'\-r ataioctl,1\' and \'\-r ataioctl\' are equivalent.
679
680 For testing purposes, the output of \'\-r ataioctl,2\' can later be parsed
681 by \fBsmartctl\fP itself if \'\-\' is used as device path argument.
682 The ATA command input parameters, sector data and return values are
683 reconstructed from the debug report read from stdin.
684 Then \fBsmartctl\fP internally simulates an ATA device with the same
685 behaviour. This is does not work for SCSI devices yet.
686 .TP
687 .B \-n POWERMODE, \-\-nocheck=POWERMODE
688 [ATA only] Specifies if \fBsmartctl\fP should exit before performing any
689 checks when the device is in a low-power mode. It may be used to prevent
690 a disk from being spun-up by \fBsmartctl\fP. The power mode is ignored by
691 default. A nonzero exit status is returned if the device is in one of the
692 specified low-power modes (see RETURN VALUES below).
693
694 Note: If this option is used it may also be necessary to specify the device
695 type with the \'\-d\' option. Otherwise the device may spin up due to
696 commands issued during device type autodetection.
697
698 The valid arguments to this option are:
699
700 .I never
701 \- check the device always, but print the power mode if \'\-i\' is
702 specified.
703
704 .I sleep
705 \- check the device unless it is in SLEEP mode.
706
707 .I standby
708 \- check the device unless it is in SLEEP or STANDBY mode. In
709 these modes most disks are not spinning, so if you want to prevent
710 a disk from spinning up, this is probably what you want.
711
712 .I idle
713 \- check the device unless it is in SLEEP, STANDBY or IDLE mode.
714 In the IDLE state, most disks are still spinning, so this is probably
715 not what you want.
716
717 .TP
718 .B SMART FEATURE ENABLE/DISABLE COMMANDS:
719 .IP
720 .B Note:
721 if multiple options are used to both enable and disable a
722 feature, then
723 .B both
724 the enable and disable commands will be issued. The enable command
725 will always be issued
726 .B before
727 the corresponding disable command.
728 .TP
729 .B \-s VALUE, \-\-smart=VALUE
730 Enables or disables SMART on device. The valid arguments to
731 this option are \fIon\fP and \fIoff\fP. Note that the command \'\-s on\'
732 (perhaps used with with the \'\-o on\' and \'\-S on\' options) should be
733 placed in a start-up script for your machine, for example in rc.local or
734 rc.sysinit. In principle the SMART feature settings are preserved over
735 power-cycling, but it doesn\'t hurt to be sure. It is not necessary (or
736 useful) to enable SMART to see the TapeAlert messages.
737 .TP
738 .B \-o VALUE, \-\-offlineauto=VALUE
739 [ATA only] Enables or disables SMART automatic offline test, which scans the
740 drive every four hours for disk defects. This command can be given during
741 normal system operation. The valid arguments to this option are \fIon\fP
742 and \fIoff\fP.
743
744 Note that the SMART automatic offline test command is listed as
745 "Obsolete" in every version of the ATA and ATA/ATAPI Specifications.
746 It was originally part of the SFF-8035i Revision 2.0 specification,
747 but was never part of any ATA specification. However it is
748 implemented and used by many vendors.
749 You can tell if automatic offline testing is supported by seeing if
750 this command enables and disables it, as indicated by the \'Auto
751 Offline Data Collection\' part of the SMART capabilities report
752 (displayed with \'\-c\').
753
754 SMART provides \fBthree\fP basic categories of testing. The
755 \fBfirst\fP category, called "online" testing, has no effect on the
756 performance of the device. It is turned on by the \'\-s on\' option.
757
758 The \fBsecond\fP category of testing is called "offline" testing. This
759 type of test can, in principle, degrade the device performance. The
760 \'\-o on\' option causes this offline testing to be carried out,
761 automatically, on a regular scheduled basis. Normally, the disk will
762 suspend offline testing while disk accesses are taking place, and then
763 automatically resume it when the disk would otherwise be idle, so in
764 practice it has little effect. Note that a one-time offline test can
765 also be carried out immediately upon receipt of a user command. See
766 the \'\-t offline\' option below, which causes a one-time offline test
767 to be carried out immediately.
768
769 The choice (made by the SFF-8035i and ATA specification authors) of
770 the word \fItesting\fP for these first two categories is unfortunate,
771 and often leads to confusion. In fact these first two categories of
772 online and offline testing could have been more accurately described
773 as online and offline \fBdata collection\fP.
774
775 The results of this automatic or immediate offline testing (data
776 collection) are reflected in the values of the SMART Attributes.
777 Thus, if problems or errors are detected, the values of these
778 Attributes will go below their failure thresholds; some types of
779 errors may also appear in the SMART error log. These are visible with
780 the \'\-A\' and \'\-l error\' options respectively.
781
782 Some SMART attribute values are updated only during off-line data
783 collection activities; the rest are updated during normal operation of
784 the device or during both normal operation and off-line testing. The
785 Attribute value table produced by the \'\-A\' option indicates this in
786 the UPDATED column. Attributes of the first type are labeled
787 "Offline" and Attributes of the second type are labeled "Always".
788
789 The \fBthird\fP category of testing (and the \fIonly\fP category for
790 which the word \'testing\' is really an appropriate choice) is "self"
791 testing. This third type of test is only performed (immediately) when
792 a command to run it is issued. The \'\-t\' and \'\-X\' options can be
793 used to carry out and abort such self-tests; please see below for
794 further details.
795
796 Any errors detected in the self testing will be shown in the
797 SMART self-test log, which can be examined using the \'\-l selftest\'
798 option.
799
800 \fBNote:\fP in this manual page, the word \fB"Test"\fP is used in
801 connection with the second category just described, e.g. for the
802 "offline" testing. The words \fB"Self-test"\fP are used in
803 connection with the third category.
804 .TP
805 .B \-S VALUE, \-\-saveauto=VALUE
806 [ATA] Enables or disables SMART autosave of device vendor-specific
807 Attributes. The valid arguments to this option are \fIon\fP
808 and \fIoff\fP. Note that this feature is preserved across disk power
809 cycles, so you should only need to issue it once.
810
811 The ATA standard does not specify a method to check whether SMART
812 autosave is enabled. Unlike SCSI (below), smartctl is unable to print
813 a warning if autosave is disabled.
814
815 [SCSI] For SCSI devices this toggles the value of the Global Logging
816 Target Save Disabled (GLTSD) bit in the Control Mode Page. Some disk
817 manufacturers set this bit by default. This prevents error counters,
818 power-up hours and other useful data from being placed in non-volatile
819 storage, so these values may be reset to zero the next time the device
820 is power-cycled. If the GLTSD bit is set then \'smartctl \-a\' will
821 issue a warning. Use \fIon\fP to clear the GLTSD bit and thus enable
822 saving counters to non-volatile storage. For extreme streaming-video
823 type applications you might consider using \fIoff\fP to set the GLTSD
824 bit.
825 .TP
826 .B \-g NAME, \-\-get=NAME, \-s NAME[,VALUE], \-\-set=NAME[,VALUE]
827 Gets/sets non-SMART device settings.
828 Note that the \'\-\-set\' option shares its short option \'\-s\' with
829 \'\-\-smart\'. Valid arguments are:
830
831 .I all
832 \- Gets all values. This is equivalent to
833 .nf
834 \'-g aam -g apm -g lookahead -g security -g wcache\'
835 .fi
836
837 .I aam[,N|off]
838 \- [ATA only] Gets/sets the Automatic Acoustic Management (AAM) feature
839 (if supported). A value of 128 sets the most quiet (slowest) mode and 254
840 the fastest (loudest) mode, \'off\' disables AAM. Devices may support
841 intermediate levels. Values below 128 are defined as vendor specific (0)
842 or retired (1 to 127). Note that the AAM feature was declared obsolete in
843 ATA ACS-2 Revision 4a (Dec 2010).
844
845 .I apm[,N|off]
846 \- [ATA only] Gets/sets the Advanced Power Management (APM) feature on
847 device (if supported). If a value between 1 and 254 is provided, it will
848 attempt to enable APM and set the specified value, \'off\' disables APM.
849 Note the actual behavior depends on the drive, for example some drives disable
850 APM if their value is set above 128. Values below 128 are supposed to allow
851 drive spindown, values 128 and above adjust only head-parking frequency,
852 although the actual behavior defined is also vendor-specific.
853
854 .I lookahead[,on|off]
855 \- [ATA only] Gets/sets the read look-ahead feature (if supported).
856 Read look-ahead is usually enabled by default.
857
858 .I security
859 \- [ATA only] Gets the status of ATA Security feature (if supported).
860 If ATA Security is enabled an ATA user password is set. The drive will be
861 locked on next reset then.
862
863 .I security-freeze
864 \- [ATA only] Sets ATA Security feature to frozen mode. This prevents that
865 the drive accepts any security commands until next reset. Note that the
866 frozen mode may already be set by BIOS or OS.
867
868 .I standby,[N|off]
869 \- [ATA only] Sets the standby (spindown) timer and places the drive in the
870 IDLE mode. A value of 0 or \'off\' disables the standby timer.
871 Values from 1 to 240 specify timeouts from 5 seconds to 20 minutes in 5
872 second increments. Values from 241 to 251 specify timeouts from 30 minutes
873 to 330 minutes in 30 minute increments. Value 252 specifies 21 minutes.
874 Value 253 specifies a vendor specific time between 8 and 12 hours. Value
875 255 specifies 21 minutes and 15 seconds. Some drives may use a vendor
876 specific interpretation for the values. Note that there is no get option
877 because ATA standards do not specify a method to read the standby timer.
878
879 .I standby,now
880 \- [ATA only] Places the drive in the STANDBY mode. This usually spins down
881 the drive. The setting of the standby timer is not affected.
882
883 .I wcache[,on|off]
884 \- [ATA] Gets/sets the volatile write cache feature (if supported).
885 The write cache is usually enabled by default.
886
887 .I wcache[,on|off]
888 \- [SCSI] [NEW EXPERIMENTAL SMARTCTL FEATURE]
889 Gets/sets the \'Write Cache Enable\' (WCE) bit (if supported).
890 The write cache is usually enabled by default.
891
892 .I wcreorder[,on|off]
893 \- [ATA only] [NEW EXPERIMENTAL SMARTCTL FEATURE]
894 Gets/sets Write Cache Reordering.
895 If it is disabled (off), disk write scheduling is executed on a
896 first-in-first-out (FIFO) basis. If Write Cache Reordering is enabled (on),
897 then disk write scheduling may be reordered by the drive. If write cache is
898 disabled, the current Write Cache Reordering state is remembered but has
899 no effect on non-cached writes, which are always written in the order received.
900 The state of Write Cache Reordering has no effect on either NCQ or LCQ queued
901 commands.
902
903 .I rcache[,on|off]
904 \- [SCSI only] [NEW EXPERIMENTAL SMARTCTL FEATURE]
905 Gets/sets the \'Read Cache Disable\' (RCE) bit. \'Off\' value disables read cache
906 (if supported).
907 The read cache is usually enabled by default.
908
909 .TP
910 .B SMART READ AND DISPLAY DATA OPTIONS:
911 .TP
912 .B \-H, \-\-health
913 Check: Ask the device to report its SMART health status or pending
914 TapeAlert messages. SMART status is based on
915 information that it has gathered from online and offline
916 tests, which were used to determine/update its
917 SMART vendor-specific Attribute values. TapeAlert status is obtained
918 by reading the TapeAlert log page.
919
920 If the device reports failing health status, this means
921 .B either
922 that the device has already failed,
923 .B or
924 that it is predicting its own failure within the next 24 hours. If
925 this happens, use the \'\-a\' option to get more information, and
926 .B get your data off the disk and to someplace safe as soon as you can.
927 .TP
928 .B \-c, \-\-capabilities
929 [ATA only] Prints only the generic SMART capabilities. These
930 show what SMART features are implemented and how the device will
931 respond to some of the different SMART commands. For example it
932 shows if the device logs errors, if it supports offline surface
933 scanning, and so on. If the device can carry out self-tests, this
934 option also shows the estimated time required to run those tests.
935
936 Note that the time required to run the Self-tests (listed in minutes)
937 are fixed. However the time required to run the Immediate Offline
938 Test (listed in seconds) is variable. This means that if you issue a
939 command to perform an Immediate Offline test with the \'\-t offline\' option,
940 then the time may jump to a larger value and then count down as the
941 Immediate Offline Test is carried out. Please see REFERENCES below
942 for further information about the the flags and capabilities described
943 by this option.
944 .TP
945 .B \-A, \-\-attributes
946 [ATA] Prints only the vendor specific SMART Attributes. The Attributes
947 are numbered from 1 to 253 and have specific names and ID numbers. For
948 example Attribute 12 is "power cycle count": how many times has the
949 disk been powered up.
950
951 Each Attribute has a "Raw" value, printed under the heading
952 "RAW_VALUE", and a "Normalized" value printed under the heading
953 "VALUE". [Note: \fBsmartctl\fP prints these values in base-10.] In
954 the example just given, the "Raw Value" for Attribute 12 would be the
955 actual number of times that the disk has been power-cycled, for
956 example 365 if the disk has been turned on once per day for exactly
957 one year. Each vendor uses their own algorithm to convert this "Raw"
958 value to a "Normalized" value in the range from 1 to 254. Please keep
959 in mind that \fBsmartctl\fP only reports the different Attribute
960 types, values, and thresholds as read from the device. It does
961 \fBnot\fP carry out the conversion between "Raw" and "Normalized"
962 values: this is done by the disk\'s firmware.
963
964 The conversion from Raw value to a quantity with physical units is
965 not specified by the SMART standard. In most cases, the values printed
966 by \fBsmartctl\fP are sensible. For example the temperature Attribute
967 generally has its raw value equal to the temperature in Celsius.
968 However in some cases vendors use unusual conventions. For example
969 the Hitachi disk on my laptop reports its power-on hours in minutes,
970 not hours. Some IBM disks track three temperatures rather than one, in
971 their raw values. And so on.
972
973 Each Attribute also has a Threshold value (whose range is 0 to 255)
974 which is printed under the heading "THRESH". If the Normalized value
975 is \fBless than or equal to\fP the Threshold value, then the Attribute
976 is said to have failed. If the Attribute is a pre-failure Attribute,
977 then disk failure is imminent.
978
979 Each Attribute also has a "Worst" value shown under the heading
980 "WORST". This is the smallest (closest to failure) value that the
981 disk has recorded at any time during its lifetime when SMART was
982 enabled. [Note however that some vendors firmware may actually
983 \fBincrease\fP the "Worst" value for some "rate-type" Attributes.]
984
985 The Attribute table printed out by \fBsmartctl\fP also shows the
986 "TYPE" of the Attribute. Attributes are one of two possible types:
987 Pre-failure or Old age. Pre-failure Attributes are ones which, if
988 less than or equal to their threshold values, indicate pending disk
989 failure. Old age, or usage Attributes, are ones which indicate
990 end-of-product life from old-age or normal aging and wearout, if
991 the Attribute value is less than or equal to the threshold. \fBPlease
992 note\fP: the fact that an Attribute is of type 'Pre-fail' does
993 \fBnot\fP mean that your disk is about to fail! It only has this
994 meaning if the Attribute\'s current Normalized value is less than or
995 equal to the threshold value.
996
997 If the Attribute\'s current Normalized value is less than or equal to
998 the threshold value, then the "WHEN_FAILED" column will display
999 "FAILING_NOW". If not, but the worst recorded value is less than or
1000 equal to the threshold value, then this column will display
1001 "In_the_past". If the "WHEN_FAILED" column has no entry (indicated by
1002 a dash: \'\-\') then this Attribute is OK now (not failing) and has
1003 also never failed in the past.
1004
1005 The table column labeled "UPDATED" shows if the SMART Attribute values
1006 are updated during both normal operation and off-line testing, or
1007 only during offline testing. The former are labeled "Always" and the
1008 latter are labeled "Offline".
1009
1010 So to summarize: the Raw Attribute values are the ones that might have
1011 a real physical interpretation, such as "Temperature Celsius",
1012 "Hours", or "Start-Stop Cycles". Each manufacturer converts these,
1013 using their detailed knowledge of the disk\'s operations and failure
1014 modes, to Normalized Attribute values in the range 1\-254. The
1015 current and worst (lowest measured) of these Normalized Attribute
1016 values are stored on the disk, along with a Threshold value that the
1017 manufacturer has determined will indicate that the disk is going to
1018 fail, or that it has exceeded its design age or aging limit.
1019 \fBsmartctl\fP does \fBnot\fP calculate any of the Attribute values,
1020 thresholds, or types, it merely reports them from the SMART data on
1021 the device.
1022
1023 Note that starting with ATA/ATAPI-4, revision 4, the meaning of these
1024 Attribute fields has been made entirely vendor-specific. However most
1025 newer ATA/SATA disks seem to respect their meaning, so we have retained
1026 the option of printing the Attribute values.
1027
1028 Solid-state drives use different meanings for some of the attributes.
1029 In this case the attribute name printed by smartctl is incorrect unless
1030 the drive is already in the smartmontools drive database.
1031
1032 [SCSI] For SCSI devices the "attributes" are obtained from the temperature
1033 and start-stop cycle counter log pages. Certain vendor specific
1034 attributes are listed if recognised. The attributes are output in a
1035 relatively free format (compared with ATA disk attributes).
1036 .TP
1037 .B \-f FORMAT, \-\-format=FORMAT
1038 [ATA only] Selects the output format of the attributes:
1039
1040 .I old
1041 \- Old smartctl format. This is the default unless the \'\-x\' option is
1042 specified.
1043
1044 .I brief
1045 \- New format which fits into 80 colums (except in some rare cases).
1046 This format also decodes four additional attribute flags.
1047 This is the default if the '\-x\' option is specified.
1048
1049 .I hex,id
1050 \- Print all attribute IDs as hexadecimal numbers.
1051
1052 .I hex,val
1053 \- Print all normalized values as hexadecimal numbers.
1054
1055 .I hex
1056 \- Same as \'\-f hex,id \-f hex,val\'.
1057 .TP
1058 .B \-l TYPE, \-\-log=TYPE
1059 Prints either the SMART Error Log, the SMART Self-Test Log, the SMART
1060 Selective Self-Test Log [ATA only], the Log Directory [ATA only], or
1061 the Background Scan Results Log [SCSI only].
1062 The valid arguments to this option are:
1063
1064 .I error
1065 \- [ATA] prints the Summary SMART error log. SMART disks maintain a log
1066 of the most recent five non-trivial errors. For each of these errors, the
1067 disk power-on lifetime at which the error occurred is recorded, as is
1068 the device status (idle, standby, etc) at the time of the error. For
1069 some common types of errors, the Error Register (ER) and Status
1070 Register (SR) values are decoded and printed as text. The meanings of these
1071 are:
1072 .nf
1073 \fBABRT\fP: Command \fBAB\fPo\fBRT\fPed
1074 \fBAMNF\fP: \fBA\fPddress \fBM\fPark \fBN\fPot \fBF\fPound
1075 \fBCCTO\fP: \fBC\fPommand \fBC\fPompletion \fBT\fPimed \fBO\fPut
1076 \fBEOM\fP: \fBE\fPnd \fBO\fPf \fBM\fPedia
1077 \fBICRC\fP: \fBI\fPnterface \fBC\fPyclic \fBR\fPedundancy \fBC\fPode (CRC) error
1078 \fBIDNF\fP: \fBID\fPentity \fBN\fPot \fBF\fPound
1079 \fBILI\fP: (packet command-set specific)
1080 \fBMC\fP: \fBM\fPedia \fBC\fPhanged
1081 \fBMCR\fP: \fBM\fPedia \fBC\fPhange \fBR\fPequest
1082 \fBNM\fP: \fBN\fPo \fBM\fPedia
1083 \fBobs\fP: \fBobs\fPolete
1084 \fBTK0NF\fP: \fBT\fPrac\fBK 0 N\fPot \fBF\fPound
1085 \fBUNC\fP: \fBUNC\fPorrectable Error in Data
1086 \fBWP\fP: Media is \fBW\fPrite \fBP\fProtected
1087 .fi
1088 In addition, up to the last five commands that preceded the error are
1089 listed, along with a timestamp measured from the start of the
1090 corresponding power cycle. This is displayed in the form
1091 Dd+HH:MM:SS.msec where D is the number of days, HH is hours, MM is
1092 minutes, SS is seconds and msec is milliseconds. [Note: this time
1093 stamp wraps after 2^32 milliseconds, or 49 days 17 hours 2 minutes and
1094 47.296 seconds.] The key ATA disk registers are also recorded in the
1095 log. The final column of the error log is a text-string description
1096 of the ATA command defined by the Command Register (CR) and Feature
1097 Register (FR) values. Commands that are obsolete in the most current
1098 spec are listed like this: \fBREAD LONG (w/ retry) [OBS-4]\fP,
1099 indicating that the command became obsolete with or in the ATA-4
1100 specification. Similarly, the notation \fB[RET\-\fP\fIN\fP\fB]\fP is
1101 used to indicate that a command was retired in the ATA-\fIN\fP
1102 specification. Some commands are not defined in any version of the
1103 ATA specification but are in common use nonetheless; these are marked
1104 \fB[NS]\fP, meaning non-standard.
1105
1106 The ATA Specification (ATA ACS-2 Revision 7, Section A.7.1) says:
1107 \fB"Error log data structures shall include, but are not limited to,
1108 Uncorrectable errors, ID Not Found errors for which the LBA requested was
1109 valid, servo errors, and write fault errors. Error log data structures
1110 shall not include errors attributed to the receipt of faulty commands."\fP
1111 The definitions of these terms are:
1112 .br
1113 \fBUNC\fP (\fBUNC\fPorrectable): data is uncorrectable. This refers
1114 to data which has been read from the disk, but for which the Error
1115 Checking and Correction (ECC) codes are inconsistent. In effect, this
1116 means that the data can not be read.
1117 .br
1118 \fBIDNF\fP (\fBID N\fPot \fBF\fPound): user-accessible address could
1119 not be found. For READ LOG type commands, \fBIDNF\fP can also indicate
1120 that a device data log structure checksum was incorrect.
1121
1122 If the command that caused the error was a READ or WRITE command, then
1123 the Logical Block Address (LBA) at which the error occurred will be
1124 printed in base 10 and base 16. The LBA is a linear address, which
1125 counts 512-byte sectors on the disk, starting from zero. (Because of
1126 the limitations of the SMART error log, if the LBA is greater than
1127 0xfffffff, then either no error log entry will be made, or the error
1128 log entry will have an incorrect LBA. This may happen for drives with
1129 a capacity greater than 128 GiB or 137 GB.) On Linux systems the
1130 smartmontools web page has instructions about how to convert the LBA
1131 address to the name of the disk file containing the erroneous disk
1132 sector.
1133
1134 Please note that some manufacturers \fBignore\fP the ATA
1135 specifications, and make entries in the error log if the device
1136 receives a command which is not implemented or is not valid.
1137
1138 .I error
1139 \- [SCSI] prints the error counter log pages for reads, write and verifies.
1140 The verify row is only output if it has an element other than zero.
1141
1142 .I xerror[,NUM][,error]
1143 \- [ATA only] prints the Extended Comprehensive SMART error log
1144 (General Purpose Log address 0x03). Unlike the Summary SMART error
1145 log (see \'\-l error\' above), it provides sufficient space to log
1146 the contents of the 48-bit LBA register set introduced with ATA-6.
1147 It also supports logs with more than one sector. Each sector holds
1148 up to 4 log entries. The actual number of log sectors is vendor
1149 specific.
1150
1151 Only the 8 most recent error log entries are printed by default.
1152 This number can be changed by the optional parameter NUM.
1153
1154 If ',error' is appended and the Extended Comprehensive SMART error
1155 log is not supported, the Summary SMART self-test log is printed.
1156
1157 Please note that recent drives may report errors only in the Extended
1158 Comprehensive SMART error log. The Summary SMART error log may be reported
1159 as supported but is always empty then.
1160
1161 .I selftest
1162 \- [ATA] prints the SMART self-test log. The disk maintains a self-test
1163 log showing the results of the self tests, which can be run using the
1164 \'\-t\' option described below. For each of the most recent
1165 twenty-one self-tests, the log shows the type of test (short or
1166 extended, off-line or captive) and the final status of the test. If
1167 the test did not complete successfully, then the percentage of the
1168 test remaining is shown. The time at which the test took place,
1169 measured in hours of disk lifetime, is also printed. [Note: this time
1170 stamp wraps after 2^16 hours, or 2730 days and 16 hours, or about 7.5
1171 years.] If any errors were detected, the Logical Block Address (LBA)
1172 of the first error is printed in decimal notation. On Linux systems the
1173 smartmontools web page has instructions about how to convert this LBA
1174 address to the name of the disk file containing the erroneous block.
1175
1176 .I selftest
1177 \- [SCSI] the self-test log for a SCSI device has a slightly different
1178 format than for an ATA device. For each of the most recent twenty
1179 self-tests, it shows the type of test and the status (final or in
1180 progress) of the test. SCSI standards use the terms "foreground" and
1181 "background" (rather than ATA\'s corresponding "captive" and
1182 "off-line") and "short" and "long" (rather than ATA\'s corresponding
1183 "short" and "extended") to describe the type of the test. The printed
1184 segment number is only relevant when a test fails in the third or
1185 later test segment. It identifies the test that failed and consists
1186 of either the number of the segment that failed during the test, or
1187 the number of the test that failed and the number of the segment in
1188 which the test was run, using a vendor-specific method of putting both
1189 numbers into a single byte. The Logical Block Address (LBA) of the
1190 first error is printed in hexadecimal notation. On Linux systems the
1191 smartmontools web page has instructions about how to convert this LBA
1192 address to the name of the disk file containing the erroneous block.
1193 If provided, the SCSI Sense Key (SK), Additional Sense Code (ASC) and
1194 Additional Sense Code Qualifier (ASQ) are also printed. The self tests
1195 can be run using the \'\-t\' option described below (using the ATA
1196 test terminology).
1197
1198 .I xselftest[,NUM][,selftest]
1199 \- [ATA only] prints the Extended SMART self-test log (General Purpose
1200 Log address 0x07). Unlike the SMART self-test log (see \'\-l selftest\'
1201 above), it supports 48-bit LBA and logs with more than one sector.
1202 Each sector holds up to 19 log entries. The actual number of log sectors
1203 is vendor specific.
1204
1205 Only the 25 most recent log entries are printed by default. This number
1206 can be changed by the optional parameter NUM.
1207
1208 If ',selftest' is appended and the Extended SMART self-test log is not
1209 supported, the old SMART self-test log is printed.
1210
1211 .I selective
1212 \- [ATA only] Please see the \'\-t select\' option below for a
1213 description of selective self-tests. The selective self-test log
1214 shows the start/end Logical Block Addresses (LBA) of each of the five
1215 test spans, and their current test status. If the span is being
1216 tested or the remainder of the disk is being read-scanned, the
1217 current 65536-sector block of LBAs being tested is also displayed.
1218 The selective self-test log also shows if a read-scan of the
1219 remainder of the disk will be carried out after the selective
1220 self-test has completed (see \'\-t afterselect\' option) and the time
1221 delay before restarting this read-scan if it is interrupted (see
1222 \'\-t pending\' option).
1223
1224 .I directory[,gs]
1225 \- [ATA only] if the device supports the General Purpose Logging feature
1226 set (ATA-6 and above) then this prints the Log Directory (the log at
1227 address 0). The Log Directory shows what logs are available and their
1228 length in sectors (512 bytes). The contents of the logs at address 1
1229 [Summary SMART error log] and at address 6 [SMART self-test log] may
1230 be printed using the previously-described
1231 .I error
1232 and
1233 .I selftest
1234 arguments to this option.
1235 If your version of smartctl supports 48-bit ATA commands, both the
1236 General Purpose Log (GPL) and SMART Log (SL) directories are printed in
1237 one combined table. The output can be restricted to the GPL directory or
1238 SL directory by \'\-l directory,q\' or \'\-l directory,s\' respectively.
1239
1240 .I background
1241 \- [SCSI only] the background scan results log outputs information derived
1242 from Background Media Scans (BMS) done after power up and/or periodically
1243 (e.g. every 24 hours) on recent SCSI disks. If supported, the BMS status
1244 is output first, indicating whether a background scan is currently
1245 underway (and if so a progress percentage), the amount of time the disk
1246 has been powered up and the number of scans already completed. Then there
1247 is a header and a line for each background scan "event". These will
1248 typically be either recovered or unrecoverable errors. That latter group
1249 may need some attention. There is a description of the background scan
1250 mechanism in section 4.18 of SBC-3 revision 6 (see www.t10.org ).
1251
1252 .I scttemp, scttempsts, scttemphist
1253 \- [ATA only] prints the disk temperature information provided by the
1254 SMART Command Transport (SCT) commands.
1255 The option \'scttempsts\' prints current temperature and temperature
1256 ranges returned by the SCT Status command, \'scttemphist\' prints
1257 temperature limits and the temperature history table returned by
1258 the SCT Data Table command, and \'scttemp\' prints both.
1259 The temperature values are preserved across power cycles.
1260 The logging interval can be configured with the
1261 \'\-l scttempint,N[,p]\' option, see below.
1262 The SCT commands were introduced in ATA8-ACS and were also
1263 supported by many ATA-7 disks.
1264
1265 .I scttempint,N[,p]
1266 \- [ATA only] clears the SCT temperature history table and sets the
1267 time interval for temperature logging to N minutes.
1268 If \',p\' is specified, the setting is preserved across power cycles.
1269 Otherwise, the setting is volatile and will be reverted to the last
1270 non-volatile setting by the next hard reset. The default interval
1271 is vendor specific, typical values are 1, 2, or 5 minutes.
1272
1273 .I scterc[,READTIME,WRITETIME]
1274 \- [ATA only] prints values and descriptions of the SCT Error Recovery
1275 Control settings. These are equivalent to TLER (as used by Western
1276 Digital), CCTL (as used by Samsung and Hitachi/HGST) and ERC (as used by
1277 Seagate). READTIME and WRITETIME arguments (deciseconds) set the
1278 specified values. Values of 0 disable the feature, other values less
1279 than 65 are probably not supported. For RAID configurations, this is
1280 typically set to 70,70 deciseconds.
1281
1282 .I devstat[,PAGE]
1283 \- [ATA only] prints values and descriptions of the ATA Device Statistics
1284 log pages (General Purpose Log address 0x04). If no PAGE number is specified,
1285 entries from all supported pages are printed. If PAGE 0 is specified,
1286 the list of supported pages is printed. Device Statistics was
1287 introduced in ACS-2 and is only supported by some recent devices.
1288
1289 .I sataphy[,reset]
1290 \- [SATA only] prints values and descriptions of the SATA Phy Event
1291 Counters (General Purpose Log address 0x11). If \'\-l sataphy,reset\'
1292 is specified, all counters are reset after reading the values.
1293 This also works for SATA devices with Packet interface like CD/DVD
1294 drives.
1295
1296 .I sasphy[,reset]
1297 \- [SAS (SCSI) only] prints values and descriptions of the SAS (SSP)
1298 Protocol Specific log page (log page 0x18). If \'\-l sasphy,reset\'
1299 is specified, all counters are reset after reading the values.
1300
1301 .I gplog,ADDR[,FIRST[\-LAST|+SIZE]]
1302 \- [ATA only] prints a hex dump of any log accessible via General
1303 Purpose Logging (GPL) feature. The log address ADDR is the hex address
1304 listed in the log directory (see \'\-l directory\' above).
1305 The range of log sectors (pages) can be specified by decimal values
1306 FIRST\-LAST or FIRST+SIZE. FIRST defaults to 0, SIZE defaults to 1.
1307 LAST can be set to \'max\' to specify the last page of the log.
1308
1309 .I smartlog,ADDR[,FIRST[\-LAST|+SIZE]]
1310 \- [ATA only] prints a hex dump of any log accessible via SMART Read
1311 Log command. See \'\-l gplog,...\' above for parameter syntax.
1312
1313 For example, all these commands:
1314 .nf
1315 smartctl \-l gplog,0x80,10-15 /dev/sda
1316 smartctl \-l gplog,0x80,10+6 /dev/sda
1317 smartctl \-l smartlog,0x80,10-15 /dev/sda
1318 .fi
1319 print pages 10-15 of log 0x80 (first host vendor specific log).
1320
1321 The hex dump format is compatible with the \'xxd \-r\' command.
1322 This command:
1323 .nf
1324 smartctl \-l gplog,0x11 /dev/sda | grep ^0 | xxd -r >log.bin
1325 .fi
1326 writes a binary representation of the one sector log 0x11
1327 (SATA Phy Event Counters) to file log.bin.
1328
1329 .I ssd
1330 \- [ATA] prints the Solid State Device Statistics log page.
1331 This has the same effect as \'\-l devstat,7\', see above.
1332
1333 .I ssd
1334 \- [SCSI] prints the Solid State Media percentage used endurance
1335 indicator. A value of 0 indicates as new condition while 100
1336 indicates the device is at the end of its lifetime as projected by the
1337 manufacturer. The value may reach 255.
1338 .TP
1339 .B \-v ID,FORMAT[:BYTEORDER][,NAME], \-\-vendorattribute=ID,FORMAT[:BYTEORDER][,NAME]
1340 [ATA only] Sets a vendor-specific raw value print FORMAT, an optional
1341 BYTEORDER and an optional NAME for Attribute ID.
1342 This option may be used multiple times.
1343
1344 The Attribute ID can be in the range 1 to 255. If \'N\' is specified as
1345 ID, the settings for all Attributes are changed.
1346
1347 The optional BYTEORDER consists of 1 to 8 characters from the
1348 set \'012345rvwz\'. The characters \'0\' to \'5\' select the byte 0
1349 to 5 from the 48-bit raw value, \'r\' selects the reserved byte of
1350 the attribute data block, \'v\' selects the normalized value, \'w\'
1351 selects the worst value and \'z\' inserts a zero byte.
1352 The default BYTEORDER is \'543210\' for all 48-bit formats, \'r543210\'
1353 for the 54-bit formats, and \'543210wv\' for the 64-bit formats.
1354 For example, \'\-v 5,raw48:012345\' prints the raw value of
1355 attribute 5 with big endian instead of little endian
1356 byte ordering.
1357
1358 The NAME is a string of letters, digits and underscore. Its length should
1359 not exceed 23 characters. The \'\-P showall\' option reports an error if
1360 this is the case.
1361
1362 .I \-v help
1363 \- Prints (to STDOUT) a list of all valid arguments to this option,
1364 then exits.
1365
1366 Valid arguments for FORMAT are:
1367
1368 .I raw8
1369 \- Print the Raw value as six 8-bit unsigned base-10 integers.
1370 This may be useful for decoding the meaning of the Raw value.
1371
1372 .I raw16
1373 \- Print the Raw value as three 16-bit unsigned base-10 integers.
1374 This may be useful for decoding the meaning of the Raw value.
1375
1376 .I raw48
1377 \- Print the Raw value as a 48-bit unsigned base-10 integer.
1378 This is the default for most attributes.
1379
1380 .I hex48
1381 \- Print the Raw value as a 12 digit hexadecimal number.
1382 This may be useful for decoding the meaning of the Raw value.
1383
1384 .I raw56
1385 \- Print the Raw value as a 54-bit unsigned base-10 integer.
1386 This includes the reserved byte which follows the 48-bit raw value.
1387
1388 .I hex56
1389 \- Print the Raw value as a 14 digit hexadecimal number.
1390 This includes the reserved byte which follows the 48-bit raw value.
1391
1392 .I raw64
1393 \- Print the Raw value as a 64-bit unsigned base-10 integer.
1394 This includes two bytes from the normalized and worst attribute value.
1395 This raw format is used by some SSD devices with Indilinx controller.
1396
1397 .I hex64
1398 \- Print the Raw value as a 16 digit hexadecimal number.
1399 This includes two bytes from the normalized and worst attribute value.
1400 This raw format is used by some SSD devices with Indilinx controller.
1401
1402 .I min2hour
1403 \- Raw Attribute is power-on time in minutes. Its raw value
1404 will be displayed in the form "Xh+Ym". Here X is hours, and Y is
1405 minutes in the range 0\-59 inclusive. Y is always printed with two
1406 digits, for example "06" or "31" or "00".
1407
1408 .I sec2hour
1409 \- Raw Attribute is power-on time in seconds. Its raw value
1410 will be displayed in the form "Xh+Ym+Zs". Here X is hours, Y is
1411 minutes in the range 0\-59 inclusive, and Z is seconds in the range
1412 0\-59 inclusive. Y and Z are always printed with two digits, for
1413 example "06" or "31" or "00".
1414
1415 .I halfmin2hour
1416 \- Raw Attribute is power-on time, measured in units of 30
1417 seconds. This format is used by some Samsung disks. Its raw value
1418 will be displayed in the form "Xh+Ym". Here X is hours, and Y is
1419 minutes in the range 0\-59 inclusive. Y is always printed with two
1420 digits, for example "06" or "31" or "00".
1421
1422 .I msec24hour32
1423 \- Raw Attribute is power-on time measured in 32-bit hours and 24-bit
1424 milliseconds since last hour update. It will be displayed in the form
1425 "Xh+Ym+Z.Ms". Here X is hours, Y is minutes, Z is seconds and M is
1426 milliseconds.
1427
1428 .I tempminmax
1429 \- Raw Attribute is the disk temperature in Celsius. Info about
1430 Min/Max temperature is printed if available. This is the default
1431 for Attributes 190 and 194. The recording interval (lifetime,
1432 last power cycle, last soft reset) of the min/max values is device
1433 specific.
1434
1435 .I temp10x
1436 \- Raw Attribute is ten times the disk temperature in Celsius.
1437
1438 .I raw16(raw16)
1439 \- Print the raw attribute as a 16-bit value and two optional
1440 16-bit values if these words are nonzero. This is the default
1441 for Attributes 5 and 196.
1442
1443 .I raw16(avg16)
1444 \- Raw attribute is spin-up time. It is printed as a 16-bit value
1445 and an optional "Average" 16-bit value if the word is nonzero.
1446 This is the default for Attribute 3.
1447
1448 .I raw24(raw8)
1449 \- Print the raw attribute as a 24-bit value and three optional
1450 8-bit values if these bytes are nonzero. This is the default
1451 for Attribute 9.
1452
1453 .I raw24/raw24
1454 \- Raw Attribute contains two 24-bit values. The first is the
1455 number of load cycles. The second is the number of unload cycles.
1456 The difference between these two values is the number of times that
1457 the drive was unexpectedly powered off (also called an emergency
1458 unload). As a rule of thumb, the mechanical stress created by one
1459 emergency unload is equivalent to that created by one hundred normal
1460 unloads.
1461
1462 .I raw24/raw32
1463 \- Raw attribute is an error rate which consists of a 24-bit error
1464 count and a 32-bit total count.
1465
1466 The following old arguments to \'\-v\' are also still valid:
1467
1468 .I 9,minutes
1469 \- same as:
1470 .I 9,min2hour,Power_On_Minutes.
1471
1472 .I 9,seconds
1473 \- same as:
1474 .I 9,sec2hour,Power_On_Seconds.
1475
1476 .I 9,halfminutes
1477 \- same as:
1478 .I 9,halfmin2hour,Power_On_Half_Minutes.
1479
1480 .I 9,temp
1481 \- same as:
1482 .I 9,tempminmax,Temperature_Celsius.
1483
1484 .I 192,emergencyretractcyclect
1485 \- same as:
1486 .I 192,raw48,Emerg_Retract_Cycle_Ct
1487
1488 .I 193,loadunload
1489 \- same as:
1490 .I 193,raw24/raw24.
1491
1492 .I 194,10xCelsius
1493 \- same as:
1494 .I 194,temp10x,Temperature_Celsius_x10.
1495
1496 .I 194,unknown
1497 \- same as:
1498 .I 194,raw48,Unknown_Attribute.
1499
1500 .I 197,increasing
1501 \- same as:
1502 .I 197,raw48,Total_Pending_Sectors.
1503 Also means that Attribute number 197 (Current Pending Sector Count)
1504 is not reset if uncorrectable sectors are reallocated
1505 (see \fBsmartd.conf\fP(5) man page).
1506
1507 .I 198,increasing
1508 \- same as:
1509 .I 198,raw48,Total_Offl_Uncorrectabl.
1510 Also means that Attribute number 198 (Offline Uncorrectable Sector Count)
1511 is not reset if uncorrectable sectors are reallocated
1512 (see \fBsmartd.conf\fP(5) man page).
1513
1514 .I 198,offlinescanuncsectorct
1515 \- same as:
1516 .I 198,raw48,Offline_Scan_UNC_SectCt.
1517
1518 .I 200,writeerrorcount
1519 \- same as:
1520 .I 200,raw48,Write_Error_Count.
1521
1522 .I 201,detectedtacount
1523 \- same as:
1524 .I 201,raw48,Detected_TA_Count.
1525
1526 .I 220,temp
1527 \- same as:
1528 .I 220,tempminmax,Temperature_Celsius.
1529 .TP
1530 .B \-F TYPE, \-\-firmwarebug=TYPE
1531 [ATA only] Modifies the behavior of \fBsmartctl\fP to compensate for some
1532 known and understood device firmware or driver bug. This option may be used
1533 multiple times. The valid arguments are:
1534
1535 .I none
1536 \- Assume that the device firmware obeys the ATA specifications. This
1537 is the default, unless the device has presets for \'\-F\' in the
1538 drive database. Using this option on the command line will override any
1539 preset values.
1540
1541 .I nologdir
1542 \- Suppresses read attempts of SMART or GP Log Directory.
1543 Support for all standard logs is assumed without an actual check.
1544 Some Intel SSDs may freeze if log address 0 is read.
1545
1546 .I samsung
1547 \- In some Samsung disks (example: model SV4012H Firmware Version:
1548 RM100-08) some of the two- and four-byte quantities in the SMART data
1549 structures are byte-swapped (relative to the ATA specification).
1550 Enabling this option tells \fBsmartctl\fP to evaluate these quantities
1551 in byte-reversed order. Some signs that your disk needs this option
1552 are (1) no self-test log printed, even though you have run self-tests;
1553 (2) very large numbers of ATA errors reported in the ATA error log;
1554 (3) strange and impossible values for the ATA error log timestamps.
1555
1556 .I samsung2
1557 \- In some Samsung disks the number of ATA errors reported is byte swapped.
1558 Enabling this option tells \fBsmartctl\fP to evaluate this quantity in
1559 byte-reversed order. An indication that your Samsung disk needs this
1560 option is that the self-test log is printed correctly, but there are a
1561 very large number of errors in the SMART error log. This is because
1562 the error count is byte swapped. Thus a disk with five errors
1563 (0x0005) will appear to have 20480 errors (0x5000).
1564
1565 .I samsung3
1566 \- Some Samsung disks (at least SP2514N with Firmware VF100-37) report
1567 a self-test still in progress with 0% remaining when the test was already
1568 completed. Enabling this option modifies the output of the self-test
1569 execution status (see options \'\-c\' or \'\-a\' above) accordingly.
1570
1571 .I xerrorlba
1572 \- Fixes LBA byte ordering in Extended Comprehensive SMART error log.
1573 Some disks use little endian byte ordering instead of ATA register
1574 ordering to specifiy the LBA addresses in the log entries.
1575
1576 .I swapid
1577 \- Fixes byte swapped ATA identify strings (device name, serial number,
1578 firmware version) returned by some buggy device drivers.
1579 .TP
1580 .B \-P TYPE, \-\-presets=TYPE
1581 [ATA only] Specifies whether \fBsmartctl\fP should use any preset options
1582 that are available for this drive. By default, if the drive is recognized
1583 in the \fBsmartmontools\fP database, then the presets are used.
1584
1585 The argument
1586 .I show
1587 will show any preset options for your drive and the argument
1588 .I showall
1589 will show all known drives in the \fBsmartmontools\fP database, along
1590 with their preset options. If there are no presets for your drive and
1591 you think there should be (for example, a \-v or \-F option is needed
1592 to get \fBsmartctl\fP to display correct values) then please contact
1593 the \fBsmartmontools\fP developers so that this information can be
1594 added to the \fBsmartmontools\fP database. Contact information is at the
1595 end of this man page.
1596
1597 The valid arguments to this option are:
1598
1599 .I use
1600 \- if a drive is recognized, then use the stored presets for it. This
1601 is the default. Note that presets will NOT override additional
1602 Attribute interpretation (\'\-v N,something\') command-line options or
1603 explicit \'\-F\' command-line options..
1604
1605 .I ignore
1606 \- do not use presets.
1607
1608 .I show
1609 \- show if the drive is recognized in the database, and if so, its
1610 presets, then exit.
1611
1612 .I showall
1613 \- list all recognized drives, and the presets that are set for them,
1614 then exit. This also checks the drive database regular expressions
1615 and settings for syntax errors.
1616
1617 The \'\-P showall\' option takes up to two optional arguments to
1618 match a specific drive type and firmware version. The command:
1619 .nf
1620 smartctl \-P showall
1621 .fi
1622 lists all entries, the command:
1623 .nf
1624 smartctl \-P showall \'MODEL\'
1625 .fi
1626 lists all entries matching MODEL, and the command:
1627 .nf
1628 smartctl \-P showall \'MODEL\' \'FIRMWARE\'
1629 .fi
1630 lists all entries for this MODEL and a specific FIRMWARE version.
1631 .TP
1632 .B \-B [+]FILE, \-\-drivedb=[+]FILE
1633 [ATA only] Read the drive database from FILE. The new database replaces
1634 the built in database by default. If \'+\' is specified, then the new
1635 entries prepend the built in entries.
1636
1637 Optional entries are read from the file
1638 .\" %IF NOT OS Windows
1639 \fB/usr/local/etc/smart_drivedb.h\fP
1640 .\" %ENDIF NOT OS Windows
1641 .\" %IF OS ALL
1642 (Windows: \fBEXEDIR/drivedb-add.h\fP)
1643 .\" %ENDIF OS ALL
1644 .\" %IF OS Windows
1645 .\"! \fBEXEDIR/drivedb-add.h\fP.
1646 .\" %ENDIF OS Windows
1647 .\" %IF ENABLE_DRIVEDB
1648 if this option is not specified.
1649
1650 If
1651 .\" %IF NOT OS Windows
1652 \fB/usr/local/share/smartmontools/drivedb.h\fP
1653 .\" %ENDIF NOT OS Windows
1654 .\" %IF OS ALL
1655 (Windows: \fBEXEDIR/drivedb.h\fP)
1656 .\" %ENDIF OS ALL
1657 .\" %IF OS Windows
1658 .\"! \fBEXEDIR/drivedb.h\fP
1659 .\" %ENDIF OS Windows
1660 is present, the contents of this file is used instead of the built in table.
1661
1662 Run
1663 .\" %IF NOT OS Windows
1664 \fB/usr/local/sbin/update-smart-drivedb\fP
1665 .\" %ENDIF NOT OS Windows
1666 .\" %IF OS ALL
1667 (Windows: \fBEXEDIR/update-smart-drivedb.exe\fP)
1668 .\" %ENDIF OS ALL
1669 .\" %IF OS Windows
1670 .\"! \fBEXEDIR/update-smart-drivedb.exe\fP
1671 .\" %ENDIF OS Windows
1672 to update this file from the smartmontools SVN repository.
1673 .\" %ENDIF ENABLE_DRIVEDB
1674
1675 The database files use the same C/C++ syntax that is used to initialize
1676 the built in database array. C/C++ style comments are allowed.
1677 Example:
1678
1679 .nf
1680 /* Full entry: */
1681 {
1682 "Model family", // Info about model family/series.
1683 "MODEL1.*REGEX", // Regular expression to match model of device.
1684 "VERSION.*REGEX", // Regular expression to match firmware version(s).
1685 "Some warning", // Warning message.
1686 "\-v 9,minutes" // String of preset \-v and \-F options.
1687 },
1688 /* Minimal entry: */
1689 {
1690 "", // No model family/series info.
1691 "MODEL2.*REGEX", // Regular expression to match model of device.
1692 "", // All firmware versions.
1693 "", // No warning.
1694 "" // No options preset.
1695 },
1696 /* USB ID entry: */
1697 {
1698 "USB: Device; Bridge", // Info about USB device and bridge name.
1699 "0x1234:0xabcd", // Regular expression to match vendor:product ID.
1700 "0x0101", // Regular expression to match bcdDevice.
1701 "", // Not used.
1702 "\-d sat" // String with device type option.
1703 },
1704 /* ... */
1705 .fi
1706
1707 .TP
1708 .B SMART RUN/ABORT OFFLINE TEST AND self-test OPTIONS:
1709 .TP
1710 .B \-t TEST, \-\-test=TEST
1711 Executes TEST immediately. The \'\-C\' option can be used in
1712 conjunction with this option to run the short or long (and also for
1713 ATA devices, selective or conveyance) self-tests in captive mode
1714 (known as "foreground mode" for SCSI devices). Note that only one
1715 test type can be run at a time, so only one test type should be
1716 specified per command line. Note also that if a computer is shutdown
1717 or power cycled during a self-test, no harm should result. The
1718 self-test will either be aborted or will resume automatically.
1719
1720 All \'\-t TEST\' commands can be given during normal system operation
1721 unless captive mode (\'\-C\' option) is used.
1722 A running self-test can, however, degrade performance of the drive.
1723 Frequent I/O requests from the operating system increase the duration
1724 of a test. These impacts may vary from device to device.
1725
1726 If a test failure occurs then the device may discontinue the testing
1727 and report the result immediately.
1728
1729 The valid arguments to this option are:
1730
1731 .I offline
1732 \- [ATA] runs SMART Immediate Offline Test. This immediately
1733 starts the test described above. This command can be given during
1734 normal system operation. The effects of this test are visible only in
1735 that it updates the SMART Attribute values, and if errors are
1736 found they will appear in the SMART error log, visible with the \'\-l error\'
1737 option.
1738
1739 If the \'\-c\' option to \fBsmartctl\fP shows that the device has the
1740 "Suspend Offline collection upon new command" capability then you can
1741 track the progress of the Immediate Offline test using the \'\-c\'
1742 option to \fBsmartctl\fP. If the \'\-c\' option show that the device
1743 has the "Abort Offline collection upon new command" capability then
1744 most commands will abort the Immediate Offline Test, so you should not
1745 try to track the progress of the test with \'\-c\', as it will abort
1746 the test.
1747
1748 .I offline
1749 \- [SCSI] runs the default self test in foreground. No entry is placed
1750 in the self test log.
1751
1752 .I short
1753 \- [ATA] runs SMART Short Self Test (usually under ten minutes).
1754 This command can be given during normal system operation (unless run in
1755 captive mode \- see the \'\-C\' option below). This is a
1756 test in a different category than the immediate or automatic offline
1757 tests. The "Self" tests check the electrical and mechanical
1758 performance as well as the read performance of the disk. Their
1759 results are reported in the Self Test Error Log, readable with
1760 the \'\-l selftest\' option. Note that on some disks the progress of the
1761 self-test can be monitored by watching this log during the self-test; with other disks
1762 use the \'\-c\' option to monitor progress.
1763
1764 .I short
1765 \- [SCSI] runs the "Background short" self-test.
1766
1767 .I long
1768 \- [ATA] runs SMART Extended Self Test (tens of minutes). This is a
1769 longer and more thorough version of the Short Self Test described
1770 above. Note that this command can be given during normal
1771 system operation (unless run in captive mode \- see the \'\-C\' option below).
1772
1773 .I long
1774 \- [SCSI] runs the "Background long" self-test.
1775
1776 .I conveyance
1777 \- [ATA only] runs a SMART Conveyance Self Test (minutes). This
1778 self-test routine is intended to identify damage incurred during
1779 transporting of the device. This self-test routine should take on the
1780 order of minutes to complete. Note that this command can be given
1781 during normal system operation (unless run in captive mode \- see the
1782 \'\-C\' option below).
1783
1784 .I select,N\-M, select,N+SIZE
1785 \- [ATA only] runs a SMART Selective Self Test, to test a \fBrange\fP
1786 of disk Logical Block Addresses (LBAs), rather than the entire disk.
1787 Each range of LBAs that is checked is called a "span" and is specified
1788 by a starting LBA (N) and an ending LBA (M) with N less than or equal
1789 to M. The range can also be specified as N+SIZE. A span at the end of
1790 a disk can be specified by N\-\fBmax\fP.
1791
1792 For example the commands:
1793 .nf
1794 smartctl \-t select,10\-20 /dev/hda
1795 smartctl \-t select,10+11 /dev/hda
1796 .fi
1797 both runs a self test on one span consisting of LBAs ten to twenty
1798 (inclusive). The command:
1799 .nf
1800 smartctl \-t select,100000000\-max /dev/hda
1801 .fi
1802 run a self test from LBA 100000000 up to the end of the disk.
1803 The \'\-t\' option can be given up to five times, to test
1804 up to five spans. For example the command:
1805 .nf
1806 smartctl \-t select,0\-100 \-t select,1000\-2000 /dev/hda
1807 .fi
1808 runs a self test on two spans. The first span consists of 101 LBAs
1809 and the second span consists of 1001 LBAs. Note that the spans can
1810 overlap partially or completely, for example:
1811 .nf
1812 smartctl \-t select,0\-10 \-t select,5\-15 \-t select,10\-20 /dev/hda
1813 .fi
1814 The results of the selective self-test can be obtained (both during
1815 and after the test) by printing the SMART self-test log, using the
1816 \'\-l selftest\' option to smartctl.
1817
1818 Selective self tests are particularly useful as disk capacities
1819 increase: an extended self test (smartctl \-t long) can take several
1820 hours. Selective self-tests are helpful if (based on SYSLOG error
1821 messages, previous failed self-tests, or SMART error log entries) you
1822 suspect that a disk is having problems at a particular range of
1823 Logical Block Addresses (LBAs).
1824
1825 Selective self-tests can be run during normal system operation (unless
1826 done in captive mode \- see the \'\-C\' option below).
1827
1828 The following variants of the selective self-test command use spans based
1829 on the ranges from past tests already stored on the disk:
1830
1831 .I select,redo[+SIZE]
1832 \- [ATA only] redo the last SMART Selective Self Test using the same LBA
1833 range. The starting LBA is identical to the LBA used by last test, same
1834 for ending LBA unless a new span size is specified by optional +SIZE
1835 argument.
1836
1837 For example the commands:
1838 .nf
1839 smartctl \-t select,10\-20 /dev/hda
1840 smartctl \-t select,redo /dev/hda
1841 smartctl \-t select,redo+20 /dev/hda
1842 .fi
1843 have the same effect as:
1844 .nf
1845 smartctl \-t select,10\-20 /dev/hda
1846 smartctl \-t select,10\-20 /dev/hda
1847 smartctl \-t select,10\-29 /dev/hda
1848 .fi
1849
1850 .I select,next[+SIZE]
1851 \- [ATA only] runs a SMART Selective Self Test on the LBA range which
1852 follows the range of the last test. The starting LBA is set to (ending
1853 LBA +1) of the last test. A new span size may be specified by the
1854 optional +SIZE argument.
1855
1856 For example the commands:
1857 .nf
1858 smartctl \-t select,0\-999 /dev/hda
1859 smartctl \-t select,next /dev/hda
1860 smartctl \-t select,next+2000 /dev/hda
1861 .fi
1862 have the same effect as:
1863 .nf
1864 smartctl \-t select,0\-999 /dev/hda
1865 smartctl \-t select,1000\-1999 /dev/hda
1866 smartctl \-t select,2000\-3999 /dev/hda
1867 .fi
1868
1869 If the last test ended at the last LBA of the disk, the new range starts
1870 at LBA 0. The span size of the last span of a disk is adjusted such that
1871 the total number of spans to check the full disk will not be changed
1872 by future uses of \'\-t select,next\'.
1873
1874 .I select,cont[+SIZE]
1875 \- [ATA only] performs a \'redo\' (above) if the self test status reports
1876 that the last test was aborted by the host. Otherwise it run the \'next\'
1877 (above) test.
1878
1879 .I afterselect,on
1880 \- [ATA only] perform an offline read scan after a Selective self-test
1881 has completed. This option must be used together with one or more of
1882 the \fIselect,N\-M\fP options above. If the LBAs that have been
1883 specified in the Selective self-test pass the test with no errors
1884 found, then read scan the \fBremainder\fP of the disk. If the device
1885 is powered-cycled while this read scan is in progress, the read scan
1886 will be automatically resumed after a time specified by the pending
1887 timer (see below). The value of this option is preserved between
1888 selective self-tests.
1889
1890 .I afterselect,off
1891 \- [ATA only] do not read scan the remainder of the disk after a
1892 Selective self-test has completed. This option must be use together
1893 with one or more of the \fIselect,N\-M\fP options above. The value of this
1894 option is preserved between selective self-tests.
1895
1896 .I pending,N
1897 \- [ATA only] set the pending offline read scan timer to N minutes.
1898 Here N is an integer in the range from 0 to 65535 inclusive. If the
1899 device is powered off during a read scan after a Selective self-test,
1900 then resume the test automatically N minutes after power-up. This
1901 option must be use together with one or more of the \fIselect,N\-M\fP
1902 options above. The value of this option is preserved between selective
1903 self-tests.
1904
1905 .I vendor,N
1906 \- [ATA only] issues the ATA command SMART EXECUTE OFF-LINE IMMEDIATE
1907 with subcommand N in LBA LOW register. The subcommand is specified as
1908 a hex value in the range 0x00 to 0xff. Subcommands 0x40-0x7e and
1909 0x90-0xff are reserved for vendor specific use, see table 61 of
1910 T13/1699-D Revision 6a (ATA8-ACS). Note that the subcommands
1911 0x00-0x04,0x7f,0x81-0x84 are supported by other smartctl options
1912 (e.g. 0x01: \'\-t short\', 0x7f: \'\-X\', 0x82: \'\-C \-t long\').
1913
1914 \fBWARNING: Only run subcommands documented by the vendor of the
1915 device.\fP
1916
1917 Example for some Intel SSDs only:
1918 The subcommand 0x40 (\'\-t vendor,0x40\') clears the timed workload
1919 related SMART attributes (226, 227, 228). Note that the raw values of
1920 these attributes are held at 65535 (0xffff) until the workload timer
1921 reaches 60 minutes.
1922
1923 .I force
1924 \- start new self-test even if another test is already running.
1925 By default a running self-test will not be interrupted to begin another
1926 test.
1927 .TP
1928 .B \-C, \-\-captive
1929 [ATA] Runs self-tests in captive mode. This has no effect with \'\-t
1930 offline\' or if the \'\-t\' option is not used.
1931
1932 \fBWARNING: Tests run in captive mode may busy out the drive for the
1933 length of the test. Only run captive tests on drives without any
1934 mounted partitions!\fP
1935
1936 [SCSI] Runs the self-test in "Foreground" mode.
1937 .TP
1938 .B \-X, \-\-abort
1939 Aborts non-captive SMART Self Tests. Note that this
1940 command will abort the Offline Immediate Test routine only if your
1941 disk has the "Abort Offline collection upon new command" capability.
1942
1943 .SH ATA, SCSI command sets and SAT
1944 In the past there has been a clear distinction between storage devices
1945 that used the ATA and SCSI command sets. This distinction was often
1946 reflected in their device naming and hardware. Now various SCSI
1947 transports (e.g. SAS, FC and iSCSI) can interconnect to both SCSI
1948 disks (e.g. FC and SAS) and ATA disks (especially SATA). USB and
1949 IEEE 1394 storage devices use the SCSI command set externally but
1950 almost always contain ATA or SATA disks (or flash). The storage
1951 subsystems in some operating systems have started to remove the
1952 distinction between ATA and SCSI in their device naming policies.
1953 .PP
1954 99% of operations that an OS performs on a disk involve the SCSI INQUIRY,
1955 READ CAPACITY, READ and WRITE commands, or their ATA equivalents. Since
1956 the SCSI commands are slightly more general than their ATA equivalents,
1957 many OSes are generating SCSI commands (mainly READ and WRITE) and
1958 letting a lower level translate them to their ATA equivalents as the
1959 need arises. An important note here is that "lower level" may be in
1960 external equipment and hence outside the control of an OS.
1961 .PP
1962 SCSI to ATA Translation (SAT) is a standard (ANSI INCITS 431-2007) that
1963 specifies how this translation is done. For the other 1% of operations
1964 that an OS performs on a disk, SAT provides two options. First is an
1965 optional ATA PASS-THROUGH SCSI command (there are two variants). The
1966 second is a translation from the closest SCSI command. Most current
1967 interest is in the "pass-through" option.
1968 .PP
1969 The relevance to smartmontools (and hence smartctl) is that its
1970 interactions with disks fall solidly into the "1%" category. So even
1971 if the OS can happily treat (and name) a disk as "SCSI", smartmontools
1972 needs to detect the native command set and act accordingly.
1973 As more storage manufacturers (including external SATA drives) comply
1974 with SAT, smartmontools is able to automatically distinguish the native
1975 command set of the device. In some cases the '\-d sat' option is needed
1976 on the command line.
1977 .PP
1978 There are also virtual disks which typically have no useful information
1979 to convey to smartmontools, but could conceivably in the future. An
1980 example of a virtual disk is the OS's view of a RAID 1 box. There are
1981 most likely two SATA disks inside a RAID 1 box. Addressing those SATA
1982 disks from a distant OS is a challenge for smartmontools. Another
1983 approach is running a tool like smartmontools inside the RAID 1 box (e.g.
1984 a Network Attached Storage (NAS) box) and fetching the logs via a
1985 browser.
1986
1987 .SH EXAMPLES
1988 .nf
1989 .B smartctl \-a /dev/hda
1990 .fi
1991 Print a large amount of SMART information for drive /dev/hda which is
1992 typically an ATA (IDE) or SATA disk in Linux.
1993 .PP
1994 .nf
1995 .B smartctl \-a /dev/sdb
1996 .fi
1997 Print a large amount of SMART information for drive /dev/sdb . This may
1998 be a SCSI disk or an ATA (SATA) disk.
1999 .PP
2000 .nf
2001 .B smartctl \-s off /dev/hdd
2002 .fi
2003 Disable SMART monitoring and data log collection on drive /dev/hdd .
2004 .PP
2005 .nf
2006 .B smartctl \-\-smart=on \-\-offlineauto=on \-\-saveauto=on /dev/hda
2007 .fi
2008 Enable SMART on drive /dev/hda, enable automatic offline
2009 testing every four hours, and enable autosaving of
2010 SMART Attributes. This is a good start-up line for your system\'s
2011 init files. You can issue this command on a running system.
2012 .PP
2013 .nf
2014 .B smartctl \-t long /dev/hdc
2015 .fi
2016 Begin an extended self-test of drive /dev/hdc. You can issue this
2017 command on a running system. The results can be seen in the self-test
2018 log visible with the \'\-l selftest\' option after it has completed.
2019 .PP
2020 .nf
2021 .B smartctl \-s on \-t offline /dev/hda
2022 .fi
2023 Enable SMART on the disk, and begin an immediate offline test of
2024 drive /dev/hda. You can issue this command on a running system. The
2025 results are only used to update the SMART Attributes, visible
2026 with the \'\-A\' option. If any device errors occur, they are logged to
2027 the SMART error log, which can be seen with the \'\-l error\' option.
2028 .PP
2029 .nf
2030 .B smartctl \-A \-v 9,minutes /dev/hda
2031 .fi
2032 Shows the vendor Attributes, when the disk stores its power-on time
2033 internally in minutes rather than hours.
2034 .PP
2035 .nf
2036 .B smartctl \-q errorsonly \-H \-l selftest /dev/hda
2037 .fi
2038 Produces output only if the device returns failing SMART status,
2039 or if some of the logged self-tests ended with errors.
2040 .PP
2041 .nf
2042 .B smartctl \-q silent \-a /dev/hda
2043 .fi
2044 Examine all SMART data for device /dev/hda, but produce no
2045 printed output. You must use the exit status (the
2046 .B $?
2047 shell variable) to learn if any Attributes are out of bound, if the
2048 SMART status is failing, if there are errors recorded in the
2049 self-test log, or if there are errors recorded in the disk error log.
2050 .PP
2051 .nf
2052 .B smartctl \-a \-d 3ware,0 /dev/sda
2053 .fi
2054 Examine all SMART data for the first ATA disk connected to a 3ware
2055 RAID controller card.
2056 .PP
2057 .nf
2058 .B smartctl \-a \-d 3ware,0 /dev/twe0
2059 .fi
2060 Examine all SMART data for the first ATA disk connected to a 3ware
2061 RAID 6000/7000/8000 controller card.
2062 .PP
2063 .nf
2064 .B smartctl \-a \-d 3ware,0 /dev/twa0
2065 .fi
2066 Examine all SMART data for the first ATA disk connected to a
2067 3ware RAID 9000 controller card.
2068 .PP
2069 .nf
2070 .B smartctl \-a \-d 3ware,0 /dev/twl0
2071 .fi
2072 Examine all SMART data for the first SATA (not SAS) disk connected to a
2073 3ware RAID 9750 controller card.
2074 .PP
2075 .nf
2076 .B smartctl \-t short \-d 3ware,3 /dev/sdb
2077 .fi
2078 Start a short self-test on the fourth ATA disk connected to the 3ware RAID
2079 controller card which is the second SCSI device /dev/sdb.
2080 .PP
2081 .nf
2082 .B smartctl \-t long \-d areca,4 /dev/sg2
2083 .fi
2084 Start a long self-test on the fourth SATA disk connected to an Areca RAID
2085 controller addressed by /dev/sg2.
2086 .PP
2087 .nf
2088 .B smartctl \-a \-d hpt,1/3 /dev/sda (under Linux)
2089 .B smartctl \-a \-d hpt,1/3 /dev/hptrr (under FreeBSD)
2090 .fi
2091 Examine all SMART data for the (S)ATA disk directly connected to the third channel of the
2092 first HighPoint RocketRAID controller card.
2093 .nf
2094 .PP
2095 .nf
2096 .B smartctl \-t short \-d hpt,1/1/2 /dev/sda (under Linux)
2097 .B smartctl \-t short \-d hpt,1/1/2 /dev/hptrr (under FreeBSD)
2098 .fi
2099 Start a short self-test on the (S)ATA disk connected to second pmport on the
2100 first channel of the first HighPoint RocketRAID controller card.
2101 .PP
2102 .nf
2103 .B smartctl \-t select,10\-100 \-t select,30\-300 \-t afterselect,on \-t pending,45 /dev/hda
2104 .fi
2105 Run a selective self-test on LBAs 10 to 100 and 30 to 300. After the
2106 these LBAs have been tested, read-scan the remainder of the disk. If the disk is
2107 power-cycled during the read-scan, resume the scan 45 minutes after power to the
2108 device is restored.
2109 .PP
2110 .nf
2111 .B smartctl \-a \-d cciss,0 /dev/cciss/c0d0
2112 .fi
2113 Examine all SMART data for the first SCSI disk connected to a cciss
2114 RAID controller card.
2115
2116 .SH RETURN VALUES
2117 The return values of \fBsmartctl\fP are defined by a bitmask. If all
2118 is well with the disk, the return value (exit status) of
2119 \fBsmartctl\fP is 0 (all bits turned off). If a problem occurs, or an
2120 error, potential error, or fault is detected, then a non-zero status
2121 is returned. In this case, the eight different bits in the return
2122 value have the following meanings for ATA disks; some of these values
2123 may also be returned for SCSI disks.
2124 .TP
2125 .B Bit 0:
2126 Command line did not parse.
2127 .TP
2128 .B Bit 1:
2129 Device open failed, device did not return an IDENTIFY DEVICE structure,
2130 or device is in a low-power mode (see \'\-n\' option above).
2131 .TP
2132 .B Bit 2:
2133 Some SMART or other ATA command to the disk failed, or there was a checksum
2134 error in a SMART data structure (see \'\-b\' option above).
2135 .TP
2136 .B Bit 3:
2137 SMART status check returned "DISK FAILING".
2138 .TP
2139 .B Bit 4:
2140 We found prefail Attributes <= threshold.
2141 .TP
2142 .B Bit 5:
2143 SMART status check returned "DISK OK" but we found that some (usage
2144 or prefail) Attributes have been <= threshold at some time in the
2145 past.
2146 .TP
2147 .B Bit 6:
2148 The device error log contains records of errors.
2149 .TP
2150 .B Bit 7:
2151 The device self-test log contains records of errors.
2152 [ATA only] Failed self-tests outdated by a newer successful extended
2153 self-test are ignored.
2154 .PP
2155 To test within the shell for whether or not the different bits are
2156 turned on or off, you can use the following type of construction
2157 (which should work with any POSIX compatible shell):
2158 .nf
2159 .B smartstat=$(($? & 8))
2160 .fi
2161 This looks at only at bit 3 of the exit status
2162 .B $?
2163 (since 8=2^3). The shell variable
2164 $smartstat will be nonzero if SMART status check returned "disk
2165 failing" and zero otherwise.
2166 .PP
2167 This shell script prints all status bits:
2168 .nf
2169 val=$?; mask=1
2170 for i in 0 1 2 3 4 5 6 7; do
2171 echo "Bit $i: $(((val & mask) && 1))"
2172 mask=$((mask << 1))
2173 done
2174 .fi
2175
2176 .\" %IF NOT OS Windows
2177 .SH FILES
2178 .TP
2179 .B /usr/local/sbin/smartctl
2180 full path of this executable.
2181 .\" %IF ENABLE_DRIVEDB
2182 .TP
2183 .B /usr/local/share/smartmontools/drivedb.h
2184 drive database (see \'\-B\' option).
2185 .\" %ENDIF ENABLE_DRIVEDB
2186 .TP
2187 .B /usr/local/etc/smart_drivedb.h
2188 optional local drive database (see \'\-B\' option).
2189
2190 .\" %ENDIF NOT OS Windows
2191 .SH NOTES
2192 The TapeAlert log page flags are cleared for the initiator when the
2193 page is read. This means that each alert condition is reported only
2194 once by \fBsmartctl\fP for each initiator for each activation of the
2195 condition.
2196
2197 .SH AUTHORS
2198 \fBBruce Allen\fP
2199 .br
2200 University of Wisconsin \- Milwaukee Physics Department
2201 .br
2202 \fBChristian Franke\fP (Windows interface, C++ redesign, most enhancements
2203 since 2009)
2204 .br
2205 \fBsmartmontools\-support@lists.sourceforge.net\fP
2206
2207 The following have made large contributions to smartmontools:
2208 .br
2209 \fBCasper Dik\fP (Solaris SCSI interface)
2210 .br
2211 \fBDouglas Gilbert\fP (SCSI subsystem)
2212 .br
2213 \fBGuido Guenther\fP (Autoconf/Automake packaging)
2214 .br
2215 \fBGeoffrey Keating\fP (Darwin ATA interface)
2216 .br
2217 \fBEduard Martinescu\fP (FreeBSD interface)
2218 .br
2219 \fBFr\['e]d\['e]ric L. W. Meunier\fP (Web site and Mailing list)
2220 .br
2221 \fBGabriele Pohl\fP (Web site and Wiki, conversion from CVS to SVN)
2222 .br
2223 \fBKeiji Sawada\fP (Solaris ATA interface)
2224 .br
2225 \fBManfred Schwarb\fP (Drive database)
2226 .br
2227 \fBSergey Svishchev\fP (NetBSD interface)
2228 .br
2229 \fBDavid Snyder and Sergey Svishchev\fP (OpenBSD interface)
2230 .br
2231 \fBPhil Williams\fP (User interface and drive database)
2232 .br
2233 \fBYuri Dario\fP (OS/2, eComStation interface)
2234 .br
2235 \fBShengfeng Zhou\fP (Linux/FreeBSD HighPoint RocketRAID interface)
2236 .br
2237 Many other individuals have made smaller contributions and corrections.
2238
2239 The first smartmontools code was derived from the smartsuite package,
2240 written by Michael Cornwell, and from the previous UCSC smartsuite package.
2241 This code was originally developed as a
2242 Senior Thesis by Michael Cornwell at the Concurrent Systems Laboratory
2243 (now part of the Storage Systems Research Center), Jack Baskin School
2244 of Engineering, University of California, Santa
2245 Cruz. \fBhttp://ssrc.soe.ucsc.edu/\fP .
2246
2247 .SH SEE ALSO
2248 \fBsmartd\fP(8), \fBupdate-smart-drivedb\fP(8).
2249
2250 .SH REFERENCES
2251 Please see the following web site for more info:
2252 \fBhttp://smartmontools.sourceforge.net/\fP
2253
2254 An introductory article about smartmontools is \fIMonitoring Hard
2255 Disks with SMART\fP, by Bruce Allen, Linux Journal, January 2004,
2256 pages 74-77. This is \fBhttp://www.linuxjournal.com/article/6983\fP
2257 online.
2258
2259 If you would like to understand better how SMART works, and what it
2260 does, a good place to start is with Sections 4.8 and 6.54 of the first
2261 volume of the \'AT Attachment with Packet Interface-7\' (ATA/ATAPI-7)
2262 specification Revision 4b. This documents the SMART functionality which the
2263 \fBsmartmontools\fP utilities provide access to.
2264
2265 The functioning of SMART was originally defined by the SFF-8035i
2266 revision 2 and the SFF-8055i revision 1.4 specifications. These are
2267 publications of the Small Form Factors (SFF) Committee.
2268
2269 Links to these and other documents may be found on the Links page of the
2270 \fBsmartmontools\fP Wiki at \fBhttp://www.smartmontools.org/wiki/Links\fP .
2271
2272 .SH SVN ID OF THIS PAGE
2273 $Id: smartctl.8.in 3965 2014-07-20 14:46:41Z chrfranke $