作者 主題: 系統常常當機,似乎是記憶體被吃光了??  (閱讀 5687 次)

0 會員 與 1 訪客 正在閱讀本文。

jwtialbert

  • 憂鬱的高中生
  • ***
  • 文章數: 99
    • 檢視個人資料
OS:Debian etch

不好意思請問各位,小弟最近碰到系統常常死當,幾乎是每三天就一當,查了message log,看到如下訊息:

*************************
HighMem free:500kB min:512kB low:3928kB high:7344kB active:1376400kB inactive:1345824kB present:3276800kB pages_scanned:3043532 all_unreclaimable? yes
kernel: lowmem_reserve[]: 0 0 0 0
kernel: DMA: 5*4kB 5*8kB 4*16kB 6*32kB 3*64kB 4*128kB 3*256kB 1*512kB 1*1024kB 1*2048kB 2*4096kB = 13564kB
kernel: DMA32: empty
kernel: Normal: 129*4kB 2*8kB 3918*16kB 1017*32kB 80*64kB 11*128kB 1*256kB 1*512kB 1*1024kB 1*2048kB 0*4096kB = 106132kB
kernel: HighMem: 1*4kB 14*8kB 4*16kB 2*32kB 0*64kB 0*128kB 1*256kB 0*512kB 0*1024kB 0*2048kB 0*4096kB = 500kB
kernel: Swap cache: add 15101275, delete 15101427, find 14285154/15226029, race 33+1316
kernel: Free swap  = 0kB
kernel: Total swap = 6642836kB
kernel: Free swap:            0kB
kernel: oom-killer: gfp_mask=0x201d2, order=0
kernel:  [<c014450b>] out_of_memory+0x25/0x13e
kernel:  [<c0145978>] __alloc_pages+0x1f5/0x275
kernel:  [<c0146b27>] __do_page_cache_readahead+0xc8/0x1e8
kernel:  [<c014333e>] generic_file_aio_write+0x60/0xaa
kernel:  [<f8949e6d>] ext3_file_write+0x19/0x83 [ext3]
kernel:  [<c0143c1c>] filemap_nopage+0x15b/0x313
kernel:  [<c014c0e4>] __handle_mm_fault+0x26e/0x740
kernel:  [<c01154b6>] do_page_fault+0x18a/0x481
kernel:  [<c011532c>] do_page_fault+0x0/0x481
kernel:  [<c01037f9>] error_code+0x39/0x40

*************************
google了一下,發現似乎是oom_killer啟動來刪除不正常的process,進而導致記憶體被吃光。
目前只知道增加記憶體可以解決這個問題,但是有其他的方法嗎?因為這部主機已經給他4G的記憶體了,
短期內應該不太可能再增加。

感謝各位學長的指導

日京三子

  • 全區板主
  • 俺是博士!
  • *****
  • 文章數: 8830
    • 檢視個人資料
    • http://www.24online.cjb.net
第一,你要先確定是否是硬體問題,因為這類問題通常是硬體導致的。
第二,Linux 系統通常會努力的把所需的記憶體空間佔用,當作是運作時的快取。
第三,有沒有可能是軟體設定錯誤?例如你定義了一個不可思議的運作範圍?
哈克不愛的多合一輸入平台----->新香草口味
過去的時間不斷流逝,抹去的眼淚已成追憶;
乾枯的雙手無力阻止,再會了我遠去的曾經。

jwtialbert

  • 憂鬱的高中生
  • ***
  • 文章數: 99
    • 檢視個人資料
1.目前已經檢查過硬體,看來是沒有問題,而且同樣的系統換一台安裝也會出現相同的問題
     (目前已出現2部系統都有相同的問題,其中一部還是拿備用機來重新安裝後又再次發生)
3.小弟不太了解"不可思議的運作範圍"的意思 ???

目前找到這二個網頁
http://blog.khsing.net/2008/02/oomkiller.html
http://www.linuxinsight.com/proc_sys_vm_hierarchy.html

請問可以藉由調整/proc/sys/vm/下的檔案來解決這個問題嗎??

謝謝

日京三子

  • 全區板主
  • 俺是博士!
  • *****
  • 文章數: 8830
    • 檢視個人資料
    • http://www.24online.cjb.net
1.目前已經檢查過硬體,看來是沒有問題,而且同樣的系統換一台安裝也會出現相同的問題
通常,我會先看看是不是硬體過熱或者硬體本身搭配性問題。您是DIY的機器or品牌伺服器?



3.小弟不太了解"不可思議的運作範圍"的意思 ???
例如說,您在軟體裡面定義了一個 4GB 的記憶體空間,但您主機上的實體記憶體與SWAP空間總共為1GB,那就會出現問題(通常是直接Crash)。

當然,這是端看您的軟體究竟是怎樣的而定。
哈克不愛的多合一輸入平台----->新香草口味
過去的時間不斷流逝,抹去的眼淚已成追憶;
乾枯的雙手無力阻止,再會了我遠去的曾經。

jwtialbert

  • 憂鬱的高中生
  • ***
  • 文章數: 99
    • 檢視個人資料
是HP的品牌伺服器

所以如果排除是硬體的問題,那就幾乎可以確定是軟體的設定問題了嗎?
可是系統上裝了很多大大小小的軟體,有什麼方法可以來縮小檢查的範圍的呢?

謝謝


日京三子

  • 全區板主
  • 俺是博士!
  • *****
  • 文章數: 8830
    • 檢視個人資料
    • http://www.24online.cjb.net
是HP的品牌伺服器

所以如果排除是硬體的問題,那就幾乎可以確定是軟體的設定問題了嗎?
可是系統上裝了很多大大小小的軟體,有什麼方法可以來縮小檢查的範圍的呢?

謝謝


那就先想辦法把功能分開,分階段測試吧....

想辦法把 loglevel 拉高,把相關資訊炸出來看。
哈克不愛的多合一輸入平台----->新香草口味
過去的時間不斷流逝,抹去的眼淚已成追憶;
乾枯的雙手無力阻止,再會了我遠去的曾經。

hoyo

  • 榮譽博士
  • 俺是博士!
  • *****
  • 文章數: 4052
  • 性別: 男
  • 有需要的時候,學習就不會分階段。
    • 檢視個人資料
    • 樂咖黑電腦學習網
swap 可以搞到 6G,
這台 server 做什麼事業作這麼大?

既然是「最近」的事情,就看一下「最近」做了些什麼?
然後把他移除再試試看吧。
受人與魚,不如授人與漁
上海自來水來自海上;倫敦好奇人奇好敦倫

anderson1127

  • 訪客
建議

1. 先停止所有的AP執行 !!
2. 先開啟這些AP中的其中之一,查看有無狀況
3. 若無狀況,就再開啟下一個AP,並回SETP 2
4. 有狀況的話,先記錄下來messages or errors

基本上,做為一個系統管理者,這種技能應該是自己想得到的,怎麼還會上來問!?

jwtialbert

  • 憂鬱的高中生
  • ***
  • 文章數: 99
    • 檢視個人資料
建議

1. 先停止所有的AP執行 !!
2. 先開啟這些AP中的其中之一,查看有無狀況
3. 若無狀況,就再開啟下一個AP,並回SETP 2
4. 有狀況的話,先記錄下來messages or errors

基本上,做為一個系統管理者,這種技能應該是自己想得到的,怎麼還會上來問!?

感謝學長的指教
小弟剛發生的時候,有將所有的service都關掉過,並且照您所說,分別開啟各項服務。
且也寫了一個小script,將top到的情況寫入log,但並沒有發生某service佔用大量mem的情況(最多佔9.x%)。
所以才會如之前所提問,該如何縮小查找的範圍。
此外,爬遍google,大部分發生相同問題的文章所提供出來的log都有記錄到是什麼service導致,但小弟
本次碰到的卻沒有,我想這也是造成查找問題困難的其中一個原因。

小弟爬了許多國內外的文章,目前找到一個解決的辦法,是安裝bigmem的核心。

小弟爬到的文章中大致上是說,這是因為LowMem固定為880MB,而當低於這個標準
oom-killer就會執行kill 掉"Low priority"的process,但它不會判斷這些Low priority的process是不是
critical process,所以就會出現當機的情況。

再次謝謝各位學長的指導,小弟一定會繼續努力加油的 :)
« 上次編輯: 2008-08-07 15:21 由 jwtialbert »