In this guide, we will discuss what is SysMonTask, how to install SysMonTask in Linux and finally how to monitor Linux system resource usage with SysMonTask utility.
Table of Contents
What is SysMonTask?
A while ago we looked at Sysmon, a graphical application to monitor resource usage about CPU, GPU, Memory, HDD/SDD and network connections in Linux. Sysmon gained attention in a short period of time, because it looked similar to Task Manager of Windows 8/10. Today, we will see about yet another Windows like Task Manager For Linux named SysMonTask.
Sysmontask is a graphical Linux system monitor application with the compactness and usefulness of Windows Task Manager to allow higher control and monitoring. It will monitor and display the system resource usage and performance details of running processes, CPU, Memory, HDD/SSD, and Network interface cards. Sysmontask is written in Python programming language and its source code is freely available in Github.
Install Sysmontask in Linux
Sysmontask can be installed in multiple ways.
On Ubuntu and its derivatives:
If you are using Ubuntu 18.04, 20.04 and 20.10 and equivalent, install Sysmontask using this official PPA created by the developer:
$ sudo add-apt-repository ppa:camel-neeraj/sysmontask
$ sudo apt install sysmontask
Note: If you are on Ubuntu<=20.04 versions, you should install psutil
:
$ sudo pip3 install -U psutil
On Arch Linux and its variants:
Sysmontask is available in AUR, so you an install it using any AUR helper tools like Paru or Yay on Arch Linux and its variants like Manjaro Linux as shown below:
$ paru -S sysmontask
Or,
$ yay -S sysmontask
Or, you can manually install it like below:
$ git clone https://aur.archlinux.org/sysmontask.git
$ cd sysmontask
$ makepkg -si
$ sysmontask
On Fedora:
Sysmontask is available in the default repositories of Fedora distribution. Run the following command to install Sysmontask in Fedora:
$ sudo dnf install sysmontask
Using Pip:
Since Sysmontask is written in Python, you can install it using Pip package manager:
$ pip3 install sysmontask
The above command will install the necessary scripts such as sysmontask
, sysmontask.set_dark
, sysmontask.set_default
, sysmontask.set_light
and sysmontask.uninstall
in "~/.local/bin"
directory. If this directory is not on your $PATH
, you need to add this directory to $PATH
.
$ export PATH=/home/sk/.local/bin/:$PATH
From Source:
Git clone the Sysmontask repository using command:
$ git clone https://github.com/KrispyCamel4u/SysMonTask.git
The above command will download the contents of Sysmontask GitHub repository in a local folder named SysMonTask
in the current directory. Install all necessary which are mentioned in the requirements.md
file. You can find this file inside the cloned directory.
After installing the dependencies, run the following commands to compile and install Sysmontask from source like below:
$ cd SysMonTask
$ sudo python3 setup.py install
For Nvidia GPUs, you should install nvidia-smi
. It is probably installed by default with Nvidia propriety drivers.
To verify if it is already installed, run:
$ nvidia-smi
If it is not installed, install it before starting Sysmontask.
Monitor Linux system resource usage with SysMonTask
It is recommended to run Sysmontask for the first time from Terminal, so that all essential scripts will be copied to the intended locations.
$ sysmontask
This is how Sysmontask default interface looks like:
By default, Sysmontask lists all running processes along with their usage in a simple tabular column format. As you can see in the above output, the following details are listed under Processes tab:
- PID (Process ID)
- Name of the process
- rCPU (recursive-CPU) usage
- rMemory (recursive-Memory) usage
- CPU usage
- Memory usage
- Disk Read and Write rate in human readable format
- The owner of the process
- And the actual path of the process
Sysmontask is not just a process viewer. You can terminate unnecessary processes as well. To kill a process, just select it and hit the Killer button at the bottom.
Performance tab
You will see Performance tab next to the Processes tab. Under the Performance tabs, you will have the total resource usage of CPU, Memory, HDD/SDD, Network interface card in the left pane. On the right pane, you can view the individual statistics of each device.
Under CPU tab on the right, you can view the following details:
- CPU utilisation in %
- Number of running processes
- Temperature,
- Current CPU usage speed,
- Number of CPU Threads
- Number of cores
- Logical processor count
- Total CPU speed
- Whether VT is enabled or not
- L1/L2/L3 cache usage
The Memory tab lists the following details:
- Total installed Memory size
- Current Memory usage
- Available Memory
- Buffer / Cache size
- Swap size
- RAM speed
- Memory slot used
- Form Factor
Under Disk tab, you will find the following details:
- Total disk size
- Data transfer rate
- Read / Write speed
- Partition details
- Mount points
- Filesystem type
- Total and Available free space
You can see these details under Network tab:
- Name of the Network card
- Send and Receive speed
- Total sent and received bandwidth
- IPv4 / IPv6 addresses
- Mac address
Set different theme for Sysmontask
By default, Sysmontask will your system themes. It also includes light and dark themes if you're interested to try them.
To set a different theme, for example light theme, the command would be:
$ sysmontask.set_light
Enter the number to choose a theme:
0 : Ambiance 1 : Raleigh 2 : Radiance 3 : Emacs 4 : Yaru 5 : Adwaita 6 : Default 7 : HighContrast Index for Corresponding Theme that you want to apply?:
To reset to the default theme, do:
$ sysmontask.set_default
Uninstall Sysmontask
If you don't use it anymore, you can simply remove as shown below.
If you have installed it using Apt
, run this command to remove Sysmontask:
$ sudo apt remove sysmontask
For DNF
:
$ sudo dnf remove sysmontask
If it is installed with Pip
, the following commands should remove it:
$ sudo sysmontask.uninstall
$ sudo pip3 uninstall sysmontask
If you've installed from source, go to the cloned directory and run:
$ ./uninstall.sh
SysMonTask is very new and is being actively developed by a few community members. You will likely to expect bugs. If you encounter with any bugs, report them in the GitHub page given below.
Resource:
Suggested read:
- Some Alternatives To ‘top’ Command line Utility You Might Want To Know
- How To Display Process Information Using Procs On Linux
- The Top Command Tutorial With Examples For Beginners
- How To Find Out How Long A Process Has Been Running In Linux
- Reptyr – Move A Running Process From One Terminal To Another Without Closing It
- How To Suspend A Process And Resume It Later In Linux
- How To Limit CPU Usage Of A Process In Linux
- How To Kill The Largest Process In An Unresponsive Linux System
- How To Find The Execution Time Of A Command Or Process In Linux