Torrents mit dem eigenen Server herunterzuladen ist nicht nur schonend für die eigene Leitung Zuhause sondern schont ebenso die Internet Leitungen der Open Source Projekte von dessen HTTP Servern der Download ansonsten stattfinden würde. Aus diesem Grund lade ich seit längerem größere Dateien gerne über die, sofern vorhanden, verfügbaren Torrent Quellen herunter. Dazu verwende ich den Konsolen basierenden Bittorrent Client Bittornado im Zusammenspiel mit dem allseits bekannten Screen.

Die Installation beider Komponenten gestaltet sich unter Debian oder Ubuntu sehr einfach. Ein kurzes

apt-get install bittornado screen

reicht aus um die Installation auszuführen. Für andere Distributionen empfehle ich die Programme über den jeweiligen Paketmanager zu installieren. Ein compilieren der Quellcodes ist meiner Meinung nach zu aufwändig.

Zum starten des Bittornado Daemons aus der Shell verwende ich ein kleines von mir geschriebenes Script. Dieses macht es möglich den UNIX Benutzer, das Download Verzeichnis sowie die maximale Anzahl von Uploads und die Uploadbandbreite festzulegen. Ich limitere den Upload um nicht zu viel Traffic zu erzeugen. Der Benutzer wird festgelegt um bei einer Exploitmöglichkeit für Bittornado keine umfassenden Angriffspunkte am System zu bieten. Sehr interessant ist hierbei auch das Bittornado in der Programmiersprache Python geschrieben ist. Dadurch wird etwas mehr Speicher und Rechenzeit benötigt. Was für mich keine Relevanz hat. Im Gegenzug können keine Buffer Overflows auftreten.

#! /bin/sh
 
##
## <Configuration>
##
 
USER="webservices"
 
DIR="/home/webservices/incoming/"
 
MAX_UPLOADS="6"
 
MAX_UPLOAD_BANDWIDTH="14"
 
##
## </Configuration>
##
 
screen -AmdS bittornado su ${USER}  -c "btlaunchmanycurses ${DIR}  --minport 50000 --maxport 55000 --max_uploads ${MAX_UPLOADS} --max_upload_rate ${MAX_UPLOAD_BANDWIDTH}"

Das Script wird mit

chmod +x <SCRIPTNAME>

lauffähig gemacht und mit

./<SCRIPTNAME>

aufgerufen. Das Vorgehen ist bei allen Scripten unter UNIX Systemen gleich. Auch mein Script stellt da keine Ausnahme da. Der im Script hinterlegte Benutzer und das Verzeichnis musst du vorher natürlich noch für dein System anpassen. Nach dem Aufruf des Scriptes passiert scheinbar nichts. Im Hintergrund wurde jedoch eine Screen Sitzungen mit Bittornado gestartet.

Um einen Download zu starten muss eine gültige .torrent Datei in das im soeben gestartete Script angegebene Verzeichnis verschoben werden. Kurze Zeit später beginnt der Download des Torrents in Bittornado. Der aktuelle Stand der Downloadvorgänge kann mit

screen -r

oder, falls mehere Screen Sitzungen zur selben Zeit aktiv sind mit

screen -r bittornado

abgefragt werden. Wichtig ist es hierbei die Download Übersicht über screen mit strg + a und dem anschließendem Drücken der d Taste zu schließen. Ein eingeben der Tastenkombination strg + c würde Bittornado umgehend beenden und den Download abbrechen.

Den fertigen Dowload findest du im Download Verzeichnis neben den .torrent Dateien.

Natürlich könnte Bittornado auch mit dem manuellen eintippen der Befehle ohne das Startscript auf die selbe Art und Weise gestartet werden. Diese Arbeit möchte niemand antun. Insbesondere nicht ich. Ich denke mein Startscript für Bittornado ist mehr als hilfreich.

Keine Kommentare »