jammsen / docker-palworld-dedicated-server

Docker container to easily provision and manage Palworld Dedicated Server
https://hub.docker.com/r/jammsen/palworld-dedicated-server
MIT License
911 stars 158 forks source link

Root password #19

Closed ZakSham closed 9 months ago

ZakSham commented 9 months ago

Have you read the Important information text above

Current behavior

I am running docker desktop. Within the container, exec, I run the following and permission is denied.

chown 1000:1000 /srv/palworld/game

Running this requests the root password

su root chown 1000:1000 /srv/palworld/game/

Desired behavior

Root by default.

Links to screenshots

No response

To Reproduce

su root chown 1000:1000 /srv/palworld/game/

Software setup

Hardware setup

Additional context

No response

ZakSham commented 9 months ago

nvm

jammsen commented 9 months ago

Hey @ZakSham Hey, the Base-Image of SteamCMD is on purpose under the steam usr with 1000, so this cant run under root. Was this what you found out? Or do you have something to share?

ZakSham commented 9 months ago

Hi Jammsen,

Thank you for the reply. I was able to reset the password and run chmod as root but that didn't fix the issue.

This is what happen after running. I have added a folder and tried to run chmod as non-root but permission is denied too.

2024-01-22 12:25:22 >>> Doing a fresh install of the gameserver 2024-01-22 12:25:22 tid(11) burning pthread_key_t == 0 so we never use it 2024-01-22 12:25:22 Redirecting stderr to '/root/Steam/logs/stderr.txt' 2024-01-22 12:25:22 Logging directory: '/root/Steam/logs' 2024-01-22 12:25:22 [ 0%] Checking for available updates... 2024-01-22 12:25:23 [----] Verifying installation... 2024-01-22 12:25:23 Steam Console Client (c) Valve Corporation - version 1705108307 2024-01-22 12:25:23 -- type 'quit' to exit -- 2024-01-22 12:25:23 Loading Steam API...OK 2024-01-22 12:25:23 2024-01-22 12:25:25 Connecting anonymously to Steam Public...OK 2024-01-22 12:25:27 Waiting for client config...OK 2024-01-22 12:25:32 Waiting for user info...OK 2024-01-22 12:25:32 ERROR! Failed to install app '2394010' (Missing file permissions) 2024-01-22 12:25:33 >>> Doing an update of the gameserver 2024-01-22 12:25:33 tid(76) burning pthread_key_t == 0 so we never use it 2024-01-22 12:25:33 Redirecting stderr to '/root/Steam/logs/stderr.txt' 2024-01-22 12:25:33 Logging directory: '/root/Steam/logs' 2024-01-22 12:25:33 [ 0%] Checking for available updates... 2024-01-22 12:25:33 [----] Verifying installation... 2024-01-22 12:25:33 Steam Console Client (c) Valve Corporation - version 1705108307 2024-01-22 12:25:33 -- type 'quit' to exit -- 2024-01-22 12:25:33 Loading Steam API...OK 2024-01-22 12:25:33 2024-01-22 12:25:35 Connecting anonymously to Steam Public...OK 2024-01-22 12:25:43 Waiting for client config...OK 2024-01-22 12:26:10 Waiting for user info...OK 2024-01-22 12:26:10 ERROR! Failed to install app '2394010' (Missing file permissions) 2024-01-22 12:26:11 >>> Starting the gameserver 2024-01-22 12:26:11 Checking if config exists 2024-01-22 12:26:11 No config found, generating one 2024-01-22 12:26:11 cp: cannot stat '/palworld/DefaultPalWorldSettings.ini': No such file or directory 2024-01-22 12:26:11 Setting public ip to 10.0.0.1 2024-01-22 12:26:11 sed: can't read /palworld/Pal/Saved/Config/LinuxServer/PalWorldSettings.ini: No such file or directory 2024-01-22 12:26:11 Setting public port to 8211 2024-01-22 12:26:11 sed: can't read /palworld/Pal/Saved/Config/LinuxServer/PalWorldSettings.ini: No such file or directory 2024-01-22 12:26:11 Setting server name to jammsen-docker-generated-###RANDOM### 2024-01-22 12:26:11 sed: can't read /palworld/Pal/Saved/Config/LinuxServer/PalWorldSettings.ini: No such file or directory 2024-01-22 12:26:11 Found standard template, using random numbers in server name 2024-01-22 12:26:11 sed: can't read /palworld/Pal/Saved/Config/LinuxServer/PalWorldSettings.ini: No such file or directory 2024-01-22 12:26:11 Server name is now jammsen-docker-generated-19784 2024-01-22 12:26:11 Setting server description to Palworld-Dedicated-Server running in Docker by jammsen 2024-01-22 12:26:11 sed: can't read /palworld/Pal/Saved/Config/LinuxServer/PalWorldSettings.ini: No such file or directory 2024-01-22 12:26:11 Setting server password to serverPasswordHere 2024-01-22 12:26:11 sed: can't read /palworld/Pal/Saved/Config/LinuxServer/PalWorldSettings.ini: No such file or directory 2024-01-22 12:26:11 Setting server admin password to adminPasswordHere 2024-01-22 12:26:11 sed: can't read /palworld/Pal/Saved/Config/LinuxServer/PalWorldSettings.ini: No such file or directory 2024-01-22 12:26:11 Setting max-players to 32 2024-01-22 12:26:11 sed: can't read /palworld/Pal/Saved/Config/LinuxServer/PalWorldSettings.ini: No such file or directory 2024-01-22 12:26:11 /servermanager.sh: line 73: ./PalServer.sh: No such file or directory

