UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY. が表示されて OS が正常起動しない場合の対応方法


[初回公開] 2013年12月30日

RedHat や CentOS など Linux 系のサーバを起動する際に「UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY」と表示されて SSH など外部からの通信ができなくない状態となるため、この表示が出た場合の原因と対応方法について紹介する。

UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY が表示されて OS が正常起動しない場合の対応方法




1.UNEXPECTED INCONSISTENCY とは


「UNEXPECTED INCONSISTENCY」は直訳すると"予期せぬ矛盾"となり、一般的には OS またはソフトウェア上でデータの不整合などシステムのエラーパターンに属さない予期せぬエラーである。
今回表示された「UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY」はファイルシステムのエラーチェックと修復を行う fsck コマンドの実行を促していることから、ファイルシステムに問題があることまで追求できており、これが OS 内で保持している論理的なファイルシステムに問題があるのか、そもそもハードディスクや SSD など物理的な記憶媒体に問題があるか fsck コマンドを実行しないと不明な状態である。

UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY が表示された状態


2.UNEXPECTED INCONSISTENCY が表示された場合の影響


「UNEXPECTED INCONSISTENCY」が表示されても OS のコマンドを受け付けて実行できる必要最低限の状態で利用できる場合がある。
いわゆる「メンテナンスモード」や「セーフモード」と呼ばれる起動状態で、Web サーバやメールサーバなどサービスの起動は行わず、その中には SSH も含むため外部からの遠隔操作もできないため OS に直接ディスプレイが接続されている状態でしか操作できない状態となる。
もし「UNEXPECTED INCONSISTENCY」が表示された OS が仮想マシンの場合は、仮想マシンのホスト管理画面よりコンソールを表示して操作する。



3.UNEXPECTED INCONSISTENCY の対応方法


今回のように「UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY.」が表示された場合は、fsck コマンドを実行するように促されているので下記のコマンドを実行する。
この場合、「UNEXPECTED INCONSISTENCY」の前に /dev/sda1 など対象となるディスクパーティション名が表示されているのでパーティション名を間違わずに入力する。

# fsck {パーティション名}


コマンドを実行すると何回か確認実行が表示されるので、y(yes)で処理を続行させることでファイルシステムの実行と修復が行われ、物理的に問題が無ければすぐに終了する。
もし全て y として処理させる場合は fsck コマンドの後ろにオプションとして -y を付与して実行する。
fsck コマンド実行後は OS はまだセーフモードでの起動となっているため、OS を再起動するとサービスの自動起動設定しているものも含めて正常起動の動作に入る。

4.fsck コマンドの注意点


fsck コマンドは前述した通り OS がファイルシステムのエラーチェックと修復を行うもので、論理的に破損した場合はこのコマンドで修復が可能だが、ファイルの記憶領域内の保存場所やプロパティ情報を書き換えるため一部のデータやファイルが失われるリスクがある。
また、物理的に破損している場合は修復できず、破損した状態のデータを復元しようとして正常データにも被害が及ぶ恐れがあるので、fsck コマンドを実行する前にハードディスクから異音がするなど不具合の予兆を感じていれば fsck コマンドを実行せずに違う記録媒体にバックアップするなど修復しない手段の検討も必要である。

関連記事


ブログ気持玉

クリックして気持ちを伝えよう!

ログインしてクリックすれば、自分のブログへのリンクが付きます。

→ログインへ

なるほど(納得、参考になった、ヘー)
驚いた
面白い
ナイス
ガッツ(がんばれ!)
かわいい

気持玉数 : 0

この記事へのコメント

この記事へのトラックバック