Как исправить ошибки «Input/output error» на Ext4?

Доброго времени суток, %username%!

Имеется старый HDD WD Green на 2Tb, который начал откровенно барахлить (появлялись ошибки записи при записи на диск, чтение - без проблем). Была приобретена ему замена HDD WD Red, аналогично на 2Tb. Оба винта успешно подключены к стационарной машине под управлением Win7, "примонтированы" с помощью "Ext2Fsd" и с помощью "MiniTool Partition Wizard Free" создан на нем раздел в Ext4 во всё пространство (ну лень было создавать загрузочный образ с *nix, каюсь).
В общем - все данные с помощью копипаста успешно перенесены со старой железки на новую (права доступа, разумеется - пострадали, но они не критичны). Ошибки кое-где выползали, но сугубо на чтение, и не критичные данные. После чего железка была поставлены на своё родное место под управлением CentOS 7. Раздел успешно примонтировался, но при попытке, например, под рутом сделать рекурсивный chmod - посыпались ошибки вида:

root@data:/shares# chmod -R 777 ./public/
chmod: невозможно получить доступ к «./public/Soft/AntiVirusers/nod32/Tools/NOD32view7_01/NOD32view.psw»: Ошибка ввода/вывода
chmod: невозможно получить доступ к «./public/Soft/ОСИ/Install tool/WinSetupFromUSB-1-6-beta1/files/MULTIpartitionUSBstick/USEonXPor2003_32bitsSYSTEMSonly»: Ошибка ввода/вывода
chmod: невозможно получить доступ к «./public/Soft/ОСИ/Install tool/WinSetupFromUSB-1-6-beta1/files/tools/restore»: Ошибка ввода/вывода
chmod: невозможно получить доступ к «./public/Soft/ОСИ/Install tool/WinSetupFromUSB-1-6-beta1/files/winsetup/usbdrive.tag»: Ошибка ввода/вывода


Смотрим в директорию, и видим:
root@data:/shares# ls -la ./public/Soft/AntiVirusers/nod32/Tools/NOD32view7_01/
ls: невозможно получить доступ к ./public/Soft/AntiVirusers/nod32/Tools/NOD32view7_01/NOD32view.psw: Ошибка ввода/вывода
итого 64
drwxrwxrwx 9 nobody users  4096 янв 11 17:49 .
drwxrwxrwx 3 nobody users  4096 янв 11 17:49 ..
drwxrwxrwx 2 nobody users  4096 янв 11 17:49 avz_upd
drwxrwxrwx 9 nobody users  4096 янв 11 17:49 download
drwxrwxrwx 2 nobody users  4096 янв 11 17:49 drweb_upd
drwxrwxrwx 6 nobody users  4096 янв 11 17:49 eset_upd
drwxrwxrwx 2 nobody users  4096 янв 11 17:49 kav_upd
-rwxrwxrwx 1 nobody users  2724 авг  3  2014 NOD32view.ini
-rwxrwxrwx 1 nobody users 23613 авг  3  2014 NOD32view.log
-????????? ? ?      ?         ?            ? NOD32view.psw
drwxrwxrwx 2 nobody users  4096 янв 11 17:49 Temp
drwxrwxrwx 2 nobody users  4096 янв 11 17:49 tr_upd


Проверка фс говорит что всё ок:
root@data:/# umount /shares/

root@data:/shares# fdisk -l

Disk /dev/sda: 8012 MB, 8012390400 bytes, 15649200 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x000acd0f

Устр-во Загр     Начало       Конец       Блоки   Id  Система
/dev/sda1   *        2048     1026047      512000   83  Linux
/dev/sda2         1026048    15648767     7311360   8e  Linux LVM

Disk /dev/sdb: 2000.4 GB, 2000398934016 bytes, 3907029168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk label type: dos
Disk identifier: 0x73cf5af9

Устр-во Загр     Начало       Конец       Блоки   Id  Система
/dev/sdb1            2048  3907026943  1953512448   83  Linux

Disk /dev/mapper/centos-root: 6635 MB, 6635388928 bytes, 12959744 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk /dev/mapper/centos-swap: 801 MB, 801112064 bytes, 1564672 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

root@data:/# fsck.ext4 --help
fsck.ext4: неверный ключ — «-»
Usage: fsck.ext4 [-panyrcdfvtDFV] [-b superblock] [-B blocksize]
                [-I inode_buffer_blocks] [-P process_inode_size]
                [-l|-L bad_blocks_file] [-C fd] [-j external_journal]
                [-E extended-options] device

Emergency help:
 -p                   Automatic repair (no questions)
 -n                   Make no changes to the filesystem
 -y                   Assume "yes" to all questions
 -c                   Check for bad blocks and add them to the badblock list
 -f                   Force checking even if filesystem is marked clean
 -v                   Be verbose
 -b superblock        Use alternative superblock
 -B blocksize         Force blocksize when looking for superblock
 -j external_journal  Set location of the external journal
 -l bad_blocks_file   Add to badblocks list
 -L bad_blocks_file   Set badblocks list

root@data:/# fsck.ext4 -f -y /dev/sdb1
e2fsck 1.42.9 (28-Dec-2013)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
data: 54874/488407040 files (1.1% non-contiguous), 237102044/488378112 blocks


И таких ошибок довольно много, но данные совсем не критичные. Был бы рад "просто снести битые файлы". Гугл советует пройти процедуру переформатирования (очень не хочется).

Вопрос к вам, комрады - как лучше пофиксить эти ошибки?
  • Вопрос задан
  • 5985 просмотров
Пригласить эксперта
Ответы на вопрос 1
Olej
@Olej
инженер, программист, преподаватель
Вопрос к вам, комрады - как лучше пофиксить эти ошибки?

А я думаю, что никак ;-)
Не нужно говённым "Win7" по благородным Linux дискам лазить. ;)
Я бы на вашем месте просто подключил бы оба диска в Linux, и сделал новую копию диска:
# cp /dev/sda /dev/sdb
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы