查swap内存使用

查询linux的swap被什么使用了

查询centos的swap被什么进程使用了

swap内存被什么程序占用,什么程序使用了swap分区,占用swap内存的进程

查系统使用swap内存前10个进程:

for i in ( cd /proc;ls \|grep "\^\[0-9\]"\|awk ' 0 >100') ;do awk '/Swap:/{a=a+2}END{print '"i"',a/1024"M"}' /proc/$i/smaps 2>/dev/null ; done | sort -k2nr |head

这个命令的含义是:

  1. 首先,使用`cd /proc`进入`/proc`目录。

  2. 使用`ls |grep "^0-9"|awk ' $0 >100'`命令列出该目录下所有以数字开头且大于100的文件夹。

  3. 使用一个循环来遍历每个文件夹,将其存储在变量i中。

  4. 在循环中,使用`awk '/Swap:/{a=a+2}END{print '"i"',a/1024"M"}' /proc/i/smaps 2\>/dev/null\`命令来计算每个进程的Swap使用量,并以MB为单位打印出来。其中,\`/proc/i/smaps`表示进程的内存映射文件。

  5. 最后,使用管道符号`|`将输出结果传递给`sort -k2nr`命令进行按照第二列数字降序排序。

  6. 使用管道符号再将结果传递给`head`命令显示前面几行结果,默认是显示前10行。

这个命令的作用是找到占用Swap内存最多的进程,并显示其进程ID和Swap使用量。

查看某个进程使用的swap内存:

比如查看进程id为24450使用了多少swap内存

awk '/Swap:/{a=a+$2}END{print a/1024"M"}' /proc/24450/smaps

输出如:1208.17M

查占用内存资源最多的11个进程

ps aux --sort=-pmem | head -11

(已知centos7可以,redhat6不行)

相关推荐
Full Stack Developme7 小时前
JVM 与 Linux 交互的核心原理
linux·运维·jvm
Java识堂7 小时前
多级负载均衡架构
运维·架构·负载均衡
MXsoft6187 小时前
## 自动化巡检:从手工两小时到系统五分钟的落地实践
运维·自动化
ZLG_zhiyuan7 小时前
直击华南工博会|ZLG致远电子:EtherCAT与自动化总线应用方案动态实景呈现
运维·自动化
HackTwoHub7 小时前
最新Nessus2026.6.8版本主机漏洞扫描/探测工具Windows/Linux
linux·运维·服务器·安全·web安全·网络安全·安全架构
qq_163135757 小时前
Linux 【04-mkdir命令超详细教程】
linux
qq_163135758 小时前
Linux 【08-mv命令超详细教程】
linux
QWEDDRFTG8 小时前
C13/C19怎么选?服务器电源线电流与接口选型技巧
服务器
Nayxxu8 小时前
Gemini + RAG 企业知识库教程:从文档切片到答案生成
运维·人工智能
三雷科技9 小时前
Claude Code 命令行完全指南:从高效交互到自动化工作流
运维·自动化·交互