ValveSoftware / steam-for-linux

Issue tracking for the Steam for Linux beta client
4.26k stars 175 forks source link

Project Zomboid server fails to find steamservice.so #10215

Closed Nitramzz closed 11 months ago

Nitramzz commented 1 year ago

Your system information

Please describe your issue in as much detail as possible:

A few months back I was playing Project Zomboid on my own server with my wife. Normally hosting the server went off without a hitch as the game natively supports Linux. Recently we tried to get back into the game but it seems that something has gone awry with the hosting when done through the base game as opposed to a dedicated server. The server crashes when attempting to start (even with everything default). You can find the server log, the game console log & what I presume to be the exception stack that caused this here

From what I found in steam discussions I am not the only one experiencing this and it seems that it might have happened because of an update to the Steam Client at some point hence why I am posting this issue here & why I could play the game normally a few months back. Reference to previously mentioned discussion here and here.

Steps for reproducing this issue:

  1. Start Project Zomboid (108600)
  2. Click the "Host" button in the main menu
  3. Try to start server with default options
  4. Get exception dlmopen steamservice.so failed: steamservice.so: cannot open shared object file: No such file or directory
  5. Server proceeds to shutdown
kisak-valve commented 1 year ago

Hello @Nitramzz, as a quick check, can you see if ~/.steam/debian-installation/ubuntu12_32/steamservice.so exists and is about 5MB?

Nitramzz commented 1 year ago

Hey @kisak-valve , thanks for the quick reply. Yes it is indeed there and is ~5MB image

MegaShinySnivy commented 1 year ago

Can confirm, this is happening to me as well on the same version

eyforia commented 1 year ago

same issue on Ubuntu 22.04

LOG  : General     , 1700107880439> 0> SERVER: dlmopen steamservice.so failed: steamservice.so: cannot open shared object file: No such file or directory
LOG  : Network     , 1700107880439> 0> [CoopMaster] Unknown message incoming from the slave server: dlmopen steamservice.so failed: steamservice.so: cannot open shared object file: No such file or directory

Steam Version: 1698777785 Steam Client Build Date: Mon, Oct 30 22:09 UTC -05:00 Steam Web Build Date: Fri, Oct 27 19:29 UTC -05:00 Steam API Version: SteamClient020

ls ~/.steam/debian-installation/ubuntu12_32/
ls: cannot access '/home/***/.steam/debian-installation/ubuntu12_32/': No such file or directory
Nitramzz commented 1 year ago

@kisak-valve does this repository work akin to the Dota 2 one where you gauge the severity issues based on community voting via " :+1: " ?

kisak-valve commented 1 year ago

Hello @Nitramzz, friendly reminder that I'm a moderator for Valve's issue trackers on Github, and not a Steam developer myself. As far as I know, using the thumbs up reaction on the opening post is useful in all of Valve's issue trackers, but I don't have any insight on how much individual developers or teams prefer to prioritize their work with that as a consideration.

MegaShinySnivy commented 1 year ago

This is a pretty important issue, as this affects my ability to host my own server, I hope it can be fixed here soon.

nmirthes commented 1 year ago

Hitting this issue with 7 Days to Die if the game is launched from Steam. Not seeing it if the game is launched from it's working directory. Copying the library from ~/.local/share/Steam/ubuntu12_32/ to the game's working directory results complaints about wrong elf class:

2023-11-22T07:57:28 656.974 INF [EOS] Unregistering server
2023-11-22T07:57:28 656.975 INF [Steamworks.NET] Stopping server

=================================================================
    Native Crash Reporting
=================================================================
Got a SIGSEGV while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries 
used by your application.
=================================================================

=================================================================
    Native stacktrace:
