ubuntuusers.de

[HowTo] JDownloader 2 BETA auf Ubuntu Server

Status: Ungelöst | Ubuntu-Version: Server 14.04 (Trusty Tahr)
Antworten |

bluefix

Anmeldungsdatum:
26. März 2013

Beiträge: 17

Hallo liebe Leute ☺

Nachdem ich heute den ganzen Tag experimentiert habe fühle ich mich nun endlich in der Lage, hier ein kleines HowTo zu schreiben, wie ihr JDownloader 2 auf Ubuntu Server ohne Oberfläche installieren könnt. Auch wenn JDownloader 2 noch in der Beta-Phase ist, läuft es meiner Meinung nach (zumindest auf OSX; Ubuntu wird sich zeigen) ziemlich stabil und in anbetracht der neuen Features - wie z.B. die neue Weboberfläche MyJDownloader, mit der man Captchas auch auf dem Handy lösen kann, oder die Möglichkeit Captchas von Diensten wie 9kw.eu lösen zu lassen - lohnt sich der Umstieg alle mal.

So, genug Werbung gemacht - Es geht ans Eingemachte:

1. Xvfb (Framebuffer), x11vnc (VNC-Server) und Openbox (Fenstermanager) installieren

1
sudo apt-get install xvfb x11vnc openbox

2. JDownloader 2 BETA herunterladen

64 Bit

1
wget http://installer.jdownloader.org/JD2SilentSetup_x64.sh

32 Bit

1
wget http://installer.jdownloader.org/JD2SilentSetup_x86.sh

3. Mit Xvfb einen "virtuellen" Monitor erstellen

1
Xvfb :1 -screen 0 1024x768x24 &>/dev/null &

Der Wert den ihr hier zurückbekommt, ist übrigens die PID. Ihr könnt den Prozess mit "kill <PID>" beenden.

Die Auflösung (hier: 1024x768, 24 Bit Farbtiefe) könnt ihr natürlich gegen Werte eurer Wahl ändern, wobei eine größere Auflösung im Zweifelsfall kontraproduktiv sein kann.

4. Die Umgebungsvariable DISPLAY setzen und Openbox als Fenstermanager setzen

1
export DISPLAY=:1
1
DISPLAY=:1 /usr/bin/openbox-session &>/dev/null &

5. Passwort für den VNC Server setzen

1
sudo x11vnc -storepasswd

Für den Speicherort den Standard beibehalten (/home/xyz/.vnc/passwd)

6. Den VNC Server starten

Hier gibt es 2 Möglichkeiten

1. (Fehleranalyse, 1. Versuche)

Bei diesem Weg den Befehl in einem eigenen Terminal starten, da die Ausgabe so nicht endet!

1
x11vnc -display :1 -usepw -forever &

Über der Linie mit Sternen steht der Port des VNC Servers, üblicherweise 5900.

2. (Leute die wissen was sie wollen und für Skripte)

1
x11vnc -display :1 -usepw -forever -rfbport 5900 &>/dev/null &

Bei -rfbport kann der Port nach Belieben gewählt werden, solange er bisher nicht genutzt ist. Bei einem anderen Port entsprechend beim VNC Viewer einen anderen Port angeben!

7. Mit einem VNC Viewer verbinden

Da ich von Mac OS X aus arbeite, kann ich einfach "Bildschirmfreigabe" bzw. cmd+K → vnc://ip-oder-hostname:5900 benutzen. Unter Ubuntu und Windows sollten gänige VNC Klienten wie Tiny/UltraVNC gehen. Bei der Frage nach dem Passwort das Passwort eintippen, das ihr bei Schritt 5 festgelegt habt benutzen. Der Port ist entsprechend dem des Servers einzustellen.

Das Fenster sollte nach dem Verbinden zunächst schwarz sein.

8. JDownloader Installation starten 🤓

Wenn man JDownloader als Daemon laufen lassen will, dann sollte man als Installationsort /opt bestimmen. Dazu im Befehl unten vor ./JD2SilentSetup_xXX.sh ein sudo setzen.

64 Bit

