protonscr

FileNotFoundError: [Errno 2] No such file or directory '/usr/local/[...].log'

protonopen
ValveSoftware/Proton#5580 · opened 2022-02-16 by junefish · updated 2023-06-30 · 11 comments · github
4 matching comments, n / p to jump
Jjunefish 2022-02-16 github

Compatibility Report

  • Name of the game with compatibility issues: Ticket to Ride
  • Steam AppID of the game: 221410

System Information

  • GPU: NVIDIA Quadro P1000
  • Driver/LLVM version: NVIDIA 470.94
  • Kernel version: 5.15
  • Link to full system information report as Gist
  • Proton version: have tried 3.16, 3.7, 4.11, 4.2, 5.0, 5.13, 6.3, 7.0, and Experimental

I confirm:

  • [X] that I haven't found an existing compatibility report for this game.
  • [X] that I have checked whether there are updates for my system available.

There is no steam-$APPID.log in either $HOME or data/games/logs, happy to attach if I can get assistance finding the file.

Symptoms

I am unable to launch the game with any Proton version. Depending on the version I can get it to say that it's running briefly, but then it just stops, without any window opening. I was getting some unable to chdir errors so I did a bind mount to /data/games as per this issue. That got rid of that error, but I'm still getting others.
Here is the output of trying to open Ticket to Ride on Proton 7.0 with PROTON_LOG=1 %command% as the sole launch option after opening steam via terminal (I clicked "Play" between lines 130 and 131).

Reproduction

  • install ticket to ride normally through steam
  • click "Play" to run game, game opens and runs normally except for Online features
  • uninstall ticket to ride
  • Settings > Steam Play
    • enable steam play for supported titles
    • enable steam play for all other titles
    • run other titles with: Proton 7.0-1
  • Ticket to Ride > Properties
    • General
      • disable steam overlay while in game
    • Compatibility
      • force the use of a specific steam play compatibility tool
        • Proton 7.0-1
  • install ticket to ride
  • click "Play" to run game, window pops up installing updates, closes, and "Stop" button turns back to "Play"
Kkisak-valve maintainer 2022-02-16 github

Hello @junefish, let's treat this feedback as a one-off corner case instead of a compatibility report. From your terminal spew, these are the lines of interest:

(pressure-vessel-adverb:485290): GLib-WARNING **: getpwuid_r(): failed due to unknown user id (531613)
Traceback (most recent call last):
  File "/data/games/steamapps/common/Proton 7.0/proton", line 1365, in <module>
    g_session.init_session(sys.argv[1] != "runinprefix")
  File "/data/games/steamapps/common/Proton 7.0/proton", line 1133, in init_session
    if self.setup_logging(append_forever=False):
  File "/data/games/steamapps/common/Proton 7.0/proton", line 1032, in setup_logging
    self.log_file = open(lfile_path, "a")
FileNotFoundError: [Errno 2] No such file or directory: '/usr/local/home/citizenfour/steam-108200.log'

This tells us that your attempt to workaround the usage of /usr/local was unsuccessful and is still causing you trouble.

Kkisak-valve maintainer 2022-02-16 github

I wouldn't be surprised if this is a different shade of paint to the same /usr/local issue as was evaluated at https://github.com/ValveSoftware/steam-runtime/issues/288, except it's because the home folder is set to /usr/local/home/citizenfour. You might be able to workaround this specific snafu by setting PROTON_LOG_DIR to something writable inside the Steam Linux Runtime - Soldier container environment, but I'd expect there's a good chance some other /usr/local related snafu will appear immediately after this one.

Jjunefish 2022-02-16 github

How can I change PROTON_LOG_DIR to something else?

Also to be clear I'm happy to completely uninstall Steam and start from scratch on this computer, I'm just not sure how to control the install location of steam_latest.deb.

BBlisto91 2022-02-16 github

@junefish in your steam games launch options just include it along with PROTON_LOG and set it equal to a folder path.
As an example here i force it to put the log in my home folder.

PROTON_LOG=1 PROTON_LOG_DIR="$HOME" %command%

