Linux 中怎么使用 Smem 统计进程的实际内存消耗

夜瑶君_6714

夜瑶君_6714

2026-10-28

279人浏览

原创

smem 查进程内存应重点关注 USS 和 PSS:USS 是进程独占物理内存,PSS 为共享内存分摊值,两者相加更接近真实占用;推荐命令 smem -s pss -r -c "pid uss pss rss command" 按 PSS 倒序展示关键指标。

linux 中怎么使用 smem 统计进程的实际内存消耗

直接用 smem 查进程的实际内存消耗,关键不是看 RSS,而是盯住 USS 和 PSS——USS 是进程真正独占的物理内存,PSS 是它“应分摊”的共享内存部分,两者加起来才接近真实占用。

查单个进程的精确内存(推荐 USS + PSS)

运行以下命令,按 PSS 从高到低排序,显示每个进程的 USS、PSS、RSS 和命令名:

  • smem -s pss -r -c "pid uss pss rss command"
  • 加 -r 表示倒序(最大在前),-c 指定列,避免冗余信息干扰判断
  • 重点关注 USS:比如某个 Java 进程 USS 是 120MB,说明它独自占用了 120MB 物理内存,这部分不会被其他进程分摊
  • PSS 更适合横向对比总负载:若两个 Chrome 标签页共享 80MB 的 V8 库,PSS 会把这 80MB 平均分给它们,各算 40MB

快速定位高耗内存进程(带过滤)

不想翻屏?用正则快速筛出目标进程:

Obsidian (Linux)
Obsidian (Linux)

操作 Obsidian 库(纯 Markdown 笔记),并通过 notesmd-cli 实现自动化。

下载
  • 查 nginx 相关进程:smem -P 'nginx' -s pss -r -c "pid uss pss rss name"
  • 查所有 Python 进程:smem -P 'python' -s uss -r(按 USS 排,揪出真正吃内存的那一个)
  • 加 -p 可显示百分比,方便一眼看出某进程占系统总内存的比例

按用户维度汇总(识别谁在拖慢系统)

多个用户共用一台服务器时,用这个看资源归属:

  • sudo smem -u -p -s pss(必须加 sudo 才能统计全部用户)
  • 输出中每行是一个用户名,PSS 总和代表该用户所有进程「公平分摊」后的内存占用
  • 配合 smem -u -p -s uss 对比,能看出该用户是否大量启动独立进程(USS 高),还是集中跑几个共享型服务(PSS 明显高于 USS)

验证结果是否合理(避免误判)

USS 小但 PSS 大?可能是进程加载了大量共享库;USS 和 PSS 都异常高?大概率存在内存泄漏或缓存未释放:

  • 用 smem -p -c "name uss pss" | head -10 看前 10 名,再单独查可疑进程的内存映射:smem -p -m | grep -A5 -B5 'java'
  • 对比 ps aux --sort=-%mem | head -5 和 smem -s pss -r | head -5,如果排名差异大,说明 RSS 已严重失真,此时 smem 的 PSS 更可信

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

linux linux系统

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
服务器是什么
服务器是什么

服务器是一种计算机硬件设备或软件程序,它具有强大的计算和存储能力,用请求、存储数据和提供服务。它在互联网中着关重要的作用,为用户提供各种服务和资源。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.15

457

5

连接apple id服务器时出错
连接apple id服务器时出错

连接apple id服务器时出错的原因包括网络连接问题、服务器问题、Apple ID账户问题、设备问题、防火墙或安全软件问题、时间和日期设置问题、Apple服务器维护等。本专题为大家提供apple id相关的文章、下载、课程内容,供大家免费下载体验。

2023.09.08

960

5

搭建互联网服务器
搭建互联网服务器

搭建互联网服务器需要:1、选择合适的硬件和操作系统,第一步是选择合适的硬件和操作系统;2、安装和配置操作系统,是搭建互联网服务器的关键步骤;3、安装和配置服务器软件,是搭建互联网服务器的下一步,常见的服务器软件包括Apache、Nginx、Tomcat等;4、配置防火墙和安全性,是搭建互联网服务器的重要步骤;5、域名解析和配置,是搭建互联网服务器的最后一步。

2023.09.19

3212

5

如何查看服务器状态
如何查看服务器状态

查看服务器状态的方法有使用命令行工具、图形界面工具、监控工具、日志文件和远程管理工具等。本专题为大家提供服务器状态相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.09

1056

5

服务器域名转接慢怎么解决
服务器域名转接慢怎么解决

服务器域名转接慢的解决办法有DNS优化、服务器优化、CDN加速、前端优化和网络优化等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.17

949

5

服务器评测软件
服务器评测软件

服务器评测软件有PassMark Software、CPU-Z、GPU-Z、CrystalDiskMark、IOmeter、JMeter、LoadRunner、Apache Bench等等。详细介绍:1、PassMark Software是一款综合性的服务器性能测试软件,可以评估服务器在各种负载条件下的性能;2、CPU-Z是一款可以提供服务器CPU详细信息的软件等等。

2023.10.17

494

3

如何开启TFTP服务器
如何开启TFTP服务器

开启TFTP服务器的步骤包括选择TFTP服务器软件、下载和安装软件、配置TFTP服务器以及启动和测试服务器等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.18

2956

4

服务器负载不兼容怎么解决
服务器负载不兼容怎么解决

解决方法:1、增加服务器资源;2、负载均衡;3、优化应用程序;4、增加缓存机制;5、分布式架构;6、限流和熔断;7、自动化扩容。想知道更详细服务器负载不兼容的解决方法,可以访问本专题下面的文章。

2023.10.20

5532

4

宽带如何接入服务器
宽带如何接入服务器

宽带接入服务器的方法有ADSL宽带接入服务器、光纤接入服务器、无线接入服务器和以太网接入服务器等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.20

867

5

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Python uv官方安装与入门文档
Python uv官方安装与入门文档

共0课时 | 0人学习

Buffalo框架快速入门指南
Buffalo框架快速入门指南

共0课时 | 0人学习

Valgrind支持平台说明
Valgrind支持平台说明

共0课时 | 0人学习