x11 java programm als service starten



  • ich möchte ein java-prog, welches einige x11 funktionen enthält, beim booten (SuSE) als service starten. geht das überhaupt, ohne das ein user eingeloggt ist ? und wenn ja, wie macht man das dann ?

    btw - es handelt sich um die suchmaschine www.x-friend.de - sie funktioniert hervorragend, aber ich würde sie eben gerne als service starten.

    danke !



  • Du musst erst ein Skript denen aus /etc/init.d gleichend erstellen. Dann kannst du symbolische Links in /etc/init.d/rc*.d für den jeweiligen Runlevel zum Starten/Beenden erstellen oder in yast2 konfigurieren. Am besten schaust du mal im Netz, wie man das jetzt im Detail erledigt...



  • hm, soweit war ich auch schon mal, das problem ist, wenn ich es zb aus rc5.d starte, quittiert es mit der meldung "can`t connect to x11" oder so ähnlich.

    das problem ist weniger, wie man das in ein script einbaut, sondern vielmehr, wie ich an einen x11 server komme, wenn niemand eingeloggt ist. da funktionieren sachen wie export DISPLAY=xxx.x.x einfach nicht. oder mache ich da was falsch ?

    danke !



  • Zunächst mal, muss der X-Server automatisch gestartet werden.

    Ich mache das bei mir mit rungetty. Dazu muss in /etc/inittab:

    1:23:respawn:/sbin/rungetty --noclear --autologin username tty1

    dann wird man schonmal automatisch eingeloggt. Als nächstes dann "exec startx" in die ~/.zprofile eintragen.
    (vorsicht, die wird immer ausgeführt, wenn man sich einloggt...)

    Beim Start von X wird dann die ~/.xsession oder ~/.xinitrc ausgeführt. Da sollte dann zB. "exec java-prog" drinstehen.



  • DrGreenthumb schrieb:

    1:23:respawn:/sbin/rungetty --noclear --autologin username tty1

    das setzt aber voraus, dass immer ein user eingeloggt sein muss, oder ? mir wäre es lieber, das dingen wie einen service oder so zu starten, wo sich ja auch niemand einloggen muss. geht das irgendwie ?

    danke !



  • unter irgendeinem User muss es ja laufen... die daemons die init startet, laufen erstmal als root (und wechseln dann evtl. die identität).



  • Es gibt einen virtuellen X-Server, der nur ein Stück Speicher als Bildfläche nimmt, der nennt sixh Xvfb. Dann legst du einen User an unter dem die Suchmaschine laufen soll, startest unter diesem User einen Xvfb und danach deine Suchmaschine. Dann läuft diese ohne dass ein reales X dafür nötig wäre


Anmelden zum Antworten