[Sammelthread] - Pyload Installation / Konfiguration

Status
Für weitere Antworten geschlossen.

Binomico

Benutzer
Mitglied seit
01. Jun 2010
Beiträge
573
Punkte für Reaktionen
0
Punkte
42
Moin,

"python pyLoadCore.py -u" bzw "python pyLoadCore.py" und hier kommt dann was?

##############################################################
##############################################################

Hab n neues Startup-Script mit Update-Funktion ohne zusätzliche ipkg Paketinstallationen

http://pastebin.com/M5qX57Fq
 

frakki

Benutzer
Mitglied seit
29. Dez 2009
Beiträge
133
Punkte für Reaktionen
0
Punkte
16
Hey,
hab das Problem jetzt dadurch behoben, dass ich Pyload komplett gelöscht und Neuinstalliert habe!
Jetzt klappt komischerweise mein reconnect nicht mehr aber das bekomm ich auch noch hin :D

EDIT:
hab grad mal dein neues Script getestet:


Rich (BBCode):
pyLoad successfully updated
Starting pyLoad
Daemon PID 21816
/opt/pyload/pyLoardCore.py: No such file or directory
pyLoad has not been installed correctly!
DiskStation>

Das bekomme ich als Fehler, wenn er startet!
Der Dateiname ist irgendwie falsch?! das ist ein R zuviel!

Zeile 26 ist der Übeltäter

Jetzt bekomme ich folgenden Error:

Rich (BBCode):
DiskStation> /opt/etc/init.d/S99pyload start
Starting pyLoad
Daemon PID 942
sh: 4642: unknown operand
pyLoad has not been installed correctly!
DiskStation>
 
Zuletzt bearbeitet:

GoldenClaw

Benutzer
Mitglied seit
18. Feb 2011
Beiträge
119
Punkte für Reaktionen
0
Punkte
0
heyho!
ich hab mal wieder ein Problem :(
Hab vorhin meinen DSM geupdated, und seitdem startet pyload nicht mehr automatisch. Jetzt hab ich versucht, es manuell zu starten, folgendes Ergebnis:

/volume1/opt/etc/init.d/S99pyload.sh start
-> -ash: /volume1/opt/etc/init.d/S99pyload.sh: not found

/volume1/@optware/etc/init.d/S99pyload.sh start
-> /volume1/@optware/etc/init.d/S99pyload.sh: line 54: python: not found

Also der Ordner /opt/ ist irgendwie nicht mehr vorhanden, und python scheint er auch nicht mehr zu finden -.-
Muss ich jetzt alles erneut konfigurieren, oder was schlagt ihr vor?

Gruß und danke,
Claw
 

frakki

Benutzer
Mitglied seit
29. Dez 2009
Beiträge
133
Punkte für Reaktionen
0
Punkte
16
Der Ordner opt wird schon noch vorhanden sein. Aber du musst /opt/etc/init.d/S99pyload.sh start nehmen ohne volume1
 

GoldenClaw

Benutzer
Mitglied seit
18. Feb 2011
Beiträge
119
Punkte für Reaktionen
0
Punkte
0
nein, das Problem war tatsächlich, dass Python nicht mehr gefunden wurde -.-
hab jetzt ipkg, pyload, python, etc. neu installiert. Jetzt gehts wieder, ist trotzdem nervig.

Aber danke.

Gruß
Claw
 

Binomico

Benutzer
Mitglied seit
01. Jun 2010
Beiträge
573
Punkte für Reaktionen
0
Punkte
42
hab grad mal dein neues Script getestet:


Rich (BBCode):
pyLoad successfully updated
Starting pyLoad
Daemon PID 21816
/opt/pyload/pyLoardCore.py: No such file or directory
pyLoad has not been installed correctly!
DiskStation>
pyLoad wird mit der Process ID 21816 gestartet (überprüf das übers Webinterface). Hast du evtl. ein Zeilenumbruch in
if [ $(pidof python $INSTDIR/pyLoardCore.py) > /dev/null ]
Das bekomme ich als Fehler, wenn er startet!
Der Dateiname ist irgendwie falsch?! das ist ein R zuviel!
Ein R zuviel? Versteh ich nicht ...

Edit: shit okay habs geblickt ... und gleich gefixt! THANKS :)

Gruß
 
Zuletzt bearbeitet:

frakki

Benutzer
Mitglied seit
29. Dez 2009
Beiträge
133
Punkte für Reaktionen
0
Punkte
16
pyLoad wird mit der Process ID 21816 gestartet (überprüf das übers Webinterface). Hast du evtl. ein Zeilenumbruch in
if [ $(pidof python $INSTDIR/pyLoardCore.py) > /dev/null ]

Ne kein Zeilenumbruch drin.

Verstehs auch nicht aber muss ich Mittwoch mal drüber schauen.
Hast du / jemand vll ne Idee wieso das reconnecten nicht klappt? Wenn ich die reconnect.sh per Putty ausführe od. mittels Bash im AdminTool klappt der reconnect. Wenns pyload allein versucht klappt er nicht!
Inhalt der reconnect.sh

Rich (BBCode):
wget --delete-after http://192.168.1.1/cgi-bin/disconnect.exe
sleep 5
wget --delete-after http://192.168.1.1/cgi-bin/connect.exe
sleep 5

Vor dem Update hats funktioniert!
 

Binomico

Benutzer
Mitglied seit
01. Jun 2010
Beiträge
573
Punkte für Reaktionen
0
Punkte
42
Hab das Startup-Script gleich noch etwas aufgehübscht, für den Fall, dass pyLoad schon läuft und mittels Script nochmals ausgeführt wird ... (das r muss mir irgendwie in bastebin reingerutscht sein).

