У меня сбой жесткого диска Mac, с которого я пытаюсь извлечь все файлы. Я хочу иметь возможность удалять файлы с диска, чтобы я мог сузить область проблем, чтобы попытаться сохранить как можно большую часть содержимого. Для этого мне нужно иметь возможность редактировать диск в Linux, поэтому я следовал информации, найденной здесь:Как смонтировать раздел HFS в Ubuntu с правами чтения / записи? , Мне никогда не удавалось смонтировать диск как RW, используя стандартные методы монтирования, хотя он будет отображаться только для чтения. Я старался:

sudo fsck.hfsplus /dev/sdx

который был перечислен ниже и получил следующую информацию

** /dev/sdc2
** Checking HFS Plus volume.
** Checking Extents Overflow file.
** Checking Catalog file.
   Missing thread record (id = 26)
   Missing thread record (id = 105)
   Missing thread record (id = 6856404)
   Missing thread record (id = 6936575)
   Incorrect number of thread records
(4, 6)
   Incorrect number of thread records
(4, 6)
** Checking Catalog hierarchy.
** Volume check failed.

С тех пор устройство не подключено, и я получаю сообщение об ошибке:

Error mounting /dev/sdc2 at /media/paul/02eeaa8b-9ebd-3290-a8a5-0dd8d3e1bf7a: Command-line `mount -t "hfsplus" -o "uhelper=udisks2,nodev,nosuid" "/dev/sdc2" "/media/paul/02eeaa8b-9ebd-3290-a8a5-0dd8d3e1bf7a"' exited with non-zero exit status 32: mount: No such file or directory

Устройство по-прежнему отображается с использованием инструмента «Диски» как раздел 315 МБ в точке /dev /sdc1, называемый EFI System, и раздел 4 ТБ в точке /dev /sdc2, называемый жесткий диск объемом 4,0 ТБ. Любая помощь в решении этой катастрофы будет принята с благодарностью.

подробное объяснение: я обнаружил, что жесткий диск, содержащий все образы моих детей, ломался, когда выяснял, что внешний диск не копируется с остальной частью Mac. Я вижу гораздо больше файлов на жестком диске в Linux, чем в Mac, и поэтому я использую Linux для передачи. Я предпринял пару попыток вытащить все 600 ГБ содержимого с диска: 1) сбой в плоскости диска (и разбился ящик linux) при попадании в поврежденный сектор. 2) Скрипт на основе bash, который копирует изображения и фильмы с диска, но не показывает, что если что-то пропустили

В попытке улучшить результаты с 2 я попытался перейти на 3, который использует mv вместо cp для передачи файлов, чтобы я мог посмотреть, что было пропущено. mv требует доступа RW, что привело к вопросу выше.

Обновление: я пытаюсь использовать dd (после другой неудачной попытки), скорость передачи ниже 300 кБ / с (я считаю, что это в плохом месте), и поскольку существует 400 ГБ данных, это займет некоторое время прежде чем я смогу увидеть, сработало ли это. Последний проход через диск занял ~ 5 дней.

Последнее обновление: у меня есть дд, так как он переводился со скоростью кбит / с без изменений в течение 3 дней и никогда не собирался заканчивать 400 ГБ данных. Закончилось возвращение к утилитам Mac, которые, кажется, возродили диск достаточно долго, чтобы извлечь файлы.

1 ответ1

0

Я не уверен, что это поможет, но в любом случае:

Альтернативой cp и mv является rsync, который может быть лучше, чем mv, по крайней мере.
http://www.thegeekstuff.com/2010/09/rsync-command-examples/
приводит несколько примеров

Если у вас есть место для данных, вы можете попробовать

sudo dd conv=noerror,sync if=/dev/sdx of=FILENAME
или даже
sudo dd  conv=noerror,sync if=/dev/sdx | gzip --fast --stdout >FILENAME.gz

И то, и другое должно позволить извлечь данные с диска - с помощью одного чтения для последующих попыток восстановления - хотя и не уверен, насколько это просто. Обратите внимание, что "noerror" заставит его продолжаться после ошибок чтения, "sync" заставляет его заполнять фрагменты, которые не подлежат восстановлению, с обнуленными данными (необходимо, чтобы не нарушать все, что происходит после).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .