Proton: Can't launch Windows games installed on another drive

Created on 22 Aug 2018  路  13Comments  路  Source: ValveSoftware/Proton

I'm trying to launch a supported game (or any other windows game) from steam play but it keeps erroring out with

 wine: /mnt/games/SteamLibrary/steamapps/compatdata/698780/pfx is not owned by you

I've tried setting a umask for everyone to read,write, and execute , and a uid/gid with my user, both of which didn't work.
The uid/gid wouldn't let me mount the drive with steam, and the umask returns

OSError: [Errno 1] Operation not permitted: '/mnt/games/SteamLibrary/steamapps/compatdata/698780/pfx//drive_c/Program Files (x86)/Steam/steamclient.dll'

I'm using an NTFS Drive that is mainly used for windows games so only windows normally touches it.
I'd also like to note, if I move the install folder to my local drive which is an ext4 (Arch) it runs great.
But I'd rather not switch my other drive to ext4 or anything like that if I don't have to.

Is there something I'm missing? Something I haven't tried or I'm just being too dumb to notice lol

Most helpful comment

Try adding these arguments to your ntfs-3g options line.

uid=userid,gid=groupid

Where userid and groupid can be found by doing

cat /etc/passwd | grep USERNAMEHERE

and it will be like this

img

In the highlighted area: left of colon is userid and right of colon is group id

All 13 comments

The problem is NTFS does not like to cooperate with the kernel's mounting.

Try installing ntfs-3g and mounting it that way. If you setup an automatic mount in your fstab, set the partition type to ntfs-3g instead of ntfs for it to work on boot.

Mounting it through ntfs-3g, even as root, should allow your local user to read/write files on the drive. Overall, ntfs-3g just provides more options and support for the ntfs on Linux.

See this for more info for any distro (not just arch): https://wiki.archlinux.org/index.php/NTFS-3G

I just tried that, mounting via ntfs-3g and setting it in my fstab as well and it doesn't seem to have any effect.
The issue above is, I can read, write, and execute any file on the drive perfectly fine. I install games on it and remove stuff easily but it just doesn't start the windows game via steam play.

Always throws that 'not owned by you' error.

Try adding these arguments to your ntfs-3g options line.

uid=userid,gid=groupid

Where userid and groupid can be found by doing

cat /etc/passwd | grep USERNAMEHERE

and it will be like this

img

In the highlighted area: left of colon is userid and right of colon is group id

Hm, well that does seem to be working, wow!
I tried the uid/gid thing before but maybe the ntfs-3g thing helped it along the way.

Thanks for the help :)

But, is this the proper fix? I've always used the NTFS drive for any kind of media and all files stored in it are created as owned by root:root, and that's fine, because I don't want my particular current user:group associated to files created on this drive, because I can use it in any other machine I own. Now if I start mounting it with given user:group, files created in it will be owned by that user right? Which may not exist in other machines.

I'm asking because, one can write/read/execute just fine with default mounting behavior, dunno why Proton/Wine NEEDS the files to be owned by users in specific...

Hmm, nevermind, NTFS doesn't work that way when on Linux, the uid/gid setting just makes everything in the drive owned by the given user, not something file specific.

Just ran into this. Very odd because anything else, including launching stuff with regular wine, works fine. Please at least put the fix somewhere visible, I imagine I'm far from the only person to try mounting their Windows Steam library from an NTFS drive.

What are your mount options? This works fine here (automounted by udisks2/Plasma)

/dev/sdb1 on /run/media/parker/TBerculosis4 type fuseblk (rw,nosuid,nodev,relatime,user_id=0,group_id=0,default_permissions,allow_other,blksize=4096,uhelper=udisks2)

I just had defaults in /etc/fstab. I added uid and gid now as detailed in the beginning of the thread but I haven't tested it yet.

The uid/gid setting worked for me. I also just had defaults on fstab before.

@oblitum actually ntfs-3g does support mapping individual users, however, it's non-trivial to set up.

Wine uses a colon in it's $WINE_PREFIX/dosdevices folder, and NTFS seems to have trouble supporting this.

A possible workaround for this is to move the 'SteamApps/common/Proton 3.7' and 'StreamApps/compatdata' to a non-NTFS drive, and creating symbolic links in their original locations. This solution worked for me.

Also, make sure the output of 'ulimit -c' is a large number, like maybe 8192 or larger.
See Here to change that limit.

EDIT: see also https://github.com/ValveSoftware/Proton/issues/82#issuecomment-415099440 and https://github.com/ValveSoftware/Proton/issues/35#issuecomment-414935724

Was this page helpful?
0 / 5 - 0 ratings

Related issues

AwesamLinux picture AwesamLinux  路  3Comments

matou68 picture matou68  路  3Comments

ghost picture ghost  路  3Comments

shaphanpena1 picture shaphanpena1  路  3Comments

AwesamLinux picture AwesamLinux  路  3Comments