NDCTL-INJECT-SMART(1)
๐ ndctl-inject-smart(1) โ the ndctl manual's glow-up edition โจ
okay bestie, welcome to the ndctl-inject-smart page, straight out of the ndctl Manual ๐ซถ
๐ธ NAME ๐ธ
ndctl-inject-smart โ perform smart threshold/injection operations on a DIMM ๐
โจ SYNOPSIS โจ
ndctl inject-smart <dimm> [<options>]
๐ฆ DESCRIPTION ๐ฆ
So like, every memory device that shows up in the ACPI NFIT table โ or honestly any other platform NVDIMM resource discovery mechanism that does the same job โ gets its own generic DIMM device object registered, and that object is named /dev/nmemX. one per device. cute, right? ๐
And ndctl-inject-smart is the tool you use to set smart thresholds and inject smart attributes. that's the whole vibe. it's giving "pretend the hardware said this" energy ๐
๐ EXAMPLES ๐
Example numero uno โ set the smart controller temperature and the spares threshold for DIMM-0 to 32C, set the spares threshold to 8, and enable the spares alarm:
ndctl inject-smart --ctrl-temperature-threshold=32 --spares-threshold=8 --spares-alarm nmem0
Example numero dos โ inject a media temperature value of 52 and the fatal health status flag for DIMM-0:
ndctl inject-smart --media-temperature=52 --health=fatal nmem0
๐ OPTIONS ๐
-b,--bus=โ a bus id number, or a provider string (like "ACPI.NFIT" bestie). it restricts the operation to the bus(es) you named. you can also pass the keyword all to say "no restriction whatsoever" โ but lowkey that's the exact same thing as just not passing a--busoption at all ๐-m,--media-temperature=โ inject <value> for the media temperature smart attribute ๐ก๏ธ-M,--media-temperature-threshold=โ set <value> for the smart media temperature threshold ๐--media-temperature-alarm=โ enable or disable the smart media temperature alarm. the options are on or off. pick one, no in-between ๐--media-temperature-uninjectโ uninject any media temperature you previously injected. undo button, but make it smart ๐ซ-c,--ctrl-temperature=โ inject <value> for the controller temperature smart attribute ๐ก๏ธ-C,--ctrl-temperature-threshold=โ set <value> for the smart controller temperature threshold ๐--ctrl-temperature-alarm=โ enable or disable the smart controller temperature alarm. options are on or off ๐--ctrl-temperature-uninjectโ uninject any controller temperature you previously injected ๐ซ-s,--spares=โ inject <value> for the spares smart attribute ๐งฉ-S,--spares-threshold=โ set <value> for the smart spares threshold ๐--spares-alarm=โ enable or disable the smart spares alarm. options are on or off ๐--spares-uninjectโ uninject any spare percentage you previously injected ๐ซ-f,--fatalโ set the flag to spoof fatal health status ๐ (spoofing! it's pretend! the vibes are fake!)--fatal-uninjectโ uninject the fatal health status flag ๐ซ-U,--unsafe-shutdownโ set the flag to spoof an unsafe shutdown on the next power down โก--unsafe-shutdown-uninjectโ uninject the unsafe shutdown flag ๐ซ-N,--uninject-allโ uninject all possible smart fields/values, and it does NOT care whether they were previously injected or not. scorched earth, but make it tidy ๐ฅ-v,--verboseโ emit debug messages for the error injection process, for when you simply must know everything ๐-u,--humanโ format numbers representing storage sizes, or offsets, as human readable strings with units instead of the default machine-friendly raw-integer data. and it also converts other numeric fields into hexadecimal strings ๐งฎ
๐ COPYRIGHT ๐
Copyright ยฉ 2016 - 2022, Intel Corporation. License GPLv2: GNU GPL version 2 http://gnu.org/licenses/gpl.html. This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. ๐ซถ
no cap, the NO WARRANTY part is in all caps for a reason bestie โ read it, respect it ๐
๐ SEE ALSO ๐
and that's the whole page, slay โจ this was ndctl, dated 2026-07-07, and you absolutely ate reading all of it ๐ ๐ฆ๐ธ periodt ๐
๐ฆ where this page comes from
- fedora 43: ndctl 85-1.fc43 ยท GPL-2.0-only AND LGPL-2.1-only AND CC0-1.0 AND MIT
- fedora 44: ndctl 85-1.fc44 ยท GPL-2.0-only AND LGPL-2.1-only AND CC0-1.0 AND MIT
- ubuntu stonking: ndctl 82-1ubuntu1 ยท LGPL-2.1-only
- ๐ girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms