Quazatron,
@Quazatron@lemmy.world avatar

I’ve got the bulk of my Steam, Lutris and Heroic game collection on an external USB 2,5" HDD formated as BTRFS with the following options:

nosuid,nodev,nofail,x-gvfs-show,relatime,compress=zstd

It works great and means I can take my Steam library anywhere. I just have to make sure I click “Mount volume” on the disk’s desktop icon before starting Steam, Lutris or Heroic.

ProtonBadger,

I found Steam wouldn't accept my drive unless I gave it the 'exec' option in fstab.

Dr_Willis,

Notes I made for people trying to use steam under Linux and keeping game files on a NTFS partition. Notes on ext4 filesystem at the end.

Also I Found this Guide - which may be better or have some details I overlook.

github.com/…/Using-a-NTFS-disk-with-Linux-and-Win…

Flatpak Warning

If your steam install is done using Flatpak that can result in the steam program being sandboxed and limited in what it can access. I have no experience with how this limits things, the flatseal tool may be needed to manage the flatpak steam program. You can setup the specific flatpak to have access to other filesystems and mountpoints outside of your home. the command flatpak list

should show if you have steam installed via flatpak or not.

Flatpak notes at the end…

I have NO idea how the steam SNAP version differs in how it can access other locations either.

Continueing with the normal guide now…

Steam Game Directory on NTFS (fat32/exfat/vfat)

don’t use the file manager to mount the filesystem setup a /etc/fstab line to mount it at boot time you do NOT (typically) use chown or chmod on a mounted NTFS. (you do use those commands with ext4) example fstab entry.


<span style="color:#323232;">    UUID=1234-your-uuid-56789 /media/gamedisk ntfs-3g uid=1000,gid=1000,rw,user,exec,nofail,umask=000 0 0 
</span>

You Do NOT use all of those options for ext4

On Ubuntu you can use ‘ntfs’ instead of ntfs-3g for the filesystem in the fstab options if you have ntfs-3g installed , it auto changes NTFS to be ntfs-3g. Other distribution may differ. When ntfs3 gets more commonplace, and stable likely people will switch to using ntfs3, and drop ntfs-3g

Newer Distribution and kernels may use the ntfs3 driver, I have not tested that driver. Try it out and see if it works.

The various issues and problems with ntfs getting mounted Read Only still apply. (hit up the numerous NTFS under Linux guides for more information) These issues also apply to exfat,vfat, fat32, and I imagine using ntfs3. Disable windows hibernate/suspend and fast boot if sharing a filesystem between linux and windows.

And …

it’s best to not use ntfs for your game storage drive , it can be slower and more of a CPU load. It does Work for me, but it is slower in my experience.

also… there are a lot of bad/wrong/old posts/blogs/guides on this topic. so watch out for those. (some of the info here may be wrong, so dont trust this guide 100%)

This guide may be outdated or wrong when we start using ntfs3.

Also be sure to check out this guide, and the part about the compatdata directory

github.com/…/Using-a-NTFS-disk-with-Linux-and-Win…

bonus tip. Steam scale ui Tweak.:

set a system variable to have steam scale up it’s UI.


<span style="color:#323232;">     $    GDK_SCALE=2  steam
</span>

edit your steam .desktop file to make it the default option, or make a second .desktop file for a steam 2x Launcher.

STEAM on an ext4 or other Linux filesystem.

basic outline…

format the Filesystem, get the UUID make directory for the mount


<span style="color:#323232;">   mkdir /home/bob/games 
</span>

make fstab entry.

UUID=123-YOUR-UUID /home/bob/games ext4 defaults,nofail 0 0 mount the filesystem


<span style="color:#323232;">  sudo mount /home/bob/games 
</span>

make the Filesystem owned by your user.


<span style="color:#323232;"> sudo chown bob.bob /home/bob/games 
</span>

reboot to make sure it mounts.

use steam and tell it to put a steam library on /home/bob/games install games as normal.

ntfs3 notes

from user mandiblesarecute who gives an example with ntfs3

PARTLABEL=Win10 /media/win10 ntfs3 noacsrules,noatime,nofail,prealloc,sparse 0 0 noacsrules makes everything effectively 777 for when you don’t need or care about fine grained access control.

This 777 mode can be annoying and a security issue in some use cases which is why it’s not the default.

I had issues using Ntfs3, so for now I still use Ntfs-3g , i will test out ntfs3 again in the future as it matures.

Steam flatpak notes from another user. TimRambo1

For flatpaks you want to use the flatseal tool to allow access to the filesystem mountpoint of your steam games filesystem.

example: add mount point /home/(username)/games/

under filesystem under the steam settings in flatseal.

The filesystem still has to be properly mounted (as shown above)

Guide Used

deckcentral.net/…/allow_flatpaks_to_access_your_s…

STEAMDECK NOTES:

Not tried running steam games from a NTFS on my steamdeck. So I can’t say how it differs from a normal Linux install.

end of my rambly guide.

