80 Linux Monitoring Tools for SysAdmins

The industry is hotting up at the moment, and there are more tools than you can shake a stick at. Here lies the most comprehensive list on the Internet (of Tools). Featuring over 80 ways to your machines. Within this article we outline:

  • Command line tools
  • Network related
  • System related monitoring
  • Log monitoring tools
  • Infrastructure monitoring tools

It’s hard work monitoring and debugging performance problems, but it’s easier with the right tools at the right time. Here are some tools you’ve probably heard of, some you probably haven’t – and when to use them:

Top 10  System Monitoring Tools

1. Top

This is a small tool which is pre-installed in many unix systems. When you want an overview of all the processes or threads running in the system: top is a good tool. You can order these processes on different criteria and the default criteria is CPU.

2. htop

Htop is essentially an enhanced version of top. It’s easier to sort by processes. It’s visually easier to understand and has built in commands for common things you would like to do. Plus it’s fully interactive.

3. atop

Atop monitors all processes much like top and htop, unlike top and htop however it has daily logging of the processes for long-term analysis. It also shows resource consumption by all processes. It will also highlight resources that have reached a critical load.

4. apachetop

Apachetop monitors the overall performance of your apache webserver. It’s largely based on mytop. It displays current number of reads, writes and the overall number of requests processed.

5. ftptop

ftptop gives you basic information of all the current ftp connections to your server such as the total amount of sessions, how many are uploading and downloading and who the client is.

6. mytop

mytop is a neat tool for monitoring threads and performance of mysql. It gives you a live look into the database and what queries it’s processing in real time.

7. powertop

powertop helps you diagnose issues that has to do with power consumption and power management. It can also help you experiment with power management settings to achieve the most efficient settings for your server. You switch tabs with the tab key.

8. iotop

iotop checks the I/O usage information and gives you a top-like interface to that. It displays columns on read and write and each row represents a process. It also displays the percentage of time the process spent while swapping in and while waiting on I/O.

Network related monitoring

9. ntopng

ntopng is the next generation of ntop and the tool provides a graphical user interface via the browser for network monitoring. It can do stuff such as: geolocate hosts, get network traffic and show ip traffic distribution and analyze it.

10. iftop

iftop is similar to top, but instead of mainly checking for cpu usage it listens to network traffic on selected network interfaces and displays a table of current usage. It can be handy for answering questions such as “Why on earth is my internet connection so slow?!”.

11. jnettop

jnettop visualises network traffic in much the same way as iftop does. It also supports customizable text output and a machine-friendly mode to support further analysis.

12. bandwidthd

BandwidthD tracks usage of TCP/IP network subnets and visualises that in the browser by building a html page with graphs in png. There is a database driven system that supports searching, filtering, multiple sensors and custom reports.

13. EtherApe

EtherApe displays network traffic graphically, the more talkative the bigger the node. It either captures live traffic or can read it from a tcpdump. The displayed can also be refined using a network filter with pcap syntax.

14. ethtool

ethtool is used for displaying and modifying some parameters of the network interface controllers. It can also be used to diagnose Ethernet devices and get more statistics from the devices.

15. NetHogs

NetHogs breaks down network traffic per protocol or per subnet. It then groups by process. So if there’s a surge in network traffic you can fire up NetHogs and see which process is causing it.

16. iptraf

iptraf gathers a variety of metrics such as TCP connection packet and byte count, interface statistics and activity indicators, TCP/UDP traffic breakdowns and station packet and byte counts.

17. ngrep

ngrep is grep but for the network layer. It’s pcap aware and will allow to specify extended regular or hexadecimal expressions to match against packets of .

18. MRTG

MRTG was orginally developed to monitor router traffic, but now it’s able to monitor other network related things as well. It typically collects every five minutes and then generates a html page. It also has the capability of sending warning emails.

19. bmon

Bmon monitors and helps you debug networks. It captures network related statistics and presents it in human friendly way. You can also interact with bmon through curses or through scripting.

20. traceroute

Traceroute is a built-in tool for displaying the route and measuring the delay of packets across a network.

21. IPTState

IPTState allows you to watch where traffic that crosses your iptables is going and then sort that by different criteria as you please. The tool also allows you to delete states from the table.

