Smartmontools was derived directly from smartsuite.
The smartsuite code was originally developed as a Senior Thesis by
Michael Cornwell at the Concurrent Systems Laboratory (now part of the
Storage Systems Research
Center), Jack Baskin School of Engineering, University of
California, Santa Cruz.
You can find some information about the original smartsuite project here:
Press Release 1,
Press Release 2,
Press Release 3.
According to SSRC
smartsuite is no longer maintained; the last release was in 2001.
Smartmontools was first released in October 2002. It differs from smartsuite in that it supports the ATA/ATAPI-5 standard. So for example smartctl from smartsuite has no facility for printing the SMART self-test logs, and doesn't print timestamp information in the most usable way. The smartctl utility in smartmontools has added functionality for this (-q, -l selftest,-S, -T, -v and -m options), updated documentation, and also fixes small technical bugs in smartsuite. [One example: smartsuite does not actually use the ATA SMART RETURN STATUS command to find out the health status of a disk. It instead tries to infer this from the SMART Attribute values.] See the CHANGELOG file in our repository for a summary of what's been done.
The smartd utility differs from the smartsuite smartd in major ways. First, it prints somewhat more informative error messages to the syslog. Second, on startup it looks for a configuration file /etc/smartd.conf, and if smartd finds this file, it monitors the list of devices therein, rather than querying all IDE and SCSI devices on your system. (If the configuration file does not exist, then it does query all IDE and SCSI devices.) Also, it's a well-behaved daemon and doesn't leave open file descriptors and other detrius behind. In addition, the smartmontools version of smartd can be instructed (via Directives in the configuration file) to monitor for changes in a number of different disk properties: the SMART status, failure or prefailure attributes going below threshold, new errors appearing in the ATA Error Log or the SMART Self-Test Log, and so on. smartd can also send an email warning or run a user-specified executable if it detects a problem with the disk.
The other principle difference is that smartmontools is an
OpenSource development project, meaning that we keep the files in SVN,
and that other developers who wish to contribute can commit changes to
the repository. If you would like to contribute, please write to to smartmontools-support.
But the bottom line is that the code in smartmontools is derived
directly from smartsuite and is similar. The smartsuite package
can be found here.
I am a professor of physics at the U. of Wisconsin - Milwaukee, and a Director of the Albert Einstein Institute in Hannover, which is operated by the Max Planck Gesellschaft and Leibniz University Hannover.
I got interested in SMART because of my research work. I work on data analysis
for gravitational waves (the LIGO, GEO and VIRGO detectors) and my research groups build and operate
large computer clusters
for this purpose.
My research group at the Albert Einstein Institute in Hannover operates a cluster with
2400 disks (the Atlas Cluster) and 1100 TB of storage. My research group at U. Wisconsin - Milwaukee runs a
beowulf
cluster with 1200 (SATA-II) distributed disks attached to hardware RAID controllers.
We have more than 300 TB disk space on that system.
It's nice to have advanced warning when a disk is going to fail.
Smartmontools is the only open-source software project that I manage. When smartmontools first started in 2002, I did most of the coding and real work. I was lucky to quickly find several other developers like Doug Gilbert and Christian Franke who knew much more than I did! These days I mostly do coordination and cheerleading - in any given technical area there are typically other developers who know more than I do.
I also do some work on BOINC, and run the Einstein@Home distributed search for gravitational waves.
My interest in hard disk monitoring actually starts when the disk of the christmas-gift-PC for my son failed in the evening of Dec. 23, 2003. This resulted in a first Windows port of smartctl checked in on Feb. 23, 2004. Future plan for smartmontools is a major redesign of smartd and the internal device interface, which benefits from the transition from C to C++.
My other open source contributions include some small patches for Cygwin and Mozilla.org (Firefox/Thunderbird/SeaMonkey and Bugzilla) codebase, a Windows port of hdparm, and a recent Cygwin port of GRUB2.
In real life, I hold a degree in computer science and work for a company developing applications for banking & finance.
Guido has a sharp eye for distribution issues and clean system architecture. He improves Makefiles, configuration and installation scripts, cares for packaging issues and makes sure that Return Values are correct. Last not least, he added CCISS (Compaq Smart Array Controller) support with contributions from Praveen Chidambaram, Douglas Gilbert and Frederic Boiteux.
Once upon a time I got an alarming BIOS message whilst booting my computer:
I was very curious, what it could be, that claimed to know, what's up with my harddisk. I started an investigation about the predicted disk error and SMART in general, which leads me straightly to smartmontools. I use it for 4 years now and wrote two articles (German), to spread good news about it. To help both, the project and the users, I reorganized the smartmontools website a bit. I hope you'll like it.
We have a main menu with seven sections, an integrated search engine and a new layout. Next step will be, to update the websites content, so that it reflects the state of the current version 5.3.8. Conributions are welcome! Mail to smartmontools-support list, if you have questions or want to add information.
My interest in SMART arose at my previous job at Mandriva. I was building up a Linux distribution to turn a set of computers into a super computer (HPC). While looking at how we can manage such a cluster, I was faced with some failing disks. Doing a short research on that problem, I found this project.
As I am also packaging applications in RPM for Mandriva Linux, I decided to include smartmontools in it. My role is to keep smartmontools up-to-date in the Linux distribution and reporting bugs to the developers. To be honest, this happens once in a blue moon.
Since I am implicated in the smartmontools project, friends often ask me for
help in understanding how theirs disks feels ;o). So I also wrote an
article
about smartmontools in French language.
will follow..