5/5 - (5 голосов)
Если вам необходимо узнать, какой процесс использует swap на сервере linux, это можно сделать используя скрипт на bash:
SUM=0
OVERALL=0
for DIR in \’find /proc/ -maxdepth 1\’ -type d -regex «^/proc/[0-9]+» do
PID=\’echo $DIR | cut -d / -f 3\’
PROGNAME = \’ps -p $PID -o comm —no-headers\’
for SWAP in \’grep VmSwap $DIR/
status 2>/dev/null | awk \'{ print $2 }\’ do 
let SUM=$SUM+$SWAP
done
if (( $SUM > 0)); then
echo «PID=$PID swapped $SUM KB ($PROGNAME)»
fi
let OVERALL=$OVERALL+$SUM
SUM=0
done
echo «Overall swap used: $OVERALL KB»
для скрипта не нужны права root, и это дополнительный его плюс.