.callofduty2 (Pfad in anderes Verzeichnis umleiten)

|PDW|TheWulf
Guten Abend,

Hat zufällig jemand Erfahung mit der Verzeichnisstruktur? Wenn ich etwa mein spiel in /home/cod2 habe, und den basepath und homepath auf /home/cod2 stelle, erstellt er einfach einen ordner Namens .callofduty2 in dem Ordner. Dabei möchte ich unbedingt die ban.txt in der /home/cod2/main haben und nicht in der /home/cod2/.callofduty2/main. Zudem erstellt er auch noch einen pb ordner dort. Dabei gibt es schon in dem /home/cod2 ordner ein main und ein pb ordner. Die sollen sich aber überschneiden.

Irgendjemand erfahrung damit?


Für eine gute Antwort wäre ich sehr Dankbar ;D

Gz,
Wulf
Kelli
Der .callofduty2 wird immer im homeverzeichnis des Benutzers erzeugt, das kannst du nicht ändern.
Du kannst aber das gewünschte Ergebnis erzielen, nur sollte main dann nicht direkt unter /home/cod2 liegen.

Erstelle / kopiere deine Dateien nach
/home/cod2/server/main
dann das Versteckte verzeichnis .callofduty2 löschen
rmdir /home/cod2/.callofduty2
Einen symlink anlegen
ln -s /home/cod2/server /home/cod2/.callofduty2

Ab sofort wird alles was nach /home/cod2/.callofduty2 geschrieben wird nach /home/cod2/server "umgeleitet"
|PDW|TheWulf
Hi,

wie kann ich das in meine commandzeile einbauen?

./cod2_lnxded +set dedicated 2 +exec settings.cfg +set fs_basepath /srv/CoD2/1.2/CTF/ +fs_homepath /srv/CoD2/1.2/CTF/ -s /srv/CoD2/1.2/CTF/ /srv/CoD2/1.2/CTF/.callofduty2

Oder wie ist das gemeint?

Gz,
Wulf
wgs./w@Lly
Hm, der Homepath und Basepath Pfad sollte dorthin zeigen, wo dein Main-Ordner ist. In welchem Verzeichnis liegt dieser? Außerdem steht dort normalerweise /home/ nicht /srv/.

Außerdem können Großbuchstaben unter Linux Schwierigkeiten machen, ich würde die Ordner alle nur mit Kleinbuchstaben schreiben.

@Kellerkind,
wenn der Homepath auch in das Verzeichnis des Basepath's zeigt, wird doch gar kein .callofduty2 Ordner generiert? Das passiert doch nur wenn man den Homepath im Startparameter weglässt. Dann braucht man doch auch kein Umleitungsvoodoo. Oder war das bei CoD2 noch anders als bei CoD4? Die Schublade im Gehirnkasten ist leider mittlerweile zugerostet und verschollen.
MikeTNT
Ich habe auch kein Umleitungsvoodoo benötigt. Home- und Basepath haben gereicht, damit nichts im Ordner .callofduty2 landete.

Wie wgs./w@Lly schon schrieb, sieht der Startparameter etwas chaotisch aus, vor allem, was die Reihenfolge der Parameter angeht

ACHTUNG:
Jetzt nicht verwirren lassen! Ich ignoriere nachfolgend den Beitrag von Kellerkind. Seine Umleitung funktioniert zwar auch, aber das regelt man nicht über den Startparameter.


Bei mir würde der Startparameter ungefähr so aussehen, sofern sich der main-Ordner im Server unter dem Pfad /home/cod2/ befinden würde:

./home/cod2/cod2_lnxded +set fs_basepath /home/cod2/ +set fs_homepath /home/cod2/ +set dedicated 2 +exec settings.cfg +map_rotate

Bzw. so mit Screen:
screen -A -m -d -S ./home/cod2/cod2_lnxded +set fs_basepath /home/cod2/ +set fs_homepath /home/cod2/ +set dedicated 2 +exec settings.cfg +map_rotate

