Die DS und schaltbare Steckdosen

Status
Für weitere Antworten geschlossen.

JudgeDredd

Benutzer
Mitglied seit
12. Nov 2009
Beiträge
1.064
Punkte für Reaktionen
8
Punkte
64
Hi svensen,

leider weiss ich nicht, ob die Dateinamen in /opt/etc/init.d zur automatischen Bootausführung irgendwelchen Restriktionen unterliegen.
Da die "anderen" Dateien alle Sxxyyyyyyyy.sh heissen, benenne doch mal die Datei "Steckdose.sh" in z.B. S99steckdose.sh" um und boote neu.
Rechte 755 und Besitzer root/root sollte aber stimmen.

Gruß Andreas
 

svensen

Benutzer
Mitglied seit
02. Nov 2011
Beiträge
13
Punkte für Reaktionen
0
Punkte
0
Hi JudgeDredd,

ich habe nun mal Steckdose.sh in S99dose.sh bzw. auch mal testweise in S99dose (ohne .sh) umbenannt. Rechte: 755 bzw. 777 (testweise) und User/Group: root/root ist klar.
Leider hat das, trotz mehrfachem reboot bzw. powerdown, auch nicht funktioniert. Was kann ich noch tun? Kann es auch an dem listener-mode der SIS-PM liegen?

Ich habe dazu folgendes gefunden:
---------------------------------------
Es ist leider ohne Weiteres nicht möglich den integrierten Webserver über inetd laufen zu lassen, da sispmctl nur rudimentär Listener-Mode unterstützt. Selbst im Listener-Mode unterstützt sispmctl-Binary nicht die echte Daemon-Funktionalität. Aus diesem Grund muss der integrierte Webserver mit einem & am Ende in den Hintergrund geschickt werden, um eine Daemon-ähnliche Funktionsweise abzubilden.
---------------------------------------
Quelle: http://freetz.org/wiki/packages/sispmctl

Kann damit jemand was anfangen? Ich leider nicht.

Wie beschrieben, von der Konsole aus läuft der Script und folgend auch das Webinterface.

putty_log/command:
---------------------------------------
my_DiskStation> cd opt/etc/init.d
my_DiskStation> ll
total 12
drwxr-xr-x 2 root root 4096 Nov 24 22:18 .
drwxr-xr-x 6 root root 4096 Nov 30 2010 ..
-rwxrwxrwx 1 root root 571 Nov 24 22:19 S99dose
my_DiskStation> sh S99dose start
Optware startup sispmctl
my_DiskStation> Try to bind to 192.168.178.24
---------------------------------------


Gruß Sven
 

JudgeDredd

Benutzer
Mitglied seit
12. Nov 2009
Beiträge
1.064
Punkte für Reaktionen
8
Punkte
64
Hi Sven,

ich bin selbst im Besitz dieser Steckdosenleiste und natürlich einer DS. Leider bin ich gerade im Umzug und habe die Leiste schon irgendwo tief im Karton versenkt.
Ich werde daher leider erst frühstens in ca. 4Wochen dazu kommen, in meinem neuen Domiziel dies zu testen.

Deine Beschreibungen klingen ja alle recht einleuchtend. Daher gebe ich für die nächste Zeit erstmal das Wort erstmal wieder an die Comunity ...

Gruß Andreas
 

svensen

Benutzer
Mitglied seit
02. Nov 2011
Beiträge
13
Punkte für Reaktionen
0
Punkte
0
Hallo Andreas,
zu erst einmal ein gesundes neues Jahr an Dich und an alle im Forum hier.

Neues Jahr, neues Glück!
Deswegen frag ich nochmal nach ob es zum o.g. Thema neue Erkenntnisse gibt? Konntest du schon die SIS-PM an der DS testen?
Ich bin leider nicht weiter gekommen, hab aber weiterhin interesse an einer Lösung die SIS-PM webbased an der DS zu betreiben.
Bin für jede Unterstützung dankbar.

Gruß Sven
 

JudgeDredd

Benutzer
Mitglied seit
12. Nov 2009
Beiträge
1.064
Punkte für Reaktionen
8
Punkte
64
Hi Sven,

gut das Du Dich nochmal gemeldet hast. Der Umzug ist fast abgeschlossen. Also werde ich am Wochenende mal die Steckdosenkiste auspacken und an die DS klemmen. Ich gebe Dir dann Feedback.
Gruß Andreas
 

JudgeDredd

Benutzer
Mitglied seit
12. Nov 2009
Beiträge
1.064
Punkte für Reaktionen
8
Punkte
64
Hi Sven,

tja was soll ich sagen, leider schlechte Neuigkeiten. Genau wie bei Dir, startet auch mein WebUI nicht mittels Startscript.

In meiner messages.log hab ich folgendes gefunden:

