4 of the Best System Monitors to Check System Resources in Linux

System Resources Feature

One of the greatest aspects of Linux is how efficient it is in terms of system resource usage. However, there are plenty of times when you might tax your Linux system, such as compiling large codebases, running multiple virtual machines, playing intense video games, or editing 4K video. In these situations, you may want to keep an eye on your system resources to make sure your CPU isn’t getting too hot. Here are some of the best system monitors you can use to check your system resources in Linux.

1. System Monitor

One of the simplest ways to look at your system resource usage is through the built-in GUI system monitor. Most Desktop Environments come with one, and they’re generally good for getting a decent look at your resource usage. Most of them have several tabs, much like the Windows Task Manager, and that can make each given view more simple and less overwhelming.

System Resources Sys Mon Processes
The GNOME System Monitor Processes tab
System Resources Sys Mon Resources
The GNOME System Monitor Resources tab
System Resources Sys Mon Fs
The GNOME System Monitor File Systems tab

However, if you’re the kind of person who wants to see everything on one screen, these generally aren’t for you. Also, they can tend to be inaccurate, so use them with some caution and verify your information.

2. Ytop

Top is a command-line tool for monitoring system resources and is pre-installed in almost every Linux distro. However, it is a very basic tool. Ytop is a program that is far superior to top. It has an excellent CPU graph at the top; an easy-to-read memory graph; reports filesystem usage, network usage, and CPU temperature; and moves a list of running processes to the very bottom so that it’s out of the way and doesn’t distract you.

It refreshes quickly and makes it very easy to quickly glance at your system resource usage while staying out of your way. It’s also very light on resources itself, so it’s a great candidate for an older or weaker system that needs to be careful with how it allocates its energy.

System Resources Ytop
ytop in action

Overall, ytop is one of the best system monitors on the list, and I highly recommend giving it a try.

3. Cockpit

We’ve already written an article on how to manage your Linux system using Cockpit, but it’s such a great tool that it bears mentioning again. Cockpit is a great web-based tool for managing remote systems as well, but when used on a local system, it gives you a dead simple user interface for managing your systems.

On the main Overview page there’s an option to view system resource usage graphs. The graphs are pretty simple, but there are so many options available to dive deeply into disk I/O, network usage, and more. It’s also useful for managing things like virtual machines and containers as well. 

System Resources Cockpit
The Cockpit usage graphs.

4. Netdata

Another web-based system monitor for Linux, Netdata is an incredible tool. This is easily the most granular of all the tools on the list, automatically pulling in information on hardware usage across the machine as well as per-core CPU usage graphs, network packet tracing separated by IPv4 vs. IPv6, and so much more.

One of the great parts is that, aside from dependencies needed, it’s essentially one command to install. Additionally, it’s available to install as a container via Docker, so those who are interested are more than welcome to pull down the container and run it with a simple command. Netdata is an amazing tool that gives you very fine-tuned resource usage statistics with the option to set up alerts as well.

System Resources Netdata
The Netdata System Overview dashboard.

Honorable Mentions

These are great tools that didn’t quite make the list for one reason or another.

1. Htop

Htop is a tool that builds a little on top without making it too complicated. It’s become something of a standard in the community as a show of performance on a system.

System Resources Htop
Htop is a simple tool that provides a simple interface.

2. BashTOP

BashTOP is quite similar to ytop, but there’s a pretty significant difference in terms of user experience. It has a particular look and feel to it, and overall I think ytop is a little more usable. However, the CPU usage reporting in BashTOP is really great, and I recommend it for that.

System Resources Bashtop
I really like Bashtop’s CPU reporting, but everything else is a little hard to read for me

3. Glances

Glances is another tool that has a slightly complicated interface but gives a lot of great information on your system. It’s supposed to be everything “at a glance,” hence the name. It reports on usage simply, but this is the simplest tool to track network sessions (here it’s reporting on TCP connections), which can be useful, depending on your usage.

System Resources Glances
Glances reporting on my system in a particular moment.

Now that you know how to check system resource usage, make sure to check out our guides on how to find the cause of poor Linux system performance, how to improve Linux PC performance, and how to monitor your Nvidia GPU in Linux.

Related:

John Perkins John Perkins

John is a young technical professional with a passion for educating users on the best ways to use their technology. He holds technical certifications covering topics ranging from computer hardware to cybersecurity to Linux system administration.

Leave a Comment

Yeah! You've decided to leave a comment. That's fantastic! Check out our comment policy here. Let's have a personal and meaningful conversation.