Download Manager (JDownloader) auf Debian Server ohne GUI

  • Hallo liebe Forengemeinde!
    Ich habe mich in den letzten Stunden wieder einmal hingesetzt, um mein Wissen mit der weiten Welt des Internets zu teilen. In diesem Tutorial stelle ich euch einen Weg vor, wie man den JDownloader auf einem Linux Server ohne GUI installieren kann. Das ganze habe ich auf ein Dokument bei Google Docs ausgelagert, da mir der Editor für solche langen Posts hier ungeeignet scheint.


    Jedenfalls findet Ihr das Dokument hier.


    Feedback und Fragen sind wie immer herzlichst erwünscht.
    Mit freundlichen Grüßen, DerET.

  • Bedenke, dass Java nicht sonderlich speichereffizient ist und dass 256 MB schnell eng werden können. Und dann solltest du im Startscript auch den Wert 256M senken, da der Kernel sonst gnadenlos das Swappen anfangen wird.
    Aber sonst ist eine solche Plattform natürlich eine interessante Sache, sofern die ganzen Dienste für ARM Prozessoren verügbar sind. Du kannst dann ja berichten. ;)

  • Ich werde mal schauen ob das überhaupt läuft, ich weiß z.B. schonmal gar nicht ob Debian 6 auf der ARM CPU läuft.


    Zum RAM-Verbrauch, jDownloader benutzt gerade im Leerlauf unter Windows schon 200 MB, das könnte also echt knapp werden. Falls du alternative "leichtere" Downloader die Remote Download unterstützen kennst, wäre ich dir dankbar.


    Trotzdem danke für das Tutorial, das kann ich bestimmt irgendwann nochmal anderweitig benutzen.

  • Doch, von Debian gibt's ARM Ports und wenn's die aktuelle Version nicht gibt, dann nimmst du Lenny. Da sollte das Vorgehen keine Unterschiede machen. (Die Warnung steht nur im Text, damit mich keiner über OpenSUSE ausfragt oder warum es ein Paket nicht gibt, wenn er sonstwas für eine Plattform nutzt.)


    Debian verbraucht ca. 50 MB, wenn du nichts darauf laufen lässt. Der JDownloader würde mit ein bisschen Swapping also reinpassen. *g
    Sonst könntest du dir mal PyLoad anschauen. Das ist zwar meiner Meinung nach nicht so komfortabel wie der JDownloader, hat aber Server und Client getrennt und bietet ein besseres Webinterface.

  • Kleine Rückmeldung von mir,


    der Raspberry Pi ist heute angekommen und leider läuft auf der empfohlenen Debian Version der Macher noch keine Java VM, also fällt die Idee schonmal flach.
    Da müsste man dann die von dir angesprochene Version draufspielen, aber da sieht es dann schlecht mit der Internet-Unterstützung aus. :(


    Das ist echt schade, ich werde mal 'nen Blick auf PyLoad werfen, vielleicht lässt sich das damit besser realisieren :)

  • Auf Raspbian geht keine Oracle JVM, aber das openjdk funktioniert - sogar in der 7er Version.
    Allerdings kam es mir bei meinem Test unheimlich langsam vor und ich würde dir gerade deswegen zu PyLoad raten. Es kann zwar noch längst nicht so viel wie der JD, ist aber um einiges ressourcenschonender... Von wo willst du denn was runterladen?

  • Klasse tut!


    Leider bin ich auch vorher schon am X11 gescheitert. Und auch mit intalliertem openjdk-6-jre xvfb klappts bei mir leider nicht.


    Bin auch nicht so sicher im Umgang mit Linux, drum poste ich hier mal die Ausgabe. Vielleicht kannst du mir sagen, was ich falsch mache.



    root@XXX:~# ./jd.sh
    JD Installation found: No valid JDownloader.jar exist!
    Start JD-Updater
    JAR
    00s.003 - FINEST [jd.utils.JDUtilities(getJDClassLoader)] -> Create Classloader: for: /root/.jd
    00s.008 - FINEST [jd.JDClassLoader(<init>)] -> rootDir:/root/.jd
    /root/.jd
    null
    00s.064 - FINER [jd.config.DatabaseConnector(<init>)] -> Loading database
    00s.065 - FINER [jd.config.DatabaseConnector(checkDatabaseHeader)] -> Checking database
    00s.066 - SEVERE [jd.controlling.JDLogger(exception)] -> SEVERE Exception occurred
    java.sql.SQLException: Database broken!
    at jd.config.DatabaseConnector.<init>(DatabaseConnector.java:76)
    at jd.utils.JDUtilities.getDatabaseConnector(JDUtilities.java:856)
    at jd.config.SubConfiguration.<init>(SubConfiguration.java:77)
    at jd.config.SubConfiguration.getConfig(SubConfiguration.java:106)
    at jd.update.WebUpdater.getConfig(WebUpdater.java:74)
    at jd.update.Main.main(Main.java:121)
    00s.066 - SEVERE [jd.utils.JDUtilities(getDatabaseConnector)] -> Database broken! Creating fresh Database
    00s.066 - FINER [jd.config.DatabaseConnector(<init>)] -> Loading database
    00s.243 - FINER [jd.config.DatabaseConnector(<init>)] -> No CONFIGURATION database found. Creating new one.
    00s.256 - FINER [jd.config.DatabaseConnector(<init>)] -> Starting database wrapper
    /root/.jd/config/WEBUPDATE.cfg (No such file or directory)
    {}


    /root/.jd/config/PACKAGEMANAGER.cfg (No such file or directory)
    {}


    java.awt.HeadlessException:
    No X11 DISPLAY variable was set, but this program performed an operation which requires it.
    at java.awt.GraphicsEnvironment.checkHeadless(GraphicsEnvironment.java:159)
    at java.awt.Window.<init>(Window.java:432)
    at java.awt.Frame.<init>(Frame.java:403)
    at java.awt.Frame.<init>(Frame.java:368)
    at javax.swing.JFrame.<init>(JFrame.java:158)
    at jd.update.Main.initGUI(Main.java:459)
    at jd.update.Main.main(Main.java:129)
    ERROR
    No X11 DISPLAY variable was set, but this program performed an operation which requires it.




    root@XXX:~# ./../etc/init.d/xvfb.sh
    root@XXX:~#
    Fatal server error:
    Server is already active for display 1
    If this server is no longer running, remove /tmp/.X1-lock
    and start again.


    PS:
    Ach, ja:
    Ich habe das install Script von http://jdownloader.org/download/index LINUX verwendet


    Mit dem MultiOS (w/o installer) benutze endet es mit jdownloader@362:~/JDownloader$ java -Xincgc -Xmx256M -jar JDownloader.jar


    ------------------------ Thread: 10 -----------------------
    10 4/1/13 3:43:47 PM - INFO [jd.Main(main)] -> Start JDownloader
    JAR
    10 4/1/13 3:43:47 PM - FINEST [jd.utils.JDUtilities(getJDClassLoader)] -> Create Classloader: for: /home/jdownloader/JDownloader
    10 4/1/13 3:43:47 PM - FINEST [jd.JDClassLoader(<init>)] -> rootDir:/home/jdownloader/JDownloader
    /home/jdownloader/JDownloader
    file:/home/jdownloader/JDownloader/jd
    10 4/1/13 3:43:47 PM - FINER [jd.JDClassLoader(<init>)] -> Jar file loaded: /home/jdownloader/JDownloader/plugins/schedule.jar
    10 4/1/13 3:43:47 PM - FINER [jd.JDClassLoader(<init>)] -> Jar file loaded: /home/jdownloader/JDownloader/plugins/JDGrowl.jar
    10 4/1/13 3:43:47 PM - FINER [jd.JDClassLoader(<init>)] -> Jar file loaded: /home/jdownloader/JDownloader/plugins/JDPackageCustomizer.jar
    10 4/1/13 3:43:47 PM - FINER [jd.JDClassLoader(<init>)] -> Jar file loaded: /home/jdownloader/JDownloader/plugins/JDFolderWatch.jar
    10 4/1/13 3:43:47 PM - FINER [jd.JDClassLoader(<init>)] -> Jar file loaded: /home/jdownloader/JDownloader/plugins/JDWebinterface.jar
    10 4/1/13 3:43:47 PM - FINER [jd.JDClassLoader(<init>)] -> Jar file loaded: /home/jdownloader/JDownloader/plugins/JDShutdown.jar
    10 4/1/13 3:43:47 PM - FINER [jd.JDClassLoader(<init>)] -> Jar file loaded: /home/jdownloader/JDownloader/plugins/JDHTTPLiveHeaderScripter.jar
    10 4/1/13 3:43:47 PM - FINER [jd.JDClassLoader(<init>)] -> Jar file loaded: /home/jdownloader/JDownloader/plugins/JDChat.jar
    10 4/1/13 3:43:47 PM - FINER [jd.JDClassLoader(<init>)] -> Jar file loaded: /home/jdownloader/JDownloader/plugins/JDLangFileEditor.jar
    10 4/1/13 3:43:47 PM - FINER [jd.JDClassLoader(<init>)] -> Jar file loaded: /home/jdownloader/JDownloader/plugins/JDTray.jar
    10 4/1/13 3:43:47 PM - FINER [jd.JDClassLoader(<init>)] -> Jar file loaded: /home/jdownloader/JDownloader/plugins/JDExternInterface.jar
    10 4/1/13 3:43:47 PM - FINER [jd.JDClassLoader(<init>)] -> Jar file loaded: /home/jdownloader/JDownloader/plugins/JDRemoteControl.jar
    10 4/1/13 3:43:47 PM - FINER [jd.JDClassLoader(<init>)] -> Jar file loaded: /home/jdownloader/JDownloader/plugins/JDUnrar.jar
    10 4/1/13 3:43:47 PM - FINER [jd.JDClassLoader(<init>)] -> Jar file loaded: /home/jdownloader/JDownloader/plugins/JDHJMerge.jar
    10 4/1/13 3:43:47 PM - FINER [jd.JDClassLoader(<init>)] -> Jar file loaded: /home/jdownloader/JDownloader/plugins/JDInfoFileWriter.jar
    10 4/1/13 3:43:47 PM - FINER [jd.JDClassLoader(<init>)] -> Jar file loaded: /home/jdownloader/JDownloader/JDownloader.jar
    10 4/1/13 3:43:47 PM - FINER [jd.JDClassLoader(<init>)] -> Look and Feel JAR loaded: /home/jdownloader/JDownloader/libs/laf/substance.jar
    10 4/1/13 3:43:47 PM - FINER [jd.JDClassLoader(<init>)] -> Look and Feel JAR loaded: /home/jdownloader/JDownloader/libs/laf/syntheticaBlackStar.jar
    10 4/1/13 3:43:47 PM - FINER [jd.JDClassLoader(<init>)] -> Look and Feel JAR loaded: /home/jdownloader/JDownloader/libs/laf/syntheticaBlueMoon.jar
    10 4/1/13 3:43:47 PM - FINER [jd.JDClassLoader(<init>)] -> Look and Feel JAR loaded: /home/jdownloader/JDownloader/libs/laf/synthetica.jar
    10 4/1/13 3:43:47 PM - FINER [jd.JDClassLoader(<init>)] -> Look and Feel JAR loaded: /home/jdownloader/JDownloader/libs/laf/syntheticaBlackEye.jar
    10 4/1/13 3:43:47 PM - FINER [jd.JDClassLoader(<init>)] -> Look and Feel JAR loaded: /home/jdownloader/JDownloader/libs/laf/syntheticaSimple2D.jar
    10 4/1/13 3:43:47 PM - FINER [jd.JDClassLoader(<init>)] -> Look and Feel JAR loaded: /home/jdownloader/JDownloader/libs/laf/syntheticaBatik.jar
    10 4/1/13 3:43:47 PM - FINER [jd.JDClassLoader(<init>)] -> Look and Feel JAR loaded: /home/jdownloader/JDownloader/libs/laf/syntheticaWhiteVision.jar
    10 4/1/13 3:43:47 PM - FINER [jd.JDClassLoader(<init>)] -> Look and Feel JAR loaded: /home/jdownloader/JDownloader/libs/laf/syntheticaSkyMetallic.jar
    10 4/1/13 3:43:47 PM - FINER [jd.JDClassLoader(<init>)] -> Look and Feel JAR loaded: /home/jdownloader/JDownloader/libs/laf/syntheticaBlueSteel.jar
    10 4/1/13 3:43:47 PM - FINER [jd.JDClassLoader(<init>)] -> Look and Feel JAR loaded: /home/jdownloader/JDownloader/libs/laf/syntheticaOrangeMetallic.jar
    10 4/1/13 3:43:47 PM - FINER [jd.JDClassLoader(<init>)] -> Look and Feel JAR loaded: /home/jdownloader/JDownloader/libs/laf/syntheticaBlueIce.jar
    10 4/1/13 3:43:47 PM - FINER [jd.JDClassLoader(<init>)] -> Look and Feel JAR loaded: /home/jdownloader/JDownloader/libs/laf/syntheticaGreenDream.jar
    10 4/1/13 3:43:47 PM - FINER [jd.JDClassLoader(<init>)] -> Look and Feel JAR loaded: /home/jdownloader/JDownloader/libs/laf/syntheticaBlackMoon.jar
    10 4/1/13 3:43:47 PM - FINER [jd.JDClassLoader(<init>)] -> Look and Feel JAR loaded: /home/jdownloader/JDownloader/libs/laf/syntheticaMauveMetallic.jar
    10 4/1/13 3:43:47 PM - FINER [jd.JDClassLoader(<init>)] -> Look and Feel JAR loaded: /home/jdownloader/JDownloader/libs/laf/substance-swingx.jar
    10 4/1/13 3:43:47 PM - FINER [jd.JDClassLoader(<init>)] -> Look and Feel JAR loaded: /home/jdownloader/JDownloader/libs/laf/syntheticaSilverMoon.jar
    10 4/1/13 3:43:47 PM - FINER [jd.config.DatabaseConnector(<init>)] -> Loading database
    10 4/1/13 3:43:47 PM - FINER [jd.config.DatabaseConnector(checkDatabaseHeader)] -> Checking database
    10 4/1/13 3:43:47 PM - INFO [jd.Main(main)] -> init Splash
    Exception in thread "main" java.lang.InternalError: Can't connect to X11 window server using ':0.0' as the value of the DISPLAY variable.
    at sun.awt.X11GraphicsEnvironment.initDisplay(Native Method)
    at sun.awt.X11GraphicsEnvironment.access$100(X11GraphicsEnvironment.java:52)
    at sun.awt.X11GraphicsEnvironment$1.run(X11GraphicsEnvironment.java:155)
    at java.security.AccessController.doPrivileged(Native Method)
    at sun.awt.X11GraphicsEnvironment.<clinit>(X11GraphicsEnvironment.java:131)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:169)
    at java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment(GraphicsEnvironment.java:68)
    at sun.awt.X11.XToolkit.<clinit>(XToolkit.java:89)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:169)
    at java.awt.Toolkit$2.run(Toolkit.java:834)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.awt.Toolkit.getDefaultToolkit(Toolkit.java:826)
    at java.awt.Toolkit.getEventQueue(Toolkit.java:1689)
    at java.awt.EventQueue.isDispatchThread(EventQueue.java:851)
    at javax.swing.SwingUtilities.isEventDispatchThread(SwingUtilities.java:1339)
    at jd.gui.swing.GuiRunnable.start(GuiRunnable.java:103)
    at jd.gui.swing.GuiRunnable.waitForEDT(GuiRunnable.java:67)
    at jd.Main.main(Unknown Source)


    und bleibt stehen.

  • Ich hab das auch mal auf nem alten Thin-Client installiert aber Java braucht echt viel Speicher. Als Alternative kann man auch pyload einsetzen aber der Umfang ist um einiges geringer, aber das Webinterface viel schöner und funktioneller. Falls es jemanden interessiert ich hab mal nen Blogeintrag darüber geschrieben auch mit TV-Streaming und Recording sowie DLNA-Anbindung:http://karlo-globo.de/?p=517 & http://karlo-globo.de/?p=555

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!