=================================================================
    0x7fdde9b15062 - /home/username/.local/share/Steam/steamapps/common/7 Days To Die/7DaysToDie_Data/MonoBleedingEdge/x86_64/libmonobdwgc-2.0.so : 
    0x7fdde9abdd3d - /home/username/.local/share/Steam/steamapps/common/7 Days To Die/7DaysToDie_Data/MonoBleedingEdge/x86_64/libmonobdwgc-2.0.so : 
    0x7fdde9a43250 - /home/username/.local/share/Steam/steamapps/common/7 Days To Die/7DaysToDie_Data/MonoBleedingEdge/x86_64/libmonobdwgc-2.0.so : 
    0x7fddedc42910 - /lib/x86_64-linux-gnu/libc.so.6 : 
    0x7fddedf02de8 - /lib/x86_64-linux-gnu/libGLdispatch.so.0 : 
    0x7fddedf02eb7 - /lib/x86_64-linux-gnu/libGLdispatch.so.0 : 
    0x7fddedc94631 - /lib/x86_64-linux-gnu/libc.so.6 : 
    0x7fddedc97940 - /lib/x86_64-linux-gnu/libc.so.6 : 
    0x7fddedd2847c - /lib/x86_64-linux-gnu/libc.so.6 : 

=================================================================
    Telemetry Dumper:
