Использование свопов по процессу

У нас есть CentOS 5.11 (64 бит), и у нее 64G физическая память и своп 4G, и я вижу, что используется 900MB swap, но пытается выяснить, кто его использует. Я пробовал следовать, но показывая zero использование.

  smem -t -p ... ... 4758 root /usr/bin/python2.6 /usr/bin 0.00% 0.03% 0.03% 0.03% 21846 root /usr/bin/ruby /usr/bin/pupp 0.00% 0.06% 0.06% 0.06% ------------------------------------------------------------------------------- 920 12 0.00% 7.30% 10.04% 161.37% 

Я пробовал top команду, но показывал неправильные данные, поэтому ее бесполезно.

также я пробовал следующий скрипт, но он также показывает zero

 #!/bin/bash for i in `ls /proc` do if [ -f /proc/$i/smaps ] then grep -H Swap /proc/$i/smaps | awk '( $2 != "0" ) { print }' fi done 

Ни один из инструментов, способных понять, кто использует SWAP , не знает, в чем проблема. но в других идентичных моих сценариях bash работает, но на этом сервере это не так, что было бы неправильно?

top команда показывает следующие данные в swap столбце, и мы имеем общий своп 4G , так что это совершенно неправильно

 top - 09:38:55 up 111 days, 14:23, 1 user, load average: 2.09, 2.34, 2.20 Tasks: 994 total, 4 running, 990 sleeping, 0 stopped, 0 zombie Cpu(s): 12.3%us, 0.9%sy, 0.0%ni, 86.0%id, 0.0%wa, 0.0%hi, 0.7%si, 0.0%st Mem: 98820240k total, 75660440k used, 23159800k free, 1056112k buffers Swap: 4192924k total, 4192496k used, 428k free, 59936024k cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ SWAP COMMAND 6292 postgres 15 0 50.0g 109m 100m S 1.5 0.1 0:02.95 49g postmaster 6797 postgres 15 0 50.0g 10m 8228 S 1.5 0.0 33:35.32 49g postmaster 10300 postgres 15 0 50.0g 60m 53m S 1.5 0.1 0:01.18 49g postmaster 12280 root 15 0 13428 1836 844 R 1.5 0.0 0:00.25 11m top 26 root 10 -5 0 0 0 S 0.7 0.0 215:11.17 0 events/0 1969 postgres 15 0 50.0g 141m 132m S 0.7 0.1 0:04.42 49g postmaster 2549 postgres 15 0 50.0g 141m 132m S 0.7 0.1 0:04.24 49g postmaster 2550 postgres 15 0 50.0g 141m 132m S 0.7 0.1 0:04.37 49g postmaster 2699 postgres 15 0 50.0g 141m 132m S 0.7 0.1 0:04.45 49g postmaster 3128 postgres 15 0 50.0g 131m 123m S 0.7 0.1 0:03.91 49g postmaster 4556 postgres 15 0 50.0g 115m 107m S 0.7 0.1 0:03.20 49g postmaster 4560 postgres 15 0 50.0g 116m 108m S 0.7 0.1 0:03.23 49g postmaster 4669 postgres 15 0 50.0g 113m 105m S 0.7 0.1 0:03.28 49g postmaster 4671 postgres 15 0 50.0g 114m 106m S 0.7 0.1 0:03.27 49g postmaster 

вот мой вывод tmpfs , теперь вопрос заключается в том, откуда такое 48G , в postgresql.conf я указал shared_buffer=48G , что показывает tmpfs? Я прав?

 [root@db ~]# df -h -t tmpfs Filesystem Size Used Avail Use% Mounted on tmpfs 48G 12K 48G 1% /dev/shm