ValveSoftware / steam-for-linux

Issue tracking for the Steam for Linux beta client
4.21k stars 174 forks source link

SteamCMD missing file permissions that it has #10979

Open mja00 opened 3 months ago

mja00 commented 3 months ago

Your system information

Please describe your issue in as much detail as possible:

When attempting to install a server through SteamCMD it fails with a ERROR! Failed to install app '105600' (Missing file permissions) error. I've check file permissions and SteamCMD has them. This worked perfectly fine yesterday but now no longer works.

Steps for reproducing this issue:

  1. Install a server with SteamCMD
  2. See it error out
Lord-Leonard commented 2 months ago

getting this as well, any info?

mja00 commented 2 months ago

I ended up having to set a HOME env var to a folder it could write to. SteamCMD was attempting to write to the / folder which caused it to do //Steam/logs as its logs directory and failing.

mja00 commented 2 months ago

It seems in some recent update whatever code that writes the logs now fatally errors out if it can't actually write them.

nevesm commented 2 months ago

I am facing the same issue:

ERROR! Failed to install app '730' (Missing file permissions)

I dont get it how you solved it

mja00 commented 2 months ago

It's possible you're having a different bug. When SteamCmd first runs it'll say something about redirecting errors to a directory. If that directory is one the running user cannot write to then it'll fail with missing permissions. I've got no clue why but it does.

nevesm commented 2 months ago

Oh i see, i think mine is /root/Steam/logs image

mja00 commented 2 months ago

Yeah it reads from the HOME environment variable to set the directory so it is changeable.

nevesm commented 2 months ago

I'll try to give the necessary permissions to this folder, 1 sec

nevesm commented 2 months ago

Not working yet, i think you should keep this issue open because this can crash other servers not only ours

dudleycodes commented 2 months ago

Setting the HOME environment variable solved my problem using LacledesLAN/SteamCMD.

The problem only seemed to affect usage with no TTY attached.

Ric-F commented 2 months ago

In my case for a Project Zomboid server running https://github.com/Danixu/project-zomboid-server-docker , to eliminate the file permissions problem on start I needed to update my Dockerfile like so:

ENV HOME "${HOMEDIR}"
ENV STEAMAPPID 380870
ENV STEAMAPP pz
ENV STEAMAPPDIR "${HOMEDIR}/${STEAMAPP}-dedicated"

The only line added was the top one where I re-used the HOMEDIR environment variable for HOME.