Kann es sein, dass reconnect mit root Rechten ausgeführt werden muss? Kannst du testen indem du dich am Terminal mit admin anmeldest und ausführst.

Btw wo liegt das Script genau?
 

goetz

Super-Moderator
Teammitglied
Sehr erfahren
Mitglied seit
18. Mrz 2009
Beiträge
14.160
Punkte für Reaktionen
407
Punkte
393
Hallo,
@GoldenClaw
Du hattest wahrscheinlich Deine ipkg Installation auf Symlink umgestellt. Nach dem Upgrade ist dieser Symlink weg. Es hätte gereicht diesen wieder anzulegen.
Rich (BBCode):
ln -s /volume1/@optware /opt

Gruß Götz
 

Binomico

Benutzer
Mitglied seit
01. Jun 2010
Beiträge
573
Punkte für Reaktionen
0
Punkte
42
Und im Webinterface hast du unter Optionen -> Reconnect unter Method "./reconnect.sh" eingetragen?
 

frakki

Benutzer
Mitglied seit
29. Dez 2009
Beiträge
133
Punkte für Reaktionen
0
Punkte
16
Jo hab ich!
Im log kommt immer nur folgendes:

28.03.2011 20:04:21 INFO Starting reconnect
491 28.03.2011 20:04:34 INFO Reconnected, new IP: 62.x.x.x

Was allerdings natürlich die alte ist :(
 

Binomico

Benutzer
Mitglied seit
01. Jun 2010
Beiträge
573
Punkte für Reaktionen
0
Punkte
42
Check mal die Ausführung mit nicht-root-Rechten ... nicht einleuchtend, warum es vor dem Update geklappt hat, so könnte ja jeder in Netzwerk die Netzanbindung kappen.
 

frakki

Benutzer
Mitglied seit
29. Dez 2009
Beiträge
133
Punkte für Reaktionen
0
Punkte
16
Man brauch die datei nur im Browser aufrufen :) Das reicht bei nem w700v zum verbindungstrennen :D

Okay als Admin bekomme ich tatsächlich permission denied! Das erklärts natürlich :) Aber wie bekomm ich das nun hin?
 

Binomico

Benutzer
Mitglied seit
01. Jun 2010
Beiträge
573
Punkte für Reaktionen
0
Punkte
42
Hab da vermutlich ne Lösung ... bin aber erstmal afk ... kommt heute Abend!
 

Binomico

Benutzer
Mitglied seit
01. Jun 2010
Beiträge
573
Punkte für Reaktionen
0
Punkte
42
Also los gehts! (alles unter root Rechten)

1. ipkg install gcc
2. erstell eine Datei mit Inhalt (s.u.) und speichere unter dem Namen prereconnect.c im pyLoad-Verzeichnis
3. kompiliere diese "gcc prereconnect.c -o prereconnect"
4. set UID, damit Jeder diese aufrufen kann und diese den Befehl als root weiterleitet "chmod 4001 prereconnect"
5. leg eine weitere Datei doreconnect.sh im pyLoad-Verzeichnis an, die bei einem Reconnect die prereconnect aufruft
6. gib in den pyLoad-Optionen die doreconnect.sh als Reconnect-Datei an "./doreconnect.sh"

prereconnect.c
Code:
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
#include <unistd.h>

int main()
{
   setuid( 0 );
   system( "[COLOR="red"]/opt/pyload/reconnect.sh[/COLOR]" );

   return 0;
}

doreconnect.sh
Code:
#!/bin/sh
cd /opt/pyload/
./prereconnect

Das könnte man evtl. noch etwas einfach gestallten (reconnect.sh soll prereconnect, die den reconnect Befehl beinhaltet, starten), bin mir da aber nicht so ganz sicher, müsste getestet werden, obiger Vorschlag sollte eigentlich hinhauen.
 
Zuletzt bearbeitet:

frakki

Benutzer
Mitglied seit
29. Dez 2009
Beiträge
133
Punkte für Reaktionen
0
Punkte
16
Hey, danke für deine Bemühungen :) Habs soweit jetzt mal versucht aber hänge noch bei folgendem Problem!

1. doreconnect.sh Line3 müsste prereconnect.c heissen oder?

Wenn ichs so nenne bekomme ich folgenden fehler:

DiskStation> sh doreconnect.sh
./prereconnect.c: line 6: syntax error: unexpected "("
 

frakki

Benutzer
Mitglied seit
29. Dez 2009
Beiträge
133
Punkte für Reaktionen
0
Punkte
16
Hey, danke für deine Bemühungen :) Habs soweit jetzt mal versucht aber hänge noch bei folgendem Problem!

1. doreconnect.sh Line3 müsste prereconnect.c heissen oder?

Wenn ichs so nenne bekomme ich folgenden fehler:

DiskStation> sh doreconnect.sh
./prereconnect.c: line 6: syntax error: unexpected "("

EDIT:
als non-root bekomme ich:

DiskStation> sh doreconnect.sh
/bin/sh: can't open './prereconnect.c'
 
Zuletzt bearbeitet:

Binomico

Benutzer
Mitglied seit
01. Jun 2010
Beiträge
573
Punkte für Reaktionen
0
Punkte
42
argh das ist die shice wenn man zwei Sachen gleichzeitig macht (TV und Forum) ... die doreconnect.sh muss natürlich die kompilierte prereconnect (ohne .c) aufrufen ... habs oben korrigiert. Die prereconnect.c kannst du löschen.

btw. grad läuft No Country for Old Men im Zweiten, einer meiner Top Lieblingsfilme :)
 
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