Jan 13 12:44:13 hotplugd: hotplugd.c:956 failed get usb status from usb config, DEVICE=/proc/bus/usb/001/001, usbid=1d6b:0002:0000:00:0e.1
Jan 13 12:44:13 hotplugd: ##### ACTION:add
Jan 13 12:44:13 hotplugd: DEVICE:/proc/bus/usb/001/001
Jan 13 12:44:13 hotplugd: DEVPATH:usb1
Jan 13 12:44:13 hotplugd: SUBSYSTEM:usb
Jan 13 12:44:13 hotplugd: hotplugd.c:732 Fail to recognize usb DEVNAME=, DEVPATH=usb1
Jan 13 12:44:13 hotplugd: hotplugd.c:1257 failed to setup usb config, (DEVPATH, DEVICE, ACTION, DEVNAME, INTERFACE)=(usb1, /proc/bus/usb/001/001, add, , )
Jan 13 12:44:13 hotplugd: hotplugd.c:956 failed get usb status from usb config, DEVICE=/proc/bus/usb/001/001, usbid=1d6b:0002:0000:00:0e.1
Jan 13 12:44:13 hotplugd: ##### ACTION:add
Jan 13 12:44:13 hotplugd: DEVICE:/proc/bus/usb/001/001
Jan 13 12:44:13 hotplugd: DEVPATH:1-0:1.0
Jan 13 12:44:13 hotplugd: SUBSYSTEM:usb
Jan 13 12:44:13 hotplugd: INTERFACE:9/0/0
Jan 13 12:44:13 hotplugd: hotplugd.c:956 failed get usb status from usb config, DEVICE=/proc/bus/usb/002/001, usbid=1d6b:0001:0000:00:0e.0
Jan 13 12:44:13 hotplugd: ##### ACTION:add
Jan 13 12:44:13 hotplugd: DEVICE:/proc/bus/usb/002/001
Jan 13 12:44:13 hotplugd: DEVPATH:usb2
Jan 13 12:44:13 hotplugd: SUBSYSTEM:usb
Jan 13 12:44:13 hotplugd: hotplugd.c:732 Fail to recognize usb DEVNAME=, DEVPATH=usb2
Jan 13 12:44:13 hotplugd: hotplugd.c:1257 failed to setup usb config, (DEVPATH, DEVICE, ACTION, DEVNAME, INTERFACE)=(usb2, /proc/bus/usb/002/001, add, , )
Jan 13 12:44:13 hotplugd: hotplugd.c:956 failed get usb status from usb config, DEVICE=/proc/bus/usb/002/001, usbid=1d6b:0001:0000:00:0e.0
Jan 13 12:44:13 hotplugd: ##### ACTION:add
Jan 13 12:44:13 hotplugd: DEVICE:/proc/bus/usb/002/001
Jan 13 12:44:13 hotplugd: DEVPATH:2-0:1.0
Jan 13 12:44:13 hotplugd: SUBSYSTEM:usb
Jan 13 12:44:13 hotplugd: INTERFACE:9/0/0
Jan 13 12:44:13 hotplugd: ##### ACTION:add
Jan 13 12:44:13 hotplugd: DEVICE:/proc/bus/usb/002/002
Jan 13 12:44:13 hotplugd: DEVPATH:2-2
Jan 13 12:44:13 hotplugd: SUBSYSTEM:usb
Jan 13 12:44:13 hotplugd: ##### ACTION:add
Jan 13 12:44:13 hotplugd: DEVICE:/proc/bus/usb/002/002
Jan 13 12:44:13 hotplugd: DEVPATH:2-2:1.0
Jan 13 12:44:13 hotplugd: SUBSYSTEM:usb
Jan 13 12:44:13 hotplugd: INTERFACE:3/0/0
Jan 13 12:44:13 hotplugd: hotplugd.c:758 ##### complete device hotplug!!
Für mich sieht es so aus, als wenn mein USB nicht rechtzeitig bereit ist. Vielleicht hat dazu ja noch jemand anderes eine Idee ?

Gruß Andreas
 

night2day

Benutzer
Mitglied seit
07. Mai 2008
Beiträge
228
Punkte für Reaktionen
0
Punkte
0
Hallo Leute,
wie ist es denn nun generell um die Qualität der Steckerleiste bestellt?
Bei Amazon wird die ja wegen Qualitätsmängeln und Bugs in der Software ziemlich zerissen.

Gruß
night2day
 

JudgeDredd

