We help IT Professionals succeed at work.

copy iphoto library

I have a 120gb iphoto library.  I/m trying to offload it to my nas.  The gui keeps on failing.  ive read that it might be better to transfer large files through the terminal, however, i keep getting errors in the terminal too.  Ive tried cp -r /Users/missy/Pictures/iPhoto\ Library smb://, but that is throwing errors too. some of the errors im getting is No such file or directory and unable to copy extended attributes.

Perhaps it has something to do specifically with the iphoto library.  Is it a directory or one file?  Please help me get my huge iphoto library over to my nas.

Thank you
Watch Question


no, its ext3
The maximum block size for ext3 can be as low as 16GB if the drive is formatted with a 1K block size. Do you know what your block size is?



output of fdisk
Disk /dev/sda: 2000.3 GB, 2000398934016 bytes
255 heads, 63 sectors/track, 243201 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks  Id System
/dev/sda1               1      243201  1953512001  83 Linux

I don't think the problem has anything to do with maximum file size, as iPhoto library contains many files.
The iPhoto library is in fact one "package" file and it looks to me as if your block size is in fact 1KB. I think you are going to have to reformat your NAS if you want to move the iPhoto library to it.


would you mind sharing how you get a 1kb block size with the above data.  just curious.


in addition, how do you calculate the maximum file size?
Disk size = 2000398934016 bytes
No. of Blocks = 1953512001

2000398934016 / 1953512001 = 1024 = 1 KB
Maximum file size for a 1 KB block size is 16 GB, per the Wiki article linked in my earlier post.


after i reformat w a 2kb block size, whats the best way to proceed to copy the iPhoto library to the nas?  what command will work best?
Why not reformat to a 4 KB block size? That will give you a maximum file size of  2TB. A 2 KG block size will only give you a 256 GB maximum file size.

You should just be able then to do a straight finder copy of the iPhoto library. No need to use terminal.
The iPhoto Library is NOT a single file (it is in effect a FOLDER with a file extension of .photolibrary) and OSX interprets such folders as a package or single file but you can simply right click( or Ctrl + left click) on the folder and select "View Package Contents" and you will open the folder and see all the files and folders inside.

Therefore the problem is probably NOT the size of the iPhoto Library but problems copying file and folder attributes from the OSX hard drive to the ext3 formatted NAS.

How are you connecting to the NAS .. via SMB or CIFS or what?

Have you tried any of the command-line copying options like "cp", "ditto" or even "rsync"?
If you're not comfortable with command line tools you could look at creating an Automator script to automate the ditto command .. like this one

There are several applications which provide an interface for "rsync"


I'm connecting to the NAS via smb, and tried using the cp command that was in my original post.  Please take a look at my cp command in the original question.  Perhaps I have something wrong?
Have you mounted the volume smb:// so that it appears in the Volumes folder

Create a folder in the Missy Directory called iPhoto Library

Then you should use the command
cp -r /Users/missy/Pictures/iPhoto\ Library /Volumes/Missy/iPhoto\ Library


I used the above command, and I didn't get any errors. The command is just sitting there, I don't see any visual progress, like a status or progress.  How should I proceed? Is there a way I can monitor the copy?
Unfortunately there's no feedback for the cp command .. sit back and wait .. could be some time!!

ditto and rsync can be better as they can copy just changed files from source to destination
You could also open the Missy drive in the finder ... and you should see the contents updating
Iain is right and I was wrong. Although the Mac finder treats the iPhoto library as a single file for viewing purposes, it appears that it is treated as a folder for the purposes of SMB copying.

Further to Iain's last post, you could also open Console on the Mac to see if there are any error messages with respect to the copying operation.
Oops. Sorry Eoin. I really am screwing things up this morning! Shouldn't try to type before my morning coffee.
You should use rsync instead of cp for copies of large folders.  rsync also has options to show the progress.  It will also synchronize the files.  In case you interrupt the copy, you won't have to start over.  If your cp has already completed, your future copies will go much faster with rsync.  You could run rsync anytime.

rsync -avz /Users/missy/Pictures/iPhoto\ Library /Volumes/Missy/iPhoto\ Library
That -v option means verbose and you'll see each file and folder.

rsync -azv --progress /Users/missy/Pictures/iPhoto\ Library /Volumes/Missy/iPhoto\ Library
The additional --progress option will show you the percent completed, which is only really useful if you have large files.

You can also redirect the output to a log file.
rsync -avz /Users/missy/Pictures/iPhoto\ Library /Volumes/Missy/iPhoto\ Library > rsync.log
Or output to screen and a log file simultaneously.
rsync -avz /Users/missy/Pictures/iPhoto\ Library /Volumes/Missy/iPhoto\ Library | tee rsync.log

The initial copy might be faster with cpio or cp -a, but if it gets interrupted, you don't really want to start over from the beginning, so rsync is especially better once you have a copy, and it's better overall.

You could also install rsnapshot and do a "poor man's deduplication" on network devices.  rsnapshot existed before apple's time machince.