1
sudo chmod +x JD2SilentSetup_x64.sh && ./JD2SilentSetup_x64.sh

32 Bit

1
sudo chmod +x JD2SilentSetup_x86.sh && ./JD2SilentSetup_x86.sh

Jetzt sollte in dem VNC Viewer der JDownloader Setup-Assistent erscheinen. Wenn er das nicht tut:

  • Mit der Maus in dem Fenster "rumrühren" um es zu aktualisieren

oder

  • Warten bis das Bild aktualisiert wird bzw. eine andere Komprimierung ausgehandelt wurde (ca. 30 Sek.)

9. Installieren

  • Zielordner einstellen sollte nicht das Problem sein.

  • "Desktop-Symbol erstellen" habe ich deaktiviert, obwohl ich nicht glaube dass es stören würde es aktiviert zu lassen.

  • Zum Schluss: JDownloader starten 👍 und Fertigstellen

Nach einigen Sekunden taucht evtl. der Fehler "Tray isn't supported!" auf. Der erscheint, da wir keine (vollständige) Desktopoberfläche - und somit auch kein Tray - haben. (OK Drücken)

10. JDownloader konfigurieren

Da will ich mich nicht einmischen, dass bleibt euch überlassen 😉

Danach könnt ihr den VNC Viewer natürlich schließen, JDownloader läuft trotzdem weiter.

An einem init-Skript arbeite ich noch, werde es aber warscheinlich bereits morgen oder übermorgen fertig haben.

Ich hoffe euch hat mein kleines HowTo gefallen und frohes (J)Downloaden 😎

Moderiert von tomtomtom:

Aus dem Supportbereich verschoben, da keinerlei Supportanfrage ersichtlich.

MPW

Anmeldungsdatum:
4. Januar 2009

Beiträge: 3731

Danke für die tolle Anleitung.

Warum nutzt du nicht Pyload? Das ist vernünftig in einen Server und einen Client geteilt, wird sowieso generell über eine Weboberfläche bedient. Und es kann eigentlich auch alle großen Seiten, hatte noch nie etwas, womit es nicht umgehen konnte. Auch 9kw wird unterstützt.

Der Vorteil ist da eben, dass es ganz ohne X-Server läuft.

bluefix

(Themenstarter)

Anmeldungsdatum:
26. März 2013

Beiträge: 17

@MPW: Ich schätze an JDownloader 2 die Weboberfläche MyJdownloader sehr, weil ich von unterwegs Downloads starten kann ☺ Übrigens ist der Stromverbrauch um kaum 1W gestiegen und der Prozessor dümpelt bei einem Homeserver ja eh die ganze Zeit nur rum.


So ich habe jetzt ein VORLÄUFIGES init-Skript. Bei mir führt es zu der Fehlermeldung, dass JDonwloader nicht korrekt beendet wurde, funktioniert aber trotzdem alles.

Es setzt voraus, dass JDownloader in /opt/jd2 installiert wurde! (Das erreicht ihr, indem ihr ./JD2SilentSetup_xXX.sh mit sudo ausführt.)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
#! /bin/sh
### BEGIN INIT INFO
# Provides:          JDownloader 2
# Required-Start:    $x11-common    
# Required-Stop:     
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Start and stop JDownloader 2
# Description:       With this script you are able to run JDownloader 2 as deamon.
### END INIT INFO
# Author: Jonas Lehmke <jonas@3jo.de>

# Aktionen
case "$1" in
    start)
        Xvfb :1 -screen 0 1024x768x24 &
        export DISPLAY=:1
        DISPLAY=:1 /usr/bin/openbox-session &
        /opt/jd2/JDownloader2 &
        ;;
    stop)
	if [ `pgrep JDownloader2` ]        
	then
		pkill JDownloader2
#		pkill -15 -P `pgrep JDownloader2`
	fi	
