mirror of
https://github.com/GameServerManagers/LinuxGSM.git
synced 2026-04-26 06:35:54 +03:00
[GH-ISSUE #1254] RUST & some other games - wrong permissions on /sys = crash on boot #970
Labels
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
No due date set.
Dependencies
No dependencies set.
Reference
starred/LinuxGSM#970
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @UltimateByte on GitHub (Jan 15, 2017).
Original GitHub issue: https://github.com/GameServerManagers/LinuxGSM/issues/1254
Originally assigned to: @UltimateByte on GitHub.
Symptom: the game server just stops while loading after
Initializing 74 stability supportsUpdate3: It's actually not a kernel itself issue, but rather an issue because of permissions on
/sysFix thanks @cedarlug :
(with elevated privileges)
@cedarlug commented on GitHub (Jan 15, 2017):
Details? Link?
@UltimateByte commented on GitHub (Jan 15, 2017):
You're right, main post edited.
Was just a reminder in the first place.
@dgibbs64 commented on GitHub (Jan 16, 2017):
Ohhhh Garry not again...
@UltimateByte commented on GitHub (Jan 17, 2017):
@Edou68FR Kernel info ? Distro ? Logs outputs ? ./rustserver postdetails output ?
Without this, we can't really go further into it.
@UltimateByte commented on GitHub (Jan 17, 2017):
Thanks. Script logs are not useful there though, since this is not an LGSM issue but rather Rust itself.
So game logs output would be more useful. Watch out for your rcon password that may be displayed several times in it.
@UltimateByte commented on GitHub (Jan 17, 2017):
Thanks.
Well, it crashes right at the same place than MattiEXC from discord.
For now the only clue I got is the kernel that differs. Since I couldn't find a good working tutorial on how to revert to the default kernel, I can't even point you out to this for testing.
Maybe @cedarlug , our Sherlock Holmes got an idea ?
@UltimateByte commented on GitHub (Jan 17, 2017):
Just called OVH talking about the issue.
I'm quoting, but this is me summing up what they said:
"Some machines had issues with the default kernel, that's why it's been removed. We cannot add all functionalities to OVH kernels. Also, we don't support software. So if you point out an issue with an existing functionality, then we can fix it. But otherwise, it's up to the user to add what they need to their kernel and recompile it."
So any kernel expert is welcome to help... Unless we figure out the issue comes from somewhere else.
@Xseba360 commented on GitHub (Jan 18, 2017):
I recommend updating to latest ovh kernel from their FTP as it seems to work for me 👍
@jok-dev commented on GitHub (Jan 18, 2017):
What kernel are you running as lastest? I'm running latest production 3.14.32
@UltimateByte commented on GitHub (Jan 18, 2017):
From discord:
@Xseba360 commented on GitHub (Jan 19, 2017):
@UltimateByte, disregard that, it just took longer than I'm used to with source servers, however console i/o isn't working? (Is it supposed to?).
So in conclusion, latest experimental should work. But as the name suggest it's up to you ;)
@cedarlug commented on GitHub (Jan 19, 2017):
@Xseba360 The Rust console isn't functional in Linux, other than this: "If the console hasn't closed, then the Rust server hasn't died."
Glad that the new kernel worked for you.
@UltimateByte commented on GitHub (Jan 19, 2017):
We could add a warning upon server start if faulty kernel is detected. There is already a function for machine requirements.
@Xseba360 commented on GitHub (Jan 23, 2017):
http://help.ovh.com/KernelInstall
@TNTUP commented on GitHub (Jan 23, 2017):
Same here, https://hastebin.com/obajiboqok
EDIT: Multiple attemps, I give up. Thinking of updating the kernel, but im lazy as f* to do it and rebooting :/
@UltimateByte commented on GitHub (Jan 25, 2017):
Update:
Cedar's fix is enough to fix the issue !
I'd even add that
chmod a+rx /sys/class/netwould even be better if we want to match a sane default Debian install.@braunsonm commented on GitHub (Jan 26, 2017):
Not much that can be done about this on LGSM's end. The most that can maybe be done is for LGSM to run a check and prompt the user about the permission issue.
If necessary I will do that. @UltimateByte
@UltimateByte commented on GitHub (Jan 26, 2017):
I'll do it, tonight, thanks @ChaosMTA , I'm kinda committed to fix Rust for the end of my life, lol.
I'll ask @dgibbs64 , but I think i'll add it to fix_rust.sh
https://github.com/GameServerManagers/LinuxGSM/blob/master/lgsm/functions/fix_rust.sh
Algorithm idea is:
Check 3 dirs for right permissions
if any permission is wrong, check if sudo is available and attempt to fix
if not fixed, display error with commands to run as root
core_exit.sh
@UltimateByte commented on GitHub (Jan 27, 2017):
Since I forgot to ask where to put this check (either in check_permissions.sh since it's been reported to affect other games as well, or fix_rust.sh), i'll add my code here. This is 100% untested, yet, so this might not be perfect.
@cedarlug commented on GitHub (Jan 27, 2017):
I'm skeptical regarding the sudo check for a couple of reasons:
issudoer="$(sudo -n uptime 2>&1|grep "load"|wc -l)"First, this is asking for a no-password sudo, which is rare for a sudoer. And would incorrectly fail if she has sudo privileges but requires a password.
Second, if the user doesn't have any sudo privileges, this drops an alert in the system logs as a failed user privilege escalation attempt.
As far as I know, the only "safe" way to check to see if a user has sudo permissions is
sudo --list. Without a password, it would besudo -n --list. In either case, if a user does not have sudo privileges this does not drop an alert in the system logs.Consider using the check
sudo --listand requiring the user to enter her password.@UltimateByte commented on GitHub (Jan 27, 2017):
Interesting thoughts.
I checked there in the meantime.
https://github.com/GameServerManagers/LinuxGSM/blob/master/lgsm/functions/check_deps.sh#L83
In the end, it just checks if sudo is installed. Maybe it's the way to go?
@braunsonm commented on GitHub (Jan 27, 2017):
Should note that I've heard from people in discord that this issue also affects CS:GO servers. Might be something we should just do as an LGSM pre_req test for all servers.
@UltimateByte commented on GitHub (Jan 27, 2017):
Yep.
One question though, would make this code a bit more simple:
Does any distro have /sys/class/net dirs?
I know debian/ubuntu/centos do have it, don't know for others.
Current work here
https://github.com/GameServerManagers/LinuxGSM/blob/feature/ultimatebyte-271/lgsm/functions/check_permissions.sh
@UltimateByte commented on GitHub (Jan 27, 2017):
Sample output with & without sudo access:
@UltimateByte commented on GitHub (Jan 29, 2017):
Warning and autofix if sudo is available: merged to master.
@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.