What's new in Smartmontools (S.M.A.R.T. Monitoring Tools) 7.3

Dec 1, 2022
  • smartctl '-j': Many additions to the JSON output for SCSI/SAS devices.
  • smartctl '-j': JSON output always includes timestamp, regardless of '-i'.
  • smartctl '-i' and '--identify': ATA ACS-5 enhancements.
  • smartctl '-l defects': additionally works for SCSI Pending Defects log
  • subpage.
  • smartctl '-l envrep': Prints SCSI Environmental Reporting log subpage.
  • smartctl '-l scterc[,R,W],p': Gets/sets the persistent power-on values.
  • smartctl '-l scterc,reset': Restores to manufacturer's default values.
  • smartctl '-l tapedevstat': Prints SCSI Tape Device Statistics log page.
  • smartctl '-l tapealert': Prints SCSI Tape Alert log page.
  • smartctl '-l zdevstat': Prints SCSI Zoned Block Device Statistics log
  • subpage.
  • smartctl '-H': No longer checks and clears the SCSI Tape Alert log page
  • unless the option is given twice.
  • smartctl '-H': No longer sets bit 2 of exit status if ATA attributes are
  • available.
  • smartctl '-H': Checks new NVME 1.4 status bit.
  • smartctl '-n POWERMODE': ATA: Optionally exits immediately if unsupported.
  • smartctl: Support for Zoned block device characteristics and statistics.
  • smartctl: Various fixes related to SCSI supported log pages and subpages.
  • smartd: Fixed code execution vulnerability in conjunction with
  • GNU mailutils < 3.13.
  • smartd '-u USER[:GROUP]': Runs the warning script as a non-privileged user.
  • smartd '--capabilities': No longer suppresses mail notification.
  • smartd '--capabilities=mail': Adds capabilities required for exim MTA.
  • smartd '-q *nodev0*': Three new options to change the exit status to 0 if
  • there are no devices to monitor.
  • smartd '-s' and '-A': Allows one to disable preconfigured files with '-'.
  • smartd: Fixed handling of multiple email addresses in conjunction with
  • plugin scripts. Added new environment variable SMARTD_ADDRESS_ORIG.
  • smartd: No longer writes 'smartd -D' output to syslog on syntax error.
  • smartd.conf '-c i=N': Allows one to specify device specific check intervals.
  • SCSI: Retry on UNIT ATTENTION when fetching capacity.
  • NVMe/USB: Device type '-d sntasmedia' for ASMedia ASM2362 USB to
  • NVMe bridges.
  • VERSION information in drive database files of all branches.
  • smartctl and smartd print drive database VERSION information.
  • HDD, SSD and USB additions to drive database.
  • update-smart-drivedb: Now checks VERSION information to prevent downgrades.
  • update-smart-drivedb '--force': Overrides the VERSION check.
  • update-smart-drivedb '--file' and '--url': Updates from local files or
  • other URLs.
  • update-smart-drivedb '-q': Suppresses info messages.
  • update-smart-drivedb: Added long option variants for all short options.
  • update-smart-drivedb: Prevents dangling gpg-agents and temp directories.
  • update-smart-drivedb '--install': Installs runtime drivedb.h from location
  • specified by ...
  • configure '--with-drivedbinstdir: drivedb.h package install location.
  • configure: SOURCE_DATE_EPOCH prevents inclusion of configure arguments
  • in executables.
  • configure: Check for '-fstack-protector' now includes the required libs.
  • Dropped restriction to C++98, a C++11 compiler is now required.
  • Linux: Device scan range enhanced to '/dev/sdzz'.
  • Linux: Fixed access to '-d aacraid' and '-d megaraid' devices from smartd
  • if '--capabilities' is used.
  • Linux: '-d cciss,N' is no longer required for non-RAID hpsa devices.
  • Darwin: smartctl '-s apm,N' is now supported.
  • OpenBSD: Fixed too short command timeouts.
  • OpenBSD: Fixed device name used for autodetection.
  • OpenBSD: Fixed SAT autodetection of sd* devices.
  • FreeBSD: Added direct access ('-d megaraid,N') and scanning for LSI RAID on
  • 'mfi' and 'mrsas' controllers.
  • Windows: smartd '-u restricted': Runs the warning script with a restricted
  • access token.
  • Windows: New script 'update-smartd-drivedb.ps1' provides gpg verification
  • and replaces 'update-smartd-drivedb.exe'.
  • Windows: Disabled '-d aacraid' support due to unresolved bugs.
  • Added '-d accraid,...,force' flag to try anyway.

