OMV 3.X und jDownloader

    This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

    • OMV 3.X und jDownloader

      hallo,

      habe immer wieder probleme mit dem jDownloader, besonders nach OMV neustart oder jDownloader updates.

      Problem: jDownloader service startet nicht mehr, einziges mir bekanntes funktionierendes work around - jDownloader neuinstallieren ... lästig.

      weder über omv interface noch über console lässt sich jdownloader zum start überreden.

      Ausgabe der console:

      Source Code

      1. root@bananas:~# service jdownloader status
      2. ● jdownloader.service - jdownloader
      3. Loaded: loaded (/lib/systemd/system/jdownloader.service; enabled)
      4. Active: failed (Result: start-limit) since Di 2017-03-07 00:08:53 CET; 1min 38s ago
      5. Process: 1080 ExecStart=/bin/sh -c /usr/bin/java -Djava.awt.headless=true -jar /opt/jdownloader/JDownloader.jar > /media/f5b907ee-78b1-4769-bbb1-f0696be60f2a/jDownloader/jdownloader.log 2>&1 (code=exited, status=1/FAILURE)
      6. Main PID: 1080 (code=exited, status=1/FAILURE)
      7. Mär 07 00:08:52 bananas systemd[1]: jdownloader.service: main process exited, code=e...URE
      8. Mär 07 00:08:52 bananas systemd[1]: Unit jdownloader.service entered failed state.
      9. Mär 07 00:08:52 bananas systemd[1]: jdownloader.service holdoff time over, schedulin...rt.
      10. Mär 07 00:08:52 bananas systemd[1]: Stopping jdownloader...
      11. Mär 07 00:08:52 bananas systemd[1]: Starting jdownloader...
      12. Mär 07 00:08:52 bananas systemd[1]: Started jdownloader.
      13. Mär 07 00:10:28 bananas systemd[1]: Stopped jdownloader.
      14. Hint: Some lines were ellipsized, use -l to show in full.
      Display All
      wäre nice da mal ne lösung zu finden welche nicht heisst "neuinstallieren" ;)

      danke
    • update:

      Source Code

      1. root@bananas:~# cd /opt/jdownloader/
      2. root@bananas:/opt/jdownloader# ls
      3. build.json Core.jar jd license_german.txt logs translations
      4. captchas extensions JDownloader.jar.backup.1 licenses themes update
      5. cfg java libs license.txt tmp
      6. root@bananas:/opt/jdownloader# cp JDownloader.jar.backup.1 JDownloader.jar
      7. root@bananas:/opt/jdownloader# ls
      8. build.json extensions JDownloader.jar.backup.1 license.txt translations
      9. captchas java libs logs update
      10. cfg jd license_german.txt themes
      11. Core.jar JDownloader.jar licenses tmp
      12. root@bananas:/opt/jdownloader# service jdownloader start
      13. root@bananas:/opt/jdownloader# service jdownloader status
      14. ● jdownloader.service - jdownloader
      15. Loaded: loaded (/lib/systemd/system/jdownloader.service; enabled)
      16. Active: active (running) since Di 2017-03-07 00:29:30 CET; 4s ago
      17. Main PID: 7039 (sh)
      18. CGroup: /system.slice/jdownloader.service
      19. ├─7039 /bin/sh -c /usr/bin/java -Djava.awt.headless=true -jar /opt/jdownloade...
      20. └─7041 /usr/bin/java -Djava.awt.headless=true -jar /opt/jdownloader/JDownload...
      21. Mär 07 00:29:30 bananas systemd[1]: Started jdownloader.
      22. root@bananas:/opt/jdownloader#
      Display All

      frage jetzt: warum löscht er die die JDownloader.jar bzw. macht eine backup dadraus?
    • Also ich habe exakt das gleiche Problem seit ich auf OMV 3.0.XX umgestiegen bin, mit OMV 2.0.xx gab es keinerlei Probleme mit JD2
      Immer nach dem Update von JD bleibt umbenannte JDownloader.jar.backup.1 Datei im ordner /opt/jdownloader weshalb der Dienst nicht mehr gestartet werden kann.

      Nach dem ich die Datei JDownloader.jar.backup.1 zu JDownloader.jar umbenenne und einmal in OMV webif JD deaktiviere und wieder aktiviere läuft JD wieder.
      Leider stellte ich fest, dass es ein Dauerzustand ist weil von 10 Updates 1 läuft fehlerfrei.

      Sind wir die einzige Personen hier die dieses Problem haben???

      The post was edited 1 time, last by Aux ().

    • mach mal
      service jdownloader status
      in der ssh console vom omv. da sollte das start script stehen welchen jdownloader aufruft - in diesem ist ein restart eintrag - dieser steht auf allways ... stell den um auf no

      musst nach nem update zwar manuell neu starten, aber das problem scheint zu sein, dass das script den service neustartet bevor das update durch ist und dann knallts ihm den vogel raus ;)
    • Danke @draddy

      du meinst /lib/systemd/system/jdownloader.service
      ja die Zeile (12 glaube ich) kann mann abändern und es vereinfacht etwas das "wiederbeleben" aber damit ist das Problem nicht gelöst.

      Ich weiß nicht genau aber mir kommt das ganze so vor als wenn ich die CPU-Quota höher stelle dann passiert der Fehler,
      bei mir läuft es mit 80% weil wenn ich runtergehe ist irgendwie das download langsamer (vllt. bilde ich mir das nur ein).
      Habe es aber nicht ausgiebig getestet wg. Zeitmangel.
    • Also ich warte nicht so lange :)

      ich gehe vor dem update über PuTTY in die console und tipe top u jdownloader ein
      und beobachte die Auslastung von jdownloader, wenn es dann auf ca. die hälfte vom eingestellten CPU-Quota Wert sinkt (z.B CPU-Quota = 80, Wert sinkt auf 40% oder weniger) und bleit ca 15 Sekunden konstant, dann weiß ich, dass das Update fertig ist.
      Wenn aber jdownloader aus der top liste komplett verschwindet dann weiß ich auch, dass was schief gelaufen ist. ;)
    • How-to JDownloader



      1. wenn noch nicht geschehen, richtiges Java installieren - dazu bitte google fragen ;)


      2. Verzeichnis für JDownloader (JD) erstellen:

      Source Code

      1. mkdir /opt/jdown



      3. JD runterladen

      Source Code

      1. cd /opt/jdown
      2. wget http://installer.jdownloader.org/JDownloader.jar


      4. JD installieren

      Source Code

      1. java -jar JDownloader.jar -norestart
      Jetzt läufts erstmal ein paar minuten, unteranderem werden updates installiert.
      wenn die Consoleneingabe wieder frei für Eingaben ist ...
      5. myJDownloader logins eintragen, dazu erneut

      Source Code

      1. java -jar JDownloader.jar -norestart
      am ende sollte ein kleiner dialog folgen der eure myJDownloader Mailadresse sowie Passwort verlangt.


      6. normal sollte JD jetzt als root laufen und im myJdownloader auftauchen, in der console sollte

      Source Code

      1. set CONNECTED
      erscheinen. Sonst mit:

      Source Code

      1. java -jar JDownloader.jar &
      starten und auf myJdownloader kurz prüfen. Wenn dieser läuft am besten über die Einstellungen wieder beenden und mit

      Source Code

      1. ps faux | grep java
      prüfen das JD wirklich beendet wurde. (sonst hilft kill ;))


      7. Benutzer für JD anlegen

      Source Code

      1. useradd -M -d /opt/jdown -s /bin/bash jdownloader


      8. Berechtigungen für den benutzer setzen.

      Source Code

      1. chown -R jdownloader:jdownloader /opt/jdown


      9. Das Startscript

      Source Code

      1. nano /etc/init.d/jdownloader
      Dort fügen wir dieses Script ein:

      Shell-Script

      1. #!/bin/sh
      2. ### BEGIN INIT INFO
      3. # Provides: <NAME>
      4. # Required-Start: $local_fs $network $named $time $syslog
      5. # Required-Stop: $local_fs $network $named $time $syslog
      6. # Default-Start: 2 3 4 5
      7. # Default-Stop: 0 1 6
      8. # Description: <DESCRIPTION>
      9. ### END INIT INFO
      10. SCRIPT='java -Djava.awt.headless=true -jar /opt/jdown/JDownloader.jar'
      11. RUNAS='jdownloader'
      12. NAME='jdownloader'
      13. PIDFILE=/opt/jdown/JDownloader.pid
      14. LOGFILE=/dev/null
      15. start() {
      16. if [ -f $PIDFILE ] && kill -0 $(cat $PIDFILE); then
      17. echo 'Service already running' >&2
      18. return 1
      19. fi
      20. echo 'Starting service…' >&2
      21. local CMD="$SCRIPT &> \"$LOGFILE\" & echo \$!"
      22. su -s /bin/sh $RUNAS -c "$CMD"
      23. sleep 5
      24. PID=$(cat $PIDFILE)
      25. if pgrep -u $RUNAS -f "$SCRIPT" > /dev/null
      26. then
      27. echo "$NAME is now running, the PID is $PID"
      28. else
      29. echo "Error! Could not start $NAME!"
      30. fi
      31. }
      32. stop() {
      33. if [ ! -f "$PIDFILE" ] || ! kill -0 $(cat "$PIDFILE"); then
      34. echo 'Service not running' >&2
      35. return 1
      36. fi
      37. echo 'Stopping service…' >&2
      38. kill -15 $(cat "$PIDFILE") && rm -f "$PIDFILE"
      39. echo 'Service stopped' >&2
      40. }
      41. status() {
      42. printf "%-50s" "Checking $NAME..."
      43. if [ -f $PIDFILE ]; then
      44. PID=$(cat $PIDFILE)
      45. if [ -z "$(ps axf | grep ${PID} | grep -v grep)" ]; then
      46. printf "%s\n" "The process appears to be dead but pidfile still exists"
      47. else
      48. echo "Running, the PID is $PID"
      49. fi
      50. else
      51. printf "%s\n" "Service not running"
      52. fi
      53. }
      54. case "$1" in
      55. start)
      56. start
      57. ;;
      58. stop)
      59. stop
      60. ;;
      61. status)
      62. status
      63. ;;
      64. restart)
      65. stop
      66. start
      67. ;;
      68. *)
      69. echo "Usage: $0 {start|stop|status|restart}"
      70. esac
      Display All


      10. Script ausführbar setzen

      Source Code

      1. chmod u+x /etc/init.d/jdownloader
      2. systemctl daemon-reload


      11. Verfügbare befehle

      Source Code

      1. service jdownloader status
      2. service jdownloader restart
      3. service jdownloader start
      4. service jdownloader stop


      12. Soweit noch nicht vorhanden ein Download Verzeichnis erstellen und berechtigungen setzen

      Source Code

      1. mkdir /pfad/zu/deinem/downloadordner
      2. chown -R jdownloader:jdownloader /pfad/zu/deinem/downloadordner


      13. Starte den JD über

      Source Code

      1. service jdownloader start


      Nach wenigen sekunden sollte er in myJDownloader erscheinen, hier jetzt die üblichen Einstellungen vornehmen, das wichtigste natürlich euer Downloadverzeichnis.


      Have Fun guys ;)


      haupt Grundlage für dieses How-to:
      support.jdownloader.org/Knowle…-nas-and-embedded-devices
      wiki.contribs.org/Jdownloader2


      Mit Freundlicher unterstützung von Jiaz (JD support) und Wolf2000.



      Da ich den ganzen käse vor paar Tagen gemacht habe und gestandener weise zu faul bin wieder alles runter zu krachen ums selber zu testen nach dieser anleitung, wäre ich über feedback dankbar um eventuelle Fehler zu finden ;)

      The post was edited 1 time, last by draddy ().

    • Super gemacht @draddy !

      Da mein Banana Pro abgeraucht ist und ich alles neu aufsetzen musste nutzte ich die Gelegenheit um manuelle JDownloader Installation zu testen.

      Irgendwelche Fehler hatte ich nicht gefunden würde aber hinzufügen, dass ( zumindest in meinem Fall ) wenn das login im Punkt Nr.5 geklappt hatte erscheint zum schluß:
      "set PENDING" und kurz danach noch "set CONNECTED" man kann es dann mit STRG+C beenden und somit Punkt Nr.6 überspringen. Aber wie gesagt, es war so bei mir.

      Einen Download hatte ich getestet und es verlief alles gut, lediglich die CPU Auslastung war gigantisch zw. 60% und 150%
      Da müsste man noch eine Lösung finden sonst raucht der nächste Banana ab.

      Ich würde noch empfehlen Java Version 8 nach z.B. dieser Anleitung zu installieren, läuft alles viel schneller.
    • moin,

      ja das war eigendlich damit gemeint das nach punkt 5 jd laufen sollte ;) aber kann die 2 ausgaben ja noch ergänzen ^^

      und bzg. java - das meint punkt 1 mit richtiger java version und nicht diese embedded ;)

      bzg. quota - da müsste man schauen ob übers omv / das grundsystem was geht, jd selbst bietet da laut support keine einstellung für.
    • Servus,

      ich habe mich etwas umgeschaut wg. der CPU-quote Geschichte.

      Es gibt ein tool namens cpulimit den hatte ich einfach über sudo apt-get cpulimit nachinstalliert.
      Der JDownloader lief, ich hatte den Befehl cpulimit -e java -l 50 & ausgeführt, einen download getätigt und über top die CPU-Auslastung beobachtet,
      konnte dabei feststellen dass es gut funktioniert. Über man cpulimit kann man die Befehle besser verstehen da gibt es auch kleine Beispiele

      Natürlich der Befehl in commandline war nur ein Test, das vorhaben ist schon etwas komplexer weil es in den Autostart müsste und cpulimit erst mal wissen müsste, dass Java läuft, sonnst bringt es nichts. Für diesen Zweck habe ich einen Skript gefunden, eigentlich zwei Skripte, einmal autostart-skript der wieder rum einen daemon startet der z.B. den Prozess java überwacht und dem entsprechend wird dann cpulimit aktiv wenn es zuviel resourcen verbraucht.

      Alles über diese zwei Skripts kann man HIER nachlesen, User @abcuser hatte es gut beschrieben.

      Ich würde mich aber auch freuen wenn vllt. jemand eine andere Lösung parat hätte 8o

      The post was edited 2 times, last by Aux ().

    • Moin zusammen, also ich habe alles so gemacht wie es sollte der JD wird auch unter MyJD angezeit, aber ich komme nur bis Punkt 5. die folgenden befehle bewirken nichts oder

      root@medienserver:~# java -jar JDownloader.jar &
      [1] 3015
      root@medienserver:~# Error: Unable to access jarfile JDownloader.jar


      Kann mir da mal einer helfen da ich gern das Startscript einbinden möchte.


      Desweiteren kann ich den JD auch nicht mehr starten, nach dem Command: "service jdownloader start" kommt,

      Failed to start jdownloader.service: Unit jdownloader.service failed to load: No such file or directory.
    • Aux wrote:

      Ok, ich habe es vorher übersehen und zwar Du hattest doch nicht so gemacht wie beschrieben...

      weil -> root@medienserver:~# Error: Unable to access jarfile JDownloader.jar

      du musst es aus dem Verzeichnis /opt/jdown ausführen

      also cd /opt/jdown und dann java -jar JDownloader.jar -norestart
      Doch doch, alles bis Punkt 5 habe ich so gemacht.
      Ab Punkt 6 kommt der der Fehler, wenn ich dann: java -jar JDownloader.jar & eingeben möchte.

      Oder muss ich dafür im Jd Ordner sein um den Befehl ab Punkt 6 auszuführen?