You can also supply a full system path from root if you want to make sure.

Edit: I realized by reading through this again i might have misunderstood what was meant.
Tho i guess this option can also be supplied to the runtime app in steam if that is the question

Jjunefish 2022-02-17 github

I added PROTON_LOG=1 PROTON_LOG_DIR="/data/games" %command% to the Launch Options for ticket to ride. When I clicked Play, it acted like it was running for about 3s before the Stop button turned back into Play.

Then I exited steam and reran via terminal (/data/games/steam.sh) (terminal output). I clicked play between lines 162-3 and the Stop button turned back to Play at about line 185.

Iipr 2022-02-24 github

Normally you need root permissions to do any changes under /usr/local - if you are not root you need to run things with sudo.
By the Filesystem Hierarchy Standard $HOME is under /home.
So your setup is strange to begin with. In addition to above, things like Apparmor and Selinux can make other restrictions on what you can do and where.

Is there some specific reason you don't have the normal setup (default in most installations) and if so, have you checked your permissions are updated accordingly to reflect the different path?

The path to library should of course have permissions for your users as well but I hope that you have your fstab with correct defaults. In your mounted drive try add another directory and set owner to the account you are running games with and check if you can write logs then: it is possible something is preventing writes to root of the drive. If you have access control lists (ACL) in addition to standard permissions and security modules (LSM) it can get even trickier to find that out.

In short: it smells like permissions issue somewhere.
Try to simplify your setup to what works and then go from there, there are too many points of failure in this and too easy to make a mistake in each of them.

Jjunefish 2022-02-28 github

I'm not using Apparmor or Selinux. I'm not super experienced in Linux permissions so I'm not 100% sure how to verify the permissions information you're asking. For example when I created /data/games I ran chown citizenfour:citizenfour but that didn't seem to help. I'm also not using a mounted drive, just the regular internal hard drive, so I haven't made any changes to /etc/fstab. I don't think I have any kind of ACL setup, this may be user error, but after hours of looking up permission tutorials and trying steps I still was stuck so I filed the issue here.

If anyone is able to give me more specific instructions, I will follow them carefully and give full specific output.

Iipr 2022-03-01 github

I'm not using Apparmor or Selinux. I'm not super experienced in Linux permissions so I'm not 100% sure how to verify the permissions information you're asking. For example when I created /data/games I ran chown citizenfour:citizenfour but that didn't seem to help. I'm also not using a mounted drive, just the regular internal hard drive, so I haven't made any changes to /etc/fstab. I don't think I have any kind of ACL setup, this may be user error, but after hours of looking up permission tutorials and trying steps I still was stuck so I filed the issue here.

So if I understood correctly:

  • you have one drive ?
  • you have used "mount --bind" to mount part of it under /data/games ?
  • and you have $HOME under /usr/local for some reason ?

I don't know why you have a strange setup like that. Why don't you use normal symlink if you only have one drive?

I would say don't use mount bind unless you thoroughly understand permissions related to it. Just make a normal dir, set ownership and point Steam library to use that (Steam -> Settings -> Downloads -> Steam library folders) - much simpler, much less chance of errors.

And if you read the issue you linked to someone already suggested using normal FHS style directories like using /home
Most distributions these days include Apparmor at least by default but it depends on distribution what kind of configuration it uses.

Tteletrail 2023-06-30 github

hallo I am also getting

"FileNotFoundError: [Errno 2] No such file or directory: '../drive_c' -> '/media/project/organic/Steam/steamapps/compatdata" errors

I have steam symlinked to another directory (for storage) however I have run it from a non-symlinked dir and get the same error.

could anyone advise? I have tested with multiple proton versions.

Kkisak-valve maintainer 2023-06-30 github

Hello @teletrail, you're looking for ValveSoftware/steam-for-linux#5168 instead of this issue report. The general recommendation is to use a Linux native filesystem instead of NTFS with Proton. EDIT: scratched out because I misread.

Tteletrail 2023-06-30 github

sorry I am running an ext4 drive not ntfs. see bug filed here: https://github.com/ValveSoftware/Proton/issues/6900

thanks