Derzeit ist nur eine Windows-Version des V Rising Servers verfügbar. Es ist jedoch möglich, den Server mit Wine auf einem Linux-System zu betreiben.
Einführung und Voraussetzungen
Kurz nachdem ich dieses Spiel gekauft und eine Weile im Singleplayer rumgespielt hatte, wollte ich mit Freunden zusammen spielen. Und da ich bereits einen VPS (mit installiertem CentOS) zur Verfügung hatte, dachte ich, warum nicht den verwenden. Also habe ich die offizielle Anleitung gelesen und herausgefunden, dass es nur eine ausführbare Server-Datei für Windows gibt. Ich erinnerte mich an andere Anleitungen, die ich gesehen hatte und die zeigten, wie man Wein benutzt, um ausführbare Windows-Dateien auszuführen, und ich beschloss, es mit diesem Spiel zu versuchen, und es funktionierte. Hier ist also meine Anleitung, wie es geht. Wie zuvor und im Titel gesagt, habe ich dies auf einem CentOS-System getan, aber ich denke, diese Lösung würde im Prinzip auch auf anderen Linux-Distributionen funktionieren.
Ich habe versucht, diese Anleitung für jeden leicht verständlich zu machen. Das einzige, was Sie wissen müssen, ist, wie man das Terminal benutzt und wie man Dateien bearbeitet. CentOS wird mit vi als Texteditor geliefert, der verwendet werden kann, um dieser Anleitung zu folgen, aber eine Erklärung zur Verwendung von vi ist nicht Teil dieser Anleitung.
In dieser Anleitung beginnen Befehle mit $, # oder >. Befehle, die mit # beginnen, müssen ausgeführt werden, wenn Sie als root angemeldet sind oder sudo verwenden. Befehle mit $ können von einem normalen Benutzer ausgeführt werden und Befehle mit > sind Befehle für den steamcmd. $, #, > sind nicht Teil der eigentlichen Befehle.
Voraussetzungen:
Um den Server zu betreiben, benötigen wir wine und xvfb. Wine wird verwendet, um ausführbare Windows-Dateien auf LInux auszuführen, und wir werden xvfb verwenden, um einen virtuellen Monitor zu erstellen, sodass wir keinen tatsächlichen Monitor an den Server anschließen müssen.
Wir benötigen auch die steamcmd, um die Serverdateien herunterzuladen und zu aktualisieren. Installieren Sie die steamcmd-Anforderungen mit:
# yum installiere glibc.i686 libstdc++.i686 -y
Der einfachste Weg, Wine zu installieren, ist die Verwendung des EPEL-Repositorys, also fügen wir es wie folgt hinzu:
# yum installiere epel-release -y
Dann um wine und xvfb zu installieren:
# yum install wine -y # yum install xorg-x11-server-Xvfb -y
steamcmd installieren
Bevor wir steamcmd oder den Server installieren, sollten wir einen Benutzer erstellen, mit dem wir steamcmd und später den Spielserver selbst ausführen. Die Verwendung des Root-Benutzers für steamcmd oder den Gameserver ist ein Sicherheitsrisiko. Ich nenne diesen Benutzer Steam, aber Sie können einen beliebigen Namen wählen.
Erstellen Sie den Benutzer und melden Sie sich als dieser neue Benutzer an:
# useradd steam # su steam
Wir wechseln dann in das Home-Verzeichnis des neuen Benutzers und erstellen ein Verzeichnis, in dem wir die steamcmd installieren, und ein weiteres Verzeichnis für den Spieleserver:
$ cd $ mkdir steamcmd $ cd steamcmd $ mkdir VRising
Jetzt laden wir die steamcmd herunter und extrahieren sie:
$ curl -sqL "https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz" | tar zxvf -
Installation des Gameservers
Wir starten den steamcmd mit dem Skript, das im vorherigen Schritt extrahiert wurde:
$ ./steamcmd.sh
Der erste Start von steamcmd wird einige Zeit in Anspruch nehmen und Updates herunterladen. Nachdem die Aktualisierung abgeschlossen ist, können wir die steamcmd verwenden und als ersten Schritt geben wir das zuvor erstellte Verzeichnis als Installationsverzeichnis für das Spiel an:
> force_install_dir VRising
Bevor wir die Serverdateien herunterladen, müssen wir uns bei Steam anmelden, aber wir können die anonyme Anmeldung verwenden:
> Anonym einloggen
Die App-ID für den V Rising-Server lautet 1829350, sodass wir den Server wie folgt installieren können:
> app_update 1829350
Nachdem der Server installiert wurde, geben Sie ein
> beenden
um die steamcmd zu beenden.
Ausführen und Konfigurieren des Spielservers
Wechseln Sie in das Verzeichnis, in dem wir den Server installiert haben:
$ cd VRising
Und dann starten Sie den Server wie folgt:
$ export WINEARCH=win64 $ xvfb-run --auto-servernum --server-args='-screen 0 640x480x24:32' wine VRisingServer.exe -persistentDataPath ./save-data -logFile server.log
Dadurch wird der Server gestartet und das Savegame in dem Verzeichnis erstellt, das wir im vorherigen Befehl als persistenten Datenpfad angegeben haben, in diesem Fall im Save-Data-Ordner.
Warten Sie etwas und schließen Sie den Server dann wieder, indem Sie Strg-C drücken.
Konfiguration
Erstellen Sie den Settings-Ordner im Save-Data-Verzeichnis:
$ mkdir save-data/Settings
Jetzt kopieren wir die Standardeinstellungen in dieses neue Verzeichnis:
$ cp VRisingServer_Data/StreamingAssets/Settings/*.json save-data/Settings
Der Settings-Ordner enthält jetzt zwei Konfigurationsdateien, ServerHostSettings.json für die Host-Konfiguration wie Servername, Passwort, Ports usw. und ServerGametSettings.json für Spieleinstellungen wie Crafting-Raten, Schadensmultiplikatoren usw.
Sie können Ihren bevorzugten Texteditor verwenden, um die Einstellungen in diesen Dateien zu bearbeiten.
Verwenden von systemd zur Steuerung des Servers
Wir könnten jetzt den Befehl verwenden, den wir zuvor verwendet haben, um den Server zu starten, aber dies würde erfordern, dass wir das Terminal, das wir verwenden, immer offen halten, um den Server am Laufen zu halten. Stattdessen werden wir systemd konfigurieren, um den Server als Dienst zu konfigurieren, der im Hintergrund ausgeführt wird.
Um die Dinge einfacher zu machen, erstellen wir zuerst ein Shell-Skript, um den Server zu starten. Erstellen Sie mit einem Texteditor Ihrer Wahl eine neue Datei mit folgendem Inhalt:
#!/bin/bash export WINEARCH=win64 /usr/bin/xvfb-run --auto-servernum --server-args='-screen 0 640x480x24:32' /usr/bin/wine VRisingServer.exe -persistentDataPath server1_saves/ -logDatei server.log
Speichern Sie die Datei als run_server.sh im Verzeichnis des Spielservers. Machen Sie die Datei mit diesem Befehl zu einer ausführbaren Datei:
$ chmod ug+x run_server.sh
Das ist alles, was wir als Steam-Benutzer tun müssen. Wir können jetzt mit zu einem Benutzer mit Root-Rechten zurückwechseln
$ beenden
Erstellen Sie eine neue Datei für den systemd-Dienst mit folgendem Inhalt:
[Unit] After=network.target [Service] User=steam Group=steam WorkingDirectory=/home/steam/steamcmd/VRising ExecStart=/home/steam/steamcmd/VRising/run_server.sh [Install] WantedBy=multi-user. Ziel
und speichere die Datei als
/etc/systemd/system/VRising.service
Wir können jetzt systemctl verwenden, um den Server zu starten und zu stoppen. Um den Server zu starten, verwenden Sie:
# systemctl VRising starten
Wenn wir den Server stoppen wollen, können wir Folgendes verwenden:
# systemctl VRising stoppen
Wir können auch überprüfen, ob der Prozess noch läuft:
# Systemctl-Status VRising
Beachten Sie, dass, wenn der Server abstürzt, dies möglicherweise immer noch anzeigt, dass der Prozess aktiv ist, da nur der Serverprozess abgestürzt ist, Wine jedoch noch ausgeführt wird.
Firewall konfigurieren
Nachdem wir den Server nun mit systemd zum Laufen gebracht haben, müssen wir nur noch die Firewall konfigurieren.
Sofern Sie dies nicht in ServerHostSettings.json geändert haben, verwendet das Spiel die UDP-Ports 9876 und 9877.
Fügen Sie der Firewall Regeln für diese beiden Ports hinzu:
# Firewall-cmd --add-port=9876/udp # Firewall-cmd --add-port=9877/udp
Dann behalten wir die neuen Regeln bei, damit der Port auch nach einem Neustart offen bleibt, und laden die Firewall neu:
# firewall-cmd --runtime-to-permanent # firewall-cmd --reload
Spiel aktualisieren
Die Aktualisierung ist einfach. Fahren Sie zuerst den Server herunter und melden Sie sich wie bei der Installation des Spiels bei dem Benutzer an, den wir für die steamcmd erstellt haben, und starten Sie die steamcmd:
# systemctl stop VRising # su steam $ cd ~/steamcmd $. ./steamcmd
Melden Sie sich bei einem anonymen Steam-Profil an, aktualisieren Sie das Spiel, warten Sie, bis das Update abgeschlossen ist, und schließen Sie steamcmd:
> anonym anmelden > app_update 1829350 > beenden
Das Spiel ist nun aktualisiert und wir können den Server neu starten.
# systemctl VRising starten
Das ist alles, was wir heute dafür teilen V Rising führen. Dieses Handbuch wurde ursprünglich erstellt und geschrieben von Schiranai. Falls wir dieses Handbuch nicht aktualisieren, finden Sie das neueste Update, indem Sie diesen folgen Link.
Boa tarde, mein Freund!
Welche Serie gehört zur Version Ihres CentOS?
Ich habe ein Problem beim Ausführen des Systemctl start VRising.service, es gibt Fehler 127 aus https://imgur.com/a/C5XrETN
Du musst die Zeilen trennen
z.B
Hilft nicht, ich habe immer noch das gleiche Problem.
Reicht es aus, wenn Sie auf EC 2 Free Tier laufen, das 1 GB Arbeitsspeicher ist?
1 Kern – 2 Prozesse – 1 GB Speicher
4 Spieler beginnt zu laggen, dieser Container kann zum Testen verwendet werden… nicht für einen Multiplayer-Server