Benutzer
Mitglied seit
12. Nov 2009
Beiträge
1.064
Punkte für Reaktionen
8
Punkte
64
Also ich vermute mal, das es bei den Amazon Bewertungen wohl eher um die WIN-Software geht. Die LINUX Variante ist ja nicht von Gembird.
Zur Qualität kann man meiner Meinung nach nichts schlimmes sagen. Wer die Leiste nicht regelmäßig gegen die Wand werfen will oder mit einem Auto drüber fährt, dem sollte ein Kunstoffgehäuse und ein Kabel das die Leiste mit der Steckdose verbindet ja ausreichen. Viel mehr ist es auch nicht und die Leiste tut grundsätzlich das was sie soll. Bei der erweiterten Verwendung (modding) wie z.B. automatisches Steuern an einer NAS, kommen eben unplanmäßige Problemchen dazu.
Im Profibereich würde ich dann sowieso eher zur LAN-Steckdose greifen.
Gruß Andreas
 

svensen

Benutzer
Mitglied seit
02. Nov 2011
Beiträge
13
Punkte für Reaktionen
0
Punkte
0
Hi Andreas,

schade, dass das WebUI ohne console auch bei Dir nicht läuft. Aber trotzdem danke fürs testen.

Mir kam aber noch eine alternativ Idee, wie es evtl. auch funtionieren könnte.
Da die SIS-PM ja per cronjob [crontab im AdminTool von itari] wunderbar funktioniert, könnte man da nicht ein ähnliches WebUI auf der DS laufen lassen, welches beim click der jeweiligen Dose einen cronjob im crontab platziert? Von mir aus auch mit dem aktuellen timestamp + 5 sek. delay, damit cronjob diesen dann auch rechtzeitig ausführen kann? Geht sowas?

Gruß Sven
 

JudgeDredd

Benutzer
Mitglied seit
12. Nov 2009
Beiträge
1.064
Punkte für Reaktionen
8
Punkte
64
Hi Sven,
also grundsätzlich würde das WebUI auch mittels Startscript funktionieren (davon bin ich immer noch überzeugt) Das Problem ist ja eher, das der USB-Port/Steckdosenleiste beim BootUp zu diesem Zeitpunkt noch nicht bereit sind.
Eigentlich bräuchte man kein WebUI was einen CronTab erstellt. Theoretisch müsste man ja das WebUI der Leiste nur auf den User-Apache kopieren. Somit wäre es auf jeden fall aufrufbar. Ob es dann die Leiste korrekt steuert, die beim Boot nicht erkannt wurde und was passiert wenn gar keine Leiste angeschlossen ist, müsste man testen.
Kannst Du das übernehmen oder muss ich nochmal in den Keller die Leiste holen ? :)
Gruß Andreas
 

Merthos

Benutzer
Mitglied seit
01. Mai 2010
Beiträge
2.709
Punkte für Reaktionen
1
Punkte
84

JudgeDredd

Benutzer
Mitglied seit
12. Nov 2009
Beiträge
1.064
Punkte für Reaktionen
8
Punkte
64
Vielleicht ein "sleep XYZ" einfügen?
Wäre sicherlich auch eine Möglichkeit. Allerdings ist das nichts 100% verlässliches. Wenn heute der Sleep XYZ ausreicht, ist der Bootprozess nach einem DSM Update evtl. anders/länger etc. und man fängt wieder das suchen/fummeln an.
Stabil ist nach meiner Auffassung anders :) Aber eine quick&dirty Lösung wäre es natürlich.
 

svensen

Benutzer
Mitglied seit
02. Nov 2011
Beiträge
13
Punkte für Reaktionen
0
Punkte
0
Ein Versuch wäre es mit "sleep xyz" auf jeden Fall wert, auch wenn das nicht die 100%igste Lösung ist.

Wie müsste dann der script aussehen?

@Andreas,
wenn die Lösung funktioniert, brauchst du nicht extra in den Keller. :)

Gruß Sven
 

JudgeDredd

Benutzer
Mitglied seit
12. Nov 2009
Beiträge
1.064
Punkte für Reaktionen
8
Punkte
64
Der Befehl lautet:
für 10 Sekunden Pause und muss VOR dem Aufruf des simpmctl liegen (hab das Script nicht voraugen). Also gleich nach "start)".
 

svensen

Benutzer
Mitglied seit
02. Nov 2011
Beiträge
13
Punkte für Reaktionen
0
Punkte
0
Ich habe dem script "S99dose" nun am Anfang ein "sleep 10" verpasst und der sispmctl() startet nun auch zeitverzögert innerhalb der console.

Wenn ich allerdings die DS reboote und dann das WebUI (ohne console) aufrufen möchte, geht das weiterhin nicht.

@Andreas,
wenn du das mit deinem message.log nochmal verifizieen könntest?

Danke + Gruß Sven
 

janus

Benutzer
Mitglied seit
07. Sep 2010
Beiträge
667
Punkte für Reaktionen
0
Punkte
0
Ich habe dem script "S99dose" nun am Anfang ein "sleep 10" verpasst und der sispmctl() startet nun auch zeitverzögert innerhalb der console.

Wenn ich allerdings die DS reboote und dann das WebUI (ohne console) aufrufen möchte, geht das weiterhin nicht.

