cp не вдається скопіювати з помилками "cp: помилка читання" файл ": помилка вводу / виводу" та "cp: не вдалося поширити" файл ": помилка вводу / виводу


10

Я користувач Oracle Virtualbox в Ubuntu. І я колись копіював файли 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 Я це роблю зовні, у своїй хост-системі. У розділі, де зберігається копія і де я намагаюся зробити копію, є 280 ГБ, тому це більш ніж достатньо, як я вже говорив, що робив цю операцію вже багато разів. Я припускаю, що це може бути помилка жорсткого диска
user907860

Яка файлова система на цьому розділі / dev / sda? ( mount | grep /dev/sda)
Волкер Зігель

@VolkerSiegel вихід/dev/sda5 on /home type ext4 (rw)
user907860

Відповіді:


7

Якщо це не "диск" всередині віртуальної скриньки, а справжній фізичний диск, на якому зберігаються зображення vm, це виглядає досить погано.

Були помилки читання, на / dev / sda.
Існує автоматичне керування, позначивши блок диска як поганий блок назавжди, а замість цього використовуйте інший.
Для цього жорсткому диску потрібно прочитати дані ще один раз , можливо, спробуючи пару сотень прочитань.
Але диск відмовився від цього:

"Додати. Сенс: неповторна помилка читання - помилка автоматичного перерозподілу"

На диску справді є погані помилки - просто ще не зрозуміло, чи знаходяться вони лише в одному місці, чи поширюються, і чи збільшуються вони з часом.

Твердий диск може вийти з ладу дуже скоро,
як-от "просто зараз" .
Або на наступному тижні, або зовсім не так.

Якщо це все в порядку на e2fsckтесті, ви все одно не можете використовувати його для нічого важливого.

Щойно e2fsckпідтверджується наявність середніх помилок, найкраще просто замінити їх.

В іншому випадку зробіть резервні копії якнайшвидше,
завантажте живий компакт-диск (або знайдіть спосіб відключити / не змонтувати/home )
та перевірте наявність поганих блоків, як, наприклад,

sudo e2fsck -c -v /dev/sdXN

Враховуйте, що на більшому механічному жорсткому диску перевірка наявності поганих блоків може зайняти багато часу , між годинами, а може бути і днем-двома. Це частково тому, що програмі потрібно перевіряти кожен диск окремо, а також вирішувати проблеми окремо. Але також, якщо диск дає помилки під час читання, є багато спроб на декількох рівнях, перш ніж e2fsckнавіть знати, що є проблема. Для кожного блоку диска.

Можливо, правильно запустити e2fsckв режимі автоматичного ремонту та залишити комп'ютер на самоті на деякий час:

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

Докладні відомості див. У ubuntuforums: Випадкове заморожування та "Неподана помилка читання" в / var / log / messages для детальної інформації.


Я не зрозумів, що ти маєш на увазі під "справжнім фізичним диском". Це не справжній диск, це файл, який є віртуальним накопичувачем Virtualbox
user907860

Гаразд, кілька питань для підтвердження, я можу помилятися: Файл win_7.vdi- це зображення vm, правда? І це за межами будь-яких vms, правда? Я маю на увазі, що файл win_7.vdiзнаходиться на реальному диску - правда? dmesgВихід із зовні віртуальної машини, НЕ так? У цьому випадку помилки в dmesgжурналі знаходяться на реальному жорсткому диску / dev / sda.
Volker Siegel

так, "правильно" на всі ваші запитання
user907860

Добре - але погано для диска ... ви можете просто його замінити? Це може вийти з ладу дуже скоро, як-от "просто зараз". Або на наступному тижні, або зовсім не так. Якщо це все в порядку на e2fsckтесті, ви все одно не можете використовувати його для нічого важливого.
Volker Siegel

ок, дякую, зараз я на роботі, тому я перевірю Вашу відповідь сьогодні,
якнайшвидше

6

Для мене я отримав цю помилку при спробі копіювання зображень на дисках, що налічували щось на зразок 128 Гб. cpнамагався завантажити все це в пам'ять, щоб переписати його назад, і це, очевидно, не вийде, тому це потрібно робити на шматки. Найкращий спосіб, який я знайшов, щоб скинути файл, - це змусити його через ssh.

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

Ви повинні використовувати user@localhost; якщо пропустити це, то повернеться до cp-подобної поведінки.


2

Пошкоджені сектори вашого жорсткого диска. DRDY ERR - Помилка перевірки готовності пристрою. UNC - Unorortable.

З-за різних причин, таких як різке вимкнення під час великого запису, висока температура, операції запису читання та якість жорсткого диска відіграють головну роль у цьому випадку.

Після пошкодження сектору і якщо ядро ​​намагається отримати доступ до цих секторів, ви отримаєте цю помилку.

Ви можете використовувати seatools, щоб тимчасово відновитись після цієї помилки. Але виправити це питання не вдасться назавжди, воно може повторитися через кілька разів.

Якщо вам пощастить, це не повториться протягом декількох днів.

Краще створити резервну копію даних на новому жорсткому диску і замінити жорсткий диск.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.