FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: rubbertail am 06 Juli 2016, 17:08:25

Titel: [gelöst] /etc/init.d/fhem start kommt nicht zurück?
Beitrag von: rubbertail am 06 Juli 2016, 17:08:25
Hallo *,

Ich verwende Fhem 5.7 mit configDB (MySql auf nem externen Server) auf nem Raspi mit Debian Jessie. Klappt auch soweit alles - allerdings stelle ich fest, das etwas, das ich für "normal" hielt, dies offenbar nicht ist, und ich komme grade nicht weiter.

Rufe ich fhem über das Startscript auf
sudo /etc/init.d/fhem start
dann bekomme ich zwar ein "Starting fhem..." zurück, nicht aber die Shell/den Prompt zur erneuten Eingabe weiterer Befehle. Da das beim direkten Aufruf über
perl fhem.pl configDB
aber auch so war, ist mir dabei nix weiter aufgefallen; irgendwie gings dennoch bisher alles gut.

Nun habe ich heute betateilchens Anleitung zum Starten als service unter systemd ausprobiert (und geflissentlich die Warnung "Dieser Thread ist nicht für Linux-Anfänger gedacht!" ignoriert, ich weiß - https://forum.fhem.de/index.php/topic,54271.msg458702.html), und damit gerät das offenbar zum Problem - der Start kommt nicht zurück, damit killt systemd das Ganze scheinbar wieder, und über den Restart im Unit-File gehts wieder von vorne los.

Auch das nicht tragisch, konnte das wieder rückgängig machen und auf die "alte" Art wieder verwenden, aber vielleicht kann mir wer von euch dennoch nen Schubs in die richtige Richtung geben? Wenn jetzt Daten fehlen oder nötig sind, liefere ich natürlich gerne nach. Meine Suche im Netz nach "init.d" generell brachte eher nur zurück "dann muss das Startscript korrupt sein", aber ich habe es (als root aus dem contrib/init-Skripts-Ordner nach /etc/init.d/fhem kopiert, chmod 744 fhem ausgeführt, mit fhem.3 und fhem.4 ausprobiert) wiederhergestellt, und gleiche Beobachtung.

Danke für sachdienliche Hinweise und ggf. auch Kopfwäsche. :)

Martin
Titel: Antw:Eher Linux als fhem, aber dennoch: /etc/init.d/fhem start kommt nicht zurück?
Beitrag von: Otto123 am 07 Juli 2016, 10:25:59
Hallo Martin,

ich habe von Linux eher wenig Ahnung. Ich bin auch der, der einfach "Setup drückt" und dann läuft es... 8)

Aber ist denn FHEM als service installiert/registriert?
Ich kann bei meinem Jessie einfach sudo systemctl status/start/stop fhem eingeben und das funktioniert.

Es sieht mir so aus als ob Dein service fhem nicht ordentlich registriert ist.

Gruß Otto
Titel: Antw:Eher Linux als fhem, aber dennoch: /etc/init.d/fhem start kommt nicht zurück?
Beitrag von: rubbertail am 07 Juli 2016, 10:35:11
Salut Otto,

leider verwendet auch der Service meines Wissens das Startup-Script - und benötigt das "Zurückkommen" desselben...

Da müsste wirklich eher ein Linux-Champ mal helfen...

Danke dennoch.

Martin
Titel: Antw:Eher Linux als fhem, aber dennoch: /etc/init.d/fhem start kommt nicht zurück?
Beitrag von: Wernieman am 07 Juli 2016, 11:27:12
Also .. auch wenn Du fhem "per hand", also direkt "perl fhem.pl fhem.cfg" eingibst, kommt es nicht wieder?
Habe ich es so richtig verstanden?
Titel: Antw:Eher Linux als fhem, aber dennoch: /etc/init.d/fhem start kommt nicht zurück?
Beitrag von: Otto123 am 07 Juli 2016, 11:40:26
Wenn ich das hier  (https://wiki.ubuntuusers.de/Dienste/)lese ist das eigentlich leicht verständlich  8)
Und bedeutet: an sich ist nur der Aufruf perl fhem.pl xxx dafür zuständig zurück zu kehren? D.h. fhem.pl bleibt irgendwo stecken?
Titel: Antw:Eher Linux als fhem, aber dennoch: /etc/init.d/fhem start kommt nicht zurück?
Beitrag von: rubbertail am 07 Juli 2016, 11:43:46
Korrekt - wenn ich
perl fhem.pl configDB
aufrufe, kehre ich auch nicht zum prompt zurück (fhem funktioniert aber sauber).

Ich verwandte zum Testen verschiedene /etc/init.d/fhem-Startskipts, die aber alle o. g. Aufruf enthalten; die Anleitung von betateilchen bzgl. der Umstellung auf systemd in der wiki verwendet ebenso den Aufruf dieses Startskipts (und daher im Folgeschritt auch den Aufruf oben).
Titel: Antw:Eher Linux als fhem, aber dennoch: /etc/init.d/fhem start kommt nicht zurück?
Beitrag von: Benni am 07 Juli 2016, 12:04:44
Schau mal bitte bei dir nach , ob bei dir am global-Device das Attribut nofork gesetzt ist.
Damit hatte ich vor langer Zeit mal ähnliche Probleme, als ich mit meiner Konfiguration von Windows auf Linux gewechselt bin.

Falls es gesetzt ist lösch es mal und versuche dann ob's klappt.

deleteattr global nofork

Titel: Antw:Eher Linux als fhem, aber dennoch: /etc/init.d/fhem start kommt nicht zurück?
Beitrag von: rubbertail am 07 Juli 2016, 12:13:32
Benni! Du bist der Champ! :) Dat wars, danke schön!

Jetzt muss ich nur noch mal tiiief in mich gehen, wie das Attribut da hinkam... :)
Titel: Antw:Eher Linux als fhem, aber dennoch: /etc/init.d/fhem start kommt nicht zurück?
Beitrag von: Otto123 am 07 Juli 2016, 12:27:58
Zitat von: rubbertail am 07 Juli 2016, 12:13:32
Jetzt muss ich nur noch mal tiiief in mich gehen, wie das Attribut da hinkam... :)
War mal auf einem anderen Betriebssystem (http://www.fhemwiki.de/wiki/Fhem_on_OS_X#Launchd)?

Nun war es doch eher FHEM als Linux  ;D
Titel: Antw:[gelöst] /etc/init.d/fhem start kommt nicht zurück?
Beitrag von: rubbertail am 07 Juli 2016, 12:28:59
Ich denk, das ist eher PERL als Linux als Fhem... :)

Nö, das Ding war schon immer auf Debian Jessie. Egal - das findet sich.