古いLinuxのオンプレのサーバ機器が起動しなくなりました。
電源は入って起動プロセスまでは進みますが、ログイン画面まで表示されません。
とりあえず何とかしなくてはということで、根本解決はしてなさそうですが、起動までできるようにしました。
表示されたメッセージ
1 2 3 4 5 6 7 8 9 10 11 |
Checking Checking filesystems /dev/VolGroup00/LogVol00: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY. (i.e., without -a or -p options) [FAILED] *** An error occurred during the file system check. *** Dropping you to a shell: the system will reboot *** when you leave the shell. Give root password for maintenance (or type Control-D to continue): |
要点の日本語訳は以下の通り↓
予期せぬ不整合が発生しました。fsckを手動で実行してください。
ファイルシステムのトラブルのようです。
環境
- CentOS 5.2
- 10年以上前のパソコン(Windows XP時代)にインストールされている
オンプレかつインターネットアクセスなしってことで存在が許されています。
対処
画面の表示に従っての操作になります。
「fsckを実行せよ」とのことなのでやっていきます。
- rootユーザのパスワードを入力する
管理者権限が必要なので、rootのパスワードを入力します。
私にとってはここが最難関でした(杜撰なパスワード管理w)
1234567Give root password for maintenance(or type Control-D to continue): Login incorrect.Give root password for maintenance(or type Control-D to continue): Login incorrect.Give root password for maintenance(or type Control-D to continue):(Repair filesystem) 1 # ←3回目のパスワード入力で成功w - 修復対象のパーティションを確認
mountコマンドで修復対象を表示させます。
123(Repair filesystem) 1 # mount/dev/mapper/VolGroup00-LogVol00 on type ext3 (rw)proc on /proc type proc (rw)
今回は、/dev/mapper/VolGroup00-LogVol00が修復対象です。 - fsckを実行する
tオプションで修復対象ボリュームのファイルシステムの種類を指定します。
ファイルシステムは、先ほどのmountコマンドでext3だとわかったので、次のように実行しました。
1(Repair filesystem) 2 # fsck -t ext3 /dev/mapper/VolGroup00-LogVol00
1234567891011121314151617181920212223242526(Repair filesystem) 2 # fsck -t ext3 /dev/mapper/VolGroup00-LogVol00fsck 1.39 (29-May-2006)e2fsck 1.39 (29-May-2006)Error reading block 231 (Attempt to read block from filesystem resulted in short read). Ignore error <y>? yesForce rewrite <y>? yesResize inode not valid. Recreate<y>? yes/dev/mapper/VolGroup00-LogVol00 contains a file system with errors, check forcedPass 1: Checking inodes, blocks, and sizesPass 2: Checking directory structurePass 3: Checking directory connectivityPass 4: Checking reference countsPass 5: Checking group summary informationFree blocks count wrong for group #0 (65535, counted=0).Fix<y>? yesFree blocks count wrong (74340381, counted=74340382).Fix<y>? yes/dev/mapper/VolGroup00-LogVol00: ***** FILE SYSTEM WAS MODIFIED *****/dev/mapper/VolGroup00-LogVol00: ***** REBOOT LINUX *****/dev/mapper/VolGroup00-LogVol00: 910799/155746384 files (10.5% non-contiguous), 81405922/155746304 blocks(Repair filesystem) 3 # - 再起動する
画面に従い再起動します。
1(Repair filesystem) 3 # reboot - 起動した!(なつかしい)
さいごに
今回の難所はrootパスワードが分からないってところでした。
ポジティブにとらえるとメンテナンスする必要がないくらい安定稼働していたというところでしょうかw
fsckを実行したときに、Error reading blockのメッセージが出て、ignoreしているのが気になります。
HDDにトラブルが起きてそうな気がするので、このサーバ長くは持たなさそうです。
コメント