しばらく前にopenSUSE 11.2(64ビット)をインストールしましたが、主にそれを専用のApacheホスティングマシンとして使用しています。
しばらくの間(約1か月)すべてが正常に機能していましたが、数日前の時点で、ファイルシステムは読み取り専用(!?)になっているようです。
Viまたはmanページ(ディスク上にファイルを作成できない)を開始する場合でも、ほとんどすべてのタスクが失敗します。
誰かが以前にこのようなものを見たことがありますか?もしそうなら、あなたは回復するために何をしましたか?解決策をグーグルで調べてみましたが、役立つ答えが見つかりませんでした。
注意-この期間に大きな変更は行われず、マシンの負荷は非常に軽量です。
ファイルシステムまたはディスクの障害である可能性があります。 dmesg
とシステムログで手がかりを確認します。まだ行っていない場合は、再起動する前にそこを確認してください。再起動した場合、システムは正常に起動しますか、それともファイルシステムの問題について警告しますか?
mount -o remount,rw /
を使用してファイルシステムの読み取り/書き込みを再マウントできますが、それ自体がマウントされた理由がわかるまで、再マウントすることはお勧めしません。
ルートファイルシステムを読み取り専用で再マウントするキーボードショートカットを押すことができます。通常これは AltSysRequ。あなたやあなたの猫のパーチャンスはそれをしましたか?
シャットダウン要求を開始してから中止しましたか?シャットダウンスクリプトは通常、プロセスの終わりに向かってシステムを再マウントしますが、それらが中断されて最後までスキップするのを見ました:)
私はこれを以前に見たことがあります。それは私たちに数回起こりました。
SANストレージにバックエンドでVMwareESXiシステムを実行します。そのマシンに関係のないSANで高いI/Oが発生した場合、これにより遅延が増加しましたシステムは、さまざまなボリュームを読み取り専用にすることで応答しました。remount
を実行すると正常に完了しましたが、実際にはディスクを再マウントしませんでした。 。それを取り戻す唯一の方法は、再起動してディスクをsingle user mode
とfsck
に移動するか、再起動時に自動的にfsck
がそれをキャッチすることでした。
私たちの修正は、/sys
のブロックデバイスのディスクタイムアウトを変更することでした。
# cat /sys/block/sd*/device/timeout
60
この数値の値を60
から180
に増やしました。これにより、「タイムアウト」が発生するまでの時間が変更され、実質的にレイテンシが長くなります。ただし、副作用として、ファイルシステム、特に書き込みが多いファイルシステムで破損が発生する可能性があります。これは、プライマリマウントを(私たちのように)別々のマウントまたはドライブに分離する場合、より多くのアクティビティがあるため、/var
のようなボリュームが読み取り専用になる理由でもあります。