27

I was trying to move the files to another hard drive. So I archived all my photos in one large ZIP file using the Mac OS X built-in compress function.

But the file failed to extract. I've tried many programs, but none of the programs I tried were able to extract the file. I've tried Mac OS X's extract utility, StuffIt Expander, 7-Zip (command line), all failed. Mac's archive utility and StuffIt don't seem to support large files, and 7-Zip's command line version gave an error stating unsupported archive.

I have no luck in Windows either as many of my files have Chinese filenames, and couldn't extract to the correct name under Windows.

Are there some programs that can support large files, can handle files compressed using Mac OS X's compress function, and can support UTF-8 filename? With or without GUI is fine.

Update

Well, I had made the wrong decision to compress the files, and it's already too late. I thought I should be able to extract the file if I could compress it. It's too late, the original copies are gone, only a large ZIP file left here.

I have tried using 'unzip', but it says End-of-central-directory signature not found. I guess it doesn't have large file support as well.

I would try the Windows Vista method as stated by SuperMagic, but I need to borrow a computer for that. Anyway, thank you everyone, but please provide more suggestions on what software that could possibly extract that file.

3
  • 3
    Note that assuming the photos were JPEGs then zip or any other lossless compression won't actually compress them much if at all. tar would be a good cross-platform choice if you just want to archive them into a single file to move them. Feb 26, 2010 at 21:06
  • The amount of time spent archiving all those was probably greater than simply copying them over as individual files.
    – Jeremy L
    Feb 26, 2010 at 22:44
  • 2
    Is this question still active? How did you create the 50 GB zip file in the first place? From the Finder or the command line on OS X?
    – dtlussier
    Oct 6, 2010 at 14:29

8 Answers 8

33

I was in the same situation when backing up a 12GB directory.

I fixed it by using the ditto command which was readily available with the OS X Yosemite installation:

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    
3
  • 1
    This should be the accepted answer. No need to install extra software and works perfectly. I do a bit of work with modern.ie zipped VM's and this is by far the easiest and simplest method.
    – Ian
    Sep 16, 2015 at 20:22
  • This is the best solution. I just used this to unzip a 14GB data file that 'unzip' would not process.
    – Dave
    Apr 5, 2017 at 0:00
  • Just a note that p7zip (referenced in another answer) can open some large zip archives created by other platforms that ditto will read as corrupt. Nov 14, 2017 at 20:04
20

If you use Homebrew, you could install 7zip with: brew install p7zip.

You can then extract the file with: 7z x filename.zip.

3
  • 2
    Probably goes without saying, but port install p7zip if you use macports. May 24, 2016 at 1:20
  • Note the whitespace between the "7z" and "x", maybe you can insert a line break @tremby.
    – luk2302
    May 27, 2016 at 21:17
  • 2
    Really don't think that's necessary. It's in a monospace font. I'd have to escape the line break if I added one.
    – tremby
    May 29, 2016 at 5:39
18

I ran into this same problem recently, on OS X 10.6.6. I have been zipping my VMware VMs up at a command line, and copying them to backup media. When I tried to unzip a backed-up VM after a hardware failure, I had a few tense minutes as I wrestled with unzip's "start of central directory not found; zipfile corrupt" error.

After some poking around, the problem turns out to be that OS X ships with v3.0 of Info-Zip's zip, which supports the Zip64 extensions and uses them automatically when needed (so I was creating Zip64 files without realizing it), but only v5.52 of Info-Zip's unzip, which doesn't support Zip64 - Zip64 support was added in unzip's v6.0.

I have no idea why Apple didn't ship an unzip that matches the shipped zip, but I found two easy solutions:

  1. MacPorts users can install unzip 6.0 using "sudo port install unzip".

  2. The shareware archive utility BetterZip, which is a handy piece of software anyway, supports Zip64, so just by using that instead of the command line, I was able to extract my archived VM and continue my day.

2
  • BetterZip solved my problem, thx!
    – hdx
    Feb 27, 2012 at 19:50
  • I was getting errors for a large Zip file as well. I'd suggest adding The Unarchiver as an option too. Feb 18, 2016 at 13:28
6

I believe the ZIP file format has a 4 GB total archive size limit. Wikipedia seems to support this.

If you have a Windows Vista or more recent computer available, try exploring the archive there to see if it's in the newer ZIP64 format or not.

So it's possible that the ZIP64 support is different between what created the archive and what you're using to unzip it.

Also, is there an unzip command standard in the Mac OS X command prompt?

1
  • 1
    yeah, you can try " unzip file"
    – yanokwa
    Feb 26, 2010 at 22:38
4

I had exactly the same problem... Zipped a file with the standard mac archive software... deleted the file... a month later tried to open the archive and got the same error --> Guess this has something with the fact that the file was over 1gb

SO I tried all and more of the software above and nothing worked after a few weeks of searching and trying I found one that worked :) So I guess this is worth mentioning:

The Unarchiver - I downloaded this from: http://wakaba.c3.cx/s/apps/unarchiver.html these people are my new hero's :) It has the necessary things for broken or to large zipfiles

1
  • The dialog box interface seemed to work erratically but setting it up as the default application for zip files worked perfectly. Thanks for the tip.
    – tripleee
    Sep 5, 2015 at 16:27
3

Mac Archive Utility will unzip the file into:

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

E.g.: BAH.odJFh"/"archiveName"

Then go ahead and start the un-archive and wait until you get the error, then leave the dialog box open. Open terminal window. sudo su cd to the path above, remember you can type /Vo and hit tab to finish the word get as far as you can and do a ls to see what the ramdon directory names are change into the final directory where all your files are. then type mv * /Volumes/"Drive Name"/.... where you want to put files/. now change read write on the folder of where you moved it to including all items.

Finally click OK on the first error. You must wait to click ok on the error until after the files are moved because the OK erases all the files.

0

You could use a .tar.gz archive. The default Mac Archive Utility will decompress them; just double click on the file. But I didn't see a way to force it to use .tar.gz when you compress it.

I'm not familiar with Macs; I just happen to have one near my desk at work. The Archive utility might have some GUI frontend somewhere in /Applications/utilities.

If there is no GUI, compress a folder into a .tar.gz use this command: tar czvf myarchive.tar.gz MyPhotos/

2
  • Why downvote...?
    – trolle3000
    Feb 27, 2010 at 4:26
  • 5
    I didn't downvote, but you're not directly answering the question. Also note that gz is probably a waste of time assuming the images are JPEGs. Feb 27, 2010 at 12:01
0

You may be lucky trying a data recovery software. If your JPEG files have a negative compression rate and ZIP is smart enough to store them uncompressed in that case, it is possible that scanning the zip archive gives results.

You must log in to answer this question.