Optware ordentlich mit start/stop versorgen

Status
Für weitere Antworten geschlossen.

Nils_

Benutzer
Mitglied seit
25. Okt 2010
Beiträge
35
Punkte für Reaktionen
1
Punkte
8
Geht leider nicht...

Hallo Leute,

ich hab mir den Thread nun gefühlte 400 mal durchgelesen und alles wie beschrieben gemacht. Leider habe ich bei meiner DS109j immer noch das Problem, dass kein vernünftiges Runterfahren bzw. Neu Starten möglich ist.

1. In meiner rc.local. ist alles auskommentiert.
2. Im Verzeichnis rc.d existiert eine optware.sh mit dem Script aus Post #1
3. Die Symlinkgeschichte für den opt Ordner ist gemacht.

Gruß
Nils
 
Zuletzt bearbeitet:

goetz

Super-Moderator
Teammitglied
Sehr erfahren
Mitglied seit
18. Mrz 2009
Beiträge
13.999
Punkte für Reaktionen
264
Punkte
373
Hallo,
hast Du noch woanders Scripte angelegt oder cronjobs angelegt?

Gruß Götz
 

Nils_

Benutzer
Mitglied seit
25. Okt 2010
Beiträge
35
Punkte für Reaktionen
1
Punkte
8
Hi,

nein nicht das ich wüsste. Hab nach der Schritt für Schritt Anleitung pyload installiert. Mehr ist zur normalen Firmware nicht verändert worden.

Nils
 

goetz

Super-Moderator
Teammitglied
Sehr erfahren
Mitglied seit
18. Mrz 2009
Beiträge
13.999
Punkte für Reaktionen
264
Punkte
373
Hallo,
wie startest Du pyload?

Gruß Götz
 

Nils_

Benutzer
Mitglied seit
25. Okt 2010
Beiträge
35
Punkte für Reaktionen
1
Punkte
8
Zur Zeit noch per Hand über den Befehl:
screen -dmS python /opt/pyload/pyLoadCore.py

Quasi, so wie in der Anleitung geschrieben ;-)
 

goetz

Super-Moderator
Teammitglied
Sehr erfahren
Mitglied seit
18. Mrz 2009
Beiträge
13.999
Punkte für Reaktionen
264
Punkte
373
Hallo,
und genau das ist Dein Problem, solange pyload läuft wird die DS nicht ordentlich runterfahren, es muß vorher gestoppt werden.

Gruß Götz
 

Wessix

Benutzer
Mitglied seit
14. Okt 2010
Beiträge
328
Punkte für Reaktionen
0
Punkte
22
zur kontrolle

Hi nur zur Kontrolle des Symlinks vielleicht:
Wenn du in der konsole ins hauptverzeichnis wechselst mit

cd /

und dann zu anzeigen der Ordner

ls

eintippst ist dann der Ordner "opt" türkis? War bei mir seit dem Symlink so.
Und hast du beachtet, dass es bei dem Symlink unterschiede zwischen den verschiedenen DS gibt. einmal wird auf @optware verlinkt und einmal nur auf optware

MFG Wessix
 

Nils_

Benutzer
Mitglied seit
25. Okt 2010
Beiträge
35
Punkte für Reaktionen
1
Punkte
8
Hmm, ja darüber bin ich mir im Klaren. Aber ich bin davon ausgegangen das das Script das macht. Also vor dem Runterfahren pyload bzw. alle ipkg-Prozesse abschiesst.

Ja der Ordner ist bei mir türkis und zeigt auf /volume1/opt.

Nachtrag: Ach Mist, lass mich raten ich muss das Ding per Script starten sonst kann er es nicht beenden. Also quasi den Autostart von pyload einbauen oder?
 
Zuletzt bearbeitet:

goetz

Super-Moderator
Teammitglied
Sehr erfahren
Mitglied seit
18. Mrz 2009
Beiträge
13.999
Punkte für Reaktionen
264
Punkte
373
Hallo,
Nachtrag: Ach Mist, lass mich raten ich muss das Ding per Script starten sonst kann er es nicht beenden. Also quasi den Autostart von pyload einbauen oder?
genau so ist es.

Gruß Götz
 

Nils_

Benutzer
Mitglied seit
25. Okt 2010
Beiträge
35
Punkte für Reaktionen
1
Punkte
8
So also ich habe jetzt eine Datei S77pyload unter /opt/etc/init.d erstellt.
Diese ist auführbar und der Pfad zum pyloadcore ist auch korrekt angepasst.

Leider startet pyload aber nicht automatisch.

screen -r:
There is no screen to be resumed.
 

goetz

Super-Moderator
Teammitglied
Sehr erfahren
Mitglied seit
18. Mrz 2009
Beiträge
13.999
Punkte für Reaktionen
264
Punkte
373
Hallo,
was gibt
Rich (BBCode):
ps ax|grep py
aus? Was passiert wenn Du
Rich (BBCode):
/opt/etc/init.d/S77pyload start
eingibst (danach nochmal den ps)?

