Get the App
SLTechnology News&Howtos  ›  Servers  › 

How does Linux view processes that take up swap

Shulou Source: shulou.com Published: 2022-06-01 13:25:10 09月25日 Update

This article mainly explains "Linux how to view the processes that occupy swap". The content of the explanation in the article is simple and clear, and it is easy to learn and understand. Please follow the editor's train of thought to study and learn "Linux how to view the processes that occupy swap".

# Linux to view the processes that occupy swap

#! / bin/bash

Echo-e `date +% y% m% d% H% M`

Echo-e "PID\ t\ tSwap\ t\ tProc_Name"

# take out all the directories named by numbers under the / proc directory (the process name is the number is the process, and other information such as sys,net is stored)

For pid in `ls-l / proc | grep ^ d | awk'{print $9}'| grep-v [^ 0-9] `

Do

# there is only one way for a process to release swap: restart the process. Or wait for it to be released automatically. Put

# if the process will be automatically released, then we will not write a script to find him, all because he did not automatically release.

# so we want to list the processes that take up swap and need to be restarted, but init is the ancestor of all processes in the system

# restarting the init process means restarting the system, which is absolutely impossible, so there is no need to test it so as not to affect the system.

If [$pid-eq 1]; then continue;fi

Grep-Q "Swap" / proc/$pid/smaps 2 > / dev/null

If [$?-eq 0]; then

Swap=$ (grep Swap / proc/$pid/smaps\

| | gawk'{sum+=$2;} END {print sum}') |

Proc_name=$ (ps aux | grep-w "$pid" | grep-v grep\

| | awk'{for (iTun11witi |

Tags: Processes systems learning content that is situations numbers directories space monitoring tasks information only suggestions ideas meaning articles methods time more Apple Docker Huawei Linux macOS MariaDB Microsoft MySQL NVidia OPPO Reno MySQL Huawei Apple OPPO Reno MariaDB