Wieso geht das nicht?

Dieses Thema im Forum "Anwendungen" wurde erstellt von Thomy22, 02.03.2008.

  1. #1 Thomy22, 02.03.2008
    Thomy22

    Thomy22 Grünschnabel

    Dabei seit:
    06.02.2008
    Beiträge:
    5
    Zustimmungen:
    0
    Hallo Leute

    Ich habe mir ein Shellskript für das Starten von Warhammer40k mit Wine eingerichtet:
    Code:
    #!/bin/sh
    
    X :3 -ac &
    
    cd ~/".wine/drive_c/Programme/THQ/Dawn of War - Dark Crusade"
    
    sleep 2
    
    DISPLAY=:3 wine DarkCrusade.exe
    
    kill $(ps ax|grep "X :3")
    
    Das Ergebnis ist das:

    1. Man das nur als sudo starten kann (Kubuntu 7.10) sonst startet der Xserver nicht (wieso das eigentlich?).

    2. Die neue Xsession geöffnet wird (das graue Bild) dann 2 Sekunden gewartet wird und sich das dann wieder beendet, ohne die EXE gestartet zu haben. Was mache ich da falsch?

    Gruß Thomy
    [/LIST]
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. caba_

    caba_ (caba{_,}|manuw)

    Dabei seit:
    07.08.2007
    Beiträge:
    334
    Zustimmungen:
    0
    Alleine schon deswegen
     
  4. #3 supersucker, 03.03.2008
    supersucker

    supersucker Foren Gott

    Dabei seit:
    21.02.2005
    Beiträge:
    3.873
    Zustimmungen:
    0
    WTF ist das denn für ein Kommentar?

    Bei welchem Schritt bricht denn das script ab, wenn du es ohne sudo aufrufst?
     
  5. #4 Thomy22, 03.03.2008
    Thomy22

    Thomy22 Grünschnabel

    Dabei seit:
    06.02.2008
    Beiträge:
    5
    Zustimmungen:
    0
    Code:
    X: user not authorized to run the X server, aborting.
     
  6. Lord_x

    Lord_x Guest

    DA hast du doch die Antwort. Der Benutzer "root" ist es nicht erlaubt, den X-Server zu starten...
    Wenn du den X-Server wirklich brauchst, dann starte den Server zuerst.
     
  7. espo

    espo On the dark side

    Dabei seit:
    17.05.2003
    Beiträge:
    391
    Zustimmungen:
    0
    Ort:
    Stuttgart
    Die Meldung oben war glaub ich die Ausgabe für supersucker, was passiert wenn er es ohne sudo ausführt ;).
    Was passiert wenn du das kill am Ende des Scripts weglässt? ( Ist nur ne Idee ).

    greetings
     
  8. Anzeige

    Vielleicht findest du HIER Antworten.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  9. #7 bitmuncher, 03.03.2008
    bitmuncher

    bitmuncher Der Stillgelegte

    Dabei seit:
    08.05.2007
    Beiträge:
    3.171
    Zustimmungen:
    0
    Code:
    DISPLAY=:3 wine DarkCrusade.exe
    
    kill $(ps ax|grep "X :3")
    
    Du startest hier ein Programm auf einem extra X-Server. Mit hoher Wahrscheinlichkeit wird damit das Control-TTY an die neue X-Session übergeben, wodurch die Shell, die dein Skript ausführt, wieder freigegeben wird. Sobald sie frei ist, wird der Kill-Befehl ausgeführt. Die bessere Lösung dürfte ein Skript sein, das wie ein init-Skript die Parameter 'start' und 'stop' versteht:

    Code:
    #!/bin/sh
    
    case "$1" in
    start)
        X :3 -ac &
        cd ~/".wine/drive_c/Programme/THQ/Dawn of War - Dark Crusade"
        sleep 2
        DISPLAY=:3 wine DarkCrusade.exe
        ;;
    stop)
        kill $(ps ax|grep "X :3")
        ;;
    *)
        echo "Usage: `basename $0` {start|stop}" >&2
        exit 64
        ;;
    esac
    
    exit 0
    
    Dieses Skript kannst du dann mit 'skriptname start' aufrufen um das Programm zu starten und 'skriptname stop' um es zu beenden. Damit kann das kill nicht in die Quere kommen, wenn das Control-TTY übergeben wird, und diese Fehlerquelle ist ausgeschlossen.
     
  10. Mike1

    Mike1 Niederösterreicher

    Dabei seit:
    21.12.2006
    Beiträge:
    1.376
    Zustimmungen:
    0
    Ort:
    Österreich
    Das kann man umgehen indem man in der /etc/X11/Xwrapper.config den Eintrag "allowed_users" auf "anybody" setzt, glaube ich.

    Etwas Ähnliches wie dein Script, nur etwas fetter gibts es schon: http://freshmeat.net/projects/xgame/
     
Thema:

Wieso geht das nicht?

Die Seite wird geladen...

Wieso geht das nicht? - Ähnliche Themen

  1. Kann mit VLC keine mpegs abspielen, wieso? Fenster geht auf, dann direkt wieder zu :(

    Kann mit VLC keine mpegs abspielen, wieso? Fenster geht auf, dann direkt wieder zu :(: Hallo zusammen, ich nutze sehr gern den VLC PLayer, aber ich kann komischerweise keine mpegs abspielen, nur avis usw. wenn ich eine mpeg...
  2. Wieso umgangssprachlich Linux??

    Wieso umgangssprachlich Linux??: Hallo Wieso sagt mach eigentlich immer Linux und wieso heißen alle Bücher "Linux Server" "Linux bla" "Linux blub" wenn da doch vom eigentlichen...
  3. printf Formatierung: echo schreibt bei Ausgabeumleitung auf File nichts. Wieso?

    printf Formatierung: echo schreibt bei Ausgabeumleitung auf File nichts. Wieso?: #!/bin/sh ZAHL="372" FARBE="gelb" printf "%s%06d%s" "Bearbeitungsnummer 888" $ZAHL ", Farbe: $FARBE" echo printf "%s%06d%s" "Bearbeitungsnummer...
  4. Wieso setzt ihr auf Linux ?

    Wieso setzt ihr auf Linux ?: Hi Wieso habt ihr gerade Linux basierendes auf euren Rechner und nicht ein anderes OS ?
  5. Wieso muss Zertifikat der RootCA die Seriennummer 0 haben?

    Wieso muss Zertifikat der RootCA die Seriennummer 0 haben?: Hi, ich versuche gerade Zertifikate per openssl zu erstellen und folge dieser Anleitung. Nun habe ich eine Frage, wieso muss das Zertifikat der...