=================================================================
Thread 0x7fdb42e546c0 may have been prematurely finalized* Assertion at mono-threads.c:702, condition `info' not met, function:mono_thread_info_current, 
dlmopen /home/username/.local/share/Steam/steamapps/common/7 Days To Die/steamservice.so failed: /home/username/.local/share/Steam/steamapps/common/7 Days To Die/steamservice.so: wrong ELF class: ELFCLASS32
dlmopen steamservice.so failed: steamservice.so: wrong ELF class: ELFCLASS32
src/steamnetworkingsockets/clientlib/steamnetworkingsockets_lowlevel.cpp (3514) : Trying to close low level socket support, but we still have sockets open!
11/22 07:57:28 ERROR: execv failed when trying to send minidump
11/22 07:57:28 ERROR: Could not run steamerrorreporter binary. Uploading minidump in-process
11/22 07:57:28 Uploading dump (in-process) [url 'https://crash.steampowered.com/submit', proxy '']
/tmp/dumps/assert_20231122075728_16.dmp
11/22 07:57:29 success = yes
11/22 07:57:29 response:  Discarded=1
src/steamnetworkingsockets/clientlib/steamnetworkingsockets_lowlevel.cpp (3514) : Trying to close low level socket support, but we still have sockets open!
Shutdown handler: cleanup.
src/common/pipes.cpp (885) : stalled cross-thread pipe.
src/common/pipes.cpp (885) : stalled cross-thread pipe.
src/steamnetworkingsockets/clientlib/steamnetworkingsockets_connections.cpp (345) : Listen socket handle bookkeeping bug!
src/steamnetworkingsockets/clientlib/steamnetworkingsockets_connections.cpp (345) : Listen socket handle bookkeeping bug!
src/steamnetworkingsockets/clientlib/steamnetworkingsockets_lowlevel.cpp (3452) : nLastRefCount > 0
414n commented 1 year ago

I think this missing steamservice.so problem is the same I have in Ace Combat 7, where the game crashes on launch for me every time since at least the 1st of October using the Steam beta client. Reverting to the stable client was the only way to make it start but now it does not solve the problem anymore. The only steamservice.so file I have in the steam folder is a 32-bit ELF file:

$ file ~/.steam/steam/ubuntu12_32/steamservice.so
/home/alan/.steam/steam/ubuntu12_32/steamservice.so: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, BuildID[sha1]=8bfdff575cf3fae74100927ef5c0358d27ca1d70, not stripped
$ stat ~/.steam/steam/ubuntu12_32/steamservice.so
  File: /home/alan/.steam/steam/ubuntu12_32/steamservice.so
  Size: 5477732         Blocks: 10704      IO Block: 4096   regular file
Device: 8,33    Inode: 32253434    Links: 1
Access: (0755/-rwxr-xr-x)  Uid: ( 1000/    alan)   Gid: (  100/   users)
Access: 2023-11-18 00:07:30.000000000 +0100
Modify: 2023-11-18 00:07:30.000000000 +0100
Change: 2023-11-18 21:06:25.178766247 +0100
 Birth: 2023-11-18 21:06:22.494766377 +0100

Note: I have no ~/.steam/debian-installation/ folder in my installation.

azcoffeehabit commented 1 year ago

You could be running into the issue with the systemd script. I fixed with what is posted at the below link

https://theindiestone.com/forums/index.php?/topic/43355-linux-dedicated-server-management-with-systemd/

Nitramzz commented 1 year ago

You could be running into the issue with the systemd script. I fixed with what is posted at the below link

https://theindiestone.com/forums/index.php?/topic/43355-linux-dedicated-server-management-with-systemd/

I somehow doubt it - I am currently hosting a dedicated server for myself via the guide in the PZ wiki - https://pzwiki.net/wiki/Dedicated_server . It works as intended but this bug is about the hosting through the client instead of using the dedicated server on the store :)

RetroLisek commented 1 year ago

The same happened to me when I was trying to play with friend. However, I was on Void Linux, so the issue is beyond Ubuntu and is in Linux in general. This is a major issue, I hope this gets solved soon.

ventsin commented 1 year ago

Also experiencing this on Fedora 38. Would really appreciate a fix here, as migrating PZ saves to a dedicated server is a major PITA.

tylosminute commented 12 months ago

Exact same issue on Arch Linux, also affects other games with similar feature.

Lu5ck commented 11 months ago

Make sure you installed the required dependencies

414n commented 11 months ago

After upgrading to the latest steam client beta (1702667398), the issue I had with Ace Combat 7 is no more and I seem to be able to launch a server instance of Project Zomboid too.

Nitramzz commented 11 months ago

After upgrading to the latest steam client beta (1702667398), the issue I had with Ace Combat 7 is no more and I seem to be able to launch a server instance of Project Zomboid too.

I retested this as well when I saw your comment - it is indeed working with the newest steam client beta (1702667398). Hopefully this fix makes it into the stable release of steam soon-ish. I am closing the issue as the problem seems to have been addressed although nothing mentioned in the patch notes seems to hint at this :thinking:

orlfman commented 10 months ago

can this be re-opened? this is now causing conan exiles to not work. https://github.com/ValveSoftware/Proton/issues/2563

dlmopen steamservice.so failed: steamservice.so: cannot open shared object file: No such file or directory
RetroLisek commented 10 months ago

can this be re-opened? this is now causing conan exiles to not work. ValveSoftware/Proton#2563

dlmopen steamservice.so failed: steamservice.so: cannot open shared object file: No such file or directory

just update the steam client to beta

RetroLisek commented 10 months ago

After upgrading to the latest steam client beta (1702667398), the issue I had with Ace Combat 7 is no more and I seem to be able to launch a server instance of Project Zomboid too.

like this

maliciouspastry commented 10 months ago

After upgrading to the latest steam client beta (1702667398), the issue I had with Ace Combat 7 is no more and I seem to be able to launch a server instance of Project Zomboid too.

like this

Sadly not working on beta client either.

-- Proton Experimental -- [13:41:57.335 | browser | info] Monitoring startup of game 440900 using executable ConanSandbox\Binaries\Win64\ConanSandbox_BE.exe [13:41:58.354 | browser | info] Application will quit. CAppInfoCacheReadFromDiskThread took 1 milliseconds to initialize bit out of range 0 - FD_SETSIZE on fd_set : terminated pid 28443 != 28442, skipping destruction (fork without exec?)

-- Proton GE 8-27 -- LogOnline:Display: STEAM: Loading Steam SDK 1.57 Setting breakpad minidump AppID = 440900 SteamInternal_SetMinidumpSteamID: Caching Steam ID: 76561198057959277 [API loaded no] CAppInfoCacheReadFromDiskThread took 1 milliseconds to initialize dlmopen steamservice.so failed: steamservice.so: cannot open shared object file: No such file or directory SteamInternal_SetMinidumpSteamID: Caching Steam ID: 76561197960265728 [API loaded no] bit out of range 0 - FD_SETSIZE on fd_set : terminated pid 29402 != 29401, skipping destruction (fork without exec?)

idl0r commented 10 months ago

Same here. steamservice.so doesn't exist. steamcmd always complains. Fresh steamcmd install. However, this is not just a PZ issue, it affects anything in/with steamcmd.

414n commented 10 months ago

Even if Ace Combat 7 now works for me after a Steam client beta update as in the previous comment, the dlmopen steamservice.so failed: steamservice.so: cannot open shared object file: No such file or directory is still present in AC7 Proton log.

I'm starting to think that the dlmopen error message about the steamservice.so dynamic library is not really related to the issue at hand...

orlfman commented 10 months ago

can this be re-opened? this is now causing conan exiles to not work. ValveSoftware/Proton#2563

dlmopen steamservice.so failed: steamservice.so: cannot open shared object file: No such file or directory

just update the steam client to beta

just client beta doesn't fix the issue. that was the first thing i did and no go. what works is: disabling OnlineSubsystemSteam by setting bEnabled to false in the steamapps/common/Conan Exiles/ConanSandbox/Config/Windows/WindowsSteamEngine.ini

the game will now launch, but since steam online services are disabled, you can't do anything. not even single player works, as it needs steam online services (which i guess is because it has co-op)

idl0r commented 10 months ago

See #10393

RetroLisek commented 10 months ago

Im gonna retry hosting project zomboid. But yeah maybe it would be good to reopen.

I forgot the propper folder, but check if steamservice.so is in ubuntu64 folder in the steam files

MEolh commented 10 months ago

Im gonna retry hosting project zomboid. But yeah maybe it would be good to reopen.

I forgot the propper folder, but check if steamservice.so is in ubuntu64 folder in the steam files

steamservice.so not present in /home/user/.steam/steam/ubuntu12_64 folder for me

RetroLisek commented 10 months ago

Im gonna retry hosting project zomboid. But yeah maybe it would be good to reopen. I forgot the propper folder, but check if steamservice.so is in ubuntu64 folder in the steam files

steamservice.so not present in /home/user/.steam/steam/ubuntu12_64 folder for me

yeah i can agree, we should reopen this issue

idl0r commented 10 months ago

Im gonna retry hosting project zomboid. But yeah maybe it would be good to reopen. I forgot the propper folder, but check if steamservice.so is in ubuntu64 folder in the steam files

steamservice.so not present in /home/user/.steam/steam/ubuntu12_64 folder for me

yeah i can agree, we should reopen this issue

https://github.com/ValveSoftware/steam-for-linux/issues/10215#issuecomment-1892527308

roadapathy commented 10 months ago

Hey all, I wanted to share this and I hope this is associated with a fix for everything. If somebody could reply to this then I'll check back after work but I'm going to do what the dev said on Mastodon.

https://www.gamingonlinux.com/2024/01/valve-seeing-increasing-bug-reports-due-to-steam-snap-other-methods-recommended/

Maybe Distros haven't been keeping up with changes?

idl0r commented 10 months ago

This is a issue at valve, not the distros/packaging.

roadapathy commented 10 months ago

This is a issue at valve, not the distros/packaging.

Oh lawrt. Okay then. I'll fuss with it tonight after work. Thank you for that information.

brad-charboneau commented 10 months ago

I can confirm this issue still exists. I used both the apt install method for debian as well as the manual steamcmd install method. once steamcmd updates at first launch this issue appears. I am trying to install the PalWorld Test Server on Linux.

and in case it matters at all, i am using anonymous login instead of tying it to my account specifically. the game will download, but cannot run because steamservice.so cannot be found

f8upd8 commented 10 months ago

I can confirm this issue still exists. I used both the apt install method for debian as well as the manual steamcmd install method. once steamcmd updates at first launch this issue appears. I am trying to install the PalWorld Test Server on Linux.

and in case it matters at all, i am using anonymous login instead of tying it to my account specifically. the game will download, but cannot run because steamservice.so cannot be found

Having the same issue with PalWorld server.

KeithLaiKB commented 10 months ago

I can confirm this issue still exists. I used both the apt install method for debian as well as the manual steamcmd install method. once steamcmd updates at first launch this issue appears. I am trying to install the PalWorld Test Server on Linux. and in case it matters at all, i am using anonymous login instead of tying it to my account specifically. the game will download, but cannot run because steamservice.so cannot be found

Having the same issue with PalWorld server.

same, I try doing the same thing and have the same problem

mustorze commented 9 months ago

Just add all permissions to your server folder and it runs fine

idl0r commented 9 months ago

Just add all permissions to your server folder and it runs fine

Nonsense...