Essential Linux Monitoring & Performance Tools Every Sysadmin Should Know
This guide introduces thirteen practical Linux utilities—ranging from network bandwidth monitors and disk I/O testers to security hardening and terminal multiplexing tools—complete with installation commands, usage examples, and key options to help system administrators efficiently monitor, diagnose, and optimize their servers.
Nethogs – Per‑Process Bandwidth Monitor
Nethogs is a terminal‑based network traffic monitor that displays bandwidth usage for each running process, allowing quick identification of network‑heavy applications.
IOZone – Disk I/O Performance Tester
IOZone evaluates file system read/write performance across different operating systems. Download from the official site and compile:
# tar xvf iozone3_420.tar
# cd iozone3_420/src/current/
# make linux
# ./iozone -a -n 512m -g 16g -i 0 -i 1 -i 5 -f /mnt/iozone -Rb ./iozone.xls-a: automatic mode
-n: minimum file size (KB)
-g: maximum file size (KB)
-i: select test number
-f: output file name (deleted after run)
-R: generate Excel output
-b: write output to specified file
iotop – Real‑Time Disk I/O Viewer
iotop shows live disk I/O similar to the top command.
yum -y install iotopiptraf – Simple Network Traffic Analyzer
# yum -y install iptrafiftop – Interactive Network Bandwidth Monitor
iftop provides a top‑like view of network traffic, more visual than iptraf.
# tar zxvf iftop-0.17.tar.gz
# cd iftop-0.17
# ./configure
# make && make install
# iftop -i eth0 # monitor interface eth0TX: transmitted traffic
RX: received traffic
TOTAL: total traffic
Cumm: cumulative traffic since start
peak: traffic peak
rates: average over 2s, 10s, 40s
htop – Enhanced Process Viewer
htop is an interactive process manager that can replace the default top command.
rpm -ivh http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm # install third‑party repo
yum -y install htopnmon – System Resource Monitor
nmon provides comprehensive monitoring for AIX and Linux systems.
# chmod +x nmon_x86_64_rhel6
# mv nmon_x86_64_rhel6 /usr/sbin/nmon
# nmonMultiTail – Simultaneous Log Monitoring
MultiTail opens multiple windows in a single console to tail several log files at once.
rpm -ivh http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm # third‑party repo
yum -y install multitail
multitail -e "fail" /var/log/secure # filter keyword "fail"
multitail -l "ping baidu.com" # execute command in a pane
multitail -i /var/log/messages -i /var/log/secure # monitor two filesFail2ban – SSH Brute‑Force Protection
Fail2ban watches log files, matches patterns, and automatically adds firewall rules to block offending IPs.
# cd fail2ban-0.8.11
# python setup.py install
# cp ./redhat-initd /etc/init.d/fail2ban
# service fail2ban start
# chkconfig --add fail2ban
# chkconfig fail2ban onTypical jail configuration (ssh‑iptables) includes ignoreip, bantime, findtime, maxretry, and action=iptables.
tmux – Terminal Multiplexer
tmux allows persistent sessions across SSH connections, offering more flexibility than GNU Screen.
rpm -ivh http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.x86_64.rpmAgedu – Disk Usage Visualizer
Agedu scans directories and presents usage statistics via a web interface.
# tar zxvf agedu-r9723.tar.gz
# cd agedu-r9723
# ./configure
# make && make install
# agedu -s / # scan root
# agedu -w --address 192.168.0.10:80 # serve via HTTPNmap – Network Scanner
Nmap discovers hosts, open ports, and services on a network.
# tar jxvf nmap-6.40.tar.bz2
# ./configure
# make && make install
# nmap 192.168.0.10 # basic scan
# nmap -O 192.168.0.10 # OS detection
# nmap -A 192.168.0.10 # aggressive scan
# nmap 192.168.0.0/24 # scan whole subnet
# -sS TCP SYN scan
# -sV service version detectionHttperf – Web Server Load Tester
Httperf generates high‑volume HTTP traffic to evaluate server capacity, memory usage, and stability.
# tar zxvf httperf-0.9.0.tar.gz
# cd httperf-0.9.0
# ./configure
# make && make install
# httperf --hog --server=192.168.0.202 --uri=/index.html --num-conns=10000 --wsess=10,10,0.1--hog: generate as many connections as possible
--num-conns: total number of connections (e.g., 10000)
--wsess: simulate user sessions (sessions, requests per session, think time)
Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
ITPUB
Official ITPUB account sharing technical insights, community news, and exciting events.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