#	wait $!
	if [ `pgrep openbox` ]        
        then
		pkill -15 openbox
	fi
	if [ `pgrep Xvfb` ]        
        then	
		pkill -15 Xvfb
	fi        
	;;
    restart)
        if [ `pgrep JDownloader2` ]        
        then
                pkill -15 -P `pgrep JDownloader2`
        fi      
	/opt/jd2/JDownloader2 &
        ;;
   restart-full)
	if [ `pgrep JDownloader2` ]        
        then
                pkill -15 -P `pgrep JDownloader2`
        fi      
        if [ `pgrep openbox` ]        
        then
                pkill -15 openbox
        fi
        if [ `pgrep Xvfb` ]        
        then    
                pkill -15 Xvfb
        fi        
	
	Xvfb :1 -screen 0 1024x768x24 &
        export DISPLAY=:1
        DISPLAY=:1 /usr/bin/openbox-session &
        /opt/jd2/JDownloader2 &
	;;
esac

exit 0

Wenn jemand ein besseres hat, kann er es mir gerne schicken oder es hier veröffentlichen!

lordimac

Anmeldungsdatum:
15. August 2007

Beiträge: Zähle...

jDownloader 2 braucht seit Ende letzten Jahres keinen X-Server mehr und kann von Haus aus Headless gestartet werden über

1
java -Djava.awt.headless=true -jar JDownloader.jar

Dank Upstart lässt sich dazu auch ein ganz einfaches Init Script schreiben (/etc/init/jdownloader.conf):

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
env USER=lordimac

emits jd-started
description     "jDownloader-upstart-script"
author          "lordimac"

start on (filesystem and stopped udevtrigger)
stop on runlevel [016]

respawn
respawn limit 10 5
limit nice 21 21

script
exec su -c "java -Djava.awt.headless=true -jar /home/lordimac/jDownloader/jd2/JDownloader.jar" $USER
end script

User sowie Pfad ändern und jDownloader wird beim Boot gestartet.

MPW

Anmeldungsdatum:
4. Januar 2009

Beiträge: 3731

Das ist ja cool. Startet bei mir auch, aber ich zu blöd den Port zu finden, unter dem die WebUI aufrufen kann.

Der Standardport soll 8765 sein, aber vermutlich ist das Webinterface nicht aktiviert. Ist jetzt die Frage, wie man das von der Konsole aus aktivieren kann.

/edit: Kann es sein, dass man sich dafür bei diesem MyJDownloader-Zeugs anmelden muss, damit diese Funktion aktiviert wird?

lordimac

Anmeldungsdatum:
15. August 2007

Beiträge: 4

Jein, das dedizierte Webinterface gibt es nur für jDownloader 1, ob es dieses auch für jDownloader 2 gibt ist mir nicht bekannt, jedenfalls ist es per Standard nicht dabei. jDownloader 2 funktioniert Standardmäßig über my.jdownloader. Die Grundkonfiguration von jDownloader 2 sollte man über X (oder per Xfvb/x11vnc) vornehmen. Anschliessend wie von mir vorgeschlagen vorgehen und Headless starten.

MPW

Anmeldungsdatum:
4. Januar 2009

Beiträge: 3731

lordimac schrieb:

jDownloader 2 funktioniert Standardmäßig über my.jdownloader.

Äh Moment, ich soll einem externen Dienst Zugriff auf meinen Rechner verschaffen? Was haben die denn geraucht?

Die Grundkonfiguration von jDownloader 2 sollte man über X (oder per Xfvb/x11vnc) vornehmen. Anschliessend wie von mir vorgeschlagen vorgehen und Headless starten.

Gut die Konfiguration hab ich jetzt per X-Forwarding gemacht. Der Rechner hat einen X-Server, der aber nur am TV angeschlossen ist um Video zu gucken. Arbeiten tue ich nur über SSH auf dem Gerät. Headless startet tut er ja auch. Aber wie geht es dann weiter? Wo füge ich Downloads ein, wo gebe ich Captchas ein etc.?

lordimac

Anmeldungsdatum:
15. August 2007

Beiträge: 4