New in Smartmontools (S.M.A.R.T. Monitoring Tools) 7.2 (Jan 19, 2021)

  • smartctl: New option 'json=y[c]' selects YAML output.
  • smartctl 'i': Prints ATA TRIM and Zoned Device capabilities.
  • smartctl 'j': Fixed 'scsi_grown_defect_list' value.
  • smartctl 'a': Prints SCSI 'Accumulated power on time'.
  • smartctl 'n POWERMODE': SCSI support.
  • smartctl 's standby,now' and 's standby,off': SCSI support.
  • smartctl 'c': NVMe 1.4 additions.
  • smartd: Support for staggered selftests.
  • smartd: No longer writes attribute log if no attributes were read
  • due to standby mode or other error.
  • smartd: Now resolves symlinks before device names are checked for
  • duplicates.
  • smartd: Fixed SMARTD_DEVICETYPE environment variable if DEVICESCAN is
  • used without 'd TYPE'.
  • ATA: Device type 'd jmb39xq,N' for JMB39x protocol variant used by
  • some QNAP NAS devices.
  • ATA: Device type 'd jms56x,N' for JMS562 USB to SATA RAID bridges.
  • SCSI: Improved heuristics for log subpages of new and very old disks.
  • NVMe: Log transfer size limited to avoid device or kernel crashes.
  • NVMEe/USB: Device type 'd sntrealtek' for Realtek RTL9210 USB to
  • NVMe bridges.
  • updatesmartdrivedb: New option 'branch X.Y'.
  • HDD, SSD and USB additions to drive database.
  • Dropped support for preC99 snprintf().
  • configure: Dropped option 'withoutworkingsnprintf'.
  • configure: Fixed 'fstackprotector*' detection.
  • Linux: Various fixes of smartd.service file.
  • Darwin: NVMe log support.
  • FreeBSD: Device scan does no longer include T_ENCLOSURE devices.
  • NetBSD: Fixed timeout handling.
  • NetBSD big endian: Fixed ATA register handling.
  • OpenBSD: Fixed timeout handling.
  • Windows: Dropped backward compatibility fixes for very old compilers.

New in Smartmontools (S.M.A.R.T. Monitoring Tools) 6.6 (Nov 10, 2017)

  • smartctl '-i' and '--identify': ATA ACS-4 and SATA 3.3 enhancements.
  • smartctl: Control ATA write cache through SCT Feature Control with '-s wcache-sct,ata|on|off[,p]' and '-g wcache-sct'.
  • smartctl: Print ATA Pending Defects log with '-l defects'.
  • smartctl '-s wcreorder,on|off': New persistent flag ',p'.
  • smartctl '-s standby': Prevent temporary drive spinup.
  • smartctl '-n POWERMODE': New parameter to set exit status.
  • smartctl '-g security': ATA Security Level check fixed.
  • smartctl '-l scttemp*': Print minimum supported ERC Time Limit.
  • smartctl '-q noserial': Now also suppresses "SAS address" output.
  • smartctl '-i': Print IEEE EUI-64 of NVMe namespace.
  • smartctl '-c': Print NVMe 1.3 feature flags.
  • smartctl '-A': Print NVMe 1.3 thermal temperature transition statistic.
  • smartctl '-g/s dsn': Get/set ATA DSN.
  • smartd: Uses also device identify information to detect for duplicate devices.
  • smartd '-e dsn' directive: Set ATA DSN.
  • smartd: Improved SCSI/SAS temperature logging.
  • smartd: Silence emails and log messages on open errors of d removable' devices.
  • smartd: Exit on device open error unless '-q never' or '-d removable' is specified (regression).
  • update-smart-drivedb: Now authenticates downloaded file with GnuPG.
  • update-smart-drivedb: New options '--trunk', '--no-verify' and export-key'.
  • Device type '-d intelliprop,N' for IntelliProp controllers.
  • SCSI: Default timeout increased to 1 minute.
  • configure: New options '--with-gnupg', '--with-scriptpath' and with-update-smart-drivedb=X.Y'
  • configure: Checks for C++11 support option and requires with[out]-cxx11-option' if option unknown or no C++11 support.
  • HDD, SSD and USB additions to drive database.
  • New smartmontools-* mailing list addresses.
  • Man page formatting reworked.
  • Darwin: Initial NVMe support based on undocumented API.
  • OS/2: Support for the OS2AHCI driver, updating source code, adding autoscan support, adding self-test support.
  • Windows: Support for Windows 10 NVMe driver (stornvme.sys).
  • Windows: Fix CSMI access for IRST driver 15.2.
  • Windows smartd: Ability to run PowerShell scripts with '-M exec'.
  • Windows smartd: New PowerShell script to send smartd warning emails without external tools.
  • Windows package: Now provides PDF man pages.

