Linux运维基础之glances命令详解

Linux运维基础之glances命令详解

Linux 中的 glances 命令可提供系统性能的全面概览。作为一个实时监控系统,它能在一个易于阅读的界面上提供有关 CPU、内存、磁盘使用情况等方面的信息。与 top htop 等命令类似,glances 通过显示更多信息和允许更多自定义,使系统监控更进一步。

无论你是系统管理员还是网络开发人员,glances 命令都是你工具包中不可或缺的一部分。对于那些需要监控系统资源、排除性能问题或优化系统效率的人来说,它尤其方便。除了 vmstatiostat 等工具外,glances 还能让你更全面地了解系统的健康状况和性能。

如何安装 glances 命令

大多数 Linux 发行版默认不包含 glances,因此你需要安装它。以下是在各种 Linux 系统上安装和卸载 glances 的方法:

对于基于 Ubuntu/Debian 的系统:

安装命令:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
sudo apt-get update
sudo apt-get install glances
sudo apt-get update sudo apt-get install glances
sudo apt-get update
sudo apt-get install glances

卸载命令:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
sudo apt-get remove glances
sudo apt-get remove glances
sudo apt-get remove glances

适用于 Fedora:

安装命令:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
sudo dnf install glances
sudo dnf install glances
sudo dnf install glances

卸载命令:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
sudo dnf remove glances
sudo dnf remove glances
sudo dnf remove glances

对于 CentOS/RHEL:

安装命令:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
sudo yum install glances
sudo yum install glances
sudo yum install glances

卸载命令:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
sudo yum remove glances
sudo yum remove glances
sudo yum remove glances

适用于 macOS(使用 Homebrew):

安装命令:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
brew install glances
brew install glances
brew install glances

卸载命令:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
brew uninstall glances
brew uninstall glances
brew uninstall glances

如何使用 glances

1. 监控系统资源

语法:glances

说明:显示系统资源的实时概览。

示例:glances

输出:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
CPU 5.6% MEM 42.1% SWAP 0.0% LOAD 0.45 0.36 0.31
NETWORK rx 102Kb/s tx 58Kb/s
DISK I/O read 0b/s write 20Kb/s
CPU 5.6% MEM 42.1% SWAP 0.0% LOAD 0.45 0.36 0.31 NETWORK rx 102Kb/s tx 58Kb/s DISK I/O read 0b/s write 20Kb/s
CPU     5.6%  MEM    42.1%  SWAP    0.0%  LOAD    0.45  0.36  0.31 
NETWORK   rx   102Kb/s   tx   58Kb/s 
DISK I/O  read  0b/s     write 20Kb/s

该输出显示当前 CPU 使用率为 5.6%,内存使用率为 42.1%,无交换使用率、网络和磁盘 I/O 速率以及系统平均负载。

2. 以特定刷新间隔监控系统资源

语法:glances -t <seconds>

说明:以特定间隔(秒)刷新显示屏。

示例:glances -t 5

输出:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
CPU 3.2% MEM 40.2% SWAP 0.0% LOAD 0.25 0.30 0.28
CPU 3.2% MEM 40.2% SWAP 0.0% LOAD 0.25 0.30 0.28
CPU     3.2%  MEM    40.2%  SWAP    0.0%  LOAD    0.25  0.30  0.28

此输出与基本命令类似,但每 5 秒刷新一次。

3. 按名称监控特定进程

语法:glances -p <process_name>

说明:按名称过滤显示,只显示特定进程。

示例:glances -p firefox

输出:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
PID 1234 USER john VIRT 2.3G RES 200M CPU 12% MEM 5% TIME+ 2:03 NAME firefox
PID 1234 USER john VIRT 2.3G RES 200M CPU 12% MEM 5% TIME+ 2:03 NAME firefox
PID  1234  USER  john  VIRT  2.3G  RES  200M  CPU  12%  MEM  5%  TIME+  2:03  NAME  firefox

此输出显示 Firefox 进程的详细信息,包括 PID、用户、虚拟内存和常驻内存、CPU 和内存使用率以及总时间。

4. 在网络服务器模式下运行 Glances

语法:glances -w

说明:Runs glances in web server mode, allowing access via a web browser.

示例:glances -w

输出:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
Glances Web User Interface started on http://0.0.0.0:61208/
Glances Web User Interface started on http://0.0.0.0:61208/
Glances Web User Interface started on http://0.0.0.0:61208/

此输出表明 glances 以网络服务器模式运行,可以通过提供的 URL 访问用户界面。

5. 使用特定配置文件监控系统资源

语法:: glances -C <path_to_config_file>

说明:使用特定配置文件启动 glances

示例: glances -C /etc/glances/glances.conf

这条命令允许你使用自定义配置文件来修改 glances 的行为和外观。

6. 将统计数据导出到 CSV 文件

语法:: glances --export csv --output-file <file.csv>

说明:将统计数据导出到 CSV 文件。

示例: glances --export csv --output-file stats.csv

此命令将监控数据导出到名为 stats.csv 的 CSV 文件中,以便进一步分析或保存记录。

7. 按磁盘名称监控磁盘 I/O

语法:: glances -d <disk_name>

说明:按磁盘名称监控特定磁盘 I/O。

示例: glances -d sda

输出:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
DISK I/O sda read 100Kb/s write 50Kb/s
DISK I/O sda read 100Kb/s write 50Kb/s
DISK I/O  sda  read  100Kb/s  write  50Kb/s

此输出显示 sda 磁盘的具体读写速度。

8. 使用 Docker 插件进行监控

语法:: glances --enable-plugin docker

说明:使用 Docker 插件监控 Docker 容器。

示例: glances --enable-plugin docker

输出:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
DOCKER ID 12345678 NAME my_container CPU 5% MEM 10% STATUS Up 3 hours
DOCKER ID 12345678 NAME my_container CPU 5% MEM 10% STATUS Up 3 hours
DOCKER  ID  12345678  NAME  my_container  CPU  5%  MEM  10%  STATUS  Up 3 hours

此输出显示特定 Docker 容器的详细信息,包括其 ID、名称、CPU 和内存使用率以及状态。

9. 显示网络累积统计

语法:: glances --enable-plugin ip

说明:使用 IP 插件显示累积网络统计信息。

示例: glances --enable-plugin ip

输出:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
NETWORK eth0 rx 1.2GB tx 800MB
NETWORK eth0 rx 1.2GB tx 800MB
NETWORK  eth0  rx  1.2GB  tx  800MB

此输出显示 eth0 网络接口的累计接收 rx 和传输 tx 数据。

更多 Linux 命令

下面罗列了最常见的一些 Linux 命令,您可以根据自己的需要查阅对应命令的详细解析:

目录操作 rmdir · cd · pwd · exa · ls
文件操作 cat · cp · dd · less · touch · ln · rename · more · head
文件系统操作 chown · mkfs · locate
网络 ping · curl · wget · iptables · mtr
搜索和文本处理 find · grep · sed · whatis · ripgrep · fd · tldr
系统信息和管理 env · history · top · who · htop · glances · lsof
用户和会话管理 screen · su · sudo · open

此外,我们还整理 Linux 命令行大全,以帮助大家全面深入地学习 Linux。

评论留言