先月曜日の朝、私のサーバーではどのコマンドも実行できず、「入力エラーと出力エラー」が表示されることがわかりました。 30分間試行した後に動作する唯一のコマンドはsudo poweroff -f
(フラグを使用する必要があります-f
。そうしないと、「入力出力エラー」が発生します)。
手動でサーバーを起動し、システムログを確認しましたが、特別なことはありませんでした。ハードドライブに問題がないかどうかを確認するためにsmartctlテストを実行しました。そして正常に合格しました。
その後、今週の月曜日に問題が再び発生しました。サーバーをシャットダウンして手動で起動しましたが、何も起こっていないようです。次に、msmtest86 8.2を使用してメモリモジュールが正常であるかどうかをテストします。そして、SATAケーブルとハードドライブの状態が良好で確実に接続されていることを確認してください。
オペレーティングシステムやファイルシステムの問題かもしれないと思いますか?私のオペレーティングシステムはDebian 8.11です。いくつかの提案をすることができますか?みんなありがとうございます!
答え1
私のサーバーでどのコマンドも実行できず、「入力出力エラー」が表示されることがわかりました。
EIO
ファイルシステムが破損した場合、コマンドの実行時にエラーコード(「入力/出力エラー」)が表示されるか、障害のあるリポジトリで実行されたときに表示されます。
どちらにしてもこの時点で注意してください。必要な場合以外は、サーバーの電源を入れないでください。。1
テストを受ける
2つの根本原因を区別するための明確な方法があります。つまり、システムがブロックレベルの読み取りを確認し、カーネルメッセージを監視することです。
- GNU/Linux リカバリディスクを使用してシステムを起動します。
- システムをプレーンテキストコンソールに変更します(Ctrl + Alt + F1を押す)。これにはグラフィック端末を使用しないでください。
- ルートとしてログインします。
dmesg -E
コンソールでリアルタイムカーネルメッセージの表示を有効にするには、実行してください。- ただし、実行すると、
dmesg -n debug
低レベルのカーネルメッセージが表示されます。 - 走って
blkid
どれを確認してくださいディスクシステムパーティションを含みます。 (blkid
パーティションが一覧表示されます。パーティションパスの末尾から番号を削除すると、ディスクを取得できます。) time -p dd if=/dev/sda of=/dev/null bs=4M
全体のために実行 -ディスク読み取りテスト(慎重に入力してください)あなたのシステムディスクいいえ/dev/sda
、それに応じて交換してください。- 画面を見てください(時間がかかります)...
結果
正常かつシームレスに完了する最良のシナリオでは、
dd
ファイルシステムの問題かもしれません。- 起動ディスクでファイルシステムチェックを実行したい場合は、今すぐ実行できます(推奨)。
- システムを独自に整列させるには、再起動(ブートディスクも削除)してから、ブートストックをカーネルコマンドラインの末尾
fsck.mode=force
に追加します。 (望むよりこの問題詳細) - しかし、ファイルシステムチェックの結果を議論すると、他の問題が発生します。
しかし、最悪の場合、画面に次のカーネルメッセージが表示されます。
ata2.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x0 ata2.00: irq_stat 0x40000001 ata2.00: failed command: READ DMA EXT ata2.00: cmd 25/00:08:78:15:c5/00:00:6c:00:00/e0 tag 0 dma 4096 in res 51/40:00:78:15:c5/00:00:6c:00:00/e0 Emask 0x9 (media error) ata2.00: status: { DRDY ERR } ata2.00: error: { UNC } ata2.00: configured for UDMA/100 sd 1:0:0:0: [sda] Unhandled sense code sd 1:0:0:0: [sda] Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE sd 1:0:0:0: [sda] Sense Key : Medium Error [current] [descriptor] Descriptor sense data with sense descriptors (in hex): 72 03 11 04 00 00 00 0c 00 0a 80 00 00 00 00 00 6c c5 15 78 sd 1:0:0:0: [sda] Add. Sense: Unrecovered read error - auto reallocate failed sd 1:0:0:0: [sda] CDB: Read(10): 28 00 6c c5 15 78 00 00 08 00 end_request: I/O error, dev sda, sector 1824855416 Buffer I/O error on device sda, logical block 228106927 ata2: EH complete
主な部品を探す:
DRDY
と中括弧のERR
中UNC
Medium Error
状態Unrecovered read error
知覚情報
メッセージ内でこれらの内容を調べると(一度でも)物理ディスク障害が発生したことを示します。
このようなことが起きた場合、終わらないでください
dd
。今すぐ停止するには、Ctrl + Cを押します。;システムをシャットダウンしてディスクをデータ復旧会社に持ち込むあなたは信頼します。上記の最悪の場合、表示が見つかりませんでしたが、代わりに次のカーネルメッセージが繰り返される場合:
ata2: exception Emask 0x10 SAct 0x0 SErr 0x4040000 action 0xe frozen ata2: irq_stat 0x00000040, connection status changed ata2: SError: { CommWake DevExch } ata2: hard resetting link ata2: link is slow to respond, please be patient (ready=0)
重要なセクション:
hard resetting link
link is slow to respond
その場合は、SATAリンクの問題(たとえば、ケーブルの接続が間違っている)があります。 Ctrl + Cを押して停止し、システムをシャットダウンした後、ディスクケーブルと接続を修復してもう一度やり直してください。
注意事項
ハードドライブに問題がないかどうかを確認するためにsmartctlテストを実行しました。そして正常に合格しました。
注意してください一部のハードドライブのSMARTステータスは、嘘を直接表します。(東芝を見ています。)古いノートブックのハードドライブが読み取られている間に突然停止し、読み込みエラーが発生し、ステータスレジスタにまだ「問題なし」と表示されています。
サーバーが業務上重要な場合は、次の点を考慮する必要があります。攻撃設定に基づいています。
1 注意事項:私のルームメイトはかつてこの警告を無視し、彼のデスクトップシステムでファイルシステムチェッカーを実行しました。私が確認する前に、彼はそれを確認しました。結局起動に失敗しました。私が確認する機会があったとき、ディスクは回復できないほど破損していました(500 GBのディスクはカタツムリの速度、KB / sでほとんど読み取れず、数日後には明らかな連続読み取り領域が見つかりませんでした)。
一方、同じ症状が現れた別のケースでは、機械の所有者が私の警告に耳を傾け、私が検査するまで機械を保留にしました。もちろん、これはハードドライブのエラーです。半日の後ろGNU DDR構造その後、セッションと新しいハードドライブを使用して、彼のシステムとデータがブロックレベルで100%復元されたという良いニュースを伝えました。つまり、すべてのファイルが破損しておらず、変更せずに再起動できます。
答え2
ドライブはすべてのSMARTテストに合格しましたが、Linuxサーバー(Debian 10を実行)でフォルダを参照してファイルにアクセスするときにこのエラーが発生しました。 Stackexchangeに投稿された回答では問題を解決できません。
3.5インチドライブベイに2.5インチハードドライブを使用していましたが、SATAコネクタの振動によってドライブが失われたことがわかりました。サーバーをシャットダウンしてドライブをしっかりと挿入し、エラーがなくなりました。