New in Smartmontools (S.M.A.R.T. Monitoring Tools) 6.5 (May 24, 2016)

  • Experimental support for NVMe devices on FreeBSD, Linux and Windows.
  • smartctl '-i', '-c', '-H' and '-l error': NVMe support.
  • smartctl '-l nvmelog': New option for NVMe.
  • smartd.conf '-H', '-l error' and '-W': NVMe support.
  • Optional NVMe device scanning support on Linux and Windows.
  • configure option '--with-nvme-devicescan' to include NVMe in
  • default device scanning result.
  • Device scanning now allows to specify multiple '-d TYPE' options.
  • ATA: Added new POWER MODE values introduced in ATA ACS-2.
  • ATA: SCT commands are no longer issued if ATA Security is locked.
  • SCSI: LB provisioning improvements.
  • SCSI: Fixed GLTSD bit set/cleared info messages.
  • SCSI: Solid State media log page is no longer checked for tapes.
  • SCSI: Improved handling when no tape cartridge in drive.
  • SCSI: Workaround for buggy Seagate firmware.
  • SAT: Improved heuristics to detect bogus sense data from SAT layer.
  • smartd: Fixed crash on missing argument to '-s' directive.
  • update-smart-drivedb: Now uses HTTPS for download by default.
  • update-smart-drivedb: New options to select URL and download tool.
  • update-smart-drivedb: New download tool 'svn'.
  • configure option '--without-update-smart-drivedb' to disable
  • update-smart-drivedb script.
  • configure options '--disable-drivedb', '--enable-savestates',
  • '--enable-attributelog' and '--with-docdir' are no longer supported.
  • autoconf < 2.60 and automake < 1.10 are no longer supported.
  • Drive database file now also includes the DEFAULT setting
  • for each attribute.
  • HDD, SSD and USB additions to drive database.
  • Darwin: New support files for package installer.
  • New makefile target 'install-darwin' builds DMG image.
  • Solaris: Auto detection of SATA devices behind SAT layer.
  • Solaris SPARC: Legacy ATA support disabled by default.
  • New configure option '--with-solaris-sparc-ata' enables it.
  • File os_solaris_ata.s is no longer included in source tarball.
  • Windows: Auto detection of USB devices specified by drive letter.
  • Windows: Device scanning does no longer ignore unknown USB devices.
  • Windows: Prevent drive spin up by '-n standby' check.
  • Windows: New application manifests indicating Win 10 support.
  • Windows smartd: '-m [sys]msgbox' is no longer supported.
  • Windows installer: Defaults to 64-bit version on 64-bit Windows.
  • Various code changes suggested by Clang Static Analyser and Cppcheck.

