Назад | Перейти на главную страницу

Повреждено содержимое файлов, а ФС в порядке

Похоже, мой жесткий диск USB старый и поврежден:

rsync: read errors mapping "path/to/file.jpg": Input/output error (5)

Системный журнал:

kernel: [58927.940676] sd 6:0:0:0: [sdb] Unhandled sense code
kernel: [58927.940683] sd 6:0:0:0: [sdb]  Result: hostbyte=invalid driverbyte=DRIVER_SENSE
kernel: [58927.940690] sd 6:0:0:0: [sdb]  Sense Key : Medium Error [current] 
kernel: [58927.940696] sd 6:0:0:0: [sdb]  Add. Sense: Unrecovered read error
kernel: [58927.940703] sd 6:0:0:0: [sdb] CDB: Read(10): 28 00 00 21 f2 df 00 00 08 00
kernel: [58927.940716] end_request: critical target error, dev sdb, sector 2224863

Странно то, что ФС не испорчена: могу перечислить все каталоги. Однако чтение содержимого около 10% файлов дает эти ошибки. Кроме того, большинство небольших файлов безопасны, однако большие файлы все испорчены (порог повреждения составляет ~ 5 МБ).

Как это может быть? Какие у меня есть варианты, чтобы исследовать и спасти файлы? Может это проблема с драйверами? Не могу поверить, что при повреждении жесткого диска метаданные ФС могут быть пропущены!

P.S. этот жесткий диск коварный: я всегда делал резервные копии, и он ждал подходящего момента, чтобы выдать :-D

Список каталогов не означает, что файловая система в порядке, вы просто просматриваете метаданные (что является маленький процентов файловой системы).

  1. Создайте резервную копию всего, что вы можете
  2. Запустите проверку файловой системы (fsck)
  3. Создайте еще одну резервную копию (на случай, если fsck удалось сохранить еще несколько файлов)
  4. Заменить диск