2009年10月16日 星期五

oom-killer Server當機了

昌哥mail不能用了,心想中午才剛遠端登入update,怎出問題呢?而且還在下班前才出問題,真會挑時間,不過往往都是如此,下班前大家才有空上網收信看八卦吧!
這台server頭好壯壯了3~4年,一直都有保持維護,理所勇健才對,先putty看看是不是真的掛點,結果當然連不上,只好直奔機房,克難地插上D-sub,接上PS2,只見螢幕反覆秀出Out of memory, killed process.....真是討厭,又要搭晚班火車了,我看不到8點回不去.
試著Ctrl+Break...沒反應,只好按reset鍵重開機. 這台Server只是一般PC,好像是聯強的組裝機,等級為P4-2.0G,Ram:256M,HD80G,再加一台CD-ROM,該拆的都拆光了,不過不當PC當Server 3~4年,也沒發生什麼大紀事,所以第一想法,應該是硬體壞了. 當Monitor接上,可以看到字,卡在Out of Memory,當下強迫關機,換根512Ram,再開機,還是卡在Deamon上,無法順利完成開機,
機器出問題,一般MIS都會先歸就病毒,再來就是硬體壞了,其實有很大的部份是軟體的部份,這事實大家就承認了吧! 不要再怪病毒或是硬體壞了,若是5年前的我,一定會這樣處理>>重新安裝OS,反正b2d只要10鐘安裝,再花30微調匯入,就算處理完成.是不負責任的做法.
接上續按下Reset後,選recovery mode,順利完成開機,所以不是硬體壞是可以確定的.因為上次重開是卡在xinetd這個deamon上,所以先進ntsysv,把可能的程式先關閉,結果,ntsysv秀出來,沒有任何*號 ,真是奇怪,是不是b2d在還原態下不能run ntsysv,所以再試rcconf就成了.
剛忘了先提,我登入recovery後,第一動作就是看log檔,這個是基本功,也是最重要的程序,vi syslog先查看出問題那個時間點發生什麼事,當然就會發現問題點在那了, 這個key秀出192.168.0.42這個ip寄了一堆信,然後就Out of Memory卡住了system loading就當機給大家看, 中毒了是第一想法,忘了它是Debain,又不是M$,怎會容易中毒呢? 所以進入rcconf第一個步驟就是把postfix給disable掉,再shutdown -r now.
機器當然順利開機完成又上線了,只是mail service stop,這台機器主要的功能就是它了,沒有它什麼都不是,這不是廢話嗎! 試著service postfix restart, Out of Memory又給跑出來,任何鍵失效,只能reset,再查192.168.0.42這台電腦是誰呀,這才連想到剛才交辦的事情,要同事把中午去看團膳廠商的照片趕快寄給大家參考,票選用途,晃然大悟也,小妮子應該把相片檔沒處理就給寄出單封30M信件,全公司喔! 不掛才怪.
於是mailq,一直沒等到反應,也無法單kill PID queue,狠下心^C,下postsuper -d ALL (deferred),再postfix restart就可以mailq,再次reboot,系統終於正常,也處理2個小時,當然可能有信件己經被我給先砍了,就當作不知道囉!

1.System hard Reset.Try reboot again.System still wrong
2.Recovery start.
3.view log files, check error point.
4.rcconf postfix disable
5.mailq. unresponsive
6.postsuper -d ALL (deferred)
7.service postfix restart
8.mailq check confirmed
9.shutdown -r now
done

P.S.主題應該是講oom-killer這個linux memory management,本想把它關了再說,不過問題好像不是在這裡,按照正常的troubleshooting才對,不過會發生問題也是因它而起,谷歌大帝查了一下,還要resize swap及db index rebuild就頭大於身了.可以順利解決就好,真要好好再k點書.

沒有留言:

張貼留言