Closed br3eze closed 6 months ago
It's not a steam as I can understand. So I just need to clear all the settings and do fresh install of the Steam_Sniper.
But I already did rm -r .local/share/Steam
.. mb there is something else somewhere?
And one more thing. Some games, Neverwinter Online (Proton) as I can remember, don't want to move to a new location (another Library), because of some "third party" something. So You need to reinstall it into the new one. Is it an issue too? Because there is no difference for a Proton game where to be. Isn't it?
rm -r ..something..sniper..
by hand, then reinstalled it through verifying some game. No luck. Tried to remove it through Steam GUI. No chance to be happy.
Please, rework all if checks and uninstall part in the code for this sniper
. User should be able to do clear install in this like situations when nothing can help.
And No space left
while You have 100 Gb free isn't normal too.
Unable to mount source on destination: No space left on device
This indicates that a Linux kernel system call (probably mount(2)
) is returning the error code ENOSPC
for some reason. Unfortunately, when something as low-level as this fails, the only information we can get is a single integer error code, and it's common for an error code that was originally intended to mean one specific thing (like ENOSPC
, which is usually insufficient space on a particular filesystem) to be reused to mean something vaguely similar (like maybe some arbitrary limit on the number of mount points is being exceeded).
ENOSPC
is not a documented error return for mount(2)
, so the best we can do is to guess.
The "missing shared content" message in your screenshot is https://github.com/ValveSoftware/steam-for-linux/issues/8473. That issue is in another part of Steam, and Steam Runtime developers cannot fix it.
@smcv Yes - "No space left on device". But I've just reinstalled linux and 100Gb free on a fresh system. Everything works fine, even games in Lutris/Wine. If there is only one Steam dir: ~/.local/share/Steam, then I don't know what to do..
Please collect a detailed log from the sniper runtime so that we can see more information about what is happening. The easiest way is to set the launch options for an affected game to:
STEAM_LINUX_RUNTIME_LOG=1 STEAM_LINUX_RUNTIME_VERBOSE=1 %command%
and then try to run it. You'll get a log file in SteamLinuxRuntime_sniper/var/slr-latest.log
.
My best guess so far is that something in the kernel is (ab)using ENOSPC
to mean something that is not really "No space left on device", but actually more like "There is an arbitrary limit to some resource and you have used all of it". I can't tell which resource or what the limit is, but hopefully a log would help to find out.
And one more thing
If you think there is a separate issue, please report it separately, either after we have resolved this one or in parallel. If we discuss two different issues on the same issue number, it quickly gets confusing.
"Unable to mount source on destination: No space left on device" is a Steam Runtime issue, but anything to do with the "package management" parts of Steam (for example being unable to install, uninstall or remove a game) would be a https://github.com/ValveSoftware/steam-for-linux/ issue.
@smcv Ok. I will open a new one issue for that game.
Honestly, I don't know where to look at. slr-app582500-t20240102T235913.log
UPD: May be it will help somehow
Linux pc-user51 6.6.7-artix1-1 #1 SMP PREEMPT_DYNAMIC Thu, 14 Dec 2023 10:09:41 +0000 x86_64 _GNU/Linux_
ext4
mount --bind
works fineThanks, I'll see what I can do with that log.
Rechecked, mount --bind works fine
It works fine when you set up one bind-mount, but not necessarily when the container runtime framework does somewhere around 100 of them!
What is the content of /proc/sys/fs/mount-max
? (It's 100000 on my system.)
And You're right! It was 100. I've set it to 3000 and it works now. Thank You very much! )
If you want Steam Linux Runtime, Flatpak and similar frameworks to be reliable, you should leave that sysctl at its default value (which seems to be 100000 in upstream kernels) instead of setting it to a much lower value.
If accepted, containers/bubblewrap#615 will change this error message to something more like:
bwrap: Can't bind mount /oldroot/run on /newroot/run: Unable to mount source on destination: Limit exceeded (ENOSPC). (Hint: Check that /proc/sys/fs/mount-max is sufficient, typically 100000)
which would hopefully have pointed you in the right direction.
If accepted, containers/bubblewrap#615 will change this error message to something more like:
bwrap: Can't bind mount /oldroot/run on /newroot/run: Unable to mount source on destination: Limit exceeded (ENOSPC). (Hint: Check that /proc/sys/fs/mount-max is sufficient, typically 100000)
which would hopefully have pointed you in the right direction.
Today's Steam Linux Runtime 2.0 (soldier) and 3.0 (sniper) betas, versioned 0.20240415.x, have that change included.
Your system information
Steam Beta Branch: Steam Beta Update, Version: 1703100617
Please describe your issue in as much detail as possible:
Can't start any game (Win/Lin) getting this:
"bwrap: Can't bind mount
/oldroot/home/.../SteamLinuxRuntime_sniper/var/.../usr/etc/services on /newroot/etc/services: Unable to mount source on destination: No space left on device
" Already tried: reboot, reinstall Steam, delete or move to a new location~/.local/share/Steam
, enable Steam Beta.Error screenshot
Steps for reproducing this issue:
Move some games and Proton tools to the main Library
~/.local/share/Steam
from another location. Then start any Proton game. At least in my situation. Native games are playable.UPDATE: Native (Compat checkbox is unchecked) Couter Strike 2 didn't start because of
bwrap: Can't bind mount /oldroot/.../common/SteamLinuxRuntime_sniper/var/tmp-RIWDG2/usr/etc/environment on /newroot/etc/environment: Unable to mount source on destination: No space left on device