Downloads verwalten mit Aria2

Aus LinuxUser 12/2009

Downloads verwalten mit Aria2

© sxc.hu, rainbowj

Kanalbündelung

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.

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.

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.

Mit Komfort

Aria2 integriert sich problemlos als externer Downloadmanager in Browser wie Firefox oder Opera, sodass das mitunter lästige Copy & Paste von URIs entfällt. Entweder verwenden Sie dazu ein entsprechendes Plugin für Downloadmanager (wie zum Beispiel Flashgot [4]) oder definieren Aria2 als als Handler für bestimmte Datei-Endungen.

Da es sich um ein Konsolentool handelt, starten Sie das Programm in einem Terminalfenster. In Opera würde ein Eintrag in den Einstellungen (Abbildung 3) in etwa wie folgt aussehen: /usr/bin/rxvt -e aria2c -d ~/Downloads . In diesem Fall startet zu erst die Terminalemulation RXVT, die dann sofort Aria2 aufruft. Dies öffnet dann die fünf parallelen Verbindungen und legt die zu speichernde Datei im Zielverzeichnis ab.

Abbildung 3: Aria integriert sich gut in gängige Browser, wie zum Beispiel Opera.

Abbildung 3: Aria integriert sich gut in gängige Browser, wie zum Beispiel Opera.

Wer nicht so gern auf der Konsole arbeitet, der braucht nicht auf Aria2 zu verzichten: Mittlerweile existieren viele Projekte, die es sich zur Aufgabe gemacht haben, den Einsatz des Downloadmanagers komfortabler zu gestalten. In diesen Bereich fallen zum einen Skripte [5] für die Bash-Completition [6] und zum anderen die grafischen Oberflächen Aria2::gui [7] und Aria2fe [8] (Abbildung 4).

Abbildung 4: Wer sich die Parameter zu Aria nicht merken möchte, der greift auf grafische Frontends zurück.

Abbildung 4: Wer sich die Parameter zu Aria nicht merken möchte, der greift auf grafische Frontends zurück.

Fazit

Vor allem für Anwender, die oft große Dateien aus dem Netz ziehen, lohnt sich ein Blick auf Aria2. Aufgrund des bescheidenen Ressourcenverbrauchs eignet sich das Tool auch für ältere Rechner. Im Test belegte Aria2 nur 3 MByte Speicher, beim Download via Torrent können es laut den Entwicklern bis zu 9 MByte werden. Dass das Tool keine rekursiven Downloads unterstützt, fällt weniger stark ins Gewicht: Dieses Feature kommt nur in wenigen Fällen zum Einsatz. Wer also die Kommandozeile mag, bringt Aria2 sicher viele Sympathien entgegen.

Glossar

URI

Uniform Resource Identifier, dient der genauen Identifikation einer einer Datei oder eines Dienstes im Web.

LinuxUser 12/2009 KAUFEN
EINZELNE AUSGABE
ABONNEMENTS
TABLET & SMARTPHONE APPS
E-Mail Benachrichtigung
Benachrichtige mich zu:

Hinweis: Dieser Artikel ist älter als ein Jahr, enthaltene Informationen sind möglicherweise veraltet.

0 Kommentare
Älteste
Neuste Beste Bewertung
Inline Feedbacks
Alle Kommentare anzeigen
Nach oben