Die Starbound Linux Beta Client-Version liefert ein Server-Startscript mit. Sehr simpel gehalten, wird im Verlauf der Beta sicherlich optimiert. Wir halten unsere Anleitung up-2-date.
Starbound dedicated Linux Server Setup
Basierend auf Debian 7 Wheezy, mit sudo aber auch für alle Ubuntu Server Versionen.
1.) Wir legen ein neuer User an für dein Server:
adduser starbound-server
2.) Download SteamCMD.sh als User starbound-server, entpacken
su - starbound-server wget http://media.steampowered.com/client/steamcmd_linux.tar.gz tar xvzf steamcmd_linux.tar.gz
3.) Login mit Steam User + Passwort, Download Starbound Client (App ID 211820). Bei Problemen solltest du ins offizielle Valve SteamCMD Wiki schauen.
./steamcmd.sh login username passwort app_update 211820 STRG+C
4.) Server starten (64Bit Linux Server)
chmod +x ./Steam/SteamApps/common/Starbound/linux64/starbound_server ./Steam/SteamApps/common/Starbound/linux64/starbound_server
Du hast ein 32Bit Server? Dann das Script in Folder /linux32/ benutzen.
Der Server startet mit Port 21025.
Fertig.
Server updaten, Server Passwort, Server Port, Player Limit
Zeile „MaxPlayers“ deine Wunschzahl eintragen, danach Server restarten:
„authHostname“ : „auth.playstarbound.com“,
„bind“ : „*“,
„maxPlayers“ : 8,
„gamePort“ : 21025,
„serverName“ : „Mein eigener Server Name“,
„controlPort“ : 21026,
„authPort“ : 21027,
„upnpPortForwarding“ : true,
„claimFile“ : „indev.claim“,
„attemptAuthentication“ : false,
„username“ : „“,
„passwordHash“ : „“,
„windowTitle“ : „Starbound – Beta“,
„vsync“ : true,
„renderSleep“ : true,
„renderPriority“ : true,
„waitForUpdate“ : true,
„renderPreSleepRemainder“ : 4,
„maxFrameskip“ : 10,
„sampleRate“ : 44100,
„audioChannels“ : 2,
„audioChannelSeparation“ : [-25, 25],
„pixelRatioIdx“ : 3,
„tileDamageLimit“ : 49,
„clearUniverseFiles“ : false,
„clearPlayerFiles“ : false,
„checkAssetsDigest“ : false,
„serverPasswords“ : [
„“,
„duckies“,
„swordfish“
],
„bcryptRounds“ : 5000,
„useDefaultWorldCoordinate“ : false,
„defaultWorldCoordinate“ : „alpha:-84936662:-62554636:-13754701:6:12“,
„allowAdminCommands“ : true,
„allowAdminCommandsFromAnyone“ : true,
„sfxVol“ : 100,
„musicVol“ : 100,
„windowedResolution“ : [1000, 600],
„maximizedResolution“ : [1000, 600],
„fullscreenResolution“ : [1920, 1080],
„fullscreen“ : false,
„maximized“ : true,
„zoomLevel“ : 3.0,
„speechBubbles“ : true,
./steamcmd.sh login username passwort app_update 211820 validate STRG+C
#Server wieder starten
Weiterführende Doku siehe SteamCMD Wiki
./Steam/SteamApps/common/Starbound/assets/default_configuration.config
„serverPasswords“ : [
„Passwort1“,
„Passwort2“,
„Passwort3“
],
./Steam/SteamApps/common/Starbound/assets/default_configuration.config
geändert werden.
Server im Hintergrund, Server Autostart
Jap, problemlos mit tmux (praktischer als screen).
Hier unsere Anleitung: Anleitung: (Game-)Server im Hintergrund laufen lassen [tmux]
Ja, ungetestet, via http://community.playstarbound.com/index.php?threads/dedicated-linux-server.35351/
Bekannte Fehlermeldungen, Lösungen
error while loading shared libraries: libvorbisfile.so.3: cannot open shared object file: No such file or directory
Lösung:
apt-get install libvorbisfile3 libvorbis0a libvorbisenc2
dpkg –add-architecture i386
apt-get update
apt-get install ia32-libs
Das funktioniert nicht mit Debian oldstable Squeeze 6!
Um Nerven zu schonen solltest du schnell auf Debian 7 Wheezy upgraden.
Serverfiles sind korrupt nach Patchen und/oder Port 21025 ist blockiert.
1.) Serverfiles validiern, korrupte Files automatisch reparieren lassen:
./steamcmd.sh login username passwort app_update 211820 validate
2. Sicherstellen, dass kein Prozess den Port 21025 blockiert. Als Root (nicht als User starbound-server) prüfen:
lsof -i TCP:21025
Keine Antwort bedeutet, der Port ist frei = Sehr gut.
Falls eine TCP Verbindung angezeigt wird ist der Port blockiert. Du musst du die angezeigte PID mit „kill -9 <PID-NUMMER>“ killen.
Die Fehlermeldung ist schrott, will aber zu 90% aussagen: Client + Server haben nicht dieselbe Version. I.d.R. muss Eins der Beiden gepatcht werden.
Hi habs die anleitung genau befolgt nur kommt beim starten dieser fehler:
./Steam/SteamApps/common/Starbound/linux64/starbound_server: error while loading shared libraries: libvorbisfile.so.3: cannot open shared object file: No such file or directory
ich hatte das gleiche problem.
da du im linux64 verzeichnis unterwegs bist, denke ich du hast nen 64iger. da fehlen vielleicht ne menge libs da nur 32iger möglich ist….. ich hatte irgendwo in nem forum nen install packet gefunden, das installiert und dann gings. vielleicht langt dir das als hinweis genauer danach zu googlen
Die sauberste Lösung scheint, die 64bit packages zu von libvorbis zu installieren.
apt-get install libvorbisfile3 libvorbis0a libvorbisenc2
Klappt es damit bereits?
Ansonsten lohnt es sich für Gameserver generell, die 32bit Architektur hinzufügen da oft noch 32Bit libs je nach dem nötig sind:
dpkg –add-architecture i386
apt-get update
apt-get install ia32-libs
hey, erstmal vielen dank für diese anleitung.
ich habe das genutzt um einen server via SSH auf meinem webserver zu starten, so das ich und meine freunde drauf spielen können 🙂
jedoch kann ich mich selbst nun nichtmehr in steam (desktop) einloggen, weil ich eben schon auf dem server eingeloggt bin.
was soll der quatsch? =) weis da jemand rat?
Hi annika, aller höchstwahrscheinlich läuft dein ./steamcmd.sh script noch in eingeloggten Zustand.
Falls du nicht mehr weisst wo es geöffnet ist kannst du als root danach suchen: „ps -ef | grep -i steamcmd“ danach die angezeigte PID zu diesem ./steamcmd Prozess mit „kill -9 PID-NUMMER“ abschiessen. Damit bist du auf dem Server wieder ausgeloggt und dein Steam @Desktop darf sich wieder einloggen.
Ist der Server eigentlich persistent, d.h. ist die Welt nach einem Neustart noch vorhanden? Gibt es für den Server irgendwo schon eine Doku?
Gibt es einen „harten Weg“ für Debian 6? Ich habe einen entsprechenden Webserver und kann diesen im Moment leider nicht upgraden. Von mir aus Update ich die Spieldateien auch selbst.
Super Anleitung!!!
@nepo ja, die Serverwelt ist persistent und speichert automatisch. Leider gibts noch keine Server Doku, meine Anlaufstelle ist die Reddit Gruppe http://www.reddit.com/r/starboundservers und das offizielle offizielle Serverforum http://community.playstarbound.com/index.php?forums/public-servers-server-help.102/
@Marc dürfte möglich sein, es fehlt aber libssl1.0.0 im Squeeze Repository. Ich kann dir leider auf Anhieb keine Anleitung geben, selbst kompilieren müsste aber funktionieren. Trotzdem nicht zu empfehlen, spätestens als ich wine32Bit 1.6 unter Squeeze 64Bit kompilieren wollte hört der Spass auf.. (fehlendes Multiarch –add-architecture und veraltetes Repository).
Bei Ubuntu 64-Bit muss man noch lib32gcc1 installieren, dann klappt SteamCMD.
Dankeschön! 🙂
Hallo nochmal 🙂
Danke erstmal für die schnelle Hilfe.
Leider kommt jetzt dieser Fehler:
./Steam/SteamApps/common/Starbound/linux64/starbound_server: error while loading shared libraries: libssl.so.1.0.0: cannot open shared object file: No such file or directory
REDDE4D nutzt du Debian Squeeze 64 Bit? Sagen wir es mal so: Mit viel Ach-und-Krach funktioniert es schon, habe es gerade in einer VM mit Debian 6.0.8 getestet, doch es ist ein gebastel und kann u.U. dein Server bis zum unbrauchbar schrotten + es lohnt sich in jedem Fall eher auf Debian Wheezy 7 zu wechseln. Falls du das Risiko wirklich eingehst, kannst du ./Steam/SteamApps/common/Starbound/linux64/libssl1.so.1.0.0 nach /usr/lib/ kopieren (oder Symlink) und /etc/apt/sources.list das Wort squeeze mit wheezy ersetzen und mit apt-get update && apt-get install gcc , die neue Version von libc6 installieren, welche gcc als abhängigkeit auch mitbringt. Sobald der Server einmal erfolgreich gestartet werden konnte, die /etc/apt/sources.list wieder auf squeeze zurücksetzen. Aber ich empfehle es niemals! Lieber auf Wheezy migrieren. Wie gesagt, es spart Unmengen an Nerven.
Ich mag Debian sehr, Squeeze ist für Webserver sehr stabil aber für Gameserver einfach nicht mehr Zeitgemäss.
@REDE4D, @elysium:
Ich habe einen root Server bei Strato und mein Server lief auch noch auf Debian 6 nachdem ich dann einige Probleme mit Starbonnd hatte habe ich ihn auch auf 7 geupgradet. Hätte auch eine Neuinstallation beauftragen können auf 7, aber das war mir zu umständlich, hätte dann alles neu installieren müssen.
Upgrade auf 7 klappte aber soweit ohne Probleme, musste nur das Dovecot neu einrichten, weil dort die Konfigurationsstruktur komplett geändert wurde.
Das Debian ist aber eine 32-Bit Version. Nach dem Upgrade läuft auch Starbound einwandfrei.
Vielleicht wäre ein Upgrade eines bestehenden Systems auch eine schöne Anleitung für diese Seite 🙂
Servus nochmal hab den Server jetzt mit Debian Wheezy 7 neuinstalliert aber es kommt immernoch bei
64bit:
./Steam/SteamApps/common/Starbound/linux64/starbound_server: No such file or directory
32bit:
./Steam/SteamApps/common/Starbound/linux32/starbound_server: error while loading shared libraries: libfreetype.so.6: cannot open shared object file: No such file or directory
Hi, danke für die schöne Anleitung,
bei mir gibt Steam eine minimale Downloadrate her, bei der geschwindigkeit dauert es Jahre, kann es an Port einstellungen liegen?
Habe einen Dedi #. Linux Server
@REDDE4D hast du ein 32Bit Wheezy? libfreetype kannst du mit apt-get install libfreetype6 installieren. Falls du ein 64Bit Wheezy nutzt, versuche anhand des aufklappbaren Punktes oben „32Bit Libraries auf 64Bit Debian 7“ dein Wheezy 64Bit mit den nötigen 32Bit libs auszustatten. Klappts damit?
@Joego i.d.R. hat SteamCMD keine Begrenzung, aber sehr wohl in letzter Zeit etwas Probleme mit dem Speed. Wenn mal keine Probleme bestehen bei Valves Downloadservern sind 200Mbit+ Durchsatz aber ganz normal.
[…] HowTo: Starbound Linux dedicated Server erstellen […]