0

我正在使用 OpenSuse 11.0。系统挂起,我必须硬重启。调查日志后,我收到以下错误:-

Mem-info:
 kernel: Node 0 DMA per-cpu:
 kernel: CPU    0: hi:    0, btch:   1 usd:   0
kernel: Node 0 DMA32 per-cpu:
 kernel: CPU    0: hi:  186, btch:  31 usd: 174
 kernel: Active:229577 inactive:546 dirty:0 writeback:0 unstable:0
 kernel:  free:1982 slab:5674 mapped:18 pagetables:10359 bounce:0
 kernel: Node 0 DMA free:4000kB min:32kB low:40kB high:48kB active:2800kB inactive:2184kB present:8860kB pages_scanned:9859 all_unreclaimable? yes
 kernel: lowmem_reserve[]: 0 994 994 994
 kernel: Node 0 DMA32 free:3928kB min:4016kB low:5020kB high:6024kB active:915508kB inactive:0kB present:1018016kB pages_scanned:2233186 all_unreclaimable? yes
 lowmem_reserve[]: 0 0 0 0
 Node 0 DMA: 0*4kB 8*8kB 6*16kB 2*32kB 3*64kB 6*128kB 1*256kB 1*512kB 0*1024kB 1*2048kB 0*4096kB = 4000kB
Node 0 DMA32: 4*4kB 9*8kB 0*16kB 4*32kB 2*64kB 0*128kB 0*256kB 1*512kB 1*1024kB 1*2048kB 0*4096kB = 3928kB
 19418 total pagecache pages
 Swap cache: add 36342342, delete 36342340, find 14356263/18138459
 Free swap  = 0kB
 Total swap = 771080kB
 Free swap:            0kB
 262144 pages of RAM
 kernel: 5430 reserved pages

这与内存泄漏有关,但不确定。

如果有人有类似问题的解决方案,请告诉我..

提前致谢

拉吉夫

4

1 回答 1

0

I suggest doing something like running "while true ; do sleep 10 ; ps auxw >> ~/processes ; done". Then you can probably spot the memory hog that chewed through 700 megs of swap after your system comes back up by reading through the file and spotting the growing program.

When you find the program that is eating all your memory, you can use rlimits (man bash, search for 'ulimit') to limit how much memory that program uses before you start it, and maybe keep your system a little more sane.

于 2011-01-13T11:14:02.990 回答