@Andreas,
wenn du das mit deinem message.log nochmal verifizieen könntest?

Danke + Gruß Sven

Moin
ich habe zwar nicht vor meine sispm über Web zu betreiben, aber habt ihr schon mal an folgendes gedacht:


Ausgabe von sispmctl bei eingesteckter sispm:
DiskStation2> sispmctl -s ; echo $?
Gembird #0 is USB device 002.This device is a 4-socket SiS-PM.
Accessing Gembird #0 USB device 002
This device has a serial number of 01:01:48:ffffffca:fffffffe

0

Ausgabe von sispmctl bei nicht angeschlossener sispm:
DiskStation2> sispmctl -s && echo $?
No GEMBIRD SiS-PM found. Check USB connections, please!
DiskStation2> sispmctl -s ; echo $?
No GEMBIRD SiS-PM found. Check USB connections, please!

1

Vom Prinzip her könnt ihr also ein Script bauen, welches z.b. ein mal per sispmctl und den RC Code checkt ob eine sispm gefunden wird und dann erst den Webservice starten.

Gruß

Janus
 

svensen

Benutzer
Mitglied seit
02. Nov 2011
Beiträge
13
Punkte für Reaktionen
0
Punkte
0
Nabend zusammen,

hat hier schon jemand Fortschritte gemacht das WebUI der Gembird SIS-PM auch ohne aktiver console an der DS zum laufen zu bringen?
Oder muss ich doch auf die LAN Version umsteigen?

Danke für Euer feedback.
Gruß Sven
 

janus

Benutzer
Mitglied seit
07. Sep 2010
Beiträge
667
Punkte für Reaktionen
0
Punkte
0
Moin,
ein fertig ausformuliertes Script kann ich dir nach wie vor nicht bieten, aber wie man einen Befehl so ausführt, dass er von der Shell unabhängig wird, kann ich dir verraten.

1. ipkg install at
1a. anpassen des atd start scripts laut Wiki
2. Starten von atd mittels /opt/etc/init.d/S20at start
3. echo "sispmctl -u '/opt/share/httpd/sispmctl/skin1' -lq" | at now
4. prüfen mittels ps -www |grep sispmctl
5. ausloggen
6. einloggen
7. prüfen mittels ps -www |grep sispmctl
8. Eigenes Startup Script schreiben/anpassen.

Ist ein alter Trick für manche Java Software, wie z.B. den JBoss. Der hat da auch oft rumgezickt. Im Falle des sispmctl kann man auch darauf zurückgreifen.

Gruß

Janus
 

janus

Benutzer
Mitglied seit
07. Sep 2010
Beiträge
667
Punkte für Reaktionen
0
Punkte
0
Gut,
habe ich mich doch mal hingesetzt und aus meinen Hinweisen kurz ein Script gebastelt (Was derzeit nicht mittels reboot getestet ist!) Wer mag, kann es ja mal ausprobieren. Alles ohne gewähr, auf eigene Gefahr und ich hafte für keine Schäden, welche aus dem Script entstehen könnten.
Auf der Commandline mit aus und einloggen klappt das Script bei mir jedenfalls.

Gruß

Janus

#!/opt/bin/bash
#
# Script to start sispmctl webservice on default port 2638
SKINDIR="/opt/share/httpd/sispmctl/skin1"

COUNTER=10

start() {
# Check for sispm but try to start after $COUNTER tries. If sispm is found start immediately
while ( test `sispmctl -sqn 1>/dev/null ; echo $?` != "0" ); do
sleep 1
echo
COUNTER=$(($COUNTER - 1))
if( test $COUNTER = 0); then break;fi
done
#echo "sispmctl -u '${SKINDIR}' -lq" | /opt/bin/at now
/opt/bin/sispmctl -u "${SKINDIR}" -lq 2>&1 >/dev/null &
}

case "$1" in
start)
start
;;
stop)
killall sispmctl >/dev/null 2>&1
;;
*)
echo "Usage: $0 (start|stop)"
exit 1
;;
esac

# End
 
Zuletzt bearbeitet:

svensen

Benutzer
Mitglied seit
02. Nov 2011
Beiträge
13
Punkte für Reaktionen
0
Punkte
0
Hi janus,

danke für den Script.
Habe den nach "/opt/etc/init.d/S99dose" kopiert und die rechte 777 gegeben.
In der console läuft er auch, wenn ich ihn mit "sh S99dose start" starte und das WebUI funktioniert.

Sobald ich mich aber auslogge, wars das und das WebUI ist wieder offline.
Auch ein reboot der DS startet den Script NICHT wieder.

Per consolen Aufruf aus der root: "sh /opt/etc/init.d/S99dose start" geht wieder alles.

Wo ist hier der Wurm drin?

Gruß Sven
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat