日常运维中除了要查看进程信息之外,还需要查看系统资源,本文介绍在 CentOS 7.x 中如何查看系统资源。

显示系统的内存使用情况 free

free 命令用于显示系统的内存使用情况,它提供了有关系统内存的详细信息,包括已使用和空闲的内存,以及缓存和交换空间的使用情况。

# 命令格式
free [参数]

free命令的参数包括:

参数说明
-h以人类可读的格式(即易懂的百分比)显示内存使用情况。
-s指定要显示的内存统计信息的时间间隔(以秒为单位)。
-t显示每个进程的线程数。
-o显示已使用的对象的大小。
-v显示free命令的版本信息。
# 命令示例
free -h

# 可能返回以下内容
              total        used        free      shared  buff/cache   available
Mem:           2.0G        111M        1.6G        484K        201M        1.7G
Swap:            0B          0B          0B

输出通常包括以下几个主要部分:

参数说明
total系统总的可用内存量。
used已使用的内存量。
free空闲的内存量。
shared被多个进程共享的内存量。
buffers/cache缓冲区和缓存的内存量,这部分内存通常用于存储已经读取但尚未写入磁盘的数据,以提高系统的性能。
available可用的交换空间量。

显示系统基本信息 uname

uname 命令用于显示有关系统的一些基本信息,主要包括:操作系统名称(如Linux)、操作系统版本、机器名称(通常是系统的主机名)、机器架构(如x86\_64)

# 命令示例
uname

# 可能返回以下内容
Linux

# 命令示例
uname -a

# 可能返回以下内容
Linux VM-8-4-centos 3.10.0-1160.99.1.el7.x86_64 #1 SMP Wed Sep 13 14:19:20 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

显示网络信息命令 netstat

netstat 命令用于显示网络连接、路由表和网络接口的相关信息,提供了有关网络连接的详细信息,包括本地地址、远程地址、状态、协议类型等。

# 显示当前活动的网络连接
netstat -a

# 显示所有监听的端口和关联的进程
netstat -tuln

# 显示指定端口的监听状态
netstat -p -tuln | grep <端口号>

# 显示路由表信息
netstat -r

# 显示网络接口信息
netstat -i

显示虚拟内存信息命令 vmstat

vmstat 命令用于显示有关虚拟内存(Virtual Memory)的统计信息。它提供了有关系统内存、CPU、磁盘、进程等方面的实时性能指标。

# 显示系统内存的统计信息,包括内存使用情况、缓存使用情况、交换空间使用情况等
vmstat -s

# 显示有关 CPU 的统计信息,包括 CPU 使用率、上下文切换、进程调度等
vmstat -c

# 显示磁盘 I/O 统计信息,包括磁盘读写速度、I/O 请求队列长度、等待 I/O 操作的数量等
vmstat -d

# 显示有关进程的统计信息,包括进程数量、活动进程数量、等待 CPU 的进程数量等:
vmstat -p