22. darkstat

Darkstat captures network traffic and calculates statistics about usage. The reports are served over a simple HTTP server and gives you a nice graphical user interface of the graphs.

23. vnStat

vnStat is a network traffic monitor that uses statistics provided by the kernel which ensures light use of system resources. The gathered statistics persists through system reboots. It has color options for the artistic sysadmins.

24. netstat

Netstat is a built-in tool that displays TCP network connections, routing tables and a number of network interfaces. It’s used to find problems in the network.

25. ss

Instead of using netstat, it’s however preferable to use ss. The ss command is capable of showing more information than netstat and is actually faster. If you want a summary statistics you can use the command `ss -s`.

26. nmap

Nmap allows you to scan your server for open ports or detect which OS is being used. But you could also use this for SQL injection vulnerabilities, network discovery and other means related to penetration testing.

27. MTR

MTR combines the functionality of traceroute and the ping tool into a single network diagnostic tool. When using the tool it will limit the number hops individual packets has to travel while also listening to their expiry. It then repeats this every second.

28. Tcpdump

Tcpdump will output a description of the contents of the packet it just captured which matches the expression that you provided in the command. You can also save the this data for further analysis.

29. Justniffer

Justniffer is a tcp packet sniffer. You can choose whether you would like to collect low-level data or high-level data with this sniffer. It also allows you to generate logs in customizable way. You could for instance mimic the access log that apache has.

System related monitoring

30. nmon

nmon either outputs the data on screen or saves it in a comma separated file. You can display CPU, memory, network, filesystems, top processes. The data can also be added to a RRD database for further analysis.

31. conky

Conky monitors a plethora of different OS stats. It has support for IMAP and POP3 and even support for many popular music players! For the handy person you could extend it with your own scripts or programs using Lua.

32. Glances

Glances monitors your system and aims to present a maximum amount of information in a minimum amount of space. It has the capability to function in a client/server mode as well as monitoring remotely. It also has a web interface.

33. saidar

Saidar is a very small tool that gives you basic information about your system resources. It displays a full screen of the standard system resources. The emphasis for saidar is being as simple as possible.

34. RRDtool

RRDtool is a tool developed to handle round-robin databases or RRD. RRD aims to handle time-series data like CPU load, temperatures etc. This tool provides a way to extract RRD data in a graphical format.

35. monit

Monit has the capability of sending you alerts as well as restarting services if they run into trouble. It’s possible to perform any type of check you could write a script for with monit and it has a web user interface to ease your eyes.

36. Linux process explorer

Linux process explorer is akin to the activity monitor for OSX or the windows equivalent. It aims to be more usable than top or ps. You can view each process and see how much memory usage or CPU it uses.

37. df

df is an abbreviation for disk free and is pre-installed program in all unix systems used to display the amount of available disk space for filesystems which the user have access to.

38. discus

Discus is similar to df however it aims to improve df by making it prettier using fancy features as colors, graphs and smart formatting of numbers.

39. xosview

xosview is a classic system monitoring tool and it gives you a simple overview of all the different parts of the including IRQ.

40. Dstat

Dstat aims to be a replacement for vmstat, iostat, netstat and ifstat. It allows you to view all of your system resources in real-time. The data can then be exported into csv. Most importantly dstat allows for plugins and could thus be extended into areas not yet known to mankind.

41. Net-SNMP

SNMP is the protocol ‘simple network management protocol’ and the Net-SNMP tool suite helps you collect accurate information about your servers using this protocol.

42. incron

Incron allows you to monitor a directory tree and then take action on those changes. If you wanted to copy files to directory ‘b’ once new files appeared in directory ‘a’ that’s exactly what incron does.

43. monitorix

Monitorix is lightweight system monitoring tool. It helps you monitor a single machine and gives you a wealth of metrics. It also has a built-in HTTP server to view graphs and a reporting mechanism of all metrics.

44. vmstat

vmstat or virtual memory statistics is a small built-in tool that monitors and displays a summary about the memory in the machine.

45. uptime

This small command that quickly gives you information about how long the machine has been running, how many users currently are logged on and the system load average for the past 1, 5 and 15 minutes.

