Official read only mirror of the smartmontools project SVN https://www.smartmontools.org/browser
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
chrfranke df1591af49 ataprint.cpp: Print error count even if error log index is invalid. 4 days ago
..
examplescripts examplescripts/Example8: Use 'command -v' builtin instead of 'which'. 2 weeks ago
getopt getopt/*, regex/*: Add _GETOPT/REGEX*_STANDALONE configurations. 4 years ago
os_darwin add experimental support for the launchd startup 7 years ago
os_win32 Detect accidental use of smartd_warning script in '-M exec'. 2 weeks ago
regex getopt/*, regex/*: Add _GETOPT/REGEX*_STANDALONE configurations. 4 years ago
.editorconfig Add ident style configuration for EditorConfig (http://editorconfig.org/): 6 years ago
AUTHORS Add support for SCT Error Recovery Timer features added in ACS-4 (#1427). 2 years ago
COPYING Replace COPYING file with current (2010-03-24) version from 11 years ago
ChangeLog ataprint.cpp: Print error count even if error log index is invalid. 4 days ago
ChangeLog-5.0-6.0 smartctl.cpp, scsiprint.cpp: extend --log=defects option so it works for the SCSI Pending Defects log page; add --log=envrep option to output Environmental Reporting log page; add: --log=zdevstat option to output Zone block device statistics log page; fix spelling 6 months ago
ChangeLog-6.0-7.0 smartctl.cpp, scsiprint.cpp: extend --log=defects option so it works for the SCSI Pending Defects log page; add --log=envrep option to output Environmental Reporting log page; add: --log=zdevstat option to output Zone block device statistics log page; fix spelling 6 months ago
Doxyfile Remove 'scsiata.h'. 13 years ago
INSTALL INSTALL: Update ./configure description and Windows info. 3 months ago
Makefile.am Drop legacy ATA support for Solaris SPARC. 3 months ago
NEWS Update NEWS. 3 months ago
README Add SPDX-License-Identifier to all files with GPL header (#919). 4 years ago
TODO drivedb.h, smartctl.8.in, smartd.8.in, INSTALL, NEWS, TODO, WARNINGS: 8 years ago
aacraid.h Add SPDX-License-Identifier to all files with GPL header (#919). 4 years ago
atacmdnames.cpp Replace all ASSERT_*() macros with STATIC_ASSERT(). 3 years ago
atacmdnames.h Add SPDX-License-Identifier to all files with GPL header (#919). 4 years ago
atacmds.cpp configure.ac: Add URL to AC_INIT, remove PACKAGE_HOMEPAGE. 4 months ago
atacmds.h Add support for SCT Error Recovery Timer features added in ACS-4 (#1427). 2 years ago
ataidentify.cpp ataidentify.cpp, ataprint.cpp: ACS-5 enhancements. 1 year ago
ataidentify.h Add SPDX-License-Identifier to all files with GPL header (#919). 4 years ago
ataprint.cpp ataprint.cpp: Print error count even if error log index is invalid. 4 days ago
ataprint.h ataprint.cpp, ataprint.h, smartctl.cpp: Optionally exit immediately 2 years ago
autogen.sh autogen.sh: automake 1.16.3-5 work. 7 months ago
cciss.cpp cciss.cpp: Replace printf() and fprintf() with pout(). 3 years ago
cciss.h Add missing license headers to some source files. 4 years ago
cissio_freebsd.h Including FreeBSD ciss header to the base to avoid compilation problems. 11 years ago
configure.ac Drop legacy ATA support for Solaris SPARC. 3 months ago
cppcheck.sh cppcheck.sh: Suppress getpw*Called, getgr*Called, remove ftimeCalled. 4 months ago
csmisas.h Windows: Compile fixes for 64-bit Cygwin. 10 years ago
dev_areca.cpp route all SCSI pass through calls in scsicmds.cpp via scsi_pass_through_yield_sense(); Use aggregate initialization to bypass the need for many memset() calls 6 months ago
dev_areca.h Add C++11 'override' specifier where applicable (cppcheck: missingOverride). 2 years ago
dev_ata_cmd_set.cpp Add SPDX-License-Identifier to all files with GPL header (#919). 4 years ago
dev_ata_cmd_set.h Add C++11 'override' specifier where applicable (cppcheck: missingOverride). 2 years ago
dev_intelliprop.cpp Add C++11 'override' specifier where applicable (cppcheck: missingOverride). 2 years ago
dev_interface.cpp Rework 'get_timer_usec()', use a C++11 clock if possible. 1 year ago
dev_interface.h [SCSI]: more work for calling REPORT SUPPORTED OPERATION CODES [RSOC] command 3 months ago
dev_jmb39x_raid.cpp dev_jmb39x_raid.cpp: Enhance LBA range from 33-62 to 1-255 (#1594). 4 months ago
dev_legacy.cpp Add C++11 'override' specifier where applicable (cppcheck: missingOverride). 2 years ago
dev_tunnelled.h Add C++11 'override' specifier where applicable (cppcheck: missingOverride). 2 years ago
do_release do_release: Add '--nocheck' option. 6 months ago
drivedb.h drivedb.h: 2 weeks ago
freebsd_nvme_ioctl.h os_freebsd.cpp: Fix build under -CURRENT (patch by cy@) 5 years ago
json.cpp json.cpp, json.h: Allow to use any string for object keys. 8 months ago
json.h json.cpp, json.h: Allow to use any string for object keys. 8 months ago
knowndrives.cpp configure.ac: Add URL to AC_INIT, remove PACKAGE_HOMEPAGE. 4 months ago
knowndrives.h Print drive database version in smartctl and smartd. 2 years ago
linux_nvme_ioctl.h linux_nvme_ioctl.h: Replace with current version from Linux kernel sources 3 years ago
megaraid.h Add missing license headers to some source files. 4 years ago
netbsd_nvme_ioctl.h os_netbsd.cpp: Migrate to new dev_interface (ticket #101). 6 years ago
nvmecmds.cpp Rework 'get_timer_usec()', use a C++11 clock if possible. 1 year ago
nvmecmds.h nvmecmds.cpp, nvmecmds.h, nvmeprint.cpp: Fix check for LPO support. 2 years ago
nvmeprint.cpp ataprint.cpp, nvmeprint.cpp: Add JSON values 'smart_support.*' to keep 1 year ago
nvmeprint.h ataprint.h, nvmeprint.h, scsiprint.h: Use C++11 in-class member initializers. 2 years ago
os_darwin.cpp os_darwin.cpp: implement APM set feature, based on hdparm macOS sources 2 years ago
os_darwin.h os_darwin: Fix NVMe log support, cleanup 2 years ago
os_freebsd.cpp [SCSI]: more work for calling REPORT SUPPORTED OPERATION CODES [RSOC] command 3 months ago
os_freebsd.h Add '-d megaraid' support on the FreeBSD (#734) 9 months ago
os_generic.cpp Fix many typos. 4 years ago
os_generic.h Add SPDX-License-Identifier to all files with GPL header (#919). 4 years ago
os_linux.cpp some spelling fixes with the help of the codespell utility 1 month ago
os_linux.h Fix many typos. 4 years ago
os_netbsd.cpp [SCSI]: more work for calling REPORT SUPPORTED OPERATION CODES [RSOC] command 3 months ago
os_netbsd.h Add SPDX-License-Identifier to all files with GPL header (#919). 4 years ago
os_openbsd.cpp [SCSI]: more work for calling REPORT SUPPORTED OPERATION CODES [RSOC] command 3 months ago
os_openbsd.h Add SPDX-License-Identifier to all files with GPL header (#919). 4 years ago
os_os2.cpp configure.ac: Add URL to AC_INIT, remove PACKAGE_HOMEPAGE. 4 months ago
os_os2.h Add SPDX-License-Identifier to all files with GPL header (#919). 4 years ago
os_qnxnto.cpp Fix many typos. 4 years ago
os_qnxnto.h Add missing license headers to some source files. 4 years ago
os_solaris.cpp [SCSI]: more work for calling REPORT SUPPORTED OPERATION CODES [RSOC] command 3 months ago
os_win32.cpp [SCSI]: more work for calling REPORT SUPPORTED OPERATION CODES [RSOC] command 3 months ago
popen_as_ugid.cpp smartd.cpp, popen_as_ugid.cpp: Don't use 'getdtablesize()'. 2 weeks ago
popen_as_ugid.h smartd.cpp: Add ability to run warning script as non-privileged user. 8 months ago
scsiata.cpp some spelling fixes with the help of the codespell utility 1 month ago
scsicmds.cpp some spelling fixes with the help of the codespell utility 1 month ago
scsicmds.h [SCSI]: rework scsiGetIEString(), this should address ticket #1614 3 months ago
scsinvme.cpp route all SCSI pass through calls in scsicmds.cpp via scsi_pass_through_yield_sense(); Use aggregate initialization to bypass the need for many memset() calls 6 months ago
scsiprint.cpp [SCSI]: rework scsiGetIEString(), this should address ticket #1614 3 months ago
scsiprint.h NEWS: update for changes in previous commit; run untab of scsi source 6 months ago
sg_unaligned.h switch usage of unaligned.h to sg_unaligned.h 4 years ago
smartctl.8.in dev_jmb39x_raid.cpp: Enhance LBA range from 33-62 to 1-255 (#1594). 4 months ago
smartctl.cpp smartctl.cpp: Add 'smartctl.pre_release' boolean to JSON output. 4 months ago
smartctl.h Always add timestamp to JSON output (#1436). 2 years ago
smartd.8.in smartd.8.in: Attribute logs use local time since smartmontools 7.1. 6 months ago
smartd.conf Update homepage URL to the www.smartmontools.org 7 years ago
smartd.conf.5.in smartctl.8.in, smartd.conf.5.in, update-smart-drivedb.8.in: 6 months ago
smartd.cpp Detect accidental use of smartd_warning script in '-M exec'. 2 weeks ago
smartd.cygwin.initd.in Add SPDX-License-Identifier to all files with GPL header (#919). 4 years ago
smartd.freebsd.initd.in FreeBSD: sync init script with one from ports repository. 11 years ago
smartd.initd.in Add SPDX-License-Identifier to all files with GPL header (#919). 4 years ago
smartd.service.in drivedb.h: Add xerrorlba flag to the WD Caviar Black (#1558) family 7 months ago
smartd_warning.sh.in Detect accidental use of smartd_warning script in '-M exec'. 2 weeks ago
static_assert.h Replace all ASSERT_*() macros with STATIC_ASSERT(). 3 years ago
update-smart-drivedb.8.in smartctl.8.in, smartd.conf.5.in, update-smart-drivedb.8.in: 6 months ago
update-smart-drivedb.in update-smart-drivedb.in: Unify syntax of command substitutions. 4 months ago
utility.cpp some spelling fixes with the help of the codespell utility 1 month ago
utility.h scsiprint.cpp: remove jsonify_name() and use json::str2key() where required 8 months ago

README

==========================================================
smartmontools - S.M.A.R.T. utility toolset for Darwin/Mac
OSX, FreeBSD, Linux, NetBSD, OpenBSD, Solaris, and Windows.
==========================================================

$Id$

== HOME ==
The home for smartmontools is located at:

http://www.smartmontools.org/

Please see this web site for updates, documentation, and for submitting
patches and bug reports.

You will find a mailing list for support and other questions at:

https://listi.jpberlin.de/mailman/listinfo/smartmontools-support


== COPYING ==
Copyright (C) 2002-9 Bruce Allen
Copyright (C) 2004-18 Christian Franke

This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the Free
Software Foundation; either version 2, or (at your option) any later
version.

You should have received a copy of the GNU General Public License (for
example COPYING). If not, see <http://www.gnu.org/licenses/>.

SPDX-License-Identifier: GPL-2.0-or-later


== CREDITS ==
See AUTHORS file.


== OVERVIEW ==
smartmontools contains utilities that control and monitor storage
devices using the Self-Monitoring, Analysis and Reporting Technology
(SMART) system build into ATA/SATA and SCSI/SAS hard drives and
solid-state drives. This is used to check the reliability of the
drive and to predict drive failures.


== CONTENTS ==
The suite contains two utilities:

smartctl is a command line utility designed to perform S.M.A.R.T. tasks
such as disk self-checks, and to report the S.M.A.R.T. status of
the disk.

smartd is a daemon that periodically monitors S.M.A.R.T. status and
reports errors and changes in S.M.A.R.T. attributes to syslog.


== OBTAINING SMARTMONTOOLS ==

Source tarballs
---------------

http://sourceforge.net/projects/smartmontools/files/

SVN
---

svn co http://svn.code.sf.net/p/smartmontools/code/trunk/smartmontools smartmontools

This will create a subdirectory called smartmontools containing the code.

To instead get the 5.38 release:

svn co http://svn.code.sf.net/p/smartmontools/code/tags/RELEASE_5_38/sm5 smartmontools

You can see what the different tags are by looking at
http://sourceforge.net/p/smartmontools/code/HEAD/tree/tags/

== BUILDING/INSTALLING SMARTMONTOOLS ==

Refer to the "INSTALL" file for detailed installation instructions.

== GETTING STARTED ==

To examine SMART data from a disk, try:
smartctl -a /dev/sda
See the manual page 'man smartctl' for more information.

To start automatic monitoring of your disks with the smartd daemon,
try:
smartd -d
to start the daemon in foreground (debug) mode, or
smartd
to start the daemon in background mode. This will log messages to
SYSLOG. If you would like to get email warning messages, please set
up the configuration file smartd.conf with the '-m' mail warning
Directive. See the manual page 'man smartd' for more information.