Восстановление древних zip-файлов, охватывающих дискеты: эквиваленты pkzipfix?

2446
Jacob

Я собираюсь попробовать что-то странное, и прежде чем я потратил впустую время, идя по неправильным путям, я подумал, что увижу, делал ли кто-нибудь здесь это раньше. У меня есть файл zip, созданный в DOS (в 1997 году?) С помощью pkzip, который охватывает несколько старых дискет. Как и ожидалось, некоторые из этих дисков не в лучшей форме, и я получаю ошибки чтения при попытке скопировать содержимое с некоторых дисков. Есть ли эквивалент pkzipfix, который я могу использовать для восстановления некоторого содержимого этого zip-файла?

Вот что я собираюсь попробовать сначала, но я не знаю, будет ли это плодотворным:

  1. Подключите дисковод гибких дисков к моей коробке Linux.
  2. Создайте образы дискет на моем жестком диске следующим образом: cat /dev/fd0 > floppyxx.img
  3. Посмотрите, перенес ли кто-нибудь PKZIP в Linux, и посмотрим, смогу ли я использовать эти образы дисков. Если нет, найдите порт Windows (и, возможно, подключите дисковод гибких дисков к этой коробке Windows).

Кто-нибудь здесь принимал участие в подобных приключениях и успешно восстановил такой древний архив?

5
Я думаю, что вашим самым большим препятствием будет получение полезных данных со старых дискет. Moab 13 лет назад 4
Это тоже мое беспокойство. Я помню, как pkzipfix мог «восстанавливать» zip-файлы на нестабильных дискетах (пропуская плохие файлы), но я не знаю, как это происходит. Jacob 13 лет назад 0
Дисководы гибких дисков часто имели проблемы с выравниванием (которые, я уверен, вы помните, но не с любовью). Иногда вы можете прочитать определенный диск лучше на некоторых дисках, чем на других. Возможно, вам повезет с чтением дисков на другом диске. Возможно, выравнивание (или смещение) другого будет лучше соответствовать вашим старым дискам. Удачи. Старые диски часто просто теряют данные, и вы ничего не можете с этим поделать. Wayne Johnston 13 лет назад 0
Возможно, вы захотите проверить [стандарт ZIP-файла] (https://pkware.cachefly.net/webdocs/casestudies/APPNOTE.TXT), чтобы понять, как файлы объединяются. С помощью шестнадцатеричного браузера вы можете просмотреть содержимое диска и выяснить, что там, по крайней мере. Daniel R Hicks 9 лет назад 1

2 ответа на вопрос

2
Jacob

У меня был частичный успех и я смог вытащить некоторые файлы из архива. Сначала я создал каталог "fd" для монтирования этих образов дискет, затем для каждого образа дискеты я сделал следующее:

sudo mount -o loop floppyxx.img fd cat fd/myzip.zip >> combined.zip sudo umount fd 

После того, как у меня был объединенный архив, я сделал это:

unzip -FF combined.zip 

Есть меньше файлов, которые я смог извлечь, чем я надеялся. Я все еще открыт, чтобы увидеть, есть ли более эффективный метод восстановления многодискового архива.

0
TOOGAM

PKZipFix is highly overrated. It doesn't do much. If I remember right, it simply repairs the Zip file header, so if you have data corruption in the first bytes then it can try to find a data stream and make a valid Zip file again. But if you have a data error in the middle of the compressed data stream, then your out of luck. I might have that slightly wrong: what I do remember clearly is that when I learned what it really does, I was rather disappointed with how little good it was ever likely to do.

I would expect mount to use the wrong filesystem, and need to use mount -t vfat or mount_msdos or something like that. Maybe your operating system is smart enough to detect that.

Having said that, unzippers will often ignore extra data at the start of the file, which they do so that they can work with various self-extracting files. So, maybe some flexibility will work.

There are different formats of how zip files may span. The official standard was that spanning wasn't supported, for some time, and so different implementers extended the standard in different ways.

Be very wary of the zip files: watch the extraction results carefully. I think some more recent efforts have tried to merge things a bit so that there is more compatibility, but if you may be using different software, then know that Zip file spanning isn't necessarily something where all implementations have always been compatible.

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