46. mpstat

mpstat is a built-in tool that monitors cpu usage. The most common command is using `mpstat -P ALL` which gives you the usage of all the cores. You can also get an interval update of the CPU usage.

47. pmap

pmap is a built-in tool that reports the memory map of a process. You can use this command to find out causes of memory bottlenecks.

48. ps

The ps command will give you an overview of all the current processes. You can easily select all processes using the command `ps -A`

49. sar

sar is a part of the sysstat package and helps you to collect, report and save different system metrics. With different commands it will give you CPU, memory and I/O usage among other things.

50. collectl

Similar to sar collectl collects performance metrics for your machine. By default it shows cpu, network and disk stats but it collects a lot more. The difference to sar is collectl is able to deal with times below 1 second, it can be fed into a plotting tool directly and collectl monitors processes more extensively.

51. iostat

iostat is also part of the sysstat package. This command is used for monitoring system input/output. The reports themselves can be used to change system configurations to better balance input/output load between hard drives in your machine.

52. free

This is a built-in command that displays the total amount of free and used physical memory on your machine. It also displays the buffers used by the kernel at that given moment.

53. /Proc file system

The proc file system gives you a peek into kernel statistics. From these statistics you can get detailed information about the different hardware devices on your machine. Take a look at the full list of the proc file statistics

54. GKrellM

GKrellm is a gui application that monitor the status of your hardware such CPU, main memory, hard disks, network interfaces and many other things. It can also monitor and launch a mail reader of your choice.

55. Gnome system monitor

Gnome system monitor is a basic system monitoring tool that has features looking at process dependencies from a tree view, kill or renice processes and graphs of all server metrics.

Log monitoring tools

56. GoAccess

GoAccess is a real-time web log analyzer which analyzes the access log from either apache, nginx or amazon cloudfront. It’s also possible to output the data into HTML, JSON or CSV. It will give you general statistics, top visitors, 404s, geolocation and many other things.

57. Logwatch

Logwatch is a log analysis system. It parses through your system’s logs and creates a report analyzing the areas that you specify. It can give you daily reports with short digests of the activities taking place on your machine.

58. Swatch

Much like Logwatch Swatch also monitors your logs, but instead of giving reports it watches for regular expression and notifies you via mail or the console when there is a match. It could be used for intruder detection for example.

59. MultiTail

MultiTail helps you monitor logfiles in multiple windows. You can merge two or more of these logfiles into one. It will also use colors to display the logfiles for easier reading with the help of regular expressions.

System tools

60. acct or psacct

acct or psacct (depending on if you use apt-get or yum) allows you to monitor all the commands a users executes inside the system including CPU and memory time. Once installed you get that summary with the command ‘sa’.

61. whowatch

Similar to acct this tool monitors users on your system and allows you to see in real time what commands and processes they are using. It gives you a tree structure of all the processes and so you can see exactly what’s happening.

62. strace

strace is used to diagnose, debug and monitor interactions between processes. The most common thing to do is making strace print a list of system calls made by the program which is useful if the program does not behave as expected.

63. DTrace

DTrace is the big brother of strace. It dynamically patches live running instructions with instrumentation code. This allows you to do in-depth performance analysis and troubleshooting. However, it’s not for the weak of heart as there is a 1200 book written on the topic.

64. webmin

Webmin is a web-based system administration tool. It removes the need to manually edit unix configuration files and lets you manage the system remotely if need be. It has a couple of monitoring modules that you can attach to it.

65. stat

Stat is a built-in tool for displaying status information of files and file systems. It will give you information such as when the file was modified, accessed or changed.

66. ifconfig

ifconfig is a built-in tool used to configure the network interfaces. Behind the scenes network monitor tools use ifconfig to set it into promiscuous mode to capture all packets. You can do it yourself with `ifconfig eth0 promisc` and return to normal mode with `ifconfig eth0 -promisc`.

67. ulimit

ulimit is a built-in tool that monitors system resources and keeps a limit so any of the monitored resources don’t go overboard. For instance making a fork bomb where a properly configured ulimit is in place would be totally fine.

68. cpulimit

CPUlimit is a small tool that monitors and then limits the CPU usage of a process. It’s particularly useful to make batch jobs not eat up too many CPU cycles.

