LSB-init script wordt niet gestart

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • Mar2zz
  • Registratie: September 2007
  • Laatst online: 20-08 07:53
Ik heb een vaag probleem met headphones, als de server start dan start het init.d script niet mee, terwijl dit een script is wat overgenomen is van een andere app die wel gewoon start.

Het gaat om dit script:
https://github.com/rembo1...b/master/headphonesinit.d

Ik heb dat aangepast dat het onder mijn eigen user runt, en de map waar Headphones.py staat staat in mijn eigen homedirectory. Dit geldt ook voor Sickbeard en Couchpotato, die met een zelfde script gewoon prima elke keer starten.

Andere users geven ook al aan dat zij dit probleem hebben. als ik handmatig sudo /etc/init.d/scriptnaam start doe dan werkt het wel prima.

De installatie van het script doe ik vanuit bash, met sed vervang ik wat spul en daarna natuurlijk sudo chmod +x scriptnaam en sudo update-rc.d scriptnaam defaults. De startup links en alles worden netjes gemaakt en toch wordt het niet met het systeem meegestart.

Nu heb ik wat dingen geprobeerd, zoals sudo update-rc.d scriptnaam defaults 99 zodat het aan het einde gestart wordt. Dit leek te werken, maar is ook random wel/niet werkend.

Mijn systeem zit in runlevel 2, wat normaal is, en in runlevel 2 zou het script ook moeten starten.

