Jump to content

Removing an external Steam Library while Steam is open?

ifconfig
Go to solution Solved by Mira Yurizaki,
23 hours ago, ifconfig said:

Huh. That sounds like an interestingly plausible option. Could you please describe the process in more detail?

So I tested it. It looks like Steam doesn't know any different regardless. Though it may run into issues if it tries to update the game.

 

The process is basically:

  1. Make sure Steam is closed and the external drive is on
  2. Find the game's appmanifest file. It's in the "steamapps" folder where the Steam Library is. The number is the same number in the URL on the game's page on Steam. So for example, BioShock Remaster's URL is https://store.steampowered.com/app/409710/BioShock_Remastered/, the number there is the same as its appmanifest file.
  3. If you haven't already, move the appmanifest file to the local storage.
  4. Open a command prompt as an administrator
  5. Change the directory to the local Steam library's "common" folder using cd and the full path to the "common" folder. If there are spaces, you need to surround the path with double quotes. So for example:
    cd "C:\Program Files (x86)\Steam\steamapps\common"

     

  6. Create a symbolic link using the command mklink /J [name of the game's folder] [Path to game on external drive] . Example:
    mklink /J "Bioshock Remastered" "E:\Apps\SteamLibrary\steamapps\common\Bioshock Remastered" 

     

That should make a symbolic link to the external drive on the local storage. When you launch Steam, the game should appear like it was installed. If you turn off the external drive, Steam shouldn't care.

Hi all,

 

I have a decent laptop which I upgraded to an SSD a while ago. Unfortunately, I didn't have the foresight to buy a 500GB 850 EVO and I now have a 250GB. I now want to install games to use on my laptop, and I know that I can do this with a Steam library on an external HDD. However, when I tried this, Steam would lose its s*** whenever I tried to unplug the HDD, forcing me to re-recognize the game files when I plugged the HDD back in. That takes a while, especially on a 5400rpm HDD.

 

Is there any way I can avoid having to re-recognize game files while still only having the external HDD plugged in whenever I want to play games? I would love to be able to keep Steam open, as the notifications and friends panels are useful to me while I am not playing games. Thanks!

Link to comment
Share on other sites

Link to post
Share on other sites

No, it doesn’t remember them unless the hard drive was plugged in the computer by the time steam starts. It must have the same drive number as well. 

 

That or you have to re recognize every time. I forget if steam is installed in the same directory on my computer. Sometimes I only power on my computer with the boot drive and sometimes the computer mixes up which drive gets which letter. 

Link to comment
Share on other sites

Link to post
Share on other sites

13 hours ago, fpo said:

No, it doesn’t remember them unless the hard drive was plugged in the computer by the time steam starts. It must have the same drive number as well. 

 

That or you have to re recognize every time. I forget if steam is installed in the same directory on my computer. Sometimes I only power on my computer with the boot drive and sometimes the computer mixes up which drive gets which letter. 

So you're saying that it's not possible to do what I am asking?

Link to comment
Share on other sites

Link to post
Share on other sites

6 hours ago, ifconfig said:

So you're saying that it's not possible to do what I am asking?

Did you try everything I said? 

Link to comment
Share on other sites

Link to post
Share on other sites

8 hours ago, fpo said:

Did you try everything I said? 

Having the drive maintain the same drive letter? Yes.

Link to comment
Share on other sites

Link to post
Share on other sites

1 hour ago, ifconfig said:

Having the drive maintain the same drive letter? Yes.

Then you can’t. 

Link to comment
Share on other sites

Link to post
Share on other sites

I'd have to test this out when I get back home, but you can probably fake Steam out by leaving the appmanifest file in the local storage, then create a symbolic link of the game inside the "common" directory of the library. As long as Steam doesn't try to do something with the game, it shouldn't know any better. But doing something with the game includes launching or updating it.

Link to comment
Share on other sites

Link to post
Share on other sites

1 hour ago, M.Yurizaki said:

I'd have to test this out when I get back home, but you can probably fake Steam out by leaving the appmanifest file in the local storage, then create a symbolic link of the game inside the "common" directory of the library. As long as Steam doesn't try to do something with the game, it shouldn't know any better. But doing something with the game includes launching or updating it.

1

Huh. That sounds like an interestingly plausible option. Could you please describe the process in more detail?

Link to comment
Share on other sites

Link to post
Share on other sites

23 hours ago, ifconfig said:

Huh. That sounds like an interestingly plausible option. Could you please describe the process in more detail?

So I tested it. It looks like Steam doesn't know any different regardless. Though it may run into issues if it tries to update the game.

 

The process is basically:

  1. Make sure Steam is closed and the external drive is on
  2. Find the game's appmanifest file. It's in the "steamapps" folder where the Steam Library is. The number is the same number in the URL on the game's page on Steam. So for example, BioShock Remaster's URL is https://store.steampowered.com/app/409710/BioShock_Remastered/, the number there is the same as its appmanifest file.
  3. If you haven't already, move the appmanifest file to the local storage.
  4. Open a command prompt as an administrator
  5. Change the directory to the local Steam library's "common" folder using cd and the full path to the "common" folder. If there are spaces, you need to surround the path with double quotes. So for example:
    cd "C:\Program Files (x86)\Steam\steamapps\common"

     

  6. Create a symbolic link using the command mklink /J [name of the game's folder] [Path to game on external drive] . Example:
    mklink /J "Bioshock Remastered" "E:\Apps\SteamLibrary\steamapps\common\Bioshock Remastered" 

     

That should make a symbolic link to the external drive on the local storage. When you launch Steam, the game should appear like it was installed. If you turn off the external drive, Steam shouldn't care.

Edited by M.Yurizaki
fixing mklink command
Link to comment
Share on other sites

Link to post
Share on other sites

21 hours ago, M.Yurizaki said:

So I tested it. It looks like Steam doesn't know any different regardless. Though it may run into issues if it tries to update the game.

 

The process is basically:

  1. Make sure Steam is closed and the external drive is on
  2. Find the game's appmanifest file. It's in the "steamapps" folder where the Steam Library is. The number is the same number in the URL on the game's page on Steam. So for example, BioShock Remaster's URL is https://store.steampowered.com/app/409710/BioShock_Remastered/, the number there is the same as its appmanifest file.
  3. If you haven't already, move the appmanifest file to the local storage.
  4. Open a command prompt as an administrator
  5. Change the directory to the local Steam library's "common" folder using cd and the full path to the "common" folder. If there are spaces, you need to surround the path with double quotes. So for example:
    
    cd "C:\Program Files (x86)\Steam\steamapps\common"

     

  6. Create a symbolic link using the command mklink /J [Path to game on external drive] [name of the game's folder]. Example:
    
    mklink /J "E:\Apps\SteamLibrary\steamapps\common\Bioshock Remastered" "Bioshock Remastered"

     

That should make a symbolic link to the external drive on the local storage. When you launch Steam, the game should appear like it was installed. If you turn off the external drive, Steam shouldn't care.

You have the `mklink` command backward: https://superuser.com/a/597552/342885

Link to comment
Share on other sites

Link to post
Share on other sites

2 minutes ago, M.Yurizaki said:

I really hate that Windows and Linux has the same command backwards.

LOL. Agreed, I keep trying to type `ls` every once in a while. WSL makes stuff better.

Link to comment
Share on other sites

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×