Autostart Xvfb in der init.d startet nicht richtig

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
frankoh
Beiträge: 2
Registriert: 05.04.2012 22:01:32

Autostart Xvfb in der init.d startet nicht richtig

Beitrag von frankoh » 06.04.2012 14:43:13

Hallo,
bin gerade am verzweifeln.
habe auf meiner Iomega Iconnect Debian 6.03 (Kernel 3.3) drauf und versuche den xvfb mit einem Mediacenter(MMS) zu starten.
Leider startet bei mir nur der xvfb und ein screenshot Programm(schiebt die Bilder auf meinen Bilderrahmen).
MMS startet nicht, wenn das Script in der /etc/init.d/ aufrufe, funktioniert es ...

Code: Alles auswählen

#!/bin/sh
### BEGIN INIT INFO
# Provides: Xvfb
# Required-Start: $local_fs $remote_fs
# Required-Stop:
# X-Start-Before:
# Default-Start: 2 3 4 5
# Default-Stop:  0 1 6
### END INIT INFO
mode=$1
case "$mode" in
'start')
# start the X Virtual Framebuffer (Xvfb)
if [ -f /usr/bin/Xvfb ]; then
echo "***Starting up the Virtual Frame Buffer on Screen 1***"
/usr/bin/Xvfb :99 -screen 0 800x600x16 &
DISPLAY=:99 sshot2frame.py &
DISPLAY=:99 mms -u root -i lirc -i keyboard
fi
Wie kann ich das "mms" starten ?
Habe das mal in die bootmisc.sh eingetragen, leider ohne Erfolg.
Das einzige was bisher funktionierte war das eintragen als als Cronjob */1 * * , aber ich möchte auch mal was anderes auf dem Display exportieren, deshalb ist es ungünstig.

Vielleicht hat da jemand mehr Ahnung, ich bin zu dämlich dafür...

Gruss
Frankoh

Henrikx

Re: Autostart Xvfb in der init.d startet nicht richtig

Beitrag von Henrikx » 07.04.2012 09:17:05

Hast du mal hier geschaut unter Konfiguration, ob dir das weiterhilft...
http://wiki.mymediasystem.org/wiki/inde ... bian_sarge

Ebenfalls ist dort ein InitScript

Code: Alles auswählen

#!/bin/sh
#
# /etc/rc.d/mms: start/stop mms
#
if [ "$1" = "start" ]; then
       LANG="de_DE.UTF-8" /usr/local/bin/mms >/dev/null 2>&1 & echo "mms startet nun ..."
elif [ "$1" = "stop" ]; then
       killall -9 /usr/local/bin/mms
       echo "mms gestoppt (kill) ..."
else
   echo "usage: $0 {start|stop}"
fi
# End of file
http://wiki.mymediasystem.org/wiki/index.php/Main_Page

frankoh
Beiträge: 2
Registriert: 05.04.2012 22:01:32

Re: Autostart Xvfb in der init.d startet nicht richtig

Beitrag von frankoh » 07.04.2012 10:51:03

Hi @Henrikx,

vielen Dank für Deine Mühe, das Start/Stop Script funktioniert soweit.
Leider nur beim Start und in der bootmisc.sh.
Geht bei mir nur wenn ich es minütlich aufrufen lasse über cron ...

root@iconnect:/etc/init.d# update-rc.d-insserv mmsautostart.sh defaults
Adding system startup for /etc/init.d/mmsautostart.sh ...
/etc/rc0.d/K20mmsautostart.sh -> ../init.d/mmsautostart.sh
/etc/rc1.d/K20mmsautostart.sh -> ../init.d/mmsautostart.sh
/etc/rc6.d/K20mmsautostart.sh -> ../init.d/mmsautostart.sh
/etc/rc2.d/S20mmsautostart.sh -> ../init.d/mmsautostart.sh
/etc/rc3.d/S20mmsautostart.sh -> ../init.d/mmsautostart.sh
/etc/rc4.d/S20mmsautostart.sh -> ../init.d/mmsautostart.sh
/etc/rc5.d/S20mmsautostart.sh -> ../init.d/mmsautostart.sh

Man kann soweit ich weiss die Scripte nach hinten verlagern mit anderer Priorität, muss ich erst mal schauen

Gerade nochmal probiert, leider ohne Erfolg:
root@iconnect:/etc/init.d# update-rc.d-insserv mmsautostart.sh defaults 99
Adding system startup for /etc/init.d/mmsautostart.sh ...
/etc/rc0.d/K99mmsautostart.sh -> ../init.d/mmsautostart.sh
/etc/rc1.d/K99mmsautostart.sh -> ../init.d/mmsautostart.sh
/etc/rc6.d/K99mmsautostart.sh -> ../init.d/mmsautostart.sh
/etc/rc2.d/S99mmsautostart.sh -> ../init.d/mmsautostart.sh
/etc/rc3.d/S99mmsautostart.sh -> ../init.d/mmsautostart.sh
/etc/rc4.d/S99mmsautostart.sh -> ../init.d/mmsautostart.sh
/etc/rc5.d/S99mmsautostart.sh -> ../init.d/mmsautostart.sh

Code: Alles auswählen

#!/bin/sh
#
# /etc/rc.d/mms: start/stop mms
#
### BEGIN INIT INFO
# Provides: mmsrestart
# Required-Start: $local_fs $remote_fs
# Required-Stop:
# X-Start-Before:
# Default-Start: 2 3 4 5
# Default-Stop:  0 1 6
### END INIT INFO
if [ "$1" = "start" ]; then
       LANG="de_DE.UTF-8" DISPLAY=:99 /usr/local/bin/mms -u root -i lirc >/dev/null 2>&1 & echo "mms startet nun ..."
elif [ "$1" = "stop" ]; then
       killall -9 /usr/local/bin/mms
       echo "mms gestoppt (kill) ..."
else
   echo "usage: $0 {start|stop}"
fi
# End of file
VG
Frankoh

Antworten