Skip to content

Troubleshooting and FAQ ​

Causes and fixes for the messages you are most likely to meet, followed by common questions.

Messages ​

sysvitals: not a terminal (use --dump for text output) ​

The full-screen view needs a real terminal, and SysVitals found its output going to a file, a pipe or a program that is not a terminal. Run it directly in a terminal window, or use ./sysvitals.py --dump to get text output.

SMART: permission denied (run with sudo for full SMART) ​

Reading NVMe health data needs root. Quit and start SysVitals with sudo ./sysvitals.py.

SMART: unavailable (install smartmontools for SATA health) ​

The drive is not NVMe, and smartctl gave no health data. Install smartmontools (see Install) and run SysVitals with sudo, because smartctl also needs root to talk to the drive. Some USB enclosures and virtual disks do not pass SMART data through at all; for those, this message is expected.

kill failed: Operation not permitted ​

You tried to signal a process that belongs to another user, or to the system. Only root can do that. Make sure it is the right process before you run SysVitals with sudo to stop it.

./sysvitals.py: Permission denied ​

The file is not executable. Run chmod +x sysvitals.py, or start it with python3 sysvitals.py.

/usr/bin/env: 'python3': No such file or directory ​

Python 3 is not installed. Install it with your package manager, for example sudo apt install python3.

Display ​

There is no CPU temperature in the header ​

SysVitals shows it only when the kernel exposes one of the sensors it knows: k10temp, coretemp, zenpower or cpu_thermal. Most virtual machines have none, so the temperature is left out.

PID/PROGRAM shows - for many sockets ​

As a normal user you can only see which program owns your own sockets. Run sudo ./sysvitals.py to see them all. Sockets owned by the kernel itself always show -.

The screen looks broken or the columns overlap ​

Make the terminal wider. SysVitals cuts long lines at the window edge and redraws when you resize the window. At least 80 columns is recommended; at 120 columns or more, CPU bars are shown four per row.

The numbers differ a little from top ​

SysVitals uses the same formulas as htop, which can differ slightly from top. Readings also depend on when each tool samples. Small differences are normal.

Questions ​

Does SysVitals change anything on my system? ​

Only when you ask it to stop a process. Everything else is read-only: it never writes to drives, changes settings or runs drive self-tests.

Is it safe to run with sudo? ​

SysVitals reads system information and only sends a signal when you press x or F9 and confirm. With sudo, that signal can stop any process, including system services, so check the prompt carefully. You can read the whole program before running it: it is one Python file.

Does it work on macOS or Windows? ​

No. It reads Linux-only sources such as /proc and /sys.

Does it work in a container or over SSH? ​

Over SSH, yes; it only needs a terminal. In a container it shows what the container can see, which is often limited, and drive health is usually not available.

Can I use it in a script? ​

Use ./sysvitals.py --dump. It prints plain text and exits, so you can save it, mail it or compare it over time. The text is meant for people, not as a stable machine-readable format.

Where do I report a bug? ​

On the SysVitals issues page. Include ./sysvitals.py --version, your distribution, and the output of ./sysvitals.py --dump if it helps (remove anything you do not want to share).

Next steps ​