grep -i headphones /var/log/*.log wordt ik ook niets wijzer van.

Hoe kan ik dit nu onderzoeken?

edit:
ik zie ook dat alle symbolic links in de /etc/rcX.d zijn aangemaakt, dus daar kan het ook niet aan liggen. Het script zit op S20, heb het nu even aangepast naar S98, maar S99 hielp ook al niet, dus het lijkt me dat dit verder niet uitmaakt.

output /etc/rc2.d:
-rw-r--r-- 1 root root 677 2011-06-09 21:46 README
lrwxrwxrwx 1 root root  21 2010-11-21 20:29 S05loadcpufreq -> ../init.d/loadcpufreq
lrwxrwxrwx 1 root root  22 2010-11-21 20:29 S19cpufrequtils -> ../init.d/cpufrequtils
lrwxrwxrwx 1 root root  14 2010-11-21 20:29 S19lirc -> ../init.d/lirc
lrwxrwxrwx 1 root root  21 2010-11-21 21:48 S20couchpotato -> ../init.d/couchpotato
lrwxrwxrwx 1 root root  20 2010-12-25 12:20 S20fancontrol -> ../init.d/fancontrol
lrwxrwxrwx 1 root root  18 2010-11-26 10:13 S20joystick -> ../init.d/joystick
lrwxrwxrwx 1 root root  19 2011-02-18 10:23 S20sickbeard -> ../init.d/sickbeard
lrwxrwxrwx 1 root root  29 2010-12-15 09:06 S20transmission-daemon -> ../init.d/transmission-daemon
lrwxrwxrwx 1 root root  19 2010-11-21 20:29 S20tvheadend -> ../init.d/tvheadend
lrwxrwxrwx 1 root root  20 2010-11-21 20:29 S31atieventsd -> ../init.d/atieventsd
lrwxrwxrwx 1 root root  15 2010-11-21 20:29 S50rsync -> ../init.d/rsync
lrwxrwxrwx 1 root root  24 2010-11-27 09:05 S90binfmt-support -> ../init.d/binfmt-support
lrwxrwxrwx 1 root root  17 2011-07-30 19:51 S91apache2 -> ../init.d/apache2
lrwxrwxrwx 1 root root  20 2011-08-03 19:25 S98headphones -> ../init.d/headphones
lrwxrwxrwx 1 root root  19 2011-08-02 19:53 S98mediatomb -> ../init.d/mediatomb
lrwxrwxrwx 1 root root  21 2010-11-21 20:48 S98sabnzbdplus -> ../init.d/sabnzbdplus
lrwxrwxrwx 1 root root  22 2010-11-21 20:29 S99acpi-support -> ../init.d/acpi-support
lrwxrwxrwx 1 root root  21 2010-11-21 20:29 S99grub-common -> ../init.d/grub-common
lrwxrwxrwx 1 root root  18 2010-11-21 20:29 S99ondemand -> ../init.d/ondemand
lrwxrwxrwx 1 root root  18 2010-11-21 20:29 S99rc.local -> ../init.d/rc.local
lrwxrwxrwx 1 root root  18 2011-08-02 13:30 S99subsonic -> ../init.d/subsonic


Alles werkt, behalve headphones dus.

[ Voor 44% gewijzigd door Mar2zz op 03-08-2011 19:33 . Reden: output ]


Acties:
  • 0 Henk 'm!

  • CAPSLOCK2000
  • Registratie: Februari 2003
  • Laatst online: 02-10 22:42

CAPSLOCK2000

zie teletekst pagina 888

Die init file ziet er redelijk standaard uit, ik geloof niet dat het probleem daarin zit.
Als je het echt niet vertrouwd kun je 'logger' gebruiken om een controle-bericht naar je syslog te laten schrijven.
Als andere gebruikers er ook over klagen dan zou ik er maar van uit gaan dat het probleem in het Headphones.py script zit.

This post is warranted for the full amount you paid me for it.


Acties:
  • 0 Henk 'm!

  • Mar2zz
  • Registratie: September 2007
  • Laatst online: 20-08 07:53
Wat zou daarin het probleem kunnen zijn? Als ik handmatig sudo /etc/init.d/headphones start doe dan start ie wel normaal.

Als ik handmatig het programma start inclusief terminaloutput dan zie ik dit (dat zou dus ook moeten gebeuren als de daemon start, alleen dan heb ik dat met -q uitgeschakeld):
mars@servertje:~$ /usr/bin/python $HOME/.headphones/Headphones.py
03-Aug-2011 20:08:38 - INFO :: MainThread : Checking to see if the database has all tables....
03-Aug-2011 20:08:38 - INFO :: MainThread : Headphones is already up-to-date.
03-Aug-2011 20:08:39 - INFO :: MainThread : Starting Headphones on port: 8181


Hoe voeg ik een logger toe? ik heb in de transmission daemon gekeken, en daar zie ik wel wat over logging staan, en die daemon staat ook in de syslog. Kan ik dit soort dingen gewoon kopieren? Ik kan daar weinig info over vinden (waarschijnlijk google ik niet goed)..
code:
1
2
3
4
5
6
7
8
9
start_daemon () {
    if [ $ENABLE_DAEMON != 1 ]; then
        log_progress_msg "(disabled, see /etc/default/${NAME})"
    else    
        start-stop-daemon --start \
        --chuid $USER \
        --exec $DAEMON -- $OPTIONS
    fi
}

Heeft zo een initscript er genoeg aan dat ik dingen opneem als "log_progress_msg" in het script?

edit:
hmm. nog vager, hij maakt ook geen pidfile aan, tenminste dat logt ie als ik het init.d script herstart, maar de pidfile is er wel... Maar met een ander procesnummer erin dan ps aux geeft... Wat een ontzettend vage bedoening is dit...

Het gaat fout met het aanmelden van het procesid. Waar wordt dit geregeld? Dit is toch ontzettend vaag? Check onderstaande, het gaat mis, ook is er na een boot wel een pidfile aanwezig voor headphones (ook als ik die voor de reboot heb verwijderd, er staat een processnummer in, maar die kan niet gekilled worden want die bestaat dan niet. Er gebeurt dus wel iets tijdens de log... Hier is wat er gebeurt:
mars@servertje:~$ cat /var/run/headphones.pid
cat: /var/run/headphones.pid: No such file or directory
mars@servertje:~$ sudo /etc/init.d/headphones start
Starting Headphones
mars@servertje:~$ ps aux | grep -i headphones
mars  1832  0.3  0.4 120308 13248 ?        Sl   22:12   0:00 /usr/bin/python Headphones.py -d
mars  1846  0.0  0.0   3324   868 pts/0    S+   22:13   0:00 grep --color=auto -i headphones
mars@servertje:~$ cat /var/run/headphones.pid
1825


Ik heb er maar een issue voor aangemaakt bij headphones:
https://github.com/rembo10/headphones/issues/184

[ Voor 32% gewijzigd door Mar2zz op 03-08-2011 22:41 ]


Acties:
  • 0 Henk 'm!

  • Mar2zz
  • Registratie: September 2007
  • Laatst online: 20-08 07:53
Het issue is opgelost met de commits van vandaag. Het zat inderdaad in headphones zelf. Weer wat geleerd dus.