Wenn der Pfad bei dir wirklich /srv/CoD2/1.2/CTF/ lautet (= main in Ordner CTF und cod2_lnxded ebenfalls unter CTF), dann sollte es so klappen:
./srv/CoD2/1.2/CTF/cod2_lnxded +set fs_basepath /srv/CoD2/1.2/CTF/ +set fs_homepath /srv/CoD2/1.2/CTF/ +set dedicated 2 +exec settings.cfg +map_rotate

cu Mike

PS: Ist der srv-Ordner nicht zufällig der Systemordner, in dem normalerweise FTP und Webserver ihre Pfade liegen haben?
Wenn ja, macht es Sinn, in diesem Ordner einen Gameserver laufen zu lassen? Bzw. anderes herum gefragt: Ist es "schädlich"?

@Kelli
Rein interessehalber: Wie kann man einen gesetzten symlink wieder aufheben?

Edit: Fehlende SETs eingefügt rotes Gesicht
|PDW|TheWulf
Hi,

also ich habe beide Varianten probiert, aber er möchte nichts von beidem annehmen. Sobald ich

./home/cod2/cod2_lnxded

anstatt nur

./cod2_lnxded

mache, startet der Server nicht mehr.


Irgendwelche bekannten Fehlerquellen dessen?

Gz,
Wulf
MikeTNT
Frag mich jetzt bitte nicht, warum der Pfad bei dir nicht klappt.

Was passiert bei:
./cod2_lnxded +set fs_basepath /home/cod2/ +set fs_homepath /home/cod2/ +set dedicated 2 +exec settings.cfg +map_rotate

(sofern die Pfade so bei dir vorhanden sind bzw. wenn du es auf deine Vorgaben abgeändert hast)

Anmerkung: Wenn PB Probleme bereitet und bereits einem falschen Pfad zugewiesen wurde, kannst du hier einen Blick rein werfen: Punkbuster auf Linuxserver einrichten/updaten

cu Mike
Kelli
Ja, ihr habt recht. Wenn fs_homepath, dann kein symlink nötig.
Ist schon so lange her alles.

PS: symlink löschen einfach mit rm {symlinkname}
Deichgraf
...oder ein Startscript schreiben:

Code einblendenCode angehängt. Klicke hier zum Ein-/Ausblenden

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
#!/bin/bash

### Verzeichnis wechseln ##
cd /home/cod2

### Server starten ##
screen -Adms ./cod2_lnxded +set fs_basepath /home/cod2/ +set fs_homepath /home/cod2/ +set dedicated 2 +exec settings.cfg +map_rotate



Als "cod2_start.sh" irgendwo abspeichern, 775 setzen...

Edit by MikeTNT: SET im Script hinzugefügt
|PDW|TheWulf
Hej,

ich habs endlich.

Wir haben stetig vergessen, +set fs_homepath einzugeben.
Danach hab ich connected, konnte mich aber nicht bannen, aber kicken. Also habe ich noch die Rechte gesetzt mit Putty:

cd ordner1/ordner2/spiel
chown -R spiel spiel
chmod -R 700 spiel

Danach konnte er auch die ban.txt anlegen.

Da sieht man, was kleine Dinger für rießengroße Fehler verursachen, wo man dick dran hängt und Lösungen sucht. Hab google durchforstet, da ist mir das mit dem set in die Augen gesprungen.

Ein Startscript hatte ich vorher, aber ich habe dann alles über Gruppen ausführen wollen, da das mit dem Startscript sehr unsicher ist auf der root Ebene. I-Wie weil man als root ausführt, und nicht als simpler nutzer.

Sah so aus (Start.sh):
#!/bin/bash
cd /home/cod2/servername/

# Start server now!
screen -A -m -d -S cod2-server /home/cod2/servername/
cod2_lnxded +set net_port 20000 +exec servername.cfg +set rcon_password keinsda +set sv_maxclients 26 +set sv_punkbuster 0 +map_rotate +fs_homepath /root/.callofduty2

Da gabs wohl den Fehler auch schon ^^ Hat aber dennoch geklappt, weils ja standardmäßig da reingetan wird.


Greetz und vielen Dank,
Wulf
MikeTNT
Ja, ja. Diese kleinen Flüchtigkeitsfehler können echt nerven. Gestern wär's mir nicht aufgefallen, aber jetzt wo du es erwähnt hast, ist es mir direkt ins Auge gehüpft.

Durchgeknallt