Gruß Götz
 

Nils_

Benutzer
Mitglied seit
25. Okt 2010
Beiträge
35
Punkte für Reaktionen
1
Punkte
8
Also

die erste Ausgabe:
1449 root 2788 S grep py

Die zweite liefert:
-ash: /opt/etc/init.d/S77pyload: not found

Allerdings liegt das Script laut "dir" dort:
drwxr-xr-x 2 root root 4096 Oct 25 19:59 .
drwxr-xr-x 5 root root 4096 Oct 25 19:17 ..
-rwxr-xr-x 1 root root 520 Oct 25 19:59 S77pyload
 

goetz

Super-Moderator
Teammitglied
Sehr erfahren
Mitglied seit
18. Mrz 2009
Beiträge
13.999
Punkte für Reaktionen
264
Punkte
373
Hallo,
poste bitte den Inhalt des Scripts.
cat /opt/etc/init.d/S77pyload

Gruß Götz
 

Nils_

Benutzer
Mitglied seit
25. Okt 2010
Beiträge
35
Punkte für Reaktionen
1
Punkte
8
Aber gerne...

Rich (BBCode):
#!/bin/sh

prefix="/opt"
PATH=${prefix}/bin:${prefix}/sbin:/sbin:/bin:/usr/sbin:/usr/bin
NAME="screen"
DAEMON="screen -dms python /opt/pyload/pyLoadCore.py"
DAEMON_OPTS=""


start() {
echo "Starting Service: $NAME"
$DAEMON $DAEMON_OPTS
}

stop() {
if [ -n "`pidof $NAME`" ]; then
echo "Stopping Service: $NAME"
killall $NAME 2> /dev/null
fi
}

case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
sleep 4
start
;;
*)
echo "Usage: $0 (start|stop|restart)"
exit 1
;;
esac

exit 0
 

goetz

Super-Moderator
Teammitglied
Sehr erfahren
Mitglied seit
18. Mrz 2009
Beiträge
13.999
Punkte für Reaktionen
264
Punkte
373
Hallo,
was bringt denn
which python
oder
/opt/etc/init.d/S77pyload
bzw wenn Du mit cd /opt/etc/init.de in das Verzeichnis wechselst und
sh -x S77pyload start


Gruß Götz
 

Nils_

Benutzer
Mitglied seit
25. Okt 2010
Beiträge
35
Punkte für Reaktionen
1
Punkte
8
Hi,

hier die Ausgaben:

1. which python
/opt/bin/python

2. /opt/etc/init.d/S77pyload
-ash: /opt/etc/init.d/S77pyload: not found

3. sh -x S77pylo
+
: not foundline 2:
+ prefix=/opt
/sbin:/sbin:/bin:/usr/sbin:/usr/bin
+ NAME=screen
+ DAEMON=screen -dms python /opt/pyload/pyLoadCore.py
+ DAEMON_OPTS=
+
: not foundline 8:
+
: not foundline 9:
+ echo Starting Service: screen
Starting Service: screen
screen -dms python /opt/pyload/pyLoadCore.py
S77pyload: line 12: screen: not found
+ }
: not foundline 13: }
+
: not foundline 14:
S77pyload: line 22: syntax error: unexpected word (expecting "in")
 

goetz

Super-Moderator
Teammitglied
Sehr erfahren
Mitglied seit
18. Mrz 2009
Beiträge
13.999
Punkte für Reaktionen
264
Punkte
373
Hallo,
womit hast Du das script erstellt, unter Windows?

Gruß Götz
 

Nils_

Benutzer
Mitglied seit
25. Okt 2010
Beiträge
35
Punkte für Reaktionen
1
Punkte
8
Ja das Script wurde unter Windows, genauergenommen mit Notepad++, gespeichert und dann per putty aus die DS kopiert.
 

itari

Benutzer
Mitglied seit
15. Mai 2008
Beiträge
21.900
Punkte für Reaktionen
14
Punkte
0
Wahrscheinlich sind die Zeilenenden in dem Skript das Problem (vermutet Götz) und vielleicht solltest noch einmal nachschauen, ob du auch wirklich Linux-Zeilenenden verwendet hattest.

Itari
 

goetz

Super-Moderator
Teammitglied
Sehr erfahren
Mitglied seit
18. Mrz 2009
Beiträge
13.999
Punkte für Reaktionen
264
Punkte
373
Hallo,
mach mal ein
vi /opt/etc/init.d/S77pyload
wenn Du da in jeder Zeile ein ^M siehst, ist das der Fehler, nicht im Unix Format gespeichert.
Variante A vi mit :q [Enter] beenden, unter notepad++ im Unix-Format speichern und neu übertragen
Variante B im vi zu jedem ^M gehen und x drücken, wenn fertig
:wq [Enter]

Gruß Götz
 
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