Using the Linux Game Server Manager script to install Valheim is convenient, though does lack some features, (and arguably does not implement the files in the most POSIX compliant way).
Install LGSM:
bash
curl -Lo linuxgsm.sh https://linuxgsm.sh && chmod +x linuxgsm.sh
Install Valheim Server:
bash
./linuxgsm.sh vhserver
For a simple server though, it's effective enough, with the caveat that crossplay probably will not work. A clue to this error, (other than the obvious that the game server can't be connected to), is in the log files:
05/19/2024 20:38:26: Sending PlayFab login request (attempt 1)
05/19/2024 20:38:26: Login postponed until ID has been set.
Fallback handler could not load library /home/vm-user/serverfiles/valheim_server_Data/MonoBleedingEdge/x86_64/party
Fallback handler could not load library /home/vm-user/serverfiles/valheim_server_Data/MonoBleedingEdge/x86_64/libparty.so
Fallback handler could not load library /home/vm-user/serverfiles/valheim_server_Data/MonoBleedingEdge/x86_64/libparty.so
Fallback handler could not load library /home/vm-user/serverfiles/valheim_server_Data/MonoBleedingEdge/x86_64/party
Fallback handler could not load library /home/vm-user/serverfiles/valheim_server_Data/MonoBleedingEdge/x86_64/libparty
Fallback handler could not load library /home/vm-user/serverfiles/valheim_server_Data/MonoBleedingEdge/x86_64/libparty.so
Fallback handler could not load library /home/vm-user/serverfiles/valheim_server_Data/MonoBleedingEdge/x86_64/libparty.so
Fallback handler could not load library /home/vm-user/serverfiles/valheim_server_Data/MonoBleedingEdge/x86_64/libparty
Fallback handler could not load library /home/vm-user/serverfiles/valheim_server_Data/MonoBleedingEdge/x86_64/party
Fallback handler could not load library /home/vm-user/serverfiles/valheim_server_Data/MonoBleedingEdge/x86_64/libparty.so
Fallback handler could not load library /home/vm-user/serverfiles/valheim_server_Data/MonoBleedingEdge/x86_64/libparty.so
Fallback handler could not load library /home/vm-user/serverfiles/valheim_server_Data/MonoBleedingEdge/x86_64/party
Fallback handler could not load library /home/vm-user/serverfiles/valheim_server_Data/MonoBleedingEdge/x86_64/libparty
Fallback handler could not load library /home/vm-user/serverfiles/valheim_server_Data/MonoBleedingEdge/x86_64/libparty.so
Fallback handler could not load library /home/vm-user/serverfiles/valheim_server_Data/MonoBleedingEdge/x86_64/libparty.so
Fallback handler could not load library /home/vm-user/serverfiles/valheim_server_Data/MonoBleedingEdge/x86_64/libparty
05/19/2024 20:38:26: DLL Not Found: This error usually occurs when you do not have the correct dependencies installed, and will prevent crossplay from working. The dependencies are different depending on which platform you play on.
Using the guide posted by Not Mr Flibble however, you can see if dependencies are missing.
```bash ldd serverfiles/valheim_server_Data/Plugins/libparty.so 2>/dev/null | grep 'not found'
libatomic.so.1 => not found
libpulse.so.0 => not found
libpulse-simple.so.0 => not found
libpulse-mainloop-glib.so.0 => not found
```
In this output, the dependencies atomic
, pulse
, and pulse-mainloop-glib
are missing.
The following script will install the dependencies and allowed me to run the server.
bash
sudo apt install libatomic1 libpulse0 libpulse-mainloop-glib0