cpは、「cp:error reading 'file':Input / output error」および「cp:failed to extend 'file':Input / output error」というエラーでコピーに失敗する


10

私はUbuntuでOracle Virtualboxを使用しています。かつて、一種のバックアップとしてvdiファイルをコピーしていました。以前、私は何回も問題なくこれを実行しました(vdiファイルをコピーしてからコピーして戻しました)。

しかし、今日私はこのエラーを経験しました

VirtualBox VMs/win_7$ cp ../../Bkps/win_7.vdi .
cp: error reading ‘../../Bkps/win_7.vdi’: Input/output error
cp: failed to extend ‘./win_7.vdi’: Input/output error

私はこれを少しググったが、同様の問題に関するアドバイスから、残念ながら何も理解できなかった。誰でもこれを解決する方法を提案できますか?

からの出力dmesgは、(そして私はそれから何も理解していません)

[ 2347.982876] ata1.00: exception Emask 0x0 SAct 0x1900406f SErr 0x0 action 0x0
[ 2347.982887] ata1.00: irq_stat 0x40000008
[ 2347.982895] ata1.00: failed command: READ FPDMA QUEUED
[ 2347.982908] ata1.00: cmd 60/08:70:d0:da:f4/00:00:2e:00:00/40 tag 14 ncq 4096 in
[ 2347.982908]          res 41/40:08:d0:da:f4/00:00:2e:00:00/00 Emask 0x409 (media error) <F>
[ 2347.982915] ata1.00: status: { DRDY ERR }
[ 2347.982919] ata1.00: error: { UNC }
[ 2348.395657] ata1.00: configured for UDMA/133
[ 2348.395727] sd 0:0:0:0: [sda] Unhandled sense code
[ 2348.395733] sd 0:0:0:0: [sda]  
[ 2348.395737] Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
[ 2348.395741] sd 0:0:0:0: [sda]  
[ 2348.395745] Sense Key : Medium Error [current] [descriptor]
[ 2348.395752] Descriptor sense data with sense descriptors (in hex):
[ 2348.395764]         72 03 11 04 00 00 00 0c 00 0a 80 00 00 00 00 00 
[ 2348.395770]         2e f4 da d0 
[ 2348.395772] sd 0:0:0:0: [sda]  
[ 2348.395774] Add. Sense: Unrecovered read error - auto reallocate failed
[ 2348.395775] sd 0:0:0:0: [sda] CDB: 
[ 2348.395776] Read(10): 28 00 2e f4 da d0 00 00 08 00
[ 2348.395781] end_request: I/O error, dev sda, sector 787798736
[ 2348.395792] ecryptfs_decrypt_page: Error attempting to read lower page; rc = [-5]
[ 2348.395795] ata1: EH complete
[ 2348.395797] ecryptfs_readpage: Error decrypting page; rc = [-5]
[ 2351.264987] ata1.00: exception Emask 0x0 SAct 0x7f80400 SErr 0x0 action 0x0
[ 2351.264998] ata1.00: irq_stat 0x40000008
[ 2351.265005] ata1.00: failed command: READ FPDMA QUEUED
[ 2351.265019] ata1.00: cmd 60/08:50:d0:da:f4/00:00:2e:00:00/40 tag 10 ncq 4096 in
[ 2351.265019]          res 41/40:08:d0:da:f4/00:00:2e:00:00/00 Emask 0x409 (media error) <F>
[ 2351.265025] ata1.00: status: { DRDY ERR }
[ 2351.265029] ata1.00: error: { UNC }
[ 2351.403371] ata1.00: configured for UDMA/133
[ 2351.403425] sd 0:0:0:0: [sda] Unhandled sense code
[ 2351.403426] sd 0:0:0:0: [sda]  
[ 2351.403428] Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
[ 2351.403429] sd 0:0:0:0: [sda]  
[ 2351.403430] Sense Key : Medium Error [current] [descriptor]
[ 2351.403433] Descriptor sense data with sense descriptors (in hex):
[ 2351.403434]         72 03 11 04 00 00 00 0c 00 0a 80 00 00 00 00 00 
[ 2351.403439]         2e f4 da d0 
[ 2351.403442] sd 0:0:0:0: [sda]  
[ 2351.403444] Add. Sense: Unrecovered read error - auto reallocate failed
[ 2351.403445] sd 0:0:0:0: [sda] CDB: 
[ 2351.403446] Read(10): 28 00 2e f4 da d0 00 00 08 00
[ 2351.403451] end_request: I/O error, dev sda, sector 787798736
[ 2351.403463] ecryptfs_decrypt_page: Error attempting to read lower page; rc = [-5]
[ 2351.403466] ecryptfs_readpage: Error decrypting page; rc = [-5]
[ 2351.403470] ata1: EH complete

どんな助けでも大歓迎です、事前にありがとう


