noobient / killinuxfloor

noobient's Killing Floor 2 Linux Server Installer and Manager
MIT License
17 stars 4 forks source link

install.sh line 24 $1 independant variable #49

Closed triuk closed 2 years ago

triuk commented 2 years ago

Hi thanks for the maintenance. After you closed #48, I tried a fresh Fedora 35 server and faced the issue in the title right after hitting "y" for install confirmation. OT: To be honest, when I create one purpose VM, or CT, I do not really care which OS is under the hood. CentOS, Fedora, Debian ... it does not matter for me :)

bviktor commented 2 years ago

Oh right, one sec and I'll fix it.

bviktor commented 2 years ago

Should be fixed by 3e12841e91f8153e18af3f34fc74c91235539b70

Please let me know how it goes.

git pull to update your copy.

triuk commented 2 years ago

Some warnings at the start: [WARNING]: Unable to parse /home/kf/killinuxfloor/hosts as an inventory source [WARNING]: No inventory was parsed, only implicit localhost is available [WARNING]: provided hosts list is empty, only localhost is available. Note that the implicit localhost does not match 'all' and it crashes on: TASK [install : Obtain SteamCMD] *********************************************** fatal: [127.0.0.1]: FAILED! => {"changed": false, "msg": "Aborting, target uses selinux but python bindings (libselinux-python) aren't installed!"}

bviktor commented 2 years ago

Ah thanks.

Please paste the output of

sestatus

and

cat /etc/os-release
triuk commented 2 years ago

[kf@fedora killinuxfloor]$ sestatus SELinux status: enabled SELinuxfs mount: /sys/fs/selinux SELinux root directory: /etc/selinux Loaded policy name: targeted Current mode: enforcing Mode from config file: enforcing Policy MLS status: enabled Policy deny_unknown status: allowed Memory protection checking: actual (secure) Max kernel policy version: 33 [kf@fedora killinuxfloor]$ cat /etc/os-release NAME="Fedora Linux" VERSION="35 (Thirty Five)" ID=fedora VERSION_ID=35 VERSION_CODENAME="" PLATFORM_ID="platform:f35" PRETTY_NAME="Fedora Linux 35 (Thirty Five)" ANSI_COLOR="0;38;2;60;110;180" LOGO=fedora-logo-icon CPE_NAME="cpe:/o:fedoraproject:fedora:35" HOME_URL="https://fedoraproject.org/" DOCUMENTATION_URL="https://docs.fedoraproject.org/en-US/fedora/f35/system-administrators-guide/" SUPPORT_URL="https://ask.fedoraproject.org/" BUG_REPORT_URL="https://bugzilla.redhat.com/" REDHAT_BUGZILLA_PRODUCT="Fedora" REDHAT_BUGZILLA_PRODUCT_VERSION=35 REDHAT_SUPPORT_PRODUCT="Fedora" REDHAT_SUPPORT_PRODUCT_VERSION=35 PRIVACY_POLICY_URL="https://fedoraproject.org/wiki/Legal:PrivacyPolicy"

bviktor commented 2 years ago

Thanks a lot. 3a32b078bb6f0b849fc4bd2e929998ca46a687cc and 99f05eda75b476643b757ae1421d57d286038019 should fix both. Could you please retry?

triuk commented 2 years ago

It fixed those Warnings, but the script still crashes on: TASK [install : Obtain SteamCMD] fatal: [127.0.0.1]: FAILED! => {"changed": false, "msg": "Aborting, target uses selinux but python bindings (libselinux-python) aren't installed!"} The libselinux-python is not in repository nor installed.

bviktor commented 2 years ago

Unfortunately I cannot reproduce this. I just did a fresh install on a brand new Fedora 35 VPS on Vultr. With SELinux enabled.

The error you're receiving doesn't make much sense TBH, since the SteamCMD part doesn't do anything SELinux-related. At least normally. Unless you explicitly prohibit downloads for users via SELinux or something, that is. That part simply downloads a tarball from the Internet.

The other possible explanation is a messed up Ansible installation from some weird source other than the official Fedora repos. Or a messed up Python installation.

Do you think any of those applies?

bviktor commented 2 years ago

Actually, I have an idea, brb.

bviktor commented 2 years ago

git pull, then one more try please!

triuk commented 2 years ago

I did a new fresh install and snapshot right after yum upgrade to have clean installation ready for tests. The crash is replaced by: TASK [install : Create folder for SELinux deployment script] *** fatal: [127.0.0.1]: FAILED! => {"changed": false, "gid": 0, "group": "root", "mode": "0755", "msg": "chown failed: failed to look up user steam", "owner": "root", "path": "/home/steam/selinux", "secontext": "unconfined_u:object_r:user_home_t:s0", "size": 6, "state": "directory", "uid": 0}

bviktor commented 2 years ago

:D well yeah. One more try please. We'll get there! I know.

triuk commented 2 years ago

The crash is moving further: TASK [install : Extract SteamCMD] ** [WARNING]: Unable to use /home/steam/.ansible/tmp as temporary directory, failing back to system: [Errno 13] Operation denied: '/home/steam/.ansible' changed: [127.0.0.1]

TASK [install : Add Steam to PATH] ***** fatal: [127.0.0.1]: FAILED! => {"changed": false, "msg": "Path /home/steam/.bashrc does not exist !", "rc": 257}