Aktuell geht es nicht anders und wer weiß ob irgendwann ein Webinterface für jDownloader 2 kommt. Kann dir da leider nicht weiterhelfen da ich my.jdownloader verwende. Auf deinem Rechner ist jedenfalls zu keinem Zeitpunkt jemand drauf, du hast ja keinen Daemon laufen sondern der lokale jDownloader lauscht auf Aktionen über my-jdownloader und macht Rückmeldungen. So habe ich jedenfalls das System verstanden. Zudem läuft der jDownloader ja nicht als Root sondern als Benutzer der nicht mal mehr Zugriff auf sudo hat.

MPW

Anmeldungsdatum:
4. Januar 2009

Beiträge: 3731

Ja schon. Aber wenn man sich Mal anschaut, in welchem Umfeld der JD genutzt wird, möchte ich nicht, dass da plötzlich etwas auf meinen Rechner geladen wird, was ich nicht möchte. Einer seriösen Open Source Software würde ich ja noch vertrauen, aber bei sowas lieber nicht.

MPW

Anmeldungsdatum:
4. Januar 2009

Beiträge: 3731

Jup, Verdacht bestätigt: https://board.jdownloader.org/showthread.php?t=62473

Ganz schon komisch, gerade zu dubios. Warum zwingt man den Nutzer dazu, warum will man die IPs sammeln? Lieber Abstand halten

jblack

Anmeldungsdatum:
22. März 2015

Beiträge: Zähle...

Ich hab JD2 auf einem PasPi2 (Debian Wheezy) installiert. Ohne root rechte, direkt im user home. Die Erstkonfiguration musste ich natürlich im X von RasPi2 machen.

Habe ich das richtig verstanden, wenn ich JD2 im headless mode starte, also: java -Djava.awt.headless=true -jar JDownloader.jar -forceupdate

dann kann ich mit einem vnc client (z.b. am Mac mit Bildschirmfreigabe) mit der Url vnc://ip:port

mir das Display holen? Wie ist da der default Port? Ich bekomme keine Verbindung hin.

Über die Weboberfläche von http://my.jdownloader.org klappt das.

MPW

Anmeldungsdatum:
4. Januar 2009

Beiträge: 3731

Hallo und Herzlich Willkommen im Forum,

jblack schrieb:

dann kann ich mit einem vnc client (z.b. am Mac mit Bildschirmfreigabe) mit der Url vnc://ip:port

mir das Display holen?

die Idee von Headless ist gerade, dass es keine Oberfläche gibt und die Software nur über einen Client oder über ein Webinterface gesteuert werden kann. Da bist du auf dem Holzweg.

Grüße MPW

Hermann84

Anmeldungsdatum:
11. August 2015

Beiträge: Zähle...

Hallo,

danke erstmal für das Tut. Ich habe jetzt nur noch ein Problem, da der JDownloader nicht über Pakrtquellen installiert wurde ist er auch nicht bei der normalem Updateroutine dabei. Im MYJDownloader (Android APP) wird auch immer wieder angezeigt, dass er nicht aktuell ist und mir angeboten gleich zu aktualisieren, leider funktioniert das auf diesem Wege nicht. Was mich jetz auch nicht weiter stört, wenn eine Aktualisierung manuell über die Konsole möglich ist, bzw. würde ich den Updatebefehl mit ins Startscript oder als geplante Ausfgabe einschreiben.

MPW

Anmeldungsdatum:
4. Januar 2009

Beiträge: 3731

Hallo und Herzlich Willkommen im Forum Hermann84,

bitte erstelle laut Forenregeln ein eigenes Thema für deine Frage.

Schon Mal vorab: Der JDownloader müsste sich eigentlich automatisch aktualisieren, wenn er neu startet. Zumindest war das früher Mal so. Ich nutze ihn nicht mehr, weil Pyload für meine Bedürfnisse besser ist.

Grüße MPW

der_Andere

Anmeldungsdatum:
20. Dezember 2015

Beiträge: Zähle...

Man kann den JDownloader auch ohne VNC installieren. Einfach nach der Installation in der Datei /cfg/org.jdownloader.api.myjdownloader.MyJDownloaderSettings.json den Benutzernamen und das Passwort vom myjdownloader Account eintragen. Danach kann man mit der Android / iOS App oder der Chrome Erweiterung darauf zugreifen.

Antworten |