多分vdiファイルが入っているディスクですか?試してみるdf -h
Volker Siegel

ああ、待って-あなたはこれすべてをvirtualboxの内部で行っていますか、それとも外部でしていますか?
Volker Siegel

@VolkerSiegel私はこれを外部のホストシステムで行います。コピーが保存され、コピーを作成しようとするパーティションには280GBの空き容量があるので、すでに何度もこの操作を実行したと言ったので、それで十分です。これはHDDのエラーである可能性があります
user907860

/ dev / sdaのそのパーティション上のファイルシステムは何ですか?(mount | grep /dev/sda
Volker Siegel

@VolkerSiegel出力は/dev/sda5 on /home type ext4 (rw)
user907860 14

回答:


7

これがvirtualbox内の「ディスク」ではなく、vmイメージが格納されている実際の物理ディスクである場合、それはかなり悪く見えます。

/ dev / sdaで読み取りエラーが発生しました。ディスクブロックを永久に不良ブロックとしてマークすることによる自動処理
があり、代わりに別のブロックを使用します。 これを機能させるには、ハードディスクでデータをもう一度読み取る必要があり、おそらく数百回の読み取りを試みます。 しかし、ディスクこれをあきらめました:

"追加。センス:未回復の読み取りエラー-自動再割り当てに失敗しました"

ディスクには本当に悪いエラーがあります-それらが1か所だけにあるのか、それとも分散しているのか、そして時間とともに増加するのかどうかはまだはっきりしていません。

「今」の
ように、ハードディスクがすぐに故障する可能性があります。 または来週、またはまったく。

それは上の[OK]を実行した場合e2fsckのテスト、あなたはまだ、重要な何のためにそれを使用しないキャン。

e2fsck中程度のエラーがあることを確認したら、すぐに交換することをお勧めします。

それ以外の場合は、できるだけ早くバックアップを作成し
、ライブCDなどを起動して(またはマウント解除/ マウントしない/home方法を見つけて)
、次のように不良ブロックを確認します。

sudo e2fsck -c -v /dev/sdXN

その大きな上で考慮に入れる機械かかる場合があります不良ブロックをチェックし、ハードディスク多くの時間を時間と、おそらく一日か二日の間、。プログラムが各ディスクブロックを個別にチェックし、問題も個別に処理する必要があるためです。しかし、ディスクが読み取り時にエラーを出している場合、問題があることを知る前に、複数のレベルで多くの再試行が行われますe2fsck。各ディスクブロック。

e2fsck自動修復モードで実行し、しばらくコンピュータをそのままにしておくのは正しいことです。

sudo e2fsck -p -c -v /dev/sdXN

詳細については、ubuntuforums:ランダムなフリーズと/ var / log / messagesの「Unrecovered read error」を参照してください。


「実物理ディスク」とはどういう意味かわかりませんでした。これは、これはVirtualboxの仮想ドライブのファイルで、実際のディスクではありません
user907860

OK、確認のためのいくつかの質問、私は間違っている可能性があります:ファイルwin_7.vdiはvmイメージですよね?そして、それはどのVMの外にもありますよね?ファイルwin_7.vdiが実際のディスク上にあるということです-そうですか?dmesg出力は、VMの外から、右ですか?この場合、dmesgログのエラーは実際のハードディスク/ dev / sdaにあります。
Volker Siegel

はい、あなたのすべての質問に「正しい」
user907860 14

良い-しかしディスクには悪い...それを交換するだけですか?「今」のように、すぐに失敗するかもしれません。または来週、またはまったく。それは上の[OK]を実行した場合e2fsckのテスト、あなたはまだ、重要な何のためにそれを使用しないキャン。
Volker Siegel


6

私にとって、合計128 GBのようなディスクイメージをコピーしようとすると、このエラーが発生しました。cpそれを書き戻すためにすべてをメモリにロードしようとしていましたが、明らかにそれは機能しないため、チャンクで実行する必要があります。ファイルをチャンク化するために見つけた最良の方法は、sshを介してファイルを強制することです。

scp user@localhost:/path/to/source /path/to/dest

あなたが使用する必要がありますuser@localhost。省略すると、のcpような動作に戻ります。


2

ハードディスクのセクターが破損しました。DRDY ERR-デバイス準備確認エラー。UNC-修正できません。

この場合、大量の書き込み中に突然シャットダウンする、高温、読み取り書き込み操作が実行されるなどのさまざまな理由により、ハードディスクの品質が大きな役割を果たします。

セクターが破損した後、カーネルがそれらのセクターにアクセスしようとすると、このエラーが発生します。

seatoolsを使用して、このエラーから一時的に回復できます。しかし、この問題を永久に修正することはできません。それは、後で何度か発生する可能性があります。

運が良ければ、数日間は再発しません。

新しいハードディスクにデータをバックアップし、ハードディスクを交換してください。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.