I have to go to sleep, another test in 16 hours :)

bviktor commented 2 years ago

Alright. I guess now it should work after restoring to snapshot.

triuk commented 2 years ago

Unfortunately: TASK [install : Install Killing Floor 2 Retail (be patient, 26 GB+)] *** fatal: [127.0.0.1]: FAILED! => {"changed": true, "cmd": ["/home/steam/Steam/steamcmd.sh", "+login", "anonymous", "+force_install_dir", "./KF2Server", "+app_update", "232130", "+exit"], "delta": "0:00:16.809795", "end": "2021-12-17 21:37:21.187440", "failed_when_result": true, "rc": 0, "start": "2021-12-17 21:37:04.377645", "stderr": "", "stderr_lines": [], "stdout": "WARNING: setlocale('en_US.UTF-8') failed, using locale: 'C'. International characters may not work.\nRedirecting stderr to '/home/steam/Steam/logs/stderr.txt'\n[ 0%] Checking for available updates...\n[----] Verifying installation...\nSteam Console Client (c) Valve Corporation - version 1639697740\n-- type 'quit' to exit --\nLoading Steam API...OK\n\nConnecting anonymously to Steam Public...OK\nWaiting for client config...OK\nWaiting for user info...OK\n\u001b[33;1mPlease use force_install_dir before logon!\n\u001b[0m Update state (0x3) reconfiguring, progress: 0.00 (0 / 0)\n Update state (0x3) reconfiguring, progress: 0.00 (0 / 0)\n Update state (0x5) verifying install, progress: 71.56 (19594485060 / 27381362015)\nError! App '232130' state is 0x202 after update job.", "stdout_lines": ["WARNING: setlocale('en_US.UTF-8') failed, using locale: 'C'. International characters may not work.", "Redirecting stderr to '/home/steam/Steam/logs/stderr.txt'", "[ 0%] Checking for available updates...", "[----] Verifying installation...", "Steam Console Client (c) Valve Corporation - version 1639697740", "-- type 'quit' to exit --", "Loading Steam API...OK", "", "Connecting anonymously to Steam Public...OK", "Waiting for client config...OK", "Waiting for user info...OK", "\u001b[33;1mPlease use force_install_dir before logon!", "\u001b[0m Update state (0x3) reconfiguring, progress: 0.00 (0 / 0)", " Update state (0x3) reconfiguring, progress: 0.00 (0 / 0)", " Update state (0x5) verifying install, progress: 71.56 (19594485060 / 27381362015)", "Error! App '232130' state is 0x202 after update job."]}

(I use cs_CZ.UTF-8 if this causes the problem?) I tried updating the "old" KF2 server, runs OK.

bviktor commented 2 years ago

https://github.com/GameServerManagers/LinuxGSM/issues/1656

Do you have enough disk space?

bviktor commented 2 years ago

As for the locale warning, please try installing langpacks-en first, and tell me if it eliminates that warning. But it shouldn't cause fatal errors I think.

triuk commented 2 years ago

The langpacks-en solved the warning. I suspected the disk space, but I am not sure, what is wrong. The VM is 60 GB, the KF2 allocation seems to be ~27.4 GB. I tried to restart server to get rid of possible not-discarded disk space after playing with 60GB VMs, but no effect.

lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS sda 8:0 0 60G 0 disk ├─sda1 8:1 0 1G 0 part /boot └─sda2 8:2 0 59G 0 part └─fedora_fedora-root 253:0 0 15G 0 lvm / zram0 252:0 0 3,8G 0 disk [SWAP]

I can try different setup, but it will take time. Or do you have any idea? :) EDIT: well, it is right above. I did not expect the installer not to use a whole disk. Sorry. Now I am at the patient part. Will see tomorrow morning.

bviktor commented 2 years ago

Alright, please let me know if it works with a bigger disk.

The warning is fixed via 5a897f5b9a876407129d9a5d305da84b51cac72e

triuk commented 2 years ago

PLAY RECAP ***** 127.0.0.1 : ok=59 changed=36 unreachable=0 failed=0 skipped=6 rescued=0 ignored=0 Success. Clean Fedora Server 35 minimal install. The steam installer takes a lot of RAM, I allocated 10 GB and it would still go higher :O I faced an error 0x402 which seems to be connected with comm to steam servers. So I ran the script again and all good. Mutators changed ID (they had to reupload them), I suggest change them in default My-Mutators file:

# Maxplayers Mutator
2143104493
# Classic Scoreboard
1132884083
# Display Damage
2625647922
bviktor commented 2 years ago

Indeed, updated my internal files already but forgot to do the same with the installer. Fixed in aab3e620b04c6c478ca1358e7b98b1d999c2f9de

Happy to see it succeeded. The 10G RAM usage is weird, I'm usually installing this on comps with 1-2G RAM with sucess.

In any case, can we close this ticket now?

triuk commented 2 years ago

It could install on 2 GB machines, I was just curious, how high that would go. When I create a server, it can eat up to 3-4 GB on some maps with lot of Zeds and players. I replaced this version over my old server and going to test it. And sure we can close this. Thank you!

bviktor commented 2 years ago

Thanks a lot for all the testing and feedback!