Извлечь большой zip-файл (50 ГБ) на Mac OS X

21

Я пытался переместить файлы на другой жесткий диск. Поэтому я заархивировал все свои фотографии в один большой ZIP-файл, используя встроенную функцию сжатия Mac OS X.

Но файл не удалось извлечь. Я перепробовал много программ, но ни одна из попыток не смогла извлечь файл. Я попробовал утилиту извлечения Mac OS X, StuffIt Expander , 7-Zip (командная строка), все не удалось. Утилита архивирования Mac и StuffIt, похоже, не поддерживают большие файлы, а версия командной строки 7-Zip выдавала ошибку с указанием неподдерживаемого архива .

Мне не повезло в Windows, так как многие из моих файлов имеют китайские имена файлов и не могли извлечь правильное имя в Windows.

Существуют ли некоторые программы, которые могут поддерживать большие файлы, могут обрабатывать файлы, сжатые с помощью функции сжатия Mac OS X, и могут поддерживать имя файла UTF-8? С или без графического интерфейса в порядке.

Обновить

Ну, я принял неправильное решение сжать файлы, и уже слишком поздно. Я думал, что смогу извлечь файл, если смогу сжать его. Слишком поздно, оригинальные копии исчезли, здесь остался только большой ZIP-файл.

Я попытался использовать 'unzip', но там написано, что подпись End-of-central-directory не найдена . Я думаю, что он не имеет поддержки больших файлов.

Я бы попробовал метод Windows Vista, как заявлено SuperMagic, но для этого мне нужен компьютер. В любом случае, спасибо всем, но, пожалуйста, предоставьте больше предложений о том, какое программное обеспечение может извлечь этот файл.

Питер Мортенсен
источник
3
Обратите внимание, что если предположить, что фотографии были в формате JPEG, то сжатие zip или любое другое сжатие без потерь фактически не сожмет их сильно, если вообще сделает. tar был бы хорошим кроссплатформенным выбором, если вы просто хотите заархивировать их в один файл для их перемещения.
оттуда
Время, затраченное на архивирование всех этих файлов, вероятно, было больше, чем простое копирование их в виде отдельных файлов.
Джереми Л
2
Этот вопрос все еще активен? Как вы создали почтовый файл размером 50 ГБ? Из Finder или из командной строки на OS X?
dtlussier

Ответы:

31

Я был в той же ситуации, когда создавал резервную копию каталога 12 ГБ.

Я исправил это с помощью dittoкоманды, которая была легко доступна с установкой OS X Yosemite:

ditto -x -k file.zip dst-directory

-x to extract an archive    
-k Specifies it to be a PKZip archive instead of the default CPIO    
noobcannon
источник
1
Это должен быть принятый ответ. Не нужно устанавливать дополнительное программное обеспечение и работает отлично. Я немного поработал с модернизированными виртуальными машинами. Это самый простой и самый простой метод.
Ян Белчер
Это лучшее решение. Я просто использовал это, чтобы распаковать 14 ГБ файл данных, который «unzip» не обработал бы.
Дейв
Просто обратите внимание, что p7zip (на который есть ссылка в другом ответе) может открыть несколько больших zip-архивов, созданных другими платформами, которые также будут считаться поврежденными.
Мэтт Сандерс
17

Я столкнулся с этой же проблемой недавно, на OS X 10.6.6. Я заархивировал свои виртуальные машины VMware из командной строки и скопировал их на резервный носитель. Когда я попытался разархивировать резервную копию виртуальной машины после аппаратного сбоя, у меня было несколько напряженных минут, когда я боролся с ошибкой unzip «запуск центрального каталога не найден; поврежден zipfile».

После некоторого возмущения проблема заключается в том, что OS X поставляется с v3.0 zip-файла Info-Zip, который поддерживает расширения Zip64 и использует их автоматически при необходимости (поэтому я создавал файлы Zip64, не осознавая этого), но только v5.52 распаковки Info-Zip, которая не поддерживает Zip64 - поддержка zip64 была добавлена ​​в unzip v6.0.

Я понятия не имею, почему Apple не поставила распаковку, которая соответствует поставляемому почтовому индексу, но я нашел два простых решения:

  1. Пользователи MacPorts могут установить unzip 6.0 с помощью «sudo port install unzip».

  2. Условно-бесплатная утилита архивирования BetterZip, которая в любом случае является удобным программным обеспечением, поддерживает Zip64, поэтому, просто используя ее вместо командной строки, я смог извлечь свою заархивированную виртуальную машину и продолжить свой рабочий день.

