Inhaltsverzeichnis

Eine kleine stromsparende Appliance eignet sich hervorragend, um massenhaft Daten aus dem Internet herunterzuladen - beispielsweise um eine lokale Sicherheitskopie des Internets anzufertigen. :-)

WebGUI von JDownloader

Dieser Artikel ist eine überarbeitete Version der vorherigen Download-Appliance.

Hardware

Als Hardware dient ein PCEngines ALIX.1D - Detailinfos zur Hardware finden sich hier.

BIOS-Einstellungen

Ich habe die folgenden Anpassungen im BIOS vorgenommen, um Unnützes zu deaktivieren und noch ein wenig Strom zu sparen:

Software

Als Software wird ein abgesprecktes Debian GNU/Linux Squeeze i386 verwendet.

Betriebssystem

Bei der Installation von Debian Linux werden lediglich bei beiden Rollen SSH-Server und Standard-Systemwerkzeuge ausgewählt - das spart Ressourcen und Performance, da keine nicht benötigte Software installiert wird.

Anpassungen

Festplatte

Für die Downloads wird eine angeschlossene externe Festplatte partioniert, formatiert und eingebunden:

# mkfs.ext4 /dev/sdb1
...
# blkid | grep sdb1
/dev/sdb1: UUID="57c36b36-5380-4b64-8a92-bc44884fa706" TYPE="ext4"
# vim /etc/fstab
...
UUID=57c...   /mnt/dls   ext4   defaults,auto   0   0
...
# mount -a
# mkdir /mnt/dls/data

ntp

Damit die Uhrzeit immer korrekt ist, wird sie mit einem NTP-Server abgegelichen:

# apt-get install ntp
# mv /etc/ntp.conf /etc/ntp.conf.old
# vim /etc/ntp.conf
driftfile       /var/lib/ntp/ntp.drift
server          IP
...
# service ntp restart

Java

Da JDownloader auf Java basiert, benötigt es das Java Runtime Environment um funktionsfähig zu sein:

# apt-get install default-jre
...
Es müssen 35,5 MB an Archiven heruntergeladen werden.
Nach dieser Operation werden 96,2 MB Plattenplatz zusätzlich benutzt.
Möchten Sie fortfahren [J/n]? J

FTP

Die getätigten Downloads können später komfortabel mittels FTP verschoben werden:

# apt-get install vsftpd
...
# vim /etc/vsftpd.conf
...
anonymous_enable=NO
local_enable=YES
write_enable=YES
chroot_local_user=YES
...
# service vsftpd restart

Tightvnc

JDownloader benötigt eine grafische Oberfläche. Ein vollständiger X-Server ist allerdings nicht zwingend erforderlich - eine im Hintergrund laufende VNC-Sitzung genügt ebenfalls und bietet den netten Vorteil, das System von fern verwenden zu können (beispielsweise um einen Captcha-Code einzugeben). Hierfür wird Tightvnc installiert:

# apt-get install tightvncserver
...
Es müssen 7.990 kB an Archiven heruntergeladen werden.
Nach dieser Operation werden 12,4 MB Plattenplatz zusätzlich benutzt.
Möchten Sie fortfahren [J/n]? J

Tools

Einige Tools sind für den Betrieb von JDownloader hilfreich und fast schon unerlässlich - beispielsweise ein Webbrowser, um Links direkt an JDownloader zu senden. Ein Fenstermanager sorgt dafür, dass das JDownloader-Fenster auch maximimiert werden kann.

# apt-get install xterm openbox unzip iceweasel
...
Es müssen 25,3 MB an Archiven heruntergeladen werden.
Nach dieser Operation werden 75,6 MB Plattenplatz zusätzlich benutzt.
Möchten Sie fortfahren [J/n]? J

User

Für JDownloader wird ein Serviceuser angelegt - mit diesem Benutzerkonto werden später auch erfolgreiche Downloads übertragen und die Software über VNC ferngesteuert.

# useradd -c "JDownloader" -d /home/su-download -m -s /bin/bash -U su-download
# passwd su-download
# ln -s /mnt/dls/data /home/su-download/downloads
# chown su-download:su-download /mnt/dls/data
# su su-download
$ vncserver

You will require a password to access your desktops.

Password:
Verify:
Would you like to enter a view-only password (y/n)? n
xauth:  creating new authority file /home/su-download/.Xauthority

New 'X' desktop is myhostname:1

Creating default startup script /home/su-download/.vnc/xstartup
Starting applications specified in /home/su-download/.vnc/xstartup
Log file is /home/su-download/.vnc/st-download:1.log

JDownloader

Nach erfolgtem Login über VNC wird mit einem Rechtsklick und Klick auf „Xterm“ ein Terminal geöffnet. JDownloader wird jetzt heruntergeladen, entpackt und ausgeführt:

# wget http://94.23.204.158/JDownloader.zip
# unzip JDownloader.zip
...
# java -jar JDownloader/JDownloader.jar
...

Der Link hat sich ggf. geändert. Es empfiehlt sich auf der Projektseite http://www.jdownloader.org vorbeizuschauen und das aktuelle „MultiOS ZIP“ für Linux herunterzuladen.

Bei der Installation habe ich folgende Anpassungen vorgenommen:

Anpassungen:

Nach gestartetem JDownloader empfiehlt es sich einige Einstellungen anzupassen, um die Performance zu erhöhen und den Fernzugriff über einen Webbrowser zu ermöglichen.

Einstellungen:

Nach Übernahme der Einstellungen wird JDownloader neugestartet. In diesem Zuge kann mit der WebUpdate-Funktion die Software auch aktualisiert werden. Die Weboberfläche sollte nun über einen Browser des gleichen Netzsegments eingesehen werden können.

Autostart

Als netten Tweak kann JDownloader in den Autorun von Tightvnc aufgenommen werden. Beim Starten einer Verbindung zum Host wird dann die Software automatisch gestartet. Ferner kann der VNC-Server beim Booten des ALIX automatisch gestartet werden, sodass lediglich eine VNC-Sitzung hergestellt werden muss, um Downloads aufzunehmen.

# vim /etc/rc.local
...
/bin/su su-download -c "vncserver"
...
exit 0
# vim ~/.vnc/xstartup
...
openbox &
xterm -e "java -jar /home/su-download/JDownloader/JDownloader.jar"
...
/etc/X11/Xsession