[gelöst] Start automatisieren - dd-wrt/optware

Begonnen von martin-h, 07 Dezember 2017, 10:12:14

Vorheriges Thema - Nächstes Thema

martin-h

Hallo,

nach jahrelanger Pause (wurden hier mal inaktive Benutzeraccounts gelöscht, naja egal, wieder angelegt) bin ich wieder dabei, läuft auf einem E4200 mit DD-Wrt.
Ein (Linux) Problem ist geblieben:
wie kann ich den Start von fhem automatisieren? Bisher muss ich (nach Reboots) in den passenden Ordner wechseln und "perl fhem.pl fhem.pl fhem.cfg" eingeben.
Kenne mich nicht aus und habe wirklich schon lange gesucht... (in Dd-wrt gibt es u.a.eine rc_startup Konfigmöglichkeit).

Danke

betateilchen

Keine Ahnung welche autostart Varianten dd-wrt benutzt, aber die linux-üblichen werden von FHEM alle unterstützt.
Ich bevorzuge systemd, dazu gibt es im Linux-Bereich hier im Forum auch eine Anleitung.

Grundsätzlich befinden sich startskripte auch in der FHEM Auslieferung im Ordner contrib/init-scripts
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Wernieman

#2
Guuute Frage ... was für ein DD-wrt hast Du?

Und .. wird es eher gestartet durch:
- init-Scripte (Gucke mal nach /etc/init.d/)
- systemd

Edit:
bettateilchen war schneller....
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

martin-h

#3
Zitat von: betateilchen am 07 Dezember 2017, 10:23:22
Keine Ahnung welche autostart Varianten dd-wrt benutzt, aber die linux-üblichen werden von FHEM alle unterstützt.
Ich bevorzuge systemd, dazu gibt es im Linux-Bereich hier im Forum auch eine Anleitung.

Grundsätzlich befinden sich startskripte auch in der FHEM Auslieferung im Ordner contrib/init-scripts
Danke, scheitert bisher alles leider am nicht vorhandenen Wissen. Wüsste nicht, wo ich "systemd" dafür bekäme (DD-WRT v24SP2, Kernel  Linux 2.6.24.111 und optware), apt-get geht nicht, bei ipkg gibts kein solches Modul.
Von den mitgelieferten init.d-Skripten schien mir Nummer 2 * am ehesten passend, habe damit eine S99fhem erstellt, Ort: /etc/init.d), ausführbar gemacht, kein Erfolg (fhem.pl liegt in /opt/fhem).
Dann noch zusätzlich im DD-WRT-Webinterface bei den Startup-Commands "/opt/etc/init.d S99fhem start" eingetragen, geht auch nicht....

*:
#!/bin/sh
# by Matthias Bauer

cd /opt/fhem

case "$1" in
  start)
    echo "Starting $0"
    perl fhem.pl fhem.cfg
    ;;
  stop)
    echo "Stopping $0"
    killall fhem.pl
    ;;
  status)
    cnt=`ps -ef | grep "fhem.pl" | grep -v grep | wc -l`
    if [ "$cnt" -eq "0" ] ; then
      echo "$0 is not running"
    else
      echo "$0 is running"
    fi
    ;;
  *)
    echo "Usage: $0 {start|stop|status}"
  exit 1
esac
exit 0

Wernieman

Dad kann so nicht funktionieren.

Bezüglich Starten mit init.d
1. es gehört in /etc/init.d (z.B. /etc/init.d/fhem
2. es braucht eine gewisse "Form", die Du nicht verwendest
3. die starrt/stop-automatsimen werden unter /etc/rc erledigt

Allerdings brachte eine kurze Suche zu dd-wrt ein etwas "differenzierten" Blick. Weiß aktuell wirklich nicht, welche Startmetode gewählt wird.

Gucke doch mal unter:
https://www.dd-wrt.com/wiki/index.php/Startup_Scripts#Write_the_Shell_Script
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

martin-h

1. ist es nicht?, da sind auch massenweise andere Start-Scripts drin, von einem optware-script https://www.dd-wrt.com/wiki/index.php/OTRW2_%28Optware_the_right_way_Take_2%29 reingesetzt (hier müssen die Services allerdings noch auf "on" gestellt werden, was bei dieser nachträglich hinzugefügten Datei nicht funktioniert.)
2. welche dann? Ich dachte, eine S99...-Datei dort wäre korrekt
3. ja, es gibt wohl verschiedene Orte/Möglichkeiten bei dd-wrt, allerdings auch ein ganz einfaches Startup-Webinterface, wenn ich da die passende Syntax hinbekäme...

betateilchen

Zitat von: martin-h am 07 Dezember 2017, 12:22:29
allerdings auch ein ganz einfaches Startup-Webinterface, wenn ich da die passende Syntax hinbekäme...

Probiere mal:

cd /opt/fhem && perl fhem.pl fhem.cfg

-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

martin-h

#7
Danke, geht!! Perfekt...