jakshin
источник
BetterZip решил мою проблему, спасибо!
hdx
Я получал ошибки и для большого Zip-файла. Я бы предложил добавить The Unarchiver в качестве опции тоже.
Сэнди Чепмен
16

Если вы используете Homebrew, вы можете установить 7zip с: brew install p7zip.

Затем вы можете извлечь файл с: 7z x filename.zip.

tremby
источник
2
Вероятно, само собой разумеется, но port install p7zipесли вы используете macports.
uroeuroburɳ
Обратите внимание на пробел между «7z» и «x», возможно, вы можете вставить разрыв строки @tremby.
luk2302
2
На самом деле не думаю, что это необходимо. Это моноширинный шрифт. Мне пришлось бы избежать разрыва строки, если бы я добавил один.
Тремби
6

Я считаю, что формат файла ZIP имеет ограничение на общий размер архива 4 ГБ. Википедия, кажется, поддерживает это.

Если у вас есть Windows Vista или более новый компьютер, попробуйте изучить архив там, чтобы увидеть, находится ли он в более новом формате ZIP64 или нет.

Таким образом, возможно, что поддержка ZIP64 отличается между тем, что создало архив, и тем, что вы используете, чтобы распаковать его.

Кроме того, есть ли в командной строке Mac OS X командный стандарт unzip?

супермагическим
источник
да, вы можете попробовать "распаковать файл"
yanokwa
4

У меня была точно такая же проблема ... Архивировал файл со стандартным программным обеспечением архива Mac ... удалил файл ... через месяц попытался открыть архив и получил ту же ошибку -> Угадай, это что-то с фактом что файл был более 1 ГБ

Итак, я перепробовал все вышеупомянутое программное обеспечение, но после нескольких недель поиска ничего не помогло, и я нашел то, что сработало :). Так что, думаю, стоит упомянуть:

Unarchiver - я скачал это с: http://wakaba.c3.cx/s/apps/unarchiver.html эти люди - мои новые герои :) У него есть необходимые вещи для разбитых или больших zip-файлов

Эдра Сву
источник
Интерфейс диалогового окна, казалось, работал беспорядочно, но его настройка в качестве приложения по умолчанию для zip-файлов работала отлично. Спасибо за совет.
tripleee
3

Mac Archive Utility разархивирует файл в:

/Volumes/"Your Drive Name"/.TemporaryItems/folders.501/Cleanup At Startup/"Random Name

Например: BAH.odJFh"/"archiveName"

Затем начните де-архивирование, дождитесь появления ошибки и оставьте диалоговое окно открытым. Откройте окно терминала. sudo su cd по указанному выше пути, помните, что вы можете набрать / Vo и нажать tab, чтобы закончить слово, получить как можно дальше и сделать ls, чтобы увидеть, какие имена каталогов ramdon меняются в конечный каталог, где находятся все ваши файлы. затем введите mv * / Volumes / «Имя диска» / ...., куда вы хотите поместить файлы /. Теперь измените чтение и запись в папке, куда вы его переместили, включая все элементы.

Наконец нажмите кнопку ОК при первой ошибке. Вы должны подождать, чтобы нажать кнопку ОК на ошибке до тех пор, пока файлы не будут перемещены, потому что ОК удаляет все файлы.

Майк
источник
0

Вы можете использовать архив .tar.gz. Утилита Mac Archive по умолчанию распаковывает их; просто дважды щелкните по файлу. Но я не видел способа заставить его использовать .tar.gz при сжатии.

Я не знаком с Mac; У меня просто один рядом с моим столом на работе. У утилиты Archive может быть какой-нибудь внешний интерфейс GUI где-нибудь в / Applications / utilities.

Если графический интерфейс отсутствует, сожмите папку в .tar.gz, используйте эту команду: tar czvf myarchive.tar.gz MyPhotos /

jonescb
источник
Почему понизить ...?
trolle3000
5
Я не понизил голос, но вы прямо не отвечаете на вопрос. Также обратите внимание, что gz - это, вероятно, пустая трата времени, если предположить, что изображения являются JPEG.
оттуда
0

Возможно, вам повезет, попробовав программное обеспечение для восстановления данных. Если ваши файлы JPEG имеют отрицательную степень сжатия и ZIP достаточно умен, чтобы хранить их в несжатом виде, в этом случае, возможно, сканирование zip-архива даст результаты.

mouviciel
источник