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

LU 12/2014: ANONYM & SICHER

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

Ubuntu 14.10 und VirtualBox
Ubuntu 14.10 und VirtualBox
Tim Schürmann, 08.11.2014 18:45, 0 Kommentare

Wer Ubuntu 14.10 in einer virtuellen Maschine unter VirtualBox startet, der landet unter Umständen in einem Fenster mit Grafikmüll. Zu einem korrekt ...

Aktuelle Fragen

Nach Ubdates alles weg ...
Maria Hänel, 15.11.2014 17:23, 4 Antworten
Ich brauche dringen eure Hilfe . Ich habe am wochenende ein paar Ubdates durch mein Notebook von...
Brother Drucker MFC-7420
helmut berger, 11.11.2014 12:40, 1 Antworten
Hallo, ich habe einen Drucker, brother MFC-7420. Bin erst seit einigen Tagen ubuntu 14.04-Nutzer...
Treiber für Drucker brother MFC-7420
helmut berger, 10.11.2014 16:05, 2 Antworten
Hallo, ich habe einen Drucker, brother MFC-7420. Bin erst seit einigen Tagen ubuntu12.14-Nutzer u...
Can't find X includes.
Roland Welcker, 05.11.2014 14:39, 1 Antworten
Diese Meldung erhalte ich beim Versuch, kdar zu installieren. OpenSuse 12.3. Gruß an alle Linuxf...
DVDs über einen geeigneten DLNA-Server schauen
GoaSkin , 03.11.2014 17:19, 0 Antworten
Mein DVD-Player wird fast nie genutzt. Darum möchte ich ihn eigentlich gerne abbauen. Dennoch wür...