Willkommen im #Neuland
Login wie bei quake.ingame.de zuvor, die Passwörter aus der alten Datenbank wurden aber gelöscht - einmal hier neu anfordern.
Wer seine E-Mail-Adresse nicht mehr hat oder kennt, bitte eine Nachricht mit Infos schicken o. im Discord melden.

PQ Discord Server: #planetquake                                                                                                                                         Spenden? Hier entlang!

FreeNAS Autostart geht nicht

GNU/Linux-, *BSD- und Fricklerforum
Antworten
AG1M
Uriel
Uriel
Beiträge: 2919
Registriert: Aug 2003

FreeNAS Autostart geht nicht

Beitrag von AG1M »

Hallo,

ich nutze FreeNAS 0.7.2 (FreeBSD 7.3-RELEASE-p6), habe soweit alles eingestellt und hinbekommen wie ich es benötige.

Ich habe auch die aktuelle Version von PyLoad (4.0.3) installieren können und es funktioniert alles soweit so gut. Nur der Autostart von PyLoad geht nicht.

Wenn ich per SSH PyLoad mit

Code: Alles auswählen

/usr/home/spoob-pyload-tip/pyLoadCore.py --daemon
per Hand starte -> kein Problem.

Wenn ich PyLoad im Webinterface (Befehl ausführen) mit

Code: Alles auswählen

/usr/home/spoob-pyload-tip/pyLoadCore.py --daemon
per Hand starte -> kein Problem.

Habe auch schon im Menüpunkt Befehlsscript das ganze eingefügt:

Bild

Geht nicht, kein Autostart.

Dann habe ich einen Cronjob eingerichtet:

Bild

Geht nicht, kein Autostart. Das verrückte ist aber, wenn ich auf " Jetzt ausführen" klicke, dann startet PyLoad :confused:

Bild


Weiß da jemand was ich eintragen muss, das der Autostart auch wirklich geht?

Wäre für Ratschläge sehr dankbar :wave:
pawlak
Assist
Assist
Beiträge: 5811
Registriert: Feb 2002

Beitrag von pawlak »

Liegt /usr/home/spoob-pyload-tip/pyLoadCore.py auf einer anderen Partition, die zu diesem Zeitpunkt noch nicht eingehängt ist? Sonst wüsste ich auch nichts, kenne freenas aber auch nicht.
Original geschrieben von pagenez
ach und pawlak?
du verhurrtes stück einer dreckwurst, halt doch bitte dein maul, ja? wer absolut kein real-life hat, einer wie du, der absolut nichts zu tun hat, als seine scheiße im irc auf andere abzulassen, sollte sich seinen daumen in das arschloch schieben, die augen schließen und dabei an *****n denken.
alles klar?
gut!
AG1M
Uriel
Uriel
Beiträge: 2919
Registriert: Aug 2003

Beitrag von AG1M »

Nein es gibt nur eine Partition wo alles liegt. Ich verstehe es einfach nicht was ich falsch mache :/
fame
Combo
Combo
Beiträge: 13806
Registriert: Okt 2000
Wohnort: LK Rosenheim

Beitrag von fame »

Kenn mich leider mit Freenas wenig aus, aber wo genau wird das Postinit denn ausgefuehrt? Weisst du das zufaellig?

Ansonsten koenntest du mal folgendes versuchen:

Code: Alles auswählen

/usr/home/spoob-pyload-tip/pyLoadCore.py --daemon &> /tmp/load.txt
Wenn nach dem Hochfahren die Datei /tmp/load.txt vorhanden ist: Reingucken was drinsteht. Wenn sie nicht vorhanden ist wird der Befehl nicht ausgefuehrt. Dann wuerde ich mal herrausfinden an welcher Stelle Freenas das Postinit Zeug ausfuehrt und nachgucken was da schiefgeht.
wildtollwut
Biker
Biker
Beiträge: 1031
Registriert: Mär 2003

Beitrag von wildtollwut »

Kann man pyload nicht "richtig" als Paket installieren? Dann könntest du es per

Code: Alles auswählen

/etc/rc.d/pyload start
starten und in die rc.conf eintragen. Dann sollte der Start klappen. Ansonsten könnte ich mir noch ein Rechteproblem vorstellen, oder daß es gestartet wird, bevor das Netzwerk initialisiert ist o.ä.
Gründungsmitglied und Vorstandsvorsitzender der ersten offziellen PQ.de-Exorzisten-(CS-Austreiber)-Offensive.
Bild
AG1M
Uriel
Uriel
Beiträge: 2919
Registriert: Aug 2003

