Linux 管理员不是一件容易的工作。保持系统正常运行需要大量的时间、耐心和艰苦的工作。但是 Linux 系统管理员可以稍作喘息,因为他们有一些命令行监视工具的帮助。这些工具帮助他们监视 Linux 服务器性能,并在发现异常时修复任何异常。在本文中,我们将研究用于监视 Linux 性能的前 12 个命令行工具。
(1) top
毫无疑问,top 命令是监视 Linux 排第一位的命令行工具。它是全世界 Linux 系统管理员使用最广泛的命令之一。它以有序的列表快速提供所有正在运行的进程的详细信息。该列表还会实时更新。它不仅显示进程名,还显示内存使用情况和 CPU 使用情况等。
同步阅读: 25 Top Command Examples to Monitor Linux Server Performance
(2) vmstat
VMSTST 是命令行实用程序,在我们的列表中占据第二的位置。它的主要任务是显示虚拟内存统计信息。它还可以帮助您显示各种信息,包括所有系统进程、CPU 活动、分页、块 IO、内核线程和磁盘等。vmstat 是几乎所有 Linux 发行版的默认安装的一部分,因此在安装后可以直接使用它。
(3) lsof
如果您想查看系统中当前打开的所有文件,则需要使用 lsof 命令。它还用于监视当前正在使用的所有过程。该命令的主要优点之一是:当磁盘无法卸载时,它可以帮助管理员查看当前使用的文件。lsof 命令在系统默认安装后不可用,可以使用以下命令进行安装:
For CentOS / RHEL
$ sudo yum install -y lsof // CentOS 7 / RHEL 7 or before
$ sudo dnf install -y lsof // CentOS 8 / RHEL 8
For Ubuntu / Debian
$ apt-get install -y lsof
Or
$ apt-get install -y lsof
要使用 lsof 命令,键入 lsof 并回车
同步阅读 : 18 Quick ‘lsof’ command examples for Linux Geeks
(4) tcpdump
tcpdump 是另一个命令行实用程序,允许 Linux 系统管理员和网络工程师监视通过网络传输的所有 TCP/IP 数据包。使用 tcpdump,也可以将所有数据包保存在单独的文件中以进行分析。
tcpdump 不是操作系统默认安装的一部分,通过以下命令安装它
$ sudo yum install tcpdump -y // CentOS 7 / RHEL 7 or before
$ sudo dnf install tcpdump -y //CentOS 8 / RHEL 8
$ sudo apt install tcpdump -y // Ubuntu / Debian
要开始在特定接口上捕获数据包,请运行以下命令,
# tcpdump -i enp0s3
同步阅读: How to capture and analyze packets with tcpdump command on Linux
(5) netstat
netstat 是用于网络故障排除的最古老的命令行实用程序之一。使用 netstat,我们可以很容易地找到网络连接、路由表、以太网卡统计数据和伪装连接。换句话说,它还可以帮助您快速排除任何网络相关问题。在最新的 Linux 发行版中,netstat 不是默认安装的一部分。使用下面的命令在不同的 Linux 发行版上安装它。
For CentOS 8 / RHEL 8
$ sudo dnf install net-tools -y
For Ubuntu / Debian
$ sudo apt install -y net-tools
运行以下命令以列出系统上的所有 TCP 连接
# netstat -tunlp
(6) htop
htop 是另一个功能丰富的命令行实用程序,它提供对 linux 系统中各种重要资源的实时监视。与 top 命令相比,htop 是一个非常即兴的版本,甚至提供了彩色编码的输出,以便于理解。它还支持水平和垂直查看,还允许管理员管理进程。
同步阅读: How to Use htop to Monitor Linux System Processes
要在 linux 系统上安装 htop,请执行以下命令
$ sudo yum install -y htop // CentOS 7 / RHEL 7 or before
$ sudo dnf install -y htop // CentOS 8 / RHEL 8 or before
$ sudo apt install -y htop // Ubuntu / Debian
htop 命令的示例输出
$ htop
(7) iotop
iotop 是另一个免费的命令行实用程序,允许管理员监视磁盘 I/O 使用详细信息。它类似于 top 和 htop 命令,它的主要优点之一是它为系统中的特定线程或过程提供了细节。因此,系统管理员可以轻松地识别导致大量服务器写入 I/O 进程。
要在不同的 Linux 发行版上安装 iotop,请运行
$ sudo dnf install -y iotop // CentOS 8 / RHEL 8
$ sudo yum install -y iotop // CentOS 7 / RHEL 7
$ sudo apt install -y iotop // Ubuntu / Debian
要开始使用 iotop 实用程序,请在命令行中键入 iotop 并按回车键
$ iotop
(8) iostat
iostat 是一个 Linux 命令行工具,可提供有关设备和分区系统输入 / 输出的详细统计信息。Linux 系统管理员还可以使用此命令行工具来监视本地和远程磁盘(NFS)的性能。
同步阅读: How to Monitor Linux Systems Performance with iostat command
iostat 命令的样本输出如下
$ iostat
(9) goaccess
Goaccess 是一个开源的实时日志查看和分析的命令行工具。它几乎适用于所有 Linux 发行版,它可以用来查看所有 web 服务器 (Nginx, Apache, Amazon S3 和 CloudFront 等) 的实时日志。
Installation of Goaccess on CentOS 8 / RHEL 8
$ wget https://pkgs.dyn.su/el8/base/x86_64/goaccess-1.3-3.el8.x86_64.rpm
$ sudo dnf localinstall goaccess-1.3-3.el8.x86_64.rpm -y
For Ubuntu / Debian
$ sudo apt get install goaccess
分析 Apache web 服务器的实时日志,运行 goaccess 命令
$ sudo goaccess /var/log/httpd/access_log --log-format=COMBINED
(10) glances
glances 是一个免费的跨平台命令行工具,用于监视 linux 系统。几乎所有 Linux 发行版都可以使用 glances,它可以收集除监视之外的系统统计信息。它是用 python 编写的,利用 psutil 库从系统中检索有用的信息。glances 有三种不同的用法
- Standalone command line utility
- Client and Server
- Web Server
在 CentOS / RHEL 系统上安装 glances
$ sudo dnf install -y glances // CentOS 8 / RHEL 8
$ sudo yum install -y glances // CentOS 7 / RHEL 7
在 Ubuntu / Debian 系统上安装 glances
$ sudo apt get install -y glances
要开始使用 glances,输入 glances 命令
$ glances
(11) iptraf
iptraf 是一个命令行实用程序,提供对以太网卡和网络的实时监视。使用 iptraf,系统和网络管理员可以收集很多细节,包括以下内容:
- TCP traffic summary
- ICMP
- IP traffic
- UDP traffic
- Interface activity
- Statistical breakdowns
- Detailed interface statistics
与 iftop 等其他命令相比,iptraf 提供了更详细的分类和统计信息。iptraf 不是操作系统默认安装的一部分,所以要安装它,请运行以下命令
在 CentOS / RHEL 系统上安装 iptraf-ng
$ sudo dnf install -y iptraf-ng
Or
$ sudo yum install -y iptraf-ng
在 Ubuntu / Debian 系统上安装 iptraf-ng
$ sudo apt install -y iptraf-ng
要启动 iptraf 实用程序,输入 iptraf-ng 命令并选择以太网卡
$ iptraf-ng
(12) iftop
iftop 是一个简单的命令行工具,显示 Linux 系统以太网卡上的带宽使用情况。系统和网络管理员使用此工具进行带宽监视。使用 iftop,您可以在它侦听的第一个网络接口中查看源和目标。
在 CentOS / RHEL 系统上安装 iftop
$ sudo dnf install -y iftop
$ sudo yum install -y iftop
在 Ubuntu / Debian 系统上安装 iftop
$ sudo apt install -y iftop
输入 iftop 以启动该实用程序,如下所示
$ iftop
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。