2014年6月27日金曜日

centosでメモリを確保できません(cannot allocate memory)と言われてshutdown出来ない

何故出たのかさっぱり分からないのだけれども、サーバのvnc設定をしていたら、
bash: fork: メモリを確保できません
と言われた。

シャットダウンしようと、shutdown -r nowを入れても同様。
困った。
http://d.hatena.ne.jp/rx7/20110426/p1
を参考にシャットダウンを試みる。
echo b > /proc/sysrq-trigger
で強制リブートらしいが、このサーバ、RAIDを組んでいるので流石に怖い。
下の方を見ていくと

(安全に再起動するには)

Linuxがフリーズした際に、安全にリブートするマジックSysRqキー押下の一連の流れが、Wikipediaのページに書かれていました。

    R ⇒ E ⇒ I ⇒ S ⇒ U ⇒ B
    マジックSysRqキー - Wikipedia
   
とあるので早速押してみる、が、効かない。
wikipediaの
http://ja.wikipedia.org/wiki/%E3%83%9E%E3%82%B8%E3%83%83%E3%82%AFSysRq%E3%82%AD%E3%83%BC
を見ると、

この手順で行えば、一部のプログラムのデータ損失を防ぎ、ファイルシステムの破損を回避することができる。

各コマンドは数秒間の時間を開けて投入しなければならない。例えば、多くのプログラムはSIGTERMシグナルを受け取るとデータの保存など処理を行い、syncやアンマウントはそれを行うためにある程度の時間を要する。

なるほど、ゆっくり押してみる。
が効かない。
いい加減飽きてきた頃に、もう一度shutdownコマンドを入れてみると、何故か通る。が、
The system is going down for reboot NOW!から一向に進まない。
ctrl+alt+delも効かない。
困ったので、とりあえずalt+f4を押すと、何故かリブートした。
意味が分からない・・・。

まあ、教訓として、sysctl.confのsysrqは1を入れておこうと思いましたとさ。。。

0 件のコメント:

コメントを投稿