Posted by & filed under OS X.

I recently upgraded by MacBook Pro to having two hard drives (an SSD for the OS, and the platter drive for media). I wanted to put the “special” user folders onto the media drive, but still have the main user folder on the SSD. The reason it is better to do it this way is that caches and profile information, which is often read by the OS / apps, are still on the SSD, but then the larger files which don’t require speed are on the media drive.

To do this, you need to delete the folders from your home directory, and soft-link the directories to the external drive.

Also, make sure you transfer the special folder icon from the old folder to the new folder, by clicking on the old folder, pressing Cmd + I, selecting the icon in the dialog, and pressing Cmd + C. Then, select the new folder, press Cmd + I again, select the icon, and press Cmd + V.

So, the first step is to copy all of, say, your Pictures directory onto the external drive. Then you’ll want to use the command line to delete the old folder and link it:

sudo rm -rf ~/Documents && ln -s "/Volumes/Media/Documents/" ~/Documents
sudo rm -rf ~/Pictures && ln -s "/Volumes/Media/Pictures/" ~/Pictures
sudo rm -rf ~/Movies && ln -s "/Volumes/Media/Movies/" ~/Movies

Repeat this once for each folder you want to move (making sure you first copied the content over).

Unfortunately, the grey sidebar icons are no longer pretty and folder specific, just generic grey (even if you fixed the normal icon as specified above). Also, all of the folders will have shortcut symbols on them. I suppose you can’t have your cake and eat it too.

 

Thomas Hunter II

Thomas is the author of Advanced Microservices and a prolific public speaker with a passion for reducing complex problems into simple language and diagrams. His career includes working at Fortune 50's in the Midwest, co-founding a successful startup, and everything in between.
  • Nick

    Why not just use the user/account feature in OSX system preferences to move the home folder to another drive? All the system files stay on the SSD while all the media files (Pictures/Movies/Documents/Music/Downloads) are moved to the HDD, or wherever you want to put them.

    Eat away!

    • While that method would be a LOT easier, you don’t get the benefit of having the users profile and cached data on the SSD. If it wasn’t for this caveat, I would have definitely stuck the whole user directory onto the second drive, it would alleviate some of the issues mentioned int he post.

  • Trond Larsen

    I did all you described above but the sudo command did not work.
    “Last login: Sat Sep 29 11:15:18 on ttys000
    TRLs-MacBook:~ TRL$ sudo rm ~/Movies && ln -s “/Volumes/Media/Movies/” ~/Movies
    rm: /Users/TRL/Movies: is a directory
    TRLs-MacBook:~ TRL$”

  • Ronan

    Great article. This worked for me OSX 10.7.5.

    Thanks

  • Ben

    I tried this and everything worked well until i tried “Save to PDF” from the print option, I believe it is having problems seeing my Documents folder?

    • I’m not sure what you’re talking about as far as saving a PDF.

      If you are able to see your ~/Documents directory from within Finder, it should have been mounted just fine.

  • Bill Paradis

    Message Body:
    Hi Thomas,
    I hope you have time to help me out in regards to your article “Move special OS X user folders to external drive.”

    I followed you instructions to the “T”. When in Finder for SSD and I click on a folder/directory folder, that I have sudo removed and link I get the message “The operation can’t be completed because the original item for “filename” can’t be found.”

    Instead should it not point to the files in the same name folder on the HDD?

    Some things are working and others aren’t after following the article. Please let me know if you need more info, or anything else for that matter, to help you help me.

    Thanks Bill

  • Mark

    Same problem as Bill… using ML I get the message “The operation can’t be completed because the original item for “filename” can’t be found.” anyone worked this out?

    • I found that the problem is with the double quotes (“) around the path in the ln command. They present a problem if the path contains spaces (i.e. any of the volume names or folders in the path contain spaces).

      As an example, my HDD is called “Main HDD”, and what worked for me was:
      ln -s /Volumes/Main\ HDD/foldername/Downloads/ ~/Downloads

      also, somewhat unrelated, if you want to find out the full path of your current directory, you can use the pwd command.

  • Invar

    Hi,
    I had moved my folders to my 2nd HDD as you have described. Now I want to move them back as I move entire home directory to the 2nd HDD. Do you have any idea how I can recover these commands?
    Will I get the original sidebar icons back?

    • You should be able to rm the link files, and mv the originals back. Something like this:

      sudo rm ~/Documents && mv /Volumes/Media/Documents ~/Documents

  • Great article. This worked for me OSX 10.9.4.

    Thanks, it really helped

  • Teo

    Worked perfect. Yosemite 10.10.1

  • Frances

    Hi Thomas,

    Your approach worked very well, but… the removed system folders (Movies, Pictures, Music, Sites, Downloads) reappeared automatically after some time (I guess after something like 30 minutes). Any idea how to solve this?

    Thank, Frances

  • Udi

    Hey,
    I’m trying to move it to a folder that has ( ) and it doesn’t let me
    -bash: syntax error near unexpected token `(‘

    what’s the work around?
    Thanks

  • Michael

    Hi Thomas – thanks for your article.

    I am running OSX Yosemite – 10.10.5

    I followed your directions, and I got the following error:

    Michaels-Mac-Pro:~ michaelnicholls$ sudo rm -rf ˜/Downloads && ln -s “/Volumes/Mammoth/Downloads/” ˜/Downloads
    ln: ˜/Downloads: No such file or directory

    Do you know what this means, or a work around?

  • Are these steps valid for El Cap? Please reply.

  • Thank you! This worked perfectly.

  • João Carlos

    Hi Thomas,

    Thank you.

    But what is the process to reverse back to the original settings?

    Regards

  • David Harris

    Thanks Thomas, worked perfectly on El Capitan with Windows 10 on Parallels 11

  • babur hakarar

    Thomas, I moved my downloads folder to my second drive with your method. However I cannot reverse the process back. Even if the downloads folder is back under the original directory, the alt+command+L shortcut will not work. Can you think of a solution?