New in Smartmontools (S.M.A.R.T. Monitoring Tools) 6.4 (May 24, 2016)

  • Device type '-d usbprolific' for Prolific PL2571/277x USB bridges.
  • SAT: Support for ATA registers returned in fixed format sense data.
  • smartctl '-i' and '--identify': ATA ACS-4 and SATA 3.2 enhancements.
  • smartctl '-l xerror': Support for logs with more than 255 pages.
  • smartctl '-l devstat': Prints ACS-3 DSN flags.
  • smartctl '-l devstat': Read via SMART command if GP log is not
  • available.
  • smartctl '-l scttempsts': Prints SCT SMART STATUS (ACS-4) and
  • vendor specific SCT bytes.
  • configure option '--with-systemdenvfile=auto' as new default.
  • configure options '--disable-drivedb', '--enable-savestates'
  • and '--enable-attributelog' are deprecated.
  • Corresponding '--with-*' options are enhanced accordingly.
  • Configure option '--with-docdir' is deprecated.
  • autoconf < 2.60 and automake < 1.10 are deprecated.
  • (all of the above still work but a warning is printed if used)
  • HDD, SSD and USB additions to drive database.
  • Linux: AACRAID fixes, SMART STATUS should work now.
  • Linux: '/dev/megaraid_sas_ioctl_node' fd leak fix.
  • Darwin: '-S' command implemented, '-l devstat' should work now.
  • Cygwin: Compile fix.
  • Windows: Device type '-d aacraid' for AACRAID controllers.
  • Windows: SAT autodetection based on IOCTL_STORAGE_QUERY_PROPERTY.
  • Windows installer: Fix possible loss of user PATH environment variable.

New in Smartmontools (S.M.A.R.T. Monitoring Tools) 6.3 (May 24, 2016)

  • smartctl: Fixed bogus error messages from '-g/-s wcreorder'.
  • smartctl prints ATA form factor.
  • SCSI: Improved support of modern disks (SAS SSDs).
  • SCSI: Fixed sense data noise from old disks.
  • update-smart-drivedb man page.
  • configure option '--with-smartdscriptdir'.
  • configure option '--with-smartdplugindir'.
  • configure option '--with-systemdenvfile'.
  • configure option '--with-working-snprintf'.
  • Removed build time stamps to support reproducible builds.
  • Compile fixes for C++11.
  • HDD, SSD and USB additions to drive database.
  • Linux: Support for controllers behind AACRAID driver.
  • Linux: Fixed DEVICESCAN max path count.
  • FreeBSD: Fixed possible crash caused by wrong SCSI error handling.
  • FreeBSD: Compile fix for kFreeBSD.
  • Windows: Reworked CSMI port scanning.
  • QNX: Compile fix.

New in Smartmontools (S.M.A.R.T. Monitoring Tools) 6.2 (May 24, 2016)

  • smartctl: Added ATA write cache reordering control using
  • '-g wcreorder' and '-s wcreorder,[on|off]' options.
  • update-smart-drivedb: Updated for new SVN repository.
  • HDD, SSD and USB additions to drive database.
  • Areca RAID support: Fixed possible segfault on empty port.
  • HPT RAID support: Maximum disk number increased to 128.
  • Linux: RHEL 9 compile fixes.
  • FreeBSD: Device scanning now skips port multipliers.
  • Cygwin: 64-bit compile fixes.
  • Windows: Fixed bogus temp file name in smartd_warning.cmd
  • (already included in smartmontools-6.1-2.win32-setup.exe).
  • Windows: smartd service is no longer installed as interactive.

New in Smartmontools (S.M.A.R.T. Monitoring Tools) 6.1 (May 24, 2016)

  • smartctl '-l directory': improved output format.
  • smartctl: Fix parsing of '-l select,cont+SIZE' option.
  • smartctl prints ATA Additional Product Id (OEM Id).
  • smartctl '-s/-g wcache' for SCSI devices to control write cache.
  • smartctl '-s/-g rcache' for SCSI devices to control read cache.
  • smartctl prints more info for SCSI devices: media rotation rate,
  • form factor, physical block size, lowest LBA alignement,
  • logical block provisioning, disk protection type
  • and selftest progress status.
  • smartctl '--identify' updated for latest ATA ACS-3 spec.
  • smartd runs /etc/smartd_warning.sh to generate warning emails
  • (Windows: smartd_warning.cmd).
  • smartd '-w PATH' option to specify this executable.
  • smartd '-d ignore' directive.
  • smartd DEVICESCAN ignores devices already specified.
  • smartd: added support for state persistence ('-s') and attribute logging
  • ('-A') for SCSI devices.
  • smartd '-W' directive uses ATA attribute 190 if 194 is missing.
  • Support of larger SCSI defect lists via READ DEFECT(12).
  • Device type '-d usbjmicron,p' for Prolific USB bridges.
  • Many HDD, SSD and USB additions to drive database.
  • Linux: Support for SAS disks behind Areca controllers.
  • Linux: Improved support for SATA disks on LSI/Megaraid controllers
  • Linux: disks on MegaRaid controllers are automatically scanned
  • FreeBSD: Support for SAS disks behind Areca controllers.
  • FreeBSD: Enhanced ATA command support for 3ware.
  • FreeBSD: Support for 3ware 9750 (/dev/twsX).
  • FreeBSD: Fixed support for 48-bit ATA commands on legacy controllers
  • with ATACAM driver.
  • FreeBSD: Improved support for SAS/SCSI disks on LSI/Megaraid controllers.
  • Windows: smartd.conf '-M exec' supports path names with spaces.
  • Windows: Tool wtssendmsg.exe to handle smartd.conf '-m console'.
  • Windows: DEVICESCAN now supports up to 128 drives.
  • Windows: smartctl.exe and smartd.exe include VERSIONINFO resource.
  • Windows: smartd.exe includes MESSAGETABLE resource.
  • Windows: syslogevt.exe is no longer provided.

New in Smartmontools (S.M.A.R.T. Monitoring Tools) 6.0 (May 24, 2016)

  • option/directive '-F nologdir' and '-F xerrorlba'.
  • smartctl '--identify' option.
  • smartctl prints nominal media rotation rate (ATA).
  • smartctl prints SATA version and speed.
  • smartctl '-l sataphy' works for CD/DVD drives also.
  • smartctl '-x' includes ATA Device Statistics.
  • smartd warning emails include device identify info.
  • smartd '-d' output is flushed to support redirection.
  • HDD, SSD and USB additions to drive database.
  • Windows smartd: smartd.conf directives '-m console',
  • '-m active', '-m connected'.
  • Windows: Support for SAS disks behind Areca controllers.
  • Windows: Win9x/ME and NT4 are no longer supported.

New in Smartmontools (S.M.A.R.T. Monitoring Tools) 5.43 (May 24, 2016)

  • smartctl options '-g, --get' and '-s, --set' to get/set
  • various ATA settings: AAM, APM, Read look-ahead, Write
  • cache, Security (freeze), Standby mode/timer.
  • smartd directive '-e' to set (most of) the above settings
  • on startup.
  • smartctl options '-f hex' and '-f hex,[id|val]'.
  • smartctl does not start ATA self-test if another test is
  • already running. Override with new option '-t force'.
  • smartctl supports extended self-test polling times
  • greater than 255 minutes.
  • Controller-independent SAT detection: '-d sat,auto[+TYPE]'.
  • smartd.conf DEFAULT directive.
  • Many HDD, SSD and USB additions to drive database.
  • Linux and FreeBSD: Support for SATA disks behind Areca SAS
  • RAID controllers and HP Smart Array controllers.
  • Windows: Support for SATA disks behind Areca controllers.
  • Windows smartd: directives '-l offlinests,ns' and
  • '-l selfteststs,ns'.
  • Windows installer: Combined 32-/64-bit support.
  • FreeBSD: fixed crash on SCSI devices with FreeBSD9-RC1

New in Smartmontools (S.M.A.R.T. Monitoring Tools) 5.42 (May 24, 2016)

  • smartctl option '-l devstat' (Device Statistics).
  • smartctl option '-l ssd' (SSD endurance indicator).
  • smartd logs identify information of each SCSI/SAS device.
  • smartd resends warning emails if problem reappears.
  • smartd directives '-l offlinests' and '-l selfteststs'.
  • Many HDD, SSD and USB additions to drive database.
  • Platform-specific man pages.
  • smartd.8 man page no longer includes smartd.conf.5.
  • FreeBSD: Compilation fixes.
  • FreeBSD: Support for Areca controllers.
  • FreeBSD: Fix '-l scterc' support.
  • FreeBSD: Support for 48-bit ATA commands.
  • Linux: Support for Areca controllers enhanced.
  • Windows installer: UAC support.
  • Windows: update-smart-drivedb /S(ilent) option.
  • Windows: improved USB ID detection.

