EDAC-CTL(8)

πŸ“¦
version 0.18+git16-g8fdc1d4 Β· 3 versions
, in debian bookworm, debian trixie, ubuntu jammy, ubuntu noble, ubuntu questing, ubuntu resolute, ubuntu stonking

πŸ’– EDAC-CTL πŸ’–

okay so bestie, welcome to edac-ctl β€” the EDAC admin utility, straight out of section 8 of the manual (that's the "system administration commands" section, iykyk πŸ‘‘).


✨ SYNOPSIS ✨

edac-ctl [OPTION]...

πŸ¦‹ DESCRIPTION πŸ¦‹

so edac-ctl is literally a perl(1) script πŸ“œ and what it does is run a bunch of genuinely useful administration tasks for EDAC (Error Detection and Correction) drivers. that's it, that's the vibe. it's the little helper that handles the annoying admin stuff so you don't have to 🫢


πŸ’… OPTIONS πŸ’…

  • --help β€” shows you a lil brief usage message. the "hey bestie here's how you use me" moment 🌸
  • --mainboard β€” prints the mainboard vendor and model for this hardware, if available. the whole method it uses to figure out the vendor + model of the current system is explained down below in the MAINBOARD CONFIGURATION section, so don't skip it πŸ’–
  • --status β€” prints the status of the EDAC drivers β€” loaded or unloaded. like a vibe check but for drivers ✨
  • --register-labels β€” registers motherboard DIMM labels into the EDAC driver sysfs files. this one uses the detected mainboard manufacturer and model number combined with a "labels database", which it finds in any of the files under /etc/edac/labels.d/* or in the labels.db file at /etc/edac/labels.db. ⚠️ heads up: an entry for the current hardware must exist in the labels database or this option literally does nothing. no entry, no slay πŸ™ˆ
  • --print-labels β€” displays the configured labels for the current hardware, and the current labels registered with EDAC. two-for-one, we love to see it πŸŽ€
  • --labeldb=DB β€” lets you specify an alternate location for the labels database. custom path, custom vibes πŸ¦‹

🌈 MAINBOARD CONFIGURATION 🌈

here's the whole method edac-ctl uses to determine the current system's mainboard vendor and model info. it's a three-step quest, in order πŸ”₯

  1. If the config file /etc/edac/mainboard exists, then edac-ctl parses it. the mainboard config file has this super simple syntax:
vendor = <mainboard vendor string>
model =  <mainboard model string>
script = <script to gather mainboard information>

and btw, anything after a # character on a line counts as a comment. πŸ“ if the keyword script is specified, then that script or executable gets run by edac-ctl to gather the mainboard vendor and model information. that script should write the resulting info on stdout in the same format as the mainboard config file. keep the format, bestie πŸ’–

  1. If no mainboard config file exists, then edac-ctl will attempt to read DMI information from these sysfs files:
/sys/class/dmi/id/board_vendor
/sys/class/dmi/id/board_name
  1. If those sysfs files above don't exist either, then edac-ctl falls back to parsing the output of the dmidecode(8) utility. ⚠️ and ngl, using this utility will most often require that edac-ctl be run as root. so yeah, sudo energy πŸ”

πŸ‘‘ SEE ALSO πŸ‘‘

edac(3), edac-util(1)


and that's the whole page, bestie 🫢 this iconic little number is edac-utils-0.18-1, dated 2011-11-09 β€” a classic that still eats, no cap πŸ’œβœ¨