69. lshw

lshw is a small built-in tool extract detailed information about the hardware configuration of the machine. It can output everything from CPU version and speed to mainboard configuration.

70. w

W is a built-in command that displays information about the users currently using the machine and their processes.

71. lsof

lsof is a built-in tool that gives you a list of all open files and network connections. From there you can narrow it down to files opened by processes, based on the process name, by a specific user or perhaps kill all processes that belongs to a specific user.

Infrastructure monitoring tools

72. Server Density

Our server monitoring tool! It has a web interface that allows you to set alerts and view graphs for all system and network metrics. You can also set up monitoring of websites whether they are up or down. Server Density allows you to set permissions for users and you can extend your monitoring with our plugin infrastructure or api. The service already supports Nagios plugins.

73. OpenNMS

OpenNMS has four main functional areas: event management and notifications; discovery and provisioning; service monitoring and data collection. It’s designed to be customizable to work in a variety of network environments.

74. SysUsage

SysUsage monitors your system continuously via Sar and other system commands. It also allows notifications to alarm you once a threshold is reached. SysUsage itself can be run from a centralized place where all the collected statistics are also being stored. It has a web interface where you can view all the stats.

75. brainypdm

brainypdm is a data management and monitoring tool that has the capability to gather data from nagios or another generic source to make graphs. It’s cross-platform, has custom graphs and is web based.

76. PCP

PCP has the capability of collating metrics from multiple hosts and does so efficiently. It also has a plugin framework so you can make it collect specific metrics that is important to you. You can access graph data through either a web interface or a GUI. Good for monitoring large systems.

77. KDE system guard

This tool is both a system monitor and task manager. You can view server metrics from several machines through the worksheet and if a process needs to be killed or if you need to start a process it can be done within KDE system guard.

78. Munin

Munin is both a network and a system monitoring tool which offers alerts for when metrics go beyond a given threshold. It uses RRDtool to create the graphs and it has web interface to display these graphs. Its emphasis is on plug and play capabilities with a number of plugins available.

79. Nagios

Nagios is system and network monitoring tool that helps you monitor monitor your many servers. It has support for alerting for when things go wrong. It also has many plugins written for the platform.

80. Zenoss

Zenoss provides a web interface that allows you to monitor all system and network metrics. Moreover it discovers network resources and changes in network configurations. It has alerts for you to take action on and it supports the Nagios plugins.

81. Cacti

(And one for luck!) Cacti is network graphing solution that uses the RRDtool data storage. It allows a user to poll services at predetermined intervals and graph the result. Cacti can be extended to monitor a source of your choice through shell scripts.

82. Zabbix

Zabbix Monitoring
Zabbix is an open source infrastructure monitoring solution. It can use most databases out there to store the monitoring statistics. The Core is written in C and has a frontend in PHP. If you don’t like installing an agent, Zabbix might be an option for you.

Source : https://blog.serverdensity.com/80-linux-monitoring-tools-know/

Reset ubuntu root and GRUB password

To Reset Root Passwd

step1 :- Restart your server or desktop

step2 :- press continue shift untill boot menu show

step3 :- select ubuntu generic second option press Enter

step4 :- then select root shell press Enter

step5 :- type mount -o rw,remount / or # mount -o remount,rw / or mount -rw -o remount /

step6 :- sudo passwd root or passwd root assign passwd and then repeat again the same passwd

Note :- in place of root you can set your name,hostname any name that u assign during installation OR Login.

You can also Create NEW USER
step7 :- sudo adduser ubuntu and give new passwd

GRUB Password:

  1. Boot the system with an Ubuntu live USB or DVD and try to switch to rescue mode. In rescue mode you will be asked if similar steps should be followed, which need to be followed in the installation. Once you get the # prompt, type the following command:chmod /mnt/sysImage
  2. Edit the grub.conf file and remove the passwd line from the file. Save the file and exit.
  3. Once your machine reboots, you will be able to start your Ubuntu in the usual manner.

Gibbon: A Web-based Flexible School Management System


About Gibbon

Gibbon is a free, Open Source, and web-based flexible school management system that can be used to solve real time problems of teachers, students, parents, and educators in different kind of schools. Gibbon allows seamless planing, teaching, and assessment for both teachers and students. It collates every student information, so that every teacher has a clear understanding of each student details such as each student’s attendance, grades, and performance. Based on the results, the teachers can easily understand each student’s ups and downs in each subject, and they can help the students in every possible way.

Be you’re a teacher, student, or parent, Gibbon is an excellent, comprehensive and one-stop-shop efficient tool that makes all information available in one place. Since Gibbon is web-based, the teachers, management persons of the school, and parents can easily and quickly access all student details on the go. Also, It provides easy and timely access to progress and upcoming tasks.


Using Gibbon, the teachers can,

  • Create timetables and lesson plans ;
  • Share lesson plans to students, and parents ;
  • Assign homework ;
  • Review and submit marks of home work and exams to both students and parents ;
  • Maintain attendance of each student ;
  • Send assignments to students ;
  • Send assessment of each student’s to their parents ;
  • Know each student’s personal details, such as address, gender, DOB, Contact no. ;
  • Notify the students or parents about pending fees of every year ;
  • Send periodic performance of student’s performance to their parents ;
  • Create notes outlining both positive and negative student behaviour ;
  • Insert resources directly into lesson plans ;
  • Create list of school activities, functions, programs and let students to participate and sign up online ;
  • Add Learning Area overviews and other reading materials ;
  • Allow students to browse the library ;
  • Allow parents to quickly contact staff based on email addresses ;
  • And many.

Using Gibbon, the management team of a School can,

  • Manage fees, billing schedules and invoices ;
  • Send payment reminders to parents ;
  • Track payments as they arrive ;
  • Generate lists of families who have outstanding payments ;
  • Find the personal details of all employees, staffs, teachers, students, and parents ;
  • Know the students performance ;
  • Know the students grades, attendance, academic performance in all activities ;
  • Know the fee structure of each curriculum ;
  • Fix the fees structure and share them to other management and staffs ;
  • Quickly and easily send messages to staffs, teachers, parents via Email or SMS ;
  • Allow members of the public to apply for school places online ;
  • Reject and approve applications at any time ;
  • And many.

Using Gibbon, the Students can,

  • View their academic performance, grades, marks etc. ;
  • Get lesson plans, home works, assignment from the respective teachers ;
  • View attendance details, and time table of all subjects ;
  • Find various learning materials ;
  • View and participate school events and programs ;
  • View reading materials from school library and teachers ;

The parents can ;

  • View their son/daughter marks ,grades, assignments, assessments, and attendance details ;
  • View and download application forms ;
  • View a particular staff details, such as contact no, Email addresses etc. ;
  • Track their son/daughter’s academic and behavioural records ;
  • And many.

For complete details Gibbon, look at the features page.

Install LAMP stack


On Ubuntu 15.04:

sudo nano /etc/php5/fpm/php.ini

If you can’t find the location of php.ini, the following command will help to find it.

php -i | grep php.ini

Sample output:

Configuration File (php.ini) Path => /etc
Loaded Configuration File => /etc/php.ini

Add or modify the following lines in php.ini file:

file_uploads = On
allow_url_fopen = On
register_globals = off
magic_quotes_gpc = Off
set max_input_vars = 5000
dispaly_errors = Off
error_reporting = E_ALL & ~E_NOTICE

Save and close the file. Restart Apache service.

MySQL Configuration

Create a new MySQL database and MySQL user for Gibbon on your server.

Log in to MySQL prompt using command: or Use PHP My Admin

mysql -u root -p

Then, run the following commands marked in bold in the MySQL prompt to create Database and user for Gibbon.

MariaDB [(none)]> CREATE DATABASE gibbondb;
Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> GRANT ALL PRIVILEGES ON gibbondb.* TO 'gibbonuser'@'localhost' IDENTIFIED BY 'ubuntu';
Query OK, 0 rows affected (0.00 sec)

Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> exit

Download And Install Gibbon

After completing all prerequisites, go to Gibbon download page and get the latest version. As of writing this, the latest version was 9.1.00.

wget https://github.com/GibbonEdu/core/archive/v9.1.00.zip

