在 Linux 系统中,查看系统资源使用情况(如 CPU、内存、网络端口等)有多种常用命令和工具。以下是分类整理的常用方法:
一、查看 CPU 使用情况
top
实时显示系统资源使用情况,包括 CPU、内存、进程等。top- 按
q退出。 - 按
P按 CPU 使用率排序,按M按内存使用率排序。
- 按
htop(需安装)top的增强版,界面更友好,支持鼠标操作。sudoaptinstallhtop# Debian/Ubuntusudoyuminstallhtop# CentOS/RHELhtopmpstat(来自sysstat包)
查看 CPU 使用统计。mpstat-PALL1# 每秒刷新一次所有 CPU 核心vmstat
查看虚拟内存统计,也包含 CPU 信息。vmstat1# 每秒刷新一次
二、查看内存使用情况
free
显示系统内存使用情况(物理内存和交换分区)。free-h# -h 表示以人类可读格式(GB/MB)显示cat /proc/meminfo
显示详细的内存信息。cat/proc/meminfovmstat
也包含内存和交换分区信息。vmstat-s
三、查看磁盘使用情况
df
查看文件系统磁盘空间使用情况。df-h# -h 表示以人类可读格式显示du
查看目录或文件的磁盘使用情况。du-sh/path/to/dir# 显示指定目录的总大小iostat(来自sysstat包)
查看磁盘 I/O 统计。iostat-x1# 每秒刷新一次,显示扩展统计
四、查看网络端口和网络连接
netstat(部分系统已弃用,推荐使用ss)
查看网络连接、路由表、接口统计等。netstat-tuln# 查看所有监听端口(TCP/UDP)netstat-an|grepESTABLISHED# 查看已建立的连接ss(推荐)
更快速、功能更强的网络统计工具。ss-tuln# 查看所有监听端口ss-an|grepESTABLISHED# 查看已建立的连接lsof
查看打开的文件和占用端口的进程。lsof-i:80# 查看占用 80 端口的进程lsof-i# 查看所有网络连接nmap(需安装)
扫描本地或远程主机的开放端口。nmap localhost
五、综合监控工具
glances(需安装)
一个跨平台的系统监控工具,界面类似top,但信息更全面。sudoaptinstallglances# Debian/Ubuntusudoyuminstallglances# CentOS/RHELglancesnmon(需安装)
性能监控工具,可交互式查看 CPU、内存、磁盘、网络等。sudoaptinstallnmon nmon
六、查看系统负载
uptime
显示系统运行时间和负载平均值。uptimew
显示当前登录用户及系统负载。w
七、查看进程资源占用
ps
查看进程快照。psaux|sort-k3-nr|head# 按 CPU 使用率排序psaux|sort-k4-nr|head# 按内存使用率排序pgrep/pkill
根据进程名查找或终止进程。pgrep-lnginxpkillnginx
小贴士
- 使用
man <命令>查看命令的详细帮助文档。 - 某些命令需要
sudo权限才能查看完整信息。 - 可结合
watch命令实现定时刷新,例如:watch-n1free-h