サーバー

fstabによるサーバーが正常しない為の奮闘

2012年10月24日

本日10時50分頃、カーネルアップデートをリモートで行った為サーバーが止まりました。
rebootコマンドを押下したのが最後うんともすんとも言わない状態に……

やはり安易な気持ちで再起動なんてするもんじゃありませんね。

リモートで再起動コマンドを打ったのでサーバーを物理的に電源停止& 起動することができず家に帰るまで放置するしかありませんでした。
その際に何回も携帯にメールでHTTPサーバーにアクセスできません!というメッセージが届いてました。
家に帰る間際にはPINGも応答しません!ってきてました……

6時58分頃家に帰宅したので、現状を確認。どうやらシャットダウン時にカーネルパニック等を起こしたのではなくて、起動時に止まっていたようです。あれ?厄介じゃない?

とりあえず、F2ボタン押下してもコンソール(?)画面に映らないのでAlt+PrintScreen+Rで強制的にキーボード操作に実行
スクリプト状態を見ると

Give root password for maintenance
(or type Control-D to continue):

となっていた。

とあるボリュームのfcskを行おうとしたら失敗したと書いてたような気がします。)

とりあえずパスワードを打てばいいんだろう。と思って文字を入力

Give root password for maintenance
(or type Control-D to continue):
Give root password for maintenance
(or type Control-D to continue):
Give root password for maintenance
(or type Control-D to continue):
Give root password for maintenance
(or type Control-D to continue):
Give root password for maintenance
(or type Control-D to continue):
Give root password for maintenance
(or type Control-D to continue):
Give root password for maintenance
(or type Control-D to continue):
Give root password for maintenance
(or type Control-D to continue):
Give root password for maintenance
(or type Control-D to continue):
Give root password for maintenance
(or type Control-D to continue):
・
・
・

一文字打つ度にパスワードを入れてくれと言われました……
つまりログインすることができません。 ?(°°;) ? 何故かCTRL+ALT+DELETEを反応してくれるのでとりあえず再起動を何度かしましたが、結果は同じでした。

……(´・ω・`)
とりあえずレスキューCDでも入れるか……

と思い、DVDの取り出しボタンを押下 ……返事がない。ただの しかばねの ようだ。 ? HDD増設の際、SATA用の電源ケーブルがDVDのところまで届かず外してたなぁ。

という記憶がよみがえりました。 ? こっからレスキューCDならぬレスキューUSBを作ることにしました。
だってね、自分のサーバーを取出、取付のに時間がかかるんですよ、上に置いているものをどかして、バックアップ電源の電源を切って、横に置いてあるパソコンをどかして……

ということでUSBドライブとして使えるツールを探すことにしました。
まずやったのがDDforWindowsというサイトです。 日本語だし、Windows7対応なので使えるだろうwレジストリ弄ることもないので安全安全。
というつもりで作りました… しかし、作成したUSBをサーバに差し込んで起動してみると、何度も何度もBIOS画面が表示していました(きちんとブートできていない)。

次にインストールしたのがLiLi USB Creatorというツールを使いました。
HPにアクセスするとスタイルシート崩れており、怪しげな感じしますが、これが使いやすかったです。
サイトは英語ですが、ソフトは日本語対応していましたしね。

実際に起動して、レスキューCDのimgを入れて、USBに焼き込みました。
設定でWindows上でも動かすことができます。(Windowsの場合VirtualBoxを使って仮想上で動かします。)

そして、レスキューCDならぬレスキューUSBをサーバーに念を込めてねじり込み、起動すると、きちんとBOOTすることができました。

……が、レスキュー画面の設定上でレイアウトが大きく崩れ文字がまったく見えない状態に……なんてこった\(^o^)/
直観を頼りにしてコマンドプロンプトへ行こうとしたのですが、何故か途中で行き詰るので断念することにしました。

レスキューUSBを用いてサーバーをレスキューすることなく、USBのデータをDEATH(DELETE)してKNOPPIXを入れることにしました。

KNOPPIXの64bit版は容量が3.7GBで、USBメモリが4GB(実際3.8GB程度)だったのでものすごく不安だったのですが、ギリギリ(3.78GB)入ったのでKNOPPIXの入った最後の便り綱を起動!

設定が自動で完了し、GUI画面に映ろうとしたその瞬間!

えっと、なんすか?この縦縞模様は……

それもマウスを動かすとこの縦縞も色々と模様を変えてくれる始末。

……ダメじゃないか……

なんとなくX- Windowsがおかしいというのがわかったのでここを頼りに色々設定する現象はまったく同じ。

GUIをやめてコンソール上のみに設定すると、画面が真っ黒で何もかえってこなくなるという。。。

おっと、これはもう詰んだのか!?

と思いつつもあきらめたくはなかったので色々調べてみる。

調べた結果 boot画面で【knoppix64 nomodeset nocomposite】と入力すれば正常起動することがわかりました。

グラフィックドライバの問題なのでしょうね……

これでやっとHDDデータの修正を行うことができるようになりました。

$su
#mkdir /mnt/a
#mount /dev/sda2 /mnt/a
#vi /mnt/a/etc/fstab

にてfstabにておかしくなっているボリュームをコメントアウトして再起動。

サーバーは正常に稼働することになったけどAPACHEが動かない!
調べてみると、

eAccelerator: Could not allocate 268435456 bytes, the maximum size the kernel al
lows is 33554432 bytes. Lower the amount of memory request or increase the limit
in /proc/sys/kernel/shmmax.

と表示されていました。
前回は一時的にということで
echo 268435456 > /proc/sys/kernel/shmmax
にした記憶がありましたが、一時的なもので、サーバー再起動すると初期化されるそうです。

永久に保存する場合は
/etc/sysctl.confにて
kernel.shmmax = 268435456
することでいいそうです。

/etc/sysctl.conf修正後、再びサーバーを再起動!

これで正常起動することができました!\( 〇 ⌒   ▽   ⌒ 〇 )/わぁい♪

今回はカーネルアップデートとはまったく関係なかったのですが、急にサーバーが起動できなくなるというのは本当に焦りますね……
今度からはリブートするときもう少し慎重にしないといけないなと思いました。

-サーバー
-, , ,