SSDs are all the rage for performance-oriented builders these days, but they aren’t without problems. Even the largest solid state drive is too small to hold all the stuff we need to store on the C: drive—games, photos, music, videos, etc.—and the inexpensive models max out at around 64GB of capacity. And there’s the performance problem, to boot. All but the most expensive SSDs suffer from very slow write speeds, which can have a significant impact on your real-world performance.
So what’s the solution? We’re going to show you how to set up your Windows install like a Linux setup—with the OS and primary apps on the SSD, and your user profile and space-hogging games on a traditional hard disk. This gives us the best of both worlds—the folders we write to most frequently are on a traditional disk, while our boot and app load times can benefit greatly from the fast read speed and low random-access time of an SSD. Best of all, you can use even a tiny 64GB SSD without having to constantly manage disk space—picking and choosing which apps and media will be stored on the small drive.
Step 1: Install Windows on Your SSD
While you can change the default path of your user profile using the Windows Pre-Install Kit, it’s more trouble than it’s worth to do it that way. Instead, we’re going to tweak Windows after it’s already in place. The first thing you’ll need to do is install Windows on your SSD, which is essentially no different than any other time you’ve installed Windows. When you’re prompted to create an account at the end of the install, don’t use the account name you actually want; use a temporary placeholder instead. You’ll create the actual account you’ll use later. Don’t install any applications until after you’ve moved your user profile.
Once Windows is installed, you should create the user account you intend to use. Go to the Control Panel and search for Add User. Create your account, but don’t log in yet.
We’ve tested our procedure with Windows Vista and Windows 7 Beta 1, but it should work with XP as well if you adjust the paths yourself (Vista and Windows 7 store user profile in C:\Users by default, XP is C:\Documents and Settings). Once Windows is installed and updated with drivers and security patches, you’ll need to set up the partitions on your hard disk.
We created two partitions on our hard disk, one for the user profile and one for games and other large applications. To access the partitioning tools, right-click Computer in the Start Menu and click Manage. Go to Disk Management. Then, right-click your hard disk and create a new partition. We made each partition roughly half of the drive, but if you have a lot of media files, you may want to make your user profile partition larger than your game partition. Once the two partitions have been formatted as NTFS, you can continue to the next step.
Step 2: Copy Your Profiles
Next, you’ll want to assign a drive letter to your user profile drive. We chose U:\, but you can use whatever letter you prefer. In U:\, you’ll need to create a folder called Users. Now, reboot your computer and go into Safe Mode by pressing F8 as it boots. Once you’re in Safe Mode, go to C:\Users and copy the Default and Public folders to U:\Users\Default and U:\Users\Public. You’ll likely find some *.tmp files that simply won’t copy; it’s OK to skip them.
After that’s done, you should open the registry editor (press the Windows key on your keyboard and type regedit). Navigate to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList. In that folder, you need to change the value of the Default key to U:\Users\Default, the Public key to U:\Users\Public, and the ProfilesDirectory to U:\Users. Reboot your PC and log in using the account you created in step 1. During the login, Windows will create your new user account, which should be in U:\Users.
Step 3: Wrapping up Loose Ends
If you didn’t take our advice in step 1 and start with a clean install, this is the point at which you should copy the contents of your old user profile into your new directory. Rather than doing a wholesale copy/paste of the whole directory, it’s safer to only pull the files you need.
You’ll also want to open the registry and do a Find for C:\Users. We found about 20 instances on our test machines, even in a fresh account. While there are some tools that will do an automatic find and replace on the registry, we chose to manually use regedit so we could verify each change ourselves. Open regedit (type regedit after pressing the Windows key), click Computer at the top of the left pane, and then go to the Edit menu and click Find. Type C:\Users and click Find. Then manually change each key to U:\Users. Press F3 to find the next instance, and keep at it until you've changed all the entries. Reboot your PC, then restart regedit and search one final time to ensure you didn't miss any entries.
If you're doing this on a machine that's been used, there will likely be a massive number of registry changes necessary. In that case, download Registry Finder (www.acelogix.com/regfinder.html, 30-day trial) to automate some of the process. While it’s not perfect, Registry Finder will find and change many of the entries for you. You'll still want to do a manual search with regedit, but Registry Finder could save you an hour of copy/pasting.
At this point, you could delete C:\Users if you so desire. We find that it's better to leave the folder, so that even poorly behaved apps that use a hardcoded profile path will continue to work. You should, however, occasionally check the C:\Users folder to see if any files have popped up there.
At this point, your Windows install is ready to go. However, before you install any big apps, you should mount your games partition so you don't waste precious space on the SSD for games.
Step 4: Create a Place for Games
Now, we're going to mount your games partition in the file system. First, you create a folder in your C:\Program Files directory (or C:\Program Files (x86) on 64-bit Windows) called Games. Go back to the Computer Management console and click Disk Management. Right-click the Games partition and select Change Drive Letter and Paths. Select any drive letters that are currently being used and click Remove, then click Add. Select "Mount in the following empty NTFS folder", and browse to the Games folder you just created. Now anything you install at C:\Program Files\Games will actually be stored on your hard disk, and not your SSD. Paths and permissions will also be inherited. Be sure not to mount your Games folder to any additional drives.