I want a report on my system health, so that I know that all my hardware components (CPU, memory, disks...) are functioning as expected. It would be easiest to read if the report listed only the problems found (if any). Is there a system tool that does this?

Related notes:

  • I know that the disk utility can report SMART results for my disk. I'd like something similar for all my other components.
  • Raw diagnostic tools and benchmarks aren't suitable. Diagnostic tools list component details, but not their health. Benchmarks only sometimes highlight health issues. I am only interested in direct health reports.
  • I am aware of an equivalent tool that performs this function in Windows (reports if a hardware component is failing), but I've forgotten the name :P I'd basically like an equivalent of this.

Electronics generally work 100% or zero percent. Mechanical devices such as hard drives do have indicators of impending failure as per SMART reporting which you already know about.


Fans have impending failure indicators but that is based on your hearing and listening for indicators such as oscillating speeds, squealing bearings, etc.


Another potential indicator of a degrading fan is CPU heat level. On a laptop means fan exhaust vents are clogged or RPM is too low. It could also mean CPU / motherboard needs a dust cleaning with compressed air (don't use your breath which contains moisture). It could also mean your CPU heat sink needs to be reseated with new thermal paste.


If your machine locks up and display a bad memory error you can test your RAM following these instructions: How to check for errors in RAM via linux?.

If the RAM checker finds a bad memory block you can blacklist it using these instructions: Is there a way of limiting the Kernel's memory manager to use only 75% of memory?

NVMe PCIe M.2 Gen 3.0 x 4 (or 2) SSD

If you have an SSD they're life span is measured in trillions of writes. Your SMART utility already measures SSD life but not for NVMe SSDs. For that you need nvme-cli. To install it use:

sudo apt install nvme-cli

Next gather information available from SSD:

$ sudo nvme smart-log /dev/nvme0
Smart Log for NVME device:nvme0 namespace-id:ffffffff
critical_warning                    : 0
temperature                         : 40 C
available_spare                     : 100%
available_spare_threshold           : 10%
percentage_used                     : 0%
data_units_read                     : 12,539,332
data_units_written                  : 10,623,582
host_read_commands                  : 281,194,884
host_write_commands                 : 96,528,713
controller_busy_time                : 672
power_cycles                        : 1,677
power_on_hours                      : 687
unsafe_shutdowns                    : 105
media_errors                        : 0
num_err_log_entries                 : 279
Warning Temperature Time            : 0
Critical Composite Temperature Time : 0
Temperature Sensor 1                : 40 C
Temperature Sensor 2                : 51 C
Temperature Sensor 3                : 0 C
Temperature Sensor 4                : 0 C
Temperature Sensor 5                : 0 C
Temperature Sensor 6                : 0 C
Temperature Sensor 7                : 0 C
Temperature Sensor 8                : 0 C

The most important field is Percentage used which shows as 0%. This isn't disk usage percent but life used percent. I've had this drive since October 2017 and now it's December 2018. As soon as Percentage used hits 1% I can multiply the number of months I've owned it by 100 to find out when it will die. At the current rate I can say the drive will live 100+ years. Of course it will be obsolete in ten years anyway.

System Monitor on desktop with conky

Many people like to show their system status (and health) on a portion of their desktop. I like to keep my Conky running on the right 20% of my primary monitor:

Conky all.gif

Note: The 97% CPU usage on single CPU is caused by screen recorder itself.

To learn more about conky and CPU usage see: How do I stress test CPU and RAM (at the same time)?

  • this is a comprehensive answer, thanks! how do I know that the CPU is running too hot? I'm also aware of the potential for RAM and CPU failures, which might manifest as intermittent crashing, how would I check for these? – d3vid May 21 '18 at 13:50
  • @d3vid I added sections for RAM checking, CPU stress testing and overall system monitoring using conky. – WinEunuuchs2Unix May 21 '18 at 14:09

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.