Willkommen Gast ( Login | Registrieren )
|
Software besorgenDie Software ist frei verfügbar und unterliegt den jeweiligen Lizenzbestimmungen, die es zu beachten gilt! Wir führen die gesamte Installation im root-Kontext durch, da einige Einstellungen am System zwischendurch gemacht werden wollen. Erstelle zunächst ein neuen Verzeichnis im Homeverzeichnis und wechsele dorthin: cd ~ mkdir download cd download BF2CCDas Remotecontrol Tool für den BF2 Server unserer Wahl ist der BF2CC. Aus der Downloadsection laden wir uns die aktuelle Realease herunter: wget http://www.bf2cc.com/Downloads/BF2CCD_1.4.2446.zip und entpacken das Archiv in ein neues Unterverzeichnis bf2cc unzip BF2CCD_1.4.2446.zip -d bf2cc BF2CC ist eine .NET Framework Applikation, welches seinen Ursprung im Windowsumfeld hat. Es gibt jedoch eine Umsetzung des Frameworks unter Linux, das Mono Project. Dort in der Downloadsection gibt es für die meisten Distributionen passende Pakete. Es hat sich herausgestellt, daß die neuesten Versionen nicht sauber mit dem BF2CC laufen. Als beste Mono-Version hat sich die 1.1.10 erwiesen. Für eine Suse 9.3 x86 und Mono 1.1.10 wären das also mkdir mono cd mono wget http://go-mono.com/download/x86/mono-1.1/1.1.10-2/mono-core-1.1.10-2.novell.i586.rpm wget http://go-mono.com/download/x86/mono-1.1/1.1.10-2/mono-data-1.1.10-2.novell.i586.rpm wget http://go-mono.com/download/x86/mono-1.1/1.1.10-2/mono-web-1.1.10-2.novell.i586.rpm Diese Pakete installieren wir auch gleich mit rpm -i mono-*.rpm Probleme sollten dabei nicht auftreten. Wenn doch, hätte ich gerne eine Info dazu. So. Nun haben wir alle Kleinigkeiten beisammen, um den BF2 Server selbst zu installieren. Der GameserverEinen User, in dessen Kontext der Gameserver aus SIcherheitsgründen laufen sollte, legen wir mit useradd -m -k /dev/null bf2srv an. Statt bf2srv kann natürlich jeder andere (zulässige) Username genommen werden. Er benötigt keine weiteren Rechte, nur eine Shell (und die hat er nach dem obigen Befehl). Ein Paßwort braucht er nur, wenn man sich direkt mit dem User per ssh anmelden möchte. Beim Umweg über su als root ist es unnötig. Die jeweiligen Releases liegen bei direkt bei EA. Die Filenamen beginnen mit bf2-linuxded- und daran schliesst sich die Versionsnummer an. Unsere aktuelle (Stand: 01.09.2009) Version ist [1], was der Version 1.50 entspricht, die wir jetzt herunterladen und am besten per FTP auf den Server kopieren. Es liegt bereits der eigentliche Installer vor uns, den wir noch schnell ausführbar machen und auch gleich an die Arbeit schicken: chmod 744 bf2-linuxded-1.5.3153.0-installer.sh ./bf2-linuxded-1.5.3153.0-installer.sh Er meldet sich nach kurzem Dekomprimieren mit Press return to continue., was wir dann auch machen. Mit ein paarmal Space oder direkt q geht es dann nach Studie des Lizenzvertrages *hust* weiter, indem wir accept+Enter eintippen. Ein weiteres Enter zeigt den Punkbuster Lizenzvertrag. Wieder mehrfach Space oder q und den Vertrag mit yes+Enter bestätigen. Enter your target installation directory: will nun wissen, wohin der Server installiert werden soll. Es bietet sich natürlich das Homeverzeichnis des Users an, unter dem der Server nachher laufen soll. Also geben wir /home/bf2srv (analog zu dem oben erstellten User) +Enter ein. In diesem Verzeichnis erstellt der Installer nun das Verzeichnis bf2 und installiert darin das Servergerüst. Ist der Installer fertig, kopieren wir noch die BF2CC Dateien hinein. cp bf2cc/* /home/bf2srv und entpacken die Modmanager Scripts mit cd /home/bf2srv unzip modmanager-v1.2.zip rm modmanager-v1.2.zip Um die benötigten Symlinks automatisch anlegen zu lassen, starten wir den Gameserver nun einmal ganz kurz: cd /home/bf2srv/bf2 ./start.sh Sobald die Statusoberfläche des Gameservers erscheint und die Ladeanzeige in Prozenten läuft, brechen wir ihn mit Strg-C gleich wieder ab. Der entsprechende Link für die Punkbuster-Binaries ist nun erstellt und wir wissen, daß die benötigten Libraries im Zugriff sind. Kommen beim Start Fehlermeldungen, sind diese zunächst mit Hilfe der FAQ und/oder dem BF-Games.net Forum zu lösen. Punkbuster aktualisierenDer Punkbuster sollte sich normalerweise automatisch im Hintergrund aktualisieren, wenn der BF2 Server läuft. Das funktioniert i.d.R. ganz gut, nur bei einer Neuinstallation habe ich schlechte Erfahrungen gemacht. Wenn sich der Punkbuster nicht erstmalig richtig initialisiert und aktualisiert, fliegen die Spieler gleich wieder vom Server. Dafür hat Evenbalance ein feines Tool geschrieben, welches aktuell aber nur noch in einer Version angeboten wird, die eine X-Oberfläche benötigt ... und wer hat die schon auf einem Rootserver ? Die Vorgängerversion habe ich hier im Angebot, die läuft in der Kommandozeile. cd pb wget http://www.alfa-freaks.de/files/pbweb.x86 chmod 744 pbweb.x86 ./pbweb.x86 Das dauert nun ein paar Minuten, und am Ende sollte - wenn keine Fehler auftreten - eine topaktuelle und vollständige Punkbusterversion auf dem Server liegen. StartskriptEs gib verschiedene Möglichkeiten, einen Prozeß oder Dienst beim Hochfahren eines Linuxservers zu starten. Wir gehen davon aus, daß der BF2 Gameserver sofort nach einem Reboot des Servers ohne weiteres Eingreifen wieder starten soll. Das eleganteste und sauberste Verfahren dafür ist, den BF2-Server in das Runlevelkonzept einzubinden. Ich will nicht allzu tief darauf eingehen, nur das Wichtigste sei erwähnt. Bei SuSE liegen im Verzeichnis /etc/init.d eine Reihe von Skripten, die mit dem entprechenden Parameter (start, stop, reload, u.a.) den zugehörigen Dienst starten, stoppen, oder dessen Konfiguration neu einlesen. Mit dem Befehl chkconfig -a kann man ein neues Skript automatisch in die gewünschten Runlevel integrieren. Dieses Skript biete ich hier zum Download an. cd /etc/init.d wget http://www.alfa-freaks.de/files/bf2-server chmod 744 bf2-server chkconfig -a bf2-server Wenn der BF2 nicht unter dem hier verwendeten User bf2srv in dessen Homeverzeichnis installiert ist, müssen die entprechenden Variablen im Skript bf2-server angepasst werden. Dieses Startskript ruft ein weiteres Skript auf, das den BF2CCD unter Mono startet. Dieses muß im BF2 Installationsverzeichnis angelegt werden: cd /home/bf2srv/bf2 wget http://www.alfa-freaks.de/files/startdaemon.sh chmod 744 startdaemon.sh Möchte man als Admin des Rootservers verhindern, daß übereifrige Admins auf dem Gameserver über den BF2CCD unerwünschte Änderungen machen, kann man dies von vorneherein verhindern, indem diese Parameter in der startdaemon.sh hinter mono bf2ccd.exe eingefügt werden:
AbschlußDa wir die Installationsarbeiten als root gemacht haben, der Server aber später als User bf2srv laufen soll, müssen wir die Rechte an den Verzeichnissen und Dateien noch übergeben: cd /home/bf2srv chown -R bf2srv:users bf2 KonfigurationNachdem nun die gesamte benötigte Software versammelt ist, machen wir uns an die Konfiguration. BF2CCD konfigurierenDer BF2CCD benötigt ein wenig Installationsarbeit. Die Anleitung vom Autor gibt es hier Zunächst muß die Konfigurationsdatei der Modmanager Scripts bearbeitet werden. vi /home/bf2srv/bf2/mods/bf2/settings/modmanager.con Anzupassen sind ab Zeile 86 die Werte mm_rcon.rconIp "0.0.0.0" mm_rcon.rconPassword "mein-pw" mm_rcon.rconPort 6711 Für den Anfang sind die Werte OK, man kann die 0.0.0.0 (bedeutet: lausche auf allen IPs) durch die öffentliche IP des Servers ersetzen und ggf. auch den RCON Port ändern. Jede Instanz eines BF2 Servers auf dem Rootserver benötigt einen eigenen Port auf der IP des Servers, nicht aber, wie in der Readme angegeben, eine eigene IP. Das Paßwort sollte man aus Sicherheitsgründen kryptisch wählen, denn man wird nicht in den Genuß kommen, es von Hand irgendwo einzugeben. Nun muß der BF2CCD einmal gestartet werden, damit er seine Konfigurationsdateien im XML-Format anlegt. mono bf2ccd Da keine Konfiguration gefunden wird, kommt automatisch der Konfigurationsdialog. Dieser fragt die folgenden Punkte ab:
BF2 Server konfigurierenDie vermutlich einfachste Methode ist die Konfiguration via BF2CCD. Nachdem der Daemon gestartet ist, verbindet man sich mit dem passenden (gleiche Versionsnummer!) Client darauf, logt sich als Admin mit dem wenige Zeile weiter oben vergebenen Admin Passwort ein, und stellt alle Parameter nach persönlichem Gusto ein, speichert die Einstellungen als default-Profil, und startet die Büxe. Fertig.
|
| Diese Seite wurde zuletzt am 16. Dezember 2009 um 07:11 Uhr geändert. Diese Seite wurde bisher 4.475-mal abgerufen. Impressum |