Storing Steam Games Outside the Steam Folder
Steam is an excellent example of a application which is not entirely flexible in the way it uses the file system. When you first install Steam, you can choose where you want games saved, but after that point, every new game you download is installed to the same place. With hard links, we can fix that.
Why would we want to have Steam games installed in different places? Let’s look at the following example. Say we have a computer with two hard drives: a 300GB WD Velociraptor and a 1.5TB Seagate Barracuda. We use the faster-accessing Velociraptor for gaming, so we install Steam on one of its partitions. Eventually, the Velociraptor begins to fill up, so we have to start evaluating how we’re using the space. For a game like Crysis, which will be accessing tons of data off the disk—fast—we definitely want to use the faster hard drive. However, for a game like Civilization 4, which is older and loads quickly pretty much no matter what, we could afford to move the game’s data over to the slower drive, clearing up a couple of gigabytes on the Velociraptor.
http://www.maximumpc.com/files/u57670/steamgames.jpg
So how would we go about doing it? All we need to do is find the files we want to move. In our example, they’re located in D:\Games\Steam\steamapps\common\sid meier's civilization iv. We’ll move that folder somewhere on the 2TB drive, for instance to E:\Games\sid meier's civilization iv. Now, before starting up Steam again, we need to create a hard link to fill in the hole we left when we moved the folder. The command we’ll use to do that is:
mklink /J D:\Games\Steam\steamapps\common\sid meier's civilization iv E:\Games\sid meier's civilization iv
Now, when Steam looks for the Civilization 4 files, it will find them right where it’s expecting. However, the hard link is pointing it to data that’s actually on the 2TB drive. Using this technique, we can store our games wherever we like.