Linux find what processes are swapping

Here is a handy script that will check all processes and report what is swapping

#!/bin/bash
for pid in `ps x|awk '{print $1}'`; do
result=`cat /proc/$pid/status|grep VmSwap|awk '{print $2}'|grep -v ^"0"`
if [ ! -z "$result" ]; then
 programresult=`ps x|grep $pid|grep -v grep`
 if [ $? == 0 ]; then
     program=`echo $programresult|awk '{print $5}'|grep -v ^grep`
 fi
 echo "$pid $program swap = $result kB"


fi
done

You can also pipe the output like this to sort the largest swap processes:

|sort -nr -k4

 

The old way that never worked very well:

 

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  SWAP COMMAND      
 7371 on       20   0 1558m 1148  740 S    0  0.0   0:00.02 1.5g services.exe 
 7369 on       20   0 1558m 1084  708 S    0  0.0   0:00.02 1.5g wineboot.exe

Run top then press 'O' (capital letter o) followed by 'p' then 'enter'. Now processes should be sorted by their swap usage.

 


Tags:

linux, processes, swappinghere, swapping, bin, bash, pid, ps, awk, proc, grep, vmswap, quot, z, programresult, echo, fi, swap, kb, output, largest, nr, user, pr, ni, virt, res, shr, cpu, mem, exe, wineboot, sorted, usage,

Latest Articles

  • Cisco Unified Communication Manager (CUCM) - How To Add Phones
  • pptp / pptpd not working in DD-WRT iptables / router
  • systemd-journald high memory usage solution
  • How to Install FreePBX in Linux Debian Ubuntu Mint Guide
  • How To Install Cisco's CUCM (Cisco Unified Communication Manager) 12 Guide
  • Linux Ubuntu Redhat How To Extract Images from PDF
  • Linux and Windows Dual Boot Issue NIC Won't work After Booting Windows
  • Cisco CME How To Enable ACD hunt groups
  • How to install gns3 on Linux Ubuntu Mint
  • How to convert audio for Asterisk .wav format
  • Using Cisco CME Router with Asterisk as a dial-peer
  • Cisco CME How To Configure SIP Trunk VOIP
  • Virtualbox host Only Network Error Failed to save host network interface parameter - Cannot change gateway IP of host only network
  • Cisco CME and C7200 Router Testing and Learning Environment on Ubuntu 20+ Setup Tutorial Guide
  • Abusive IP ranges blacklist
  • How to Install Any OS on a Physical Drive from Windows Using VMware Workstation (Linux, Windows, BSD)
  • CDN Cloudflare how to set and preserve the real IP of the client without modifying application code on Apache
  • CentOS 7 fix Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=os&infra=container error was 14: curl#6 -
  • Ubuntu Debian How To Install Recommended Packages Automatically
  • How to set Linux Ubuntu Redhat Debian Command Line http https socks proxy for yum apt