Extract the zip file:

unzip v9.1.00.zip
Apt-get install unzip or extract from windows to move here using WinSCP

Move the extracted contents to web root folder.

#Cd /V9.*
#mv core-9.1.00 /var/www/gibbon

Set the proper permission to ‘/var/www/gibbon’ directory. (Not necessary)

chown apache:apache -R /var/www/gibbon/

Make sure Gibbon directory as writable. If not, set it writable with command:

chmod 777 /var/www/gibbon/



Reset MySQL root password

  1. Stop the MySQL server

    sudo service mysql stop

  2. Start mysqld

    sudo mysqld --skip-grant-tables &

  3. Login to MySQL as root

    mysql -u root mysql

  4. Change MYSECRET with your new root password


  5. Kill mysqld

    sudo pkill mysqld

  6. Start mysql

    sudo service mysql start

  7. Login to phpmyadmin as root with your new password

Network diagnostic tools




MxToolbox supports global Internet operations by providing free, fast and accurate network diagnostic and lookup tools. Millions of technology professionals use our tools to help diagnose and resolve a wide range of infrastructure issues.

Innovation is why we come to work everyday. Almost all of our online tools started as internal projects we found useful and decided to share with the community. As the site has grown, we continue to invest heavily to develop new tools and services. Innovation is why we come to work everyday.

vesta Control Panel


#    Currently Supported Operating Systems:
#    RHEL 5, RHEL 6
#    CentOS 5, CentOS 6
#    Debian 7
#    Ubuntu 12.04, Ubuntu 12.10, Ubuntu 13.04, Ubuntu 13.10, Ubuntu 14.04

# Connect to your server as root via SSH

ssh root@your server

#apt-get update

# apt-get install curl

 Download installation script

#curl -O http://vestacp.com/pub/vst-install.sh

 Run it

# bash vst-install.sh

Note:It would take some minutes to complete  depends upon your bandwidth.


Default Installation Optional Installation
  • Nginx web server as light front-end
  • Apache web server as application back-end
  • Exim mail server
  • SpamAssassin antispam solution
  • ClamAV antivirus engine
  • Dovecot IMAP/POP3 server
  • VsFTPD ftp server
  • MySQL database server
  • PHP popular web scripting language
  • Webalizer web site log analysis toool
  • AWStats web site log analysis tool
  • RoundCube modern webmail client
  • phpMyAdmin mysql database management tool
  • RRDtool system graphs
  • Backup/Restore
  • DNS
  • PostgreSQL database server
  • ProFTPD alternative ftp server
  • Python powerful programming language
  • Monit proactive monitoring tool
  • SquirrelMail alternative webmail client
  • phpPgAdmin postgresql database management tool


vesta page

vesta home

Linux Networking Commands

40 Useful Linux Commands

Free and open-source software (FOSS)

A screenshot of free and open-source software: Linux Mint running the Xfce desktop environment, Firefox, a calculator program, the built-in calendar, Vim, GIMP, and VLC media player

Free and open-source software (FOSS) is computer software that can be classified as both free software and open-source software.[1][2] That is, anyone is freely licensed to use, copy, study, and change the software in any way, and the source code is openly shared so that people are encouraged to voluntarily improve the design of the software.[3] This is in contrast to proprietary software, where the software is under restrictive copyright and the source code is usually hidden from the users.

The benefits of using FOSS can include decreasing software costs, increasing security and stability (especially in regard to malware), protecting privacy, and giving users more control over their own hardware. Free, open-source operating systems such as Linux and descendents of BSD are widely utilized today, powering millions of servers, desktops, smartphones (e.g. Android), and other devices.[4][5] Free software licenses and open-source licenses are used by many software packages.





webERP is a complete web based accounting and business management system that requires only a web-browser and pdf reader to use. It has a wide range of features suitable for many businesses particularly distributed businesses in wholesale, distribution and manufacturing. When combined with a 3rd party interactive desktop Point Of Sale system it can also form the hub of a dispersed multi-branch retail management system. A fully integrated webSHOP is also available as a 3rd party add-on. webERP is as an open-source application and is available as a free download to use with all the PHP code written in an accessible way for you to add your own features as needed.

Download it from: