UPDATE-SMART-DRIVEDB(8)
π update-smart-drivedb β the smartmontools drive-database glow-up π
okay bestie, welcome to update-smart-drivedb(8), straight out of the SMART Monitoring Tools family. this is the little script that keeps your drive database looking fresh. let's get into it π
β¨ NAME β¨
update-smart-drivedb β update smartmontools drive database
π¦ SYNOPSIS π¦
update-smart-drivedb [OPTIONS] [DESTFILE]
πΈ DESCRIPTION πΈ
[This man page is generated for the Linux version of smartmontools. It does not contain info specific to other platforms.]
so, update-smart-drivedb updates /usr/share/smartmontools/drivedb.h β or your very own DESTFILE if you're feeling custom β and it pulls from branches/RELEASE_7_5_DRIVEDB of the smartmontools SVN repository. slay.
the tools it uses for downloading? one of these icons: curl(1), wget(1), lynx(1), or svn(1). pick your fighter.
the downloaded file gets verified with OpenPGP/GPG key ID 721042C5. and bestie, the public key block is literally included in the script, so no extra setup, we love that π«Ά
the old file stays put if the downloaded file is identical (ignoring the differences in Id string) β otherwise it gets moved to drivedb.h.old.
the old file also stays if the downloaded file reports an older version on the same branch. you can override that with the --force option. but if the branch version differs, the file is always updated. periodt.
β¨ OPTIONS β¨
-s SMARTCTL,--smartctl SMARTCTLβ use thesmartctl(8)executable at pathSMARTCTLfor the drive database syntax check. the form-s -disables the syntax check entirely. default is/usr/bin/smartctl.-t [DIR/]TOOL,--tool [DIR/]TOOLβ useTOOLfor download.TOOLis one of:curlwgetlynxsvn. default is the first one found inPATH. if aDIRis also specified, the plainTOOLname must begin with any of the above names.-u LOCATION,--url-of LOCATIONβ use URL ofLOCATIONfor download.LOCATIONis one of:github(GitHub mirror of SVN repository),sf(Sourceforge code browser),svn(SVN repository),svni(SVN repository via HTTP instead of HTTPS),trac(Trac code browser).
the default is svn.
--url URLβ download fromURL. a valid OpenPGP/GPG signature with.raw.ascextension must also exist unless--no-verifyis also specified.--file FILEβ copy from localFILE. a valid OpenPGP/GPG signatureFILE.raw.ascmust also exist unless--no-verifyis also specified.--trunkβ download from SVN trunk. this requires--no-verifybecause the trunk versions are not signed. no signature, no safety net, you've been warned π--branch X.Yβ download frombranches/RELEASE_X_Y_DRIVEDB. this also selects the OpenPGP/GPG key for older branches (5.40 to 6.6: Key IDDFD22559).--cacert FILEβ use CA certificates fromFILEto verify the peer.--capath DIRβ use CA certificate files fromDIRto verify the peer.--insecureβ don't abort download if certificate verification fails. this option is also required if a HTTP URL is selected with the-uoption.--no-verifyβ don't verify signature with GnuPG. living dangerously, i see π--forceβ allow downgrades. by default, the database is not replaced with an older version of the same branch.--export-keyβ print the OpenPGP/GPG public key block.--dryrunβ print download commands only. no actual downloading, just vibes.-q,--quietβ suppress info messages. π€«-v,--verboseβ verbose output. give me everything.-h,--helpβ print help text.
π EXAMPLES π
regular update, the classic:
# update-smart-drivedb
/usr/share/smartmontools/drivedb.h 7.2/5225 updated to 7.2/5237
revert to previous version (the "oops, undo" move):
# update-smart-drivedb --force \
--file /usr/share/smartmontools/drivedb.h.old
/usr/share/smartmontools/drivedb.h 7.2/5237 downgraded to 7.2/5225
download the database from SVN trunk to current directory:
$ update-smart-drivedb --trunk --no-verify -s - -u trac drivedb-trunk.h
drivedb-trunk.h 7.3/5254 newly installed (NOT VERIFIED)
notice that (NOT VERIFIED) at the end? that's the trunk life. no signature, no promises π
β EXIT STATUS β
exit status is 0 if the database has been successfully updated or is already up to date. if an error occurs, the exit status is 1. simple as that, bestie.
π§ FILES π§
/usr/bin/update-smart-drivedbβ full path of this script./usr/bin/smartctlβ used to check syntax of new drive database./usr/share/smartmontools/drivedb.hβ current drive database./usr/share/smartmontools/drivedb.h.rawβ current drive database with unexpanded SVNIdstring./usr/share/smartmontools/drivedb.h.raw.ascβ signature file./usr/share/smartmontools/drivedb.h.*old*β previous files./usr/share/smartmontools/drivedb.h.*error*β new files if rejected due to errors./usr/share/smartmontools/drivedb.h.lastcheckβ empty file created if downloaded file was identical.
π AUTHORS π
Christian Franke. this manual page was originally written by Hannes von Haugwitz <hannes@vonhaugwitz.com>.
π REPORTING BUGS π
to submit a bug report, create a ticket in the smartmontools wiki: <https://www.smartmontools.org/>.
alternatively, send the info to the smartmontools support mailing list: <https://listi.jpberlin.de/mailman/listinfo/smartmontools-support>.
they're nice, i promise. go tell them what broke π«Ά
π SEE ALSO π
π PACKAGE VERSION π
smartmontools-7.5 2025-04-30 r5714
$Id: update-smart-drivedb.8.in 5605 2024-03-29 17:12:50Z chrfranke $
and that's the whole thing, bestie π this page is from smartmontools-7.5, dated 2025-04-30, and it's the UPDATE-SMART-DRIVEDB(8) manual. go forth and update that database, you absolute icon π₯π
π¦ where this page comes from
- arch rolling: smartmontools 7.5-2 Β· GPL-2.0-or-later
- fedora 43: smartmontools 1:7.5-10.fc43
- fedora 43: smartmontools 1:7.5-11.fc43 Β· GPL-2.0-or-later
- fedora 43: smartmontools 1:7.5-4.fc43 Β· GPL-2.0-or-later
- fedora 44: smartmontools 1:7.5-10.fc44
- fedora 44: smartmontools 1:7.5-11.fc44 Β· GPL-2.0-or-later
- fedora 44: smartmontools 1:7.5-6.fc44 Β· GPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms