AA_pipes_sxc_rainbowj_1006872.jpg

© sxc.hu, rainbowj

Kanalbündelung

Downloads verwalten mit Aria2

06.11.2009
Selbst in Zeiten von DSL tröpfeln die Daten manchmal nur langsam durch das Kabel. Aria2 sorgt durch kombinierte Verbindungen in vielen Fällen für mehr Geschwindigkeit.

Wie so oft stehen dem Linux-Anwender auch bei Downloadmanagern mehrere Alternativen offen: Für die Konsole gibt es beispielsweise Curl oder Wget – letzteres findet mit fast jeder Installation seinen Weg auf die Platte. Anwender, die grafische Benutzeroberflächen mögen, greifen eher zu KGet oder GWget.

Wer allerdings nach einem Downloadmanager sucht, der als Daemon läuft, die Protokolle HTTP(S), FTP, Bittorrent und Metalink unterstützt, Dateien parallel und von mehreren Quellen gleichzeitig zieht und sich trotzdem gut in Skripten integriert, der kommt am leichtgewichtigen und trotzdem umfangreichen Konsolenprogramm Aria2 [1] kaum vorbei. Momentan pflegen drei aktive Entwickler die hauptsächlich in C++ geschriebene Software, die sich durchaus zurecht "The Ultra Fast Download Utility" nennen dar: Wer sich einmal mit dem Werkzeug vertraut gemacht und dessen Stärken kennengelernt hat, will es nicht mehr missen.

Die meisten gängigen Distributionen enthalten den konsolenbasierten Downloadmanager bereits. Wer sich nach der aktuellen Version verzehrt, der lädt die Quelltexte von Sourceforge [2] herunter und installiert anschließend mittels des klassischen Dreischritts ./configure, make, make install die Software.

Haben Sie Aria2 installiert, brennt es Ihnen vermutlich unter den Nägeln, die Software auszuprobieren. Die Fülle der möglichen Parameter erschlägt auf den ersten Blick. Am einfachsten setzen Sie den Download mittels aria2c Datei in Gang. Als erstes prüft Aria2 die Größe der herunterzuladenden Datei. Standardmäßig zerlegt es diese in fünf Teile und öffnet ebenso viele Verbindungen, um das File auf den Rechner zu holen. Das Programm verwaltet bis zu 16 gleichzeitige Verbindungen zu einer URI. Möchten Sie von dieser Fähigkeit Gebrauch machen, nutzen Sie den Schalter --slit= oder kurz -s auf der Kommandozeile, gefolgt vom gewünschten Wert.

Nutzen Sie nur eine URI, bringen mehrere Verbindungen nicht unbedingt einen nennenswerten Zeitvorteil. Viele Dateien – beispielsweise ISO-Images – liegen jedoch auf mehreren Maschinen, sogenannten Spiegel-Servern. Da bietet es sich an, mit Aria2 auch mehrere URIs zu nutzen, die auf eine Datei zeigen, und zusätzlich die Protokolle zu mischen.

Im Beispiel aus Abbildung 1 wandert ein aktuelles ISO-File des Slackware-Ablegers Zenwalk auf den Rechner. Dabei kommt die Multi-Protokoll-Fahigkeit zum Einsatz, indem die Daten via FTP und HTTP auf den Rechner gelangen. Machen Sie keine weiteren Angaben, splittet Aria2 die herunterzuladende Datei also in fünf Teile und startet den Download von fünf Servern. Haben Sie mehr Server angegeben, dienen diese als Reserve, falls sich eine der Verbindungen als fehlerhaft erweist.

Abbildung 1: Aria2 erlaubt es, eine Datei von mehreren Servern holen.

Torrent und Metalink

Neben Downloads via HTTP und FTP unterstützt Aria2 auch das Torrent-Protokoll und Metalinker [3]. Hinter letzterem verbirgt sich eine XML-Spezifikation, die detaillierte Informationen enthält, an welchen Orten sich eine Datei befindet. Zu den unterstützten Protokollen gehören dabei neben FTP und HTTP auch Peer-to-peer-Netzwerke.

Metalinker-Daten eignen sich speziell für Downloadmanager, die segmentierte Downloads unterstützen. Falls also zu einem Download Metalink-Dateien existieren, empfiehlt es sich, diese auch zu nutzen: Warum sich mit 15 langsamen Seeds verbinden, wenn genauso viele schnelle Server bereit stehen? Dabei gilt es zu beachten, dass Sie die Option -s beim Einsatz mit Metalink-Dateien durch die Option -C ersetzen. Im Test dauerte der Download des Zenwalk-Images über Torrent um ein Vielfaches länger als über mehrere HTTP- und FTP-Servern.

Zieht sich ein Downlaod mittels Metalinker wider Erwarten doch einmal in die Länge, dann brechen Sie ihn einfach ab und nehmen ihn später wieder auf. Haben Sie mit anderen Programmen, beispielsweise mit einem Webbrowser, einen Download begonnen, setzen Sie diesen bei Bedarf ebenfalls mit Aria2 fort. Dazu verwenden Sie lediglich den Schalter -c (--continue). Mit dem Parameter -d (--dir=) bugsieren Sie den Download in ein bestimmtes Verzeichnis. Anderenfalls speichert Aria2 die heruntergeladenen Dateien immer im aktuellen Arbeitsverzeichnis.