image

jammsen commented 9 months ago

Do you need still help?

ZakSham commented 9 months ago

Yeah, I'm still stuck on this issue in the comment above. Any suggestions would be appreciated.

jammsen commented 9 months ago

Create a user on the host with userid 1000, disable the user by giving him no password. After add this user to the docker group "usermod -aG docker username" i think it was. Do a fresh install over this user when you have added the user to docker-group if you dont want to do this, then just give him chown or chmod to this directy and try again.

ZakSham commented 9 months ago

I tried that and it shows it's already created and shown here at he bottom of this list. I also tried --- chown -R steam /srv/palworld/game--- and restarting but no luck.

PS C:\Users\Hosting> docker exec -it palworld2 cat /etc/passwd root:x:0:0:root:/root:/bin/bash daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin bin:x:2:2:bin:/bin:/usr/sbin/nologin sys:x:3:3:sys:/dev:/usr/sbin/nologin sync:x:4:65534:sync:/bin:/bin/sync games:x:5:60:games:/usr/games:/usr/sbin/nologin man:x:6:12:man:/var/cache/man:/usr/sbin/nologin lp:x:7:7:lp:/var/spool/lpd:/usr/sbin/nologin mail:x:8:8:mail:/var/mail:/usr/sbin/nologin news:x:9:9:news:/var/spool/news:/usr/sbin/nologin uucp:x:10:10:uucp:/var/spool/uucp:/usr/sbin/nologin proxy:x:13:13:proxy:/bin:/usr/sbin/nologin www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin backup:x:34:34:backup:/var/backups:/usr/sbin/nologin list:x:38:38:Mailing List Manager:/var/list:/usr/sbin/nologin irc:x:39:39:ircd:/run/ircd:/usr/sbin/nologin gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/usr/sbin/nologin nobody:x:65534:65534:nobody:/nonexistent:/usr/sbin/nologin _apt:x:100:65534::/nonexistent:/usr/sbin/nologin steam:x:1000:1000::/home/steam:/bin/sh

I tried a fresh install using the following to ensure root wasn't trying to run.

docker run -d -u steam --name palworld [container name]

Any advise is appreciated. Thanks again.

ZakSham commented 9 months ago

I don't know why but this is my fix:

reset root password

docker exec -itu 0 palworld passwd

su root

chown -R 1000:1000 /palworld

The did the trick.

jammsen commented 9 months ago

Very weird, might be down to your custom setup. Also could please clarify something for me? You wrote:

Software setup OS: Windows Docker: 4.26.1

Do you mean Docker-Desktop or WSL2 under Windows? What Docker-Version is that? the current is 25.0.0 before that it was 24 and 23 and 20 and 19, not sure how you can have 4.x.y

ZakSham commented 9 months ago

Docker Desktop image