NVME-VIRTIUM-SAVE-SMART-TO-VTVIEW-LOG(1)
πΈ nvme-virtium-save-smart-to-vtview-log(1) πΈ
okay bestie, so this is the manual page for nvme-virtium-save-smart-to-vtview-log β yes that's the whole name, don't @ me, she's long but she's iconic π
β¨ NAME β¨
nvme-virtium-save-smart-to-vtview-log β periodically save smart attributes into a log file (csv format). that's it, that's the gig π
π¦ SYNOPSIS π¦
nvme [<global-options>] virtium save-smart-to-vtview-log <device>
[--run-time=<NUM> | -r <NUM>]
[--freq=<NUM> | -f <NUM>]
[--output-file=<FILE> | -O <FILE>]
[--test-name=<NAME> | -n <NAME>]
π DESCRIPTION π
okay so picture this: this command literally automates the whole "collect SMART data over and over" thing for you, on a schedule, no cap β¨ it grabs the data periodically and saves it in a format that's ready to analyze. every single entry gets a timestamp and comes out in csv format, so you can just open it in excel and go feral with the charts π
some use cases she ate with: collecting SMART data for temperature characterization, getting data to calculate endurance, or just hoarding SMART data during a test or during normal operation. literally whatever you need π«Ά
the <device> parameter is mandatory β can't skip her, sorry β and it can be either the NVMe character device (ex: /dev/nvme0), or a namespace block device (ex: /dev/nvme0n1). pick your fighter π
on success, the command generates a log file, and that file contains an entry for identify device (current features & settings) plus periodic entries of SMART data. so it's not just the periodic stuff, you get the identify snapshot too π
this command runs for the time specified by the option <run-time>, and collects SMART data at the frequency specified by the option <freq>. and listen β if you don't specify the output file name, she'll just generate one for you that includes the model string and serial number of the device. main character energy, she handles it π
if the test-name option is specified, it will be recorded in the log file and get used as part of the log file name. two for one, we love to see it π
πΈ OPTIONS πΈ
-r <NUM>,--run-time=<NUM>β (optional) Number of hours to log data (default = 20 hours). that's the how-long question β³-f <NUM>,--freq=<NUM>β (optional) How often you want to log SMART data (0.25 = 15', 0.5 = 30', 1 = 1 hour, 2 = 2 hours, etc.). Default = 10 hours. yes bestie, those numbers are real ones and that default is what the page says, don't come for me π-O <FILE>,--output-file=<FILE>β (optional) Name of the log file (give it a name that easy for you to remember what the test is). You can leave it blank too, the file name will be generated as<model string>-<serial number>-<test name>.txt. name her something cute π-n <NAME>,--test-name=<NAME>β (optional) Name of the test you are doing. We use this string as part of the name of the log file. label your era, bestie π·οΈ
π GLOBAL OPTIONS π
these ones live at the top-level nvme command, but they're available to this subcommand too β shared custody, we love it π«Ά
--dry-runβ Print the command that would be executed, but do not actually execute it. all vibes, zero commitment π--no-ioctl-probingβ Disable probing for 64-bit IOCTL support.--no-retriesβ Disable retry logic on transient errors.-o <fmt>,--output-format=<fmt>β Set the reporting format to normal, tabular, 'json, or binary. Only one output format may be used at a time. one at a time, she's monogamous π--output-format-version=<version>β Select the output format version. Version 1 uses the original field naming, while version 2 (default) provides more consistent and script-friendly field names. Other versions are rejected. no bootleg versions allowed π--quietβ Suppress informational messages. Errors are still reported, and--quietcancels any--verbosefor the library log level. silence is golden, but errors still speak up π--set-options=<key=value>[,<key=value>...]β Set libnvme library options for this invocation. Supported keys areforce-4k,mi-probe-enabled,test-base-dirandtest-sysfs-dir. those four, exactly those four β¨--timeout=<ms>β Set the timeout for the command in milliseconds.infiniteor-1waits without a time limit (0xffffffff). no clock-watching if you don't want to π°οΈ-v,--verboseβ Increase the level of detail in the output. May be specified multiple times to further increase verbosity. stack her, she loves it π₯nvme-cli.conf(5)β ok this one isn't a flag but bestie it matters: these options can also be set as machine-wide defaults innvme-cli.conf(5). A command-line flag always overrides the file. flag beats file, periodt β
π§ EXAMPLES π§
- Temperature characterization β chilling in the cold, literally:
# nvme virtium save-smart-to-vtview-log /dev/yourDevice --run-time=100 --record-frequency=0.25 --test-name=burn-in-at-(-40)
- Endurance testing β the marathon era:
# nvme virtium save-smart-to-vtview-log /dev/yourDevice --run-time=100 --record-frequency=1 --test-name=Endurance-test-JEDEG-219-workload
- Just logging β Default logging is run for 20 hours and log every 10 hours. low-effort, high-reward πΈ
# nvme virtium save-smart-to-vtview-log /dev/yourDevice
okay real talk π«Ά the example commands above use --record-frequency exactly as written on the original page β copy them character for character, iykyk π
π NVME π
Part of the nvme-user suite β¨
and that's the whole page bestie, go log something gorgeous π¦
xoxo, your girl β footer vibes only: NVME-VIRTIUM-SAVE() π (that's the page name and the trailing mark on this one, so consider yourself signed off π)
π¦ where this page comes from
- arch rolling: nvme-cli 3.2-1 Β· GPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms