Mac OS X - How I moved Steam's Games from my primary to an alternate drive

I finally succumbed to my daughter's ravings about the glories of Steam for buying, downloading, and managing one's games. (http://store.steampowered.com). It's a great site - especially with major bundles at 1/2 price. But, I didn’t want Steam’s games consuming large quantities of the  primary disk on my MacBook Pro, so I arranged (as follows) a means to keep them on my iOmega firewire drive. Use at your own risk. Your mileage may vary.

On a Mac, Valve’s Steam keeps its downloaded games in the directory


where Login Name is the name of your home directory. Mine is just "ron" - or better yet, the home directory alias ~/ will do the trick

        or simply ~/Library/Steam/SteamApps

I created a Steam directory on my target drive, which is now “/Volumes/Media/Steam”

In order for Steam to be happy with the move of the games to the new storage drive, I had to do three things.

First, I copied the SteamApps directory from the Steam directory in my home file system to the new target drive. Second, I deleted the “SteamApps” directory from its original location. Lastly, I created a symbolic link (not an Apple “Alias”) from the new SteamApps directory on my target drive to the Steam directory on your home file system.

I used the following command to copy the games in SteamApps to my iomega drive:
cp -a ~/Library/“Application Support”/Steam/SteamApps /Volumes/Media/Steam
(Alternatively you can just use finder and drag the SteamApps directory to its new location.)

Next I used finder to navigate to /Volumes/MyMedia/Steam to validate my games had been copied. I then used finder again to navigate to ~/Library/Application Support/Steam and drag the SteamApps folder to the trash.

Lastly, using a terminal window I typed
        ln -sf /Volumes/Media/Steam/SteamApps SteamApps
(again, you can't use apple file aliases here!)

That’s it! I’m now downloading my new games. Steam is happy and running. And I’m not clogging up my primary drive.



No comments: