Linux如何查看内存、磁盘、CPU以及网络的状态

发布时间:2022-01-05 09:32:54 作者:iii
来源:亿速云 阅读:279
# Linux如何查看内存、磁盘、CPU以及网络的状态

## 目录
1. [引言](#引言)
2. [内存状态查看](#内存状态查看)
   - [free命令](#free命令)
   - [top/htop命令](#tophtop命令)
   - [/proc/meminfo文件](#procmeminfo文件)
3. [磁盘状态查看](#磁盘状态查看)
   - [df命令](#df命令)
   - [du命令](#du命令)
   - [iostat命令](#iostat命令)
4. [CPU状态查看](#cpu状态查看)
   - [top/htop命令](#tophtop命令-1)
   - [vmstat命令](#vmstat命令)
   - [mpstat命令](#mpstat命令)
5. [网络状态查看](#网络状态查看)
   - [ifconfig/ip命令](#ifconfigip命令)
   - [netstat/ss命令](#netstatss命令)
   - [nload/iftop命令](#nloadiftop命令)
6. [综合监控工具](#综合监控工具)
   - [dstat](#dstat)
   - [glances](#glances)
7. [结语](#结语)

---

## 引言
Linux系统管理员和开发者经常需要监控系统资源的使用情况,包括内存、磁盘、CPU和网络等。本文将详细介绍如何通过命令行工具查看这些关键资源的状态,帮助您快速诊断系统性能问题。

---

## 内存状态查看

### free命令
最基础的内存查看工具,显示物理内存和交换分区的使用情况:
```bash
free -h

输出示例:

              total        used        free      shared  buff/cache   available
Mem:           7.7G        2.1G        3.2G        345M        2.4G        5.0G
Swap:          2.0G        512M        1.5G

参数说明: - -h:人类可读格式 - -m:以MB为单位显示 - -s 5:每5秒刷新一次

top/htop命令

动态查看内存使用情况:

top

在top界面中: - 查看MemSwap行 - 按M按内存使用排序

htop(需安装)提供更友好的交互界面:

sudo apt install htop  # Debian/Ubuntu
htop

/proc/meminfo文件

详细内存信息:

cat /proc/meminfo

关键指标: - MemTotal:总内存 - MemFree:空闲内存 - Buffers/Cached:缓存内存


磁盘状态查看

df命令

查看文件系统磁盘空间使用:

df -hT

输出示例:

Filesystem     Type      Size  Used Avail Use% Mounted on
/dev/sda1      ext4       50G   20G   28G  42% /

参数说明: - -T:显示文件系统类型 - -i:查看inode使用情况

du命令

查看目录/文件磁盘占用:

du -sh /var/log  # 查看/var/log总大小
du -ah --max-depth=1 /home  # 查看/home下各子目录大小

iostat命令

监控磁盘I/O性能(需安装sysstat包):

iostat -dx 2  # 每2秒刷新一次

关键指标: - %util:设备利用率 - await:I/O平均等待时间


CPU状态查看

top/htop命令

实时CPU监控:

top

关键信息: - %Cpu(s)行显示总体CPU使用 - us:用户空间占用 - sy:内核空间占用 - id:空闲CPU

htop显示更直观的每个核心使用率。

vmstat命令

查看系统整体性能:

vmstat 1 5  # 每秒1次,共5次

CPU相关列: - r:运行队列长度 - us/sy/id:CPU时间占比

mpstat命令

多核CPU详细统计:

mpstat -P ALL 1

输出示例:

CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest  %gnice   %idle
all    5.21    0.00    1.30    0.50    0.00    0.10    0.00    0.00    0.00   92.89
0      7.12    0.00    1.50    0.30    0.00    0.20    0.00    0.00    0.00   90.88

网络状态查看

ifconfig/ip命令

查看网络接口信息:

ifconfig  # 传统命令
ip addr   # 现代替代方案

关键信息: - RX/TX packets:收发包数量 - errors/dropped:错误/丢包统计

netstat/ss命令

查看网络连接:

netstat -tulnp  # 传统命令
ss -tulnp       # 更快的替代方案

常用参数: - -t:TCP连接 - -u:UDP连接 - -l:监听端口

nload/iftop命令

实时流量监控:

nload eth0  # 安装:sudo apt install nload
iftop -i eth0  # 安装:sudo apt install iftop

显示每个连接的实时带宽使用。


综合监控工具

dstat

多功能资源监控:

dstat -cdngy 1  # 监控CPU/磁盘/网络/系统状态

输出示例:

---total-cpu-usage---- -dsk/total- -net/total- ---system--
usr sys idl wai hiq siq| read  writ| recv  send| int   csw 
  5   2  93   0   0   0|  10k   25k|   0     0 | 250   500

glances

跨平台监控工具:

glances

提供彩色界面的完整系统监控,支持远程访问。


结语

掌握这些Linux系统监控命令,您将能够: 1. 快速诊断性能瓶颈 2. 及时发现资源异常 3. 为系统优化提供数据支持

建议通过man命令查看各工具的完整文档(如man top),并组合使用多个工具进行交叉验证。对于长期监控,建议考虑Zabbix、Prometheus等专业监控系统。

本文共约2550字,涵盖Linux系统监控的核心命令和实用技巧。 “`

注:实际字数可能因格式和终端显示略有差异,如需精确字数控制,建议在Markdown渲染后进行检查调整。

推荐阅读:
  1. Python获取CPU、内存使用率以及网络使用状态代码
  2. CPU、内存、磁盘IO之间的关系是什么

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

linux

上一篇:PhotoNinja for Mac工具有什么用

下一篇:mysql的索引技巧有哪些

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》