Hab mir neulich Ut2004 gekauft. Nach der erfolgreichen Installation hab ich das Problem das sich das Spiel nicht starten lässt:
chris@xaver:~/Games/UnrealTournament2004> sh ut2004
ut2004: line 49: /home/chris/Games/UnrealTournament2004/System/ut2004-bin: Keine Berechtigung
ut2004: line 49: /home/chris/Games/UnrealTournament2004/System/ut2004-bin: Erfolg
chris@xaver:~/Games/UnrealTournament2004>
Habe das Spiel als root installiert, die gleiche Fehlermeldung kommt auch, wenn ich es wieder als root ausführe. Was kann ich machen um das Spiel zum laufen zu bringen?
Linux 15.036 Themen, 107.107 Beiträge
Hast du das Shellscript geschrieben ?
Der cd Befehl wechselt in ein Unterverzeichnis, welches eventuell nicht existiert. Mit ${UT2004_DATA_PATH} ist eine Variable gemeint, Du kannst dir diese variable anzeigen lassen wenn du kurz vor dem cd Befehl
echo "${UT2004_DATA_PATH}/" einfügst.
Vielleicht existiert dieses verzeichnis nicht, in dem dann dieses Programm "./ut2004-bin" $* ausgeführt wird.
cd Befehle sollte man eigentlich nicht unbedingt in Shellscripte einfügen, weil dann das Shellscript kurz in das Unterverzeichnis wechselt und sich nach dem cd-Befehl wieder in das darüberliegenden Verzeichnis wechselt.
Ich würde solche Sachen in einer eigenen Subshell (runde Klammern) ausführen lassen:
( cd Verzeichnis ; exec Befehl )
Du kannst ja mal das Shellscript debuggen:
echo "vor cd-Befehl PWD : $PWD"
48: cd "${UT2004_DATA_PATH}/"
echo "nach cd-Befehl PWD : $PWD"
49: exec "./ut2004-bin" $*
PWD ist eine Variable in der das aktuelle Verzeichnis gespeichert ist.