Beitrag von AG1M »

@fame

Habe ich getan, die Datei wird erstellt, ist aber 0 Byte groß und ist leer. Habe nun extra ein Script nach der Anleitung FreeNAS forum • View topic - Shell scripting FAQ erstellt, geht trotzdem nicht :/ Wenn ich wieder per Hand den Cronjob ausführe, geht alles wunderbar.

@wildtollwut

Bei der neuesten FreeNAS Version die ich nutze, geht das leider nicht, habe darum über einen seperaten Installer das ganze gemacht, habe es sogar getestet nicht als root zu starten (als angelegter Benutzer) und da geht es auch zu starten, aber der Autostart geht nicht, egal ob per Cronjob oder Befehlscript beim starten.


Ich weiß langsam nicht mehr was ich noch machen kann.
fame
Combo
Combo
Beiträge: 13806
Registriert: Okt 2000
Wohnort: LK Rosenheim

Beitrag von fame »

Ok, dass die Datei erstellt wird heisst dass dein Befehl an irgendeiner Stelle ausgefuehrt wird. Dass die Datei leer ist heisst es gab keine Ausgabe/Error des Programms

Ich weiss nicht wieviel Unix Erfahrung du hast. Fuehl dich also bitte nicht beleidigt falls du dass schon 1000. gecheckt hast :)

Ein

Code: Alles auswählen

ps -ef | grep -i pyload
nach dem Start gibt also definitiv nix aus?

Mhh. Eine Moeglichkeit waere noch ein eigenes Init Skript zu erstellen. Ist jetzt fuer einen einfachen Befehl nicht ideal, aber vielleicht klappts?! Bin sonst auch gerade etwas ratlos :confused:

Ahso: Gibt es eine Moeglichkeit pyload irgendwie mit --verbose, --debug oder aehnlichem zu starten? Bzw. schreibt das Programm ueberhaupt in eine Logdatei? Weil es wird ja irgendwo wenigstens versucht es zu starten, vielleicht steht dort was drin.
AG1M
Uriel
Uriel
Beiträge: 2919
Registriert: Aug 2003

Beitrag von AG1M »

Ich bin Unix Noob :ugly:

Ein

Code: Alles auswählen

ps -ef | grep -i pyload
gibt nichts aus.

pyLoad erstellt Log Dateien, aber nur mit Infos über das Programm nachdem es gestartet ist.

Wie erstelle ich ein Init Skript das mein Script als mein angelegter Benutzer ausführe?

Danke :)
wildtollwut
Biker
Biker
Beiträge: 1031
Registriert: Mär 2003

Beitrag von wildtollwut »

versuche mal was derartiges:

Code: Alles auswählen

su - deinbenutzername -c "/usr/home/spoob-pyload-tip/pyLoadCore.py --daemon"
Aber ich weiß nicht, ob das weiterhilft. Vielleicht funktioniert ja der Debug-Modus und gibt zusätzliche Informationen (pyLoadCore.py -d --daemon)? Eigentlich kann es aber wirklich nur sein, daß irgendetwas noch nicht zur Verfügung steht, das er braucht. Von Ferne ist das schwierig zu diagnostizieren. Ich würde schrittweise vorgehen, z.B. erstmal ein ganz einfaches Python-Skript starten, das nur eine Datei schreibt, etwas ausgibt oder dergleichen und mich dann Stück für Stück vorarbeiten. Dir als Anfänger wird das aber wahrscheinlich schwerer fallen.

Ein ganz einfaches Skript wäre z.B.:

Code: Alles auswählen

myfile = open("myfile", "w")
myfile.write("hehe")
myfile.close()
Es schreibt "hehe" in die Datei myfile. Das könntest du mal beim Start ausführen lassen und schauen, ob es das tut, was es soll :)
Gründungsmitglied und Vorstandsvorsitzender der ersten offziellen PQ.de-Exorzisten-(CS-Austreiber)-Offensive.
Bild
AG1M
Uriel
Uriel
Beiträge: 2919
Registriert: Aug 2003

Beitrag von AG1M »

Hey danke,

folgendes ist passiert nachdem ich:

Code: Alles auswählen

su - agim -c "/usr/home/spoob-pyload-tip/pyLoadCore.py --daemon" 
eingeben habe:

Code: Alles auswählen

Traceback (most recent call last):
  File "/usr/home/spoob-pyload-tip/pyLoadCore.py", line 42, in <module>
    from module import InitHomeDir
  File "/usr/home/spoob-pyload-tip/module/InitHomeDir.py", line 77, in <module>
    makedirs(configdir, 0700)
  File "/usr/local/lib/python2.6/os.py", line 157, in makedirs
    mkdir(name, mode)
OSError: [Errno 13] Permission denied: '/mnt/pyload'
Für mich sieht das überall nach einem Rechteproblem aus oder? Wenn ja wie kann ich das ändern? :wave:

P.S. was mich am meisten wundert ist der Fehler "OSError: [Errno 13] Permission denied: '/mnt/pyload'", denn den Ordner "/mnt/pyload" gibt es garnicht. Bei mnt ist nur mein Raid 1 drinn und meine Ordner mit verschiedenen SMB Freigaben.
wildtollwut
Biker
Biker
Beiträge: 1031
Registriert: Mär 2003

Beitrag von wildtollwut »

Laut Quellcode (https://bitbucket.org/spoob/pyload/src/ ... HomeDir.py) versucht er an der Stelle die Konfigurationsdatei anzulegen, scheitert aber, weil er nicht darf. Das Konfigurationsverzeichnis setzt sich aus Home-Verzeichnis und pyload zusammen. Seltsamerweise denkt er, dein Home-Verzeichnis sei "/mnt". Hast du das vielleicht bei der Konfiguration irgendwo falsch angegeben (oder irgendwann mal mit --configdir /mnt gestartet)? Was sagt denn

Code: Alles auswählen

su - agim -c "echo $HOME"
?
Gründungsmitglied und Vorstandsvorsitzender der ersten offziellen PQ.de-Exorzisten-(CS-Austreiber)-Offensive.
Bild
AG1M
Uriel
Uriel
Beiträge: 2919
Registriert: Aug 2003

Beitrag von AG1M »

Abend,

also

Code: Alles auswählen

su - agim -c "echo $HOME"
gibt

Code: Alles auswählen

/root
aus.

Habe das pyload Setup noch einmal neu gemacht und das Config Verzeichniss von

Code: Alles auswählen

/root/pyload
(war Standardvorgabe)

auf

Code: Alles auswählen

/usr/home/spoob-pyload-tip/pyload
geändert und konnte danach ohne Fehlermeldung

Code: Alles auswählen

su - agim -c "/usr/home/spoob-pyload-tip/pyLoadCore.py --daemon"
ausführen, das seltsame ist aber das dann zwar

Code: Alles auswählen

starting pyLoad
Daemon PID 15134
steht, aber pyload nicht aktiv in den Prozessen (Top) angezeigt wird und der Webserver auch nicht zu erreichen ist. Mache ich das ganze als root, geht es. :confused:

Was mache ich falsch?

Ich könnte pyload zwar als root starten lassen, aber dann habe ich ein anders Problem. Dann kann ich nicht mehr die Dateien auf der SMB Freigabe löschen, weil dann der Fehler kommt "nur Benutzer root" hat dafür Rechte.

Bild

Starte ich per Hand pyload (nach dem booten von FreeNAS) als mein Benutzer (agim) der extra für die Freigaben etc. angelegt wurde, kann ich alles löschen und bearbeiten wie ich mag. Aber irgendwie startet das ganze nicht automatisch :(
pawlak
Assist
Assist
Beiträge: 5811
Registriert: Feb 2002

Beitrag von pawlak »

Starte es doch mal ohne --daemon, dann bekommst du vielleicht ne Fehlermeldung.

Ansonsten schau mal in ~/.pyLoad/Log/log.txt was da so drinsteht.
Original geschrieben von pagenez
ach und pawlak?
du verhurrtes stück einer dreckwurst, halt doch bitte dein maul, ja? wer absolut kein real-life hat, einer wie du, der absolut nichts zu tun hat, als seine scheiße im irc auf andere abzulassen, sollte sich seinen daumen in das arschloch schieben, die augen schließen und dabei an *****n denken.
alles klar?
gut!
wildtollwut
Biker
Biker
Beiträge: 1031
Registriert: Mär 2003

Beitrag von wildtollwut »

Versuch mal, den Befehl im Skript auf folgendes (hoffentlich Überkomplexe) zu ändern:

Code: Alles auswählen

/usr/local/bin/sudo -u agim -H sh -c '/usr/home/spoob-pyload-tip/pyLoadCore.py --daemon'
Vielleicht hilft das irgendwie weiter, -H weist nochmal explizit darauf hin, daß das Home-Verzeichnis des entsprechenden Nutzers gewählt wird.
Gründungsmitglied und Vorstandsvorsitzender der ersten offziellen PQ.de-Exorzisten-(CS-Austreiber)-Offensive.
Bild
AG1M
Uriel
Uriel
Beiträge: 2919
Registriert: Aug 2003

Beitrag von AG1M »

Werde beides morgen testen, danke nochmals.
AG1M
Uriel
Uriel
Beiträge: 2919
Registriert: Aug 2003

Beitrag von AG1M »

@pawlak

Das passiert ohne --daemon

Code: Alles auswählen

/usr/home/spoob-pyload-tip/pyLoadCore.py
Traceback (most recent call last):
  File "/usr/home/spoob-pyload-tip/pyLoadCore.py", line 599, in <module>
    pyload_core.start()
  File "/usr/home/spoob-pyload-tip/pyLoadCore.py", line 259, in start
    self.config = ConfigParser()
  File "/usr/home/spoob-pyload-tip/module/ConfigParser.py", line 47, in __init__
    self.checkVersion()
  File "/usr/home/spoob-pyload-tip/module/ConfigParser.py", line 87, in checkVersion
    self.checkVersion(n + 1)
  File "/usr/home/spoob-pyload-tip/module/ConfigParser.py", line 87, in checkVersion
    self.checkVersion(n + 1)
  File "/usr/home/spoob-pyload-tip/module/ConfigParser.py", line 87, in checkVersion
    self.checkVersion(n + 1)
  File "/usr/home/spoob-pyload-tip/module/ConfigParser.py", line 65, in checkVersion
    f = open("pyload.conf", "rb")
IOError: [Errno 13] Permission denied: 'pyload.conf'
Also wieder eine reine Zugriffssache? Kann ich irgendwie allen Ordnern und Datein volle Schreibrechte für meinen User agim geben? Das müsste ja das Problem beheben oder?

@wildtollwut

Dein Script geht leider nicht, da kommt das:

Code: Alles auswählen

-bash: /usr/local/bin/sudo: No such file or directory
Sorry für meine Fragen, ich bin leider Unix Anfänger.
pawlak
Assist
Assist
Beiträge: 5811
Registriert: Feb 2002

Beitrag von pawlak »

AG1M hat geschrieben:Also wieder eine reine Zugriffssache? Kann ich irgendwie allen Ordnern und Datein volle Schreibrechte für meinen User agim geben? Das müsste ja das Problem beheben oder?
Ja, das kannst du, aber lass das mal lieber.

Aber gib deinem Nutzer auf jeden Fall Zugriff auf die ~/.pyLoad-Sachen:

chown -r agim ~/.pyload

Danach schauste, was für ne Fehlermeldung kommt, oder ob überhaupt eine kommt.
Original geschrieben von pagenez
ach und pawlak?
du verhurrtes stück einer dreckwurst, halt doch bitte dein maul, ja? wer absolut kein real-life hat, einer wie du, der absolut nichts zu tun hat, als seine scheiße im irc auf andere abzulassen, sollte sich seinen daumen in das arschloch schieben, die augen schließen und dabei an *****n denken.
alles klar?
gut!
AG1M
Uriel
Uriel
Beiträge: 2919
Registriert: Aug 2003

Beitrag von AG1M »

Ich wollte auch nur den pyload Ordner ändern. Den Rest lasse ich unberührt.

Es geht! Mit dem chown -R agim ORDNER (musste nur das R groß schreiben) Es lag echt nur daran, vielen tausend dank! Der Autostart geht nun wie es soll :w00t:

Zusammenfassung, mein User hatte einfach nur keine Schreibrechte für den pyload Ordner + die darin liegenden Dateien und es wurden keine Fehlermeldungen vorab angezeigt, erst ohne --daemon kam eine Meldung -> kein Zugriff.
Antworten