[GH-ISSUE #1171] Critical Rust issue (starting today) #913

Closed
opened 2026-02-27 02:54:17 +03:00 by kerem · 20 comments
Owner

Originally created by @Dids on GitHub (Nov 3, 2016).
Original GitHub issue: https://github.com/GameServerManagers/LinuxGSM/issues/1171

Once todays update hits, it will most definitely break everything, as there's an issue with shared library paths, and the only way around that is to manually set the library path, specifically for libsteam_api64.so and Steam-related stuff.

Here's a simple sample on how to fix it for a standard installation of Rust:

#!/bin/bash

# Do not remove this line
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:`dirname $0`/RustDedicated_Data/Plugins/x86_64

# Start the server (note that the -logfile argument is used to log to console)
./RustDedicated -batchmode +server.identity "my_server_identity" +server.hostname "My Server Name" +server.description "My Server Description" -logfile 2>&1

For LGSM, I noticed that if you append the path to the executable= line, it'll work fine.
Here's a quick sed for that (adjust to match your path):

sed -i -e 's#executable="./RustDedicated"#executable="LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/rustserver/serverfiles/RustDedicated_Data/Plugins/x86_64 ./RustDedicated"#g' rustserver
Originally created by @Dids on GitHub (Nov 3, 2016). Original GitHub issue: https://github.com/GameServerManagers/LinuxGSM/issues/1171 Once todays update hits, it will most definitely break everything, as there's an issue with shared library paths, and the only way around that is to manually set the library path, specifically for `libsteam_api64.so` and Steam-related stuff. Here's a simple sample on how to fix it for a standard installation of Rust: ``` #!/bin/bash # Do not remove this line export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:`dirname $0`/RustDedicated_Data/Plugins/x86_64 # Start the server (note that the -logfile argument is used to log to console) ./RustDedicated -batchmode +server.identity "my_server_identity" +server.hostname "My Server Name" +server.description "My Server Description" -logfile 2>&1 ``` For LGSM, I noticed that if you append the path to the `executable=` line, it'll work fine. Here's a quick sed for that (adjust to match your path): ``` sed -i -e 's#executable="./RustDedicated"#executable="LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/rustserver/serverfiles/RustDedicated_Data/Plugins/x86_64 ./RustDedicated"#g' rustserver ```
kerem 2026-02-27 02:54:17 +03:00
  • closed this issue
  • added the
    type: bug
    label
Author
Owner

@Dids commented on GitHub (Nov 3, 2016):

While this does fix the path issue, some users are also seeing segfaults. Not sure if LGSM related or not.

<!-- gh-comment-id:258298619 --> @Dids commented on GitHub (Nov 3, 2016): While this does fix the path issue, some users are also seeing segfaults. Not sure if LGSM related or not.
Author
Owner

@testler2 commented on GitHub (Nov 3, 2016):

Hello, How can i fix my problem?
command_debug.sh: line 105: 26808 Segmentation fault ${executable} ${parms}

<!-- gh-comment-id:258300133 --> @testler2 commented on GitHub (Nov 3, 2016): Hello, How can i fix my problem? command_debug.sh: line 105: 26808 Segmentation fault ${executable} ${parms}
Author
Owner

@UltimateByte commented on GitHub (Nov 4, 2016):

Facepunch...

<!-- gh-comment-id:258315011 --> @UltimateByte commented on GitHub (Nov 4, 2016): Facepunch...
Author
Owner

@cedarlug commented on GitHub (Nov 4, 2016):

@testler2 - Adding the LD_LIBRARY_PATH to the executable in the rustserver script seems to be the fix for my deployment. No segfaults yet.

Specficially:

rustserver@gamerig:~$ grep LD_LIBRARY rustserver
executable="LD_LIBRARY_PATH=$LD_LIBRARY_PATH:`dirname $0`/RustDedicated_Data/Plugins/x86_64 ./RustDedicated"
rustserver@gamerig:~$

Not so sure that it's the LGSM fix, however.

<!-- gh-comment-id:258316766 --> @cedarlug commented on GitHub (Nov 4, 2016): @testler2 - Adding the LD_LIBRARY_PATH to the executable in the `rustserver` script seems to be the fix for my deployment. No segfaults yet. Specficially: ``` bash rustserver@gamerig:~$ grep LD_LIBRARY rustserver executable="LD_LIBRARY_PATH=$LD_LIBRARY_PATH:`dirname $0`/RustDedicated_Data/Plugins/x86_64 ./RustDedicated" rustserver@gamerig:~$ ``` Not so sure that it's the LGSM fix, however.
Author
Owner
<!-- gh-comment-id:258460106 --> @UltimateByte commented on GitHub (Nov 4, 2016): Relevant links http://oxidemod.org/threads/problem-with-the-latest-rust-update-on-linux.21769/ http://steamcommunity.com/groups/linuxgsm/discussions/0/282992646966882793/
Author
Owner

@Dids commented on GitHub (Nov 4, 2016):

From what I've witnessed, the segfaults seem to be affecting OVH servers, more accurately those using OVH's custom kernel.

<!-- gh-comment-id:258473634 --> @Dids commented on GitHub (Nov 4, 2016): From what I've witnessed, the segfaults seem to be affecting OVH servers, more accurately those using OVH's custom kernel.
Author
Owner

@Dids commented on GitHub (Nov 4, 2016):

Note that steamclient.so was also moved from RustDedicated_Data/Plugins/x86_64 to the root directory, which I've heard breaks LGSM so it halts instead of showing any errors. Copying/moving that back to the plugins directory should fix that.

<!-- gh-comment-id:258473879 --> @Dids commented on GitHub (Nov 4, 2016): Note that `steamclient.so` was also moved from `RustDedicated_Data/Plugins/x86_64` to the root directory, which I've heard breaks LGSM so it halts instead of showing any errors. Copying/moving that back to the plugins directory should fix that.
Author
Owner

@melvinlemoine commented on GitHub (Nov 5, 2016):

Hello, I moved steamclient.so to RustDedicated_Data/Plugins/x86_64 but error persist

<!-- gh-comment-id:258605839 --> @melvinlemoine commented on GitHub (Nov 5, 2016): Hello, I moved steamclient.so to RustDedicated_Data/Plugins/x86_64 but error persist
Author
Owner

@Dids commented on GitHub (Nov 5, 2016):

You will also need the LD_LIBRARY_PATH fix from above.

EDIT: Just to update everyone, Facepunch knows about the issue and is trying to find a fix. It's related to the new Steamworks update/library.

<!-- gh-comment-id:258605869 --> @Dids commented on GitHub (Nov 5, 2016): You will also need the `LD_LIBRARY_PATH` fix from above. **EDIT**: Just to update everyone, Facepunch knows about the issue and is trying to find a fix. It's related to the new Steamworks update/library.
Author
Owner

@melvinlemoine commented on GitHub (Nov 5, 2016):

I execute grep LD_LIBRARY_PATH rustserver and grep LD_LIBRARY rustserver.
And I moved steamclient.so.
But the problem persist

<!-- gh-comment-id:258606295 --> @melvinlemoine commented on GitHub (Nov 5, 2016): I execute grep LD_LIBRARY_PATH rustserver and grep LD_LIBRARY rustserver. And I moved steamclient.so. But the problem persist
Author
Owner

@Dids commented on GitHub (Nov 5, 2016):

@MelvynSaytek grep doesn't actually edit anything, it's used for searching.

The rustserver script has a line similar to this:
executable="./RustDedicated"

This needs to be changed to include the path to the Rust plugins, like this:

executable="LD_LIBRARY_PATH=$LD_LIBRARY_PATH:`dirname $0`/serverfiles/RustDedicated_Data/Plugins/x86_64 ./RustDedicated"

So, edit the file and make sure it's exactly as above, and it should work.

EDIT: Fixed path.

<!-- gh-comment-id:258606441 --> @Dids commented on GitHub (Nov 5, 2016): @MelvynSaytek grep doesn't actually edit anything, it's used for searching. The `rustserver` script has a line similar to this: `executable="./RustDedicated"` This needs to be changed to include the path to the Rust plugins, like this: ``` executable="LD_LIBRARY_PATH=$LD_LIBRARY_PATH:`dirname $0`/serverfiles/RustDedicated_Data/Plugins/x86_64 ./RustDedicated" ``` So, edit the file and make sure it's exactly as above, and it should work. **EDIT**: Fixed path.
Author
Owner

@melvinlemoine commented on GitHub (Nov 5, 2016):

it's work thank you very much !!

<!-- gh-comment-id:258606944 --> @melvinlemoine commented on GitHub (Nov 5, 2016): it's work thank you very much !!
Author
Owner

@UltimateByte commented on GitHub (Nov 8, 2016):

So, just reproduced the issue.
Will try the fix to eventually commit this to master. I'm surprised nobody pull requested a fix already. Maybe you guys like the lack of competition with other servers.

<!-- gh-comment-id:259295419 --> @UltimateByte commented on GitHub (Nov 8, 2016): So, just reproduced the issue. Will try the fix to eventually commit this to master. I'm surprised nobody pull requested a fix already. Maybe you guys like the lack of competition with other servers.
Author
Owner

@UltimateByte commented on GitHub (Nov 9, 2016):

Fixed with the executable commands.
Working on a fresh install.

<!-- gh-comment-id:259304033 --> @UltimateByte commented on GitHub (Nov 9, 2016): Fixed with the executable commands. Working on a fresh install.
Author
Owner

@dashdanw commented on GitHub (Nov 9, 2016):

this may not work on newer systems since you're not allowed to edit LD_LIBRARY_PATH, you may need to export it at the top of the script as mentioned above or included in your rustserver users bashrc

<!-- gh-comment-id:259345682 --> @dashdanw commented on GitHub (Nov 9, 2016): this may not work on newer systems since you're not allowed to edit LD_LIBRARY_PATH, you may need to export it at the top of the script as mentioned above or included in your rustserver users bashrc
Author
Owner

@UltimateByte commented on GitHub (Nov 9, 2016):

@dashdanw What are you calling "newer systems" ?
Because i just tested that on Debian 8. At least it will fix some (most ?) of the issues.

<!-- gh-comment-id:259358084 --> @UltimateByte commented on GitHub (Nov 9, 2016): @dashdanw What are you calling "newer systems" ? Because i just tested that on Debian 8. At least it will fix some (most ?) of the issues.
Author
Owner

@cedarlug commented on GitHub (Nov 9, 2016):

@UltimateByte "newer systems" == Windows 10 - it won't work there.

Seriously though, @dashdanw what are you referring to? Your statement makes no sense.

<!-- gh-comment-id:259388937 --> @cedarlug commented on GitHub (Nov 9, 2016): @UltimateByte "newer systems" == Windows 10 - it won't work there. Seriously though, @dashdanw what are you referring to? Your statement makes no sense.
Author
Owner

@Dids commented on GitHub (Nov 9, 2016):

@cedarlug @UltimateByte Maybe he's referring to security features of some OS's, but even then, wouldn't LD_LIBRARY_PATH simply be "local" (user bound)?

At any rate, this is fixed, awesome and thank you.

<!-- gh-comment-id:259424550 --> @Dids commented on GitHub (Nov 9, 2016): @cedarlug @UltimateByte Maybe he's referring to security features of some OS's, but even then, wouldn't LD_LIBRARY_PATH simply be "local" (user bound)? At any rate, this is fixed, awesome and thank you.
Author
Owner

@UltimateByte commented on GitHub (Nov 9, 2016):

Thanks a lot to you @Dids for pointing out the fix. You rock man !

<!-- gh-comment-id:259438240 --> @UltimateByte commented on GitHub (Nov 9, 2016): Thanks a lot to you @Dids for pointing out the fix. You rock man !
Author
Owner

@lock[bot] commented on GitHub (Jul 19, 2018):

This thread has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.

<!-- gh-comment-id:406138546 --> @lock[bot] commented on GitHub (Jul 19, 2018): This thread has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.
Sign in to join this conversation.
No labels
Atomic
Epic
cannot reproduce
command: backup
command: console
command: debug
command: details
command: fast-dl
command: install
command: mods
command: monitor
command: post-details
command: restart
command: send
command: start
command: stop
command: update
command: update-lgsm
command: validate
command: wipe
distro: AlmaLinux
distro: Arch Linux
distro: CentOS
distro: Debian
distro: Fedora
distro: RedHat
distro: Rocky Linux
distro: Ubuntu
distro: openSUSE
engine: goldsrc
engine: source
game: 7 Days to Die
game: ARMA 3
game: Ark: Survival Evolved
game: Assetto Corsa
game: Avorion
game: BATTALION: Legacy
game: Barotrauma
game: Battalion 1944
game: Battlefield 1942
game: Black Mesa: Deathmatch
game: Blade Symphony
game: Call of Duty 2
game: Call of Duty 4
game: Call of Duty: United Offensive
game: Counter-Strike 1.6
game: Counter-Strike 2
game: Counter-Strike: Global Offensive
game: Counter-Strike: Source
game: Day of Infamy
game: Dayz
game: Death Match Classic
game: Don't Starve Together
game: ET: Legacy
game: Eco
game: Factorio
game: Factorio
game: Garry's Mod
game: Half-Life
game: Hurtword
game: Insurgecy
game: Insurgecy
game: Insurgency: Sandstorm
game: Just Cause 3
game: Killing Floor
game: Killing Floor 2
game: Left 4 Dead 2
game: Minecraft
game: Minecraft Bedrock
game: Mordhau
game: Multi Theft Auto
game: Mumble
game: Natural Selection 2
game: No More Room in Hell
game: Pavlov VR
game: Post Scriptum
game: Project Zomboid
game: Quake 3
game: QuakeWorld
game: Red Orchestra: Ostfront 41-45
game: Return to Castle Wolfenstein
game: Rising World
game: Rust
game: San Andreas Multiplayer
game: Satisfactory
game: Soldat
game: Soldier of Fortune 2
game: Squad
game: Squad 44
game: Starbound
game: Stationeers
game: Sven Co-op
game: Team Fortress 2
game: Teamspeak 3
game: Teeworlds
game: Terraria
game: The Front
game: Unreal Tournament 2004
game: Unreal Tournament 3
game: Unreal Tournament 99
game: Unturned
game: Valheim
game: Wurm Unlimited
game: Zombie Master Reborn
game: label missing
good first issue
help wanted
info: alerts
info: dependency
info: docker
info: docs
info: email
info: query
info: steamcmd
info: systemd
info: tmux
info: website
info: website
needs more info
outcome: duplicate
outcome: issue resolved
outcome: issue resolved
outcome: issue unresolved
outcome: pr accepted
outcome: pr rejected
outcome: unconfirmed
outcome: wontfix
outcome: wrong forum
potential-duplicate
priority
pull-request
type: bug
type: feature
type: feature
type: feature request
type: game server request
type: refactor
waiting response
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/LinuxGSM#913
No description provided.