我想看那个进程使用swap最多,如何查询
时间: 2023-07-20 22:16:39 浏览: 89
要查找哪个进程使用了最多的swap,你可以使用Linux下的smem工具。你可以在终端中输入以下命令安装smem:
```
sudo apt-get install smem
```
安装好之后,你可以使用以下命令来查找swap使用最多的进程:
```
smem -t -k -s swap -r | head -n 10
```
这个命令将会显示使用swap最多的前10个进程,以KB为单位。如果你想要显示更多的结果,可以将`head -n 10`替换成`head -n <num>`,其中`<num>`是你想要显示的结果条数。
相关问题
没有安装smem如何查询那个进程使用swap最多
如果没有安装smem,也可以使用Linux系统自带的工具来查找哪个进程使用了最多的swap。你可以使用以下命令来查找swap使用最多的进程:
```
sudo find /proc/*/status -maxdepth 1 -type f -exec awk '/VmSwap|Name/{printf $2 " " $3}END{ print "" }' {} \; | sort -k 2 -n -r | head -n 10
```
这个命令将会显示使用swap最多的前10个进程,以KB为单位。如果你想要显示更多的结果,可以将`head -n 10`替换成`head -n <num>`,其中`<num>`是你想要显示的结果条数。
linux 查看进程占用swap分区
Linux系统中,可以使用free命令查看系统内存使用情况,其中包括swap分区的使用情况。如果发现swap分区被占用,可以使用脚本来查看哪些进程占用了swap分区。脚本会遍历/proc目录下的所有进程,获取每个进程占用的swap分区大小,并将结果按照升序排列展示出来,方便用户查看哪些进程占用了swap分区。具体操作步骤如下:
1. 打开终端,输入以下命令查看系统内存使用情况:
free
2. 如果发现swap分区被占用,可以使用以下命令执行脚本来查看哪些进程占用了swap分区:
sh swap_check.sh
执行完毕后,会在终端输出占用swap分区最多的前10个进程及其占用的swap分区大小。
3. 如果想要验证脚本的结果,可以使用以下命令查看某个进程占用的swap分区大小:
cat /proc/[PID]/smaps | grep Swap | awk '{sum+=$2} END {print sum}'
其中,[PID]为进程的PID号。
阅读全文