Kes,
@Kes@lemmy.blahaj.zone avatar

Make sure the file system is ext4 and make sure the drive is mounted when you go to add the library on the external drive. A lot of games won’t launch on Linux if the file system isn’t ext4

superfes,

I use btrfs and have never run into FS issues with Steam. Hopefully the format isn’t actually a problem for anybody else either.

muhyb,

Format it as ext4, set auto flag on fstab and after restart you can select it as secondary library on Steam.

Not sure about the part if you need to select it from Steam again after you reconnect it though.

Johanno,

Mhhh as btrfs it should work. The only thing I noticed is the you have to stop steam connect your drive and restart steam for it to work properly

My iscsi drive needs a bit to connect so I start steam 30 seconds later after login.

atlasraven31,

Make sure to use Steam settings to add a Steam Library on the external drive.

SmoochySix4,

I highly recommend ext4 for the game partition. Steam can be picky and it used to not allow anything other than ext4. Also, how is your external drive connected (ie… USB2, USB3)? Is it an SSD?

CAPSLOCKFTW,

Which distro? What does lsblk in the terminal say?

Joseph_Boom,

I’m on Arch (btw) and the output of lsbk says


<span style="color:#323232;">loop0         7:0    0  55,7M  1 loop /var/lib/snapd/snap/core18/2790
</span><span style="color:#323232;">                                      /var/lib/snapd/snap/core18/2790
</span><span style="color:#323232;">loop1         7:1    0  43,2M  1 loop /var/lib/snapd/snap/custom-screen-resolution/27
</span><span style="color:#323232;">                                      /var/lib/snapd/snap/custom-screen-resolution/27
</span><span style="color:#323232;">loop2         7:2    0  40,8M  1 loop /var/lib/snapd/snap/snapd/19993
</span><span style="color:#323232;">                                      /var/lib/snapd/snap/snapd/19993
</span><span style="color:#323232;">sda           8:0    0 447,1G  0 disk 
</span><span style="color:#323232;">└─sda1        8:1    0 447,1G  0 part /run/media/joseph/6446da44-5c96-4a5b-95a7-809b5bbccf79
</span><span style="color:#323232;">nvme0n1     259:0    0 953,9G  0 disk 
</span><span style="color:#323232;">├─nvme0n1p1 259:1    0   260M  0 part 
</span><span style="color:#323232;">├─nvme0n1p2 259:2    0    16M  0 part 
</span><span style="color:#323232;">├─nvme0n1p3 259:3    0 852,6G  0 part 
</span><span style="color:#323232;">├─nvme0n1p4 259:4    0  1000M  0 part 
</span><span style="color:#323232;">├─nvme0n1p5 259:5    0   512M  0 part /boot/efi
</span><span style="color:#323232;">├─nvme0n1p6 259:6    0     8G  0 part [SWAP]
</span><span style="color:#323232;">└─nvme0n1p7 259:7    0  91,5G  0 part /var/cache
</span><span style="color:#323232;">                                      /var/log
</span><span style="color:#323232;">                                      /home
</span><span style="color:#323232;">                                      /var/lib/snapd/snap
</span><span style="color:#323232;">                                      /
</span>

N.B. sda1 is the external drive.

CAPSLOCKFTW,

I’m not in reach of a pc to test, but I think the problem is that the partition is mounted temporary. Try making a new mountpoint and adding it to fstab (with noauto iirc, so that your system does not hang when you start with the drive unplugged).

Joseph_Boom,

Where can I find the steps for doing this?

CAPSLOCKFTW,

Create a dir in a place you like

mkdir (If it is in a dir where you have no write access, you need to sudo or doas)

Unmount the automounted /dev/sda1

umount /dev/sda1

Then mount sda1 to the newly created dir

mount /dev/sda1

Then you can use genfstab to create a fstab entry. (You maybe need to sudo pacman -S arch-install-scripts)

genfstab /

This will write a fstab file to stdout (the terminal). Look for the line with , copy it and sudo open the /etc/fstab file with your prefered editor. Add the line at tge bottom and add the flags rw,user,noauto to the entry.

This way you have to manually mount sda1 every time you boot with mount /dev/sda1

You can add that to your .bashrc or equivalent. (If you don’t plan to remove the disk, you can skip the noauto and the drive will be loaded automatically, but if it is unplugged your system won’t boot normally). Maybe there is a better way, but this way works for me good enough.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • linux@lemmy.ml
  • ethstaker
  • DreamBathrooms
  • cubers
  • mdbf
  • everett
  • magazineikmin
  • Durango
  • Youngstown
  • rosin
  • slotface
  • modclub
  • kavyap
  • GTA5RPClips
  • ngwrru68w68
  • JUstTest
  • thenastyranch
  • cisconetworking
  • khanakhh
  • osvaldo12
  • InstantRegret
  • Leos
  • tester
  • tacticalgear
  • normalnudes
  • provamag3
  • anitta
  • megavids
  • lostlight
  • All magazines