New in Smartmontools (S.M.A.R.T. Monitoring Tools) 5.41 (May 24, 2016)

  • Failed self-tests outdated by a newer successful extended
  • self-test are no longer reported as errors.
  • Support for ATA Long Logical/Physical Sectors (LLS/LPS).
  • 'smartctl --scan-open' can create a draft smartd.conf.
  • smartctl prints World Wide Name (WWN) of ATA device.
  • smartctl option '-f brief' to select new attribute output
  • format which includes more flags and fits in 80 columns.
  • smartd logs identify information and WWN of each ATA device.
  • smartd logs warning from drive database if present.
  • smartd logs changes of offline data collection status.
  • smartd directive '-l scterc,READTIME,WRITETIME'.
  • smartd preserves last scheduled selective self-tests span.
  • 'smartd.service' file for systemd.
  • configure option '--with-systemdsystemunitdir'
  • configure option '--with-exampledir'.
  • configure searches for init.d or rc.d directory.
  • 'make install' does no longer overwrite an existing
  • smartd.conf file.
  • 'update-smart-drivedb' does no longer require GNU sed.
  • Many HDD, SSD and USB additions to drive database.
  • Linux USB autodetection: Enable '-d sat,16' for newer kernels.
  • Linux megaraid: Fix segfault on non-data SCSI commands.
  • Linux megaraid: Fix pass-through of non-data ATA commands.
  • FreeBSD: Use 'fetch' in 'update-smart-drivedb'.
  • OpenBSD: Use 'ftp' in 'update-smart-drivedb'.
  • OpenBSD: Workaround for shell bug.
  • OpenBSD: Fix DEVICESCAN for OpenBSD >= 4.8.
  • Windows: Experimental support for Intel ICHxR RAID.
  • Windows: DEVICESCAN includes USB devices.
  • Windows: Faster USB ID detection.
  • Windows: update-smart-drivedb tool.
  • Windows installer: Option '/SO component,...'.
  • Windows: Fix smartd warning email truncation on Win7.
  • Windows installer: Fix shortcut removal on Vista/Win7.
  • Windows: Add missing quotes in smartctl-run.bat and
  • smartd-run.bat

New in Smartmontools (S.M.A.R.T. Monitoring Tools) 5.40 (May 24, 2016)

  • Other config entries may precede smartd DEVICESCAN.
  • Option '-v' allows to specify byte order of attribute raw value
  • configure: New default value for '--with-docdir'.
  • configure: '--enable-drivedb' is now the default.
  • Improved support for Intel SSDs.
  • Improved support for SandForce based SSDs.
  • Drive database is in a separate source file 'drivedb.h'
  • which can be downloaded from SVN.
  • USB ID info is now included in 'drivedb.h'.
  • Many additions to drive database.
  • New script 'update-smart-drivedb'.
  • smartd libcap-ng support, option '-C, --capabilities'.
  • smartd directive '-l xerror' to check Extended Comprehensive
  • SMART Error Log.
  • smartctl option '-l scterc[,...]' to get/set the
  • SCT Error Recovery Control time limit.
  • smartctl option '-t vendor,N'.
  • smartctl options '--scan, --scan-open'.
  • Linux: Add '/dev/sd[a-c][a-z]' to smartd DEVICESCAN.
  • Linux: Support SATA drives on LSI 3ware 9750 controllers.
  • Windows: Read 'drivedb.h' and 'smartd.conf' from exe directory.
  • Windows: Support for 64-bit executables.
  • Windows: Support for cross compilation on Linux.
  • Fix regression in smartctl option '-t select,M-N'.
  • Fix SCT temperature table commands on big endian CPUs.
  • Fix regression in smartd SMARTD_DEVICE and SMARTD_DEVICETYPE
  • environment variables.

New in Smartmontools (S.M.A.R.T. Monitoring Tools) 5.39.1 (May 24, 2016)

  • Fix crash on kFreeBSD.
  • Fix regression in smartctl option '-q, --quietmode'.
  • Fix regression in smartd directive '-l selftest'.
  • Linux: Allow smartd 'DEVICESCAN -d sat'.
  • Linux: Fix spin-up of SATA drive if '-n standby' is used.
  • Windows: Fix parsing of 3ware 'tw_cli' output.