Möchten Sie viele Dateien herunterladen, brauchen Sie diese nicht in einer langen Zeile in die Bash einzutippen. Stattdessen geben Sie die Dateinamen komfortabel Zeile für Zeile in eine Datei ein. Diese übergeben Sie Aria2 mit dem Schalter -i (--input-file=), worauf der Downloadmanager beginnt, die Liste abzuarbeiten. Ohne weitere Angaben holt Aria2 fünf Dateien parallel. Mit dem Parameter -j (--max-concurrent-downloads=) ändern Sie dies.

Download-Varianten

Aria2 beherrscht zwar keine rekursiven Downloads, versteht sich dafür aber auf parametrisierte URIs. Um diese Funktion zu nutzen, setzen Sie den Schalter -P (--parameterized-uri). Anschließend können Sie mehrere Server in einem Ausdruck übergeben (Listing 1).

Listing 1
aria2c http://{Server1,Server2,Server3}/Datei

Tummeln sich auf einem Server mehrere Dateien gleichen Typs mit fast identischen Namen – etwa die Urlaubsfotos von Freunden oder Familienangehörigen, Buchkapitel oder andere Dokumente – finden diese ebenfalls mit Aria2 komfortabel den Weg auf den heimischen PC. Hier gilt es zu beachten, dass die URI nicht auf eine einzelne Datei zeigt, sondern auf viele verschiedene Files. Daher nutzen Sie die Option -Z (--force-sequential, Listing 2). Zusätzlich geben Sie in eckigen Klammern die Anzahl und Art der Schleifendurchläufe an, beispielsweise [a-z], [aa-zz], [01-99] (Abbildung 2).

Listing 2
aria2c -P -Z -d test http://www.benthinonline.de/gesundheitstelematik/kapitel_[01-07].pdf
Abbildung 2: Aria2 beherrscht keine rekursiven, aber immerhin parametrisierte Downloads.

Wie --force-sequential schon andeutet, lädt Aria2 die Dateien jetzt sequentiell, also eine nach der anderen, auf den Rechner herunter. Genauso arbeiten auch die meisten anderen Downloadmanager, doch Aria2 öffnet dabei obendrein noch mehrere Verbindungen. Auch mit Platzhaltern schaffen Sie es an dieser Stelle nicht, Aria2 doch noch zu rekursiven Downloads zu überreden. Das Programm quittiert diese Versuche mit einem unerfreulichen Invalid loop range.

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 

Ähnliche Artikel

Kommentare

Infos zur Publikation

Digitale Ausgabe: Preis € 4,95
(inkl. 19% MwSt.)

Mit der Zeitschrift LinuxUser sind Sie als Power-User, Shell-Guru oder Administrator im kleinen Unternehmen monatlich auf dem aktuelle Stand in Sachen Linux und Open Source.

Sie sind sich nicht sicher, ob die Themen Ihnen liegen? Im Probeabo erhalten Sie drei Ausgaben zum reduzierten Preis. Einzelhefte, Abonnements sowie digitale Ausgaben erwerben Sie ganz einfach in unserem Online-Shop.

NEU: DIGITALE AUSGABEN FÜR TABLET & SMARTPHONE

HINWEIS ZU PAYPAL: Die Zahlung ist auch ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!       

Tipp der Woche

Schnell Multi-Boot-Medien mit MultiCD erstellen
Schnell Multi-Boot-Medien mit MultiCD erstellen
Tim Schürmann, 24.06.2014 12:40, 0 Kommentare

Wer mehrere nützliche Live-Systeme auf eine DVD brennen möchte, kommt mit den Startmedienerstellern der Distributionen nicht besonders weit: Diese ...

Aktuelle Fragen

Windows 8 startet nur mit externer Festplatte
Anne La, 10.09.2014 17:25, 4 Antworten
Hallo Leute, also, ich bin auf folgendes Problem gestoßen: Ich habe Ubuntu 14.04 auf meiner...
Videoüberwachung mit Zoneminder
Heinz Becker, 10.08.2014 17:57, 0 Antworten
Hallo, ich habe den ZONEMINDER erfolgreich installiert. Das Bild erscheint jedoch nicht,...
internes Wlan und USB-Wlan-Srick
Gerhard Blobner, 04.08.2014 15:20, 2 Antworten
Hallo Linux-Forum: ich bin ein neuer Linux-User (ca. 25 Jahre Windows) und bin von WIN 8 auf Mint...
Server antwortet mit falschem Namen
oin notna, 21.07.2014 19:13, 1 Antworten
Hallo liebe Community, Ich habe mit Apache einen Server aufgesetzt. Soweit, so gut. Im Heimnet...
o2 surfstick software für ubuntu?
daniel soltek, 15.07.2014 18:27, 1 Antworten
hallo zusammen, habe mir einen o2 surfstick huawei bestellt und gerade festgestellt, das der nic...