Tuxload
Archivierte Anleitung
Dieser Artikel wurde archiviert. Das bedeutet, dass er nicht mehr auf Richtigkeit überprüft oder anderweitig gepflegt wird. Der Inhalt wurde für keine aktuell unterstützte Ubuntu-Version getestet. Wenn du Gründe für eine Wiederherstellung siehst, melde dich bitte in der Diskussion zum Artikel. Bis dahin bleibt die Seite für weitere Änderungen gesperrt.
Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:
Tuxload 🇩🇪 ist ein in Perl geschriebenes Programm, um automatisch Dateien von sogenannten One-Click-Hostern herunterzuladen. Tuxload greift zur CAPTCHA-Erkennung auf externe Programme wie GOCR, Ocrad und anticaptcha
zu. Das Programm arbeitet mit Plugins für die verschiedenen One-Click-Hoster, was es ermöglicht, eigene Plugins zu schreiben und einfach zu verwenden.
Tuxload ist textbasierend und besitzt somit keine grafische Benutzeroberfläche. Eine Alternative mit grafischer Benutzeroberfläche ist der in Java geschriebene JDownloader.
Installation¶
Tuxload hat einige Abhängigkeiten, die bei dem hier beschriebenen Installationsverfahren nicht automatisch aufgelöst werden. Deswegen müssen zuerst folgende Pakete installiert [1] werden:
git-core
imagemagick
libjpeg-progs
libwww-perl
gocr (universe[2])
Befehl zum Installieren der Pakete:
sudo apt-get install git-core imagemagick libjpeg-progs libwww-perl gocr
Oder mit apturl installieren, Link: ,imagemagick ,libjpeg-progs,libwww-perl ,gocr
Da es seit einiger Zeit bei Rapidshare keine Captchas mehr gibt, kann man auf alle Pakete außer git und libwww-perl verzichten wenn man nur von Rapidshare laden möchte.
Mit
sudo git clone git://git.someserver.de/joker/tuxload /opt/tuxload
wird Tuxload ins Verzeichnis /opt/tuxload geladen bzw. aktualisiert, falls dort bereits eine ältere Version existiert.
Hinweis:
Dadurch dass der Autor keine stabilen Versionen mehr anbietet, kann es durchaus vorkommen, dass Tuxload zeitweise unbrauchbar oder nur eingeschränkt benutzbar ist. Falls dies geschieht, sollte man Tuxload etwas später aktualisieren, um wieder die neueste Version zu bekommen, wo das Problem behoben sein könnte.
Danach kann das Programm im Terminal [3] mit
/opt/tuxload/bin/tuxload.pl
gestartet werden.
Um nicht jedes Mal den kompletten Pfad eingeben zu müssen, bietet es sich an, durch folgenden Befehl einen symbolischen Link anzulegen:
sudo ln -s /opt/tuxload/bin/tuxload.pl /usr/local/bin/tuxload
Jetzt kann Tuxload vom Terminal [3] aus durch den Befehl:
tuxload
aufgerufen werden. Im weiteren Artikel wird davon ausgegangen, dass Tuxload auf diese Weise installiert wurde.
Konfiguration¶
Die Konfiguration von Tuxload funktioniert größtenteils über das Ändern der Datei /opt/tuxload/etc/BasicConfig.pm mit einem Editor mit Root-Rechten [4]. Wichtige Optionen, die geändert werden sollten, da sonst zum Download Root-Rechte gebraucht werden, sind path_downloads
, path_log
und path_tmp
die den Speicherort der Downloads, der Logdateien und temporärer Dateien angeben. Standardmäßig sind die Verzeichnisse downloads, log und tmp im Tuxloadverzeichnis angegeben. Allerdings muss dabei darauf geachtet werden, dass ein ~/ als Alternative zum Homeverzeichnis nicht zulässig ist. Die geänderte Option könnte beispielsweise so aussehen:
path_downloads => "/media/sda2/downloads", path_tmp => "/tmp", path_log => "/home/benutzername/log",
Reconnect¶
Bei vielen One-Click-Hostern muss zwischen zwei Downloads eine längere Wartezeit liegen. Die Dienste überprüfen dies anhand der IP-Adresse, die man besitzt. Um dieses Problem zu umgehen, hilft es bei den meisten Internetprovidern, seine Internetverbindung zu unterbrechen und neu aufzubauen. Dadurch erhält man von seinem Provider eine neue IP-Adresse.
Die Grundvoraussetzung für einen Reconnect ist ein Skript/Programm, das die Internetverbindung neu startet. Im Gegensatz zur Information, die ein tuxload --help
liefert, ist der Reconnect standardmäßig deaktiviert. Zur Aktivierung und Einrichtung muss zuerst in die Option reconnect_script
in /opt/tuxload/etc/BasicConfig.pm der Pfad zum Reconnectskript, das ausführbar [7] sein muss, eingetragen werden.
Beispiel:
reconnect_script => '/home/user/bin/reconnect',
In der selben Konfigurationsdatei wird anschließend der Wert für reconnect
auf 1
für einen Reconnect nur zwischen Downloads einer Liste oder 2
für einen Reconnect auch zwischen einzelnen Downloads gesetzt.
Beispiel:
reconnect => 2,
Da manche Router längere Zeit benötigen, um sich neu mit dem Internet zu verbinden, ist es zum Teil ratsam, eine Wartezeit nach dem Reconnect einzubauen. Der entsprechende Abschnitt in der Datei /opt/tuxload/lib/Common.pm sähe dann verändert zum Beispiel so aus:
sub reconnect { if ( $bopt{reconnect} > 0 ) { logger( '### reconnecting ...', 1 ); if ( ! $bopt{reconnect_script} ) { logger( "### No Reconnect-Script given" ); return; } $bopt{cur_status} = "reconnecting"; qx/$bopt{reconnect_script}/; sleep(30); ## Diese Zeile wurde nachträglich hinzugefügt print "\n Gewartet"; ## Diese ebenfalls return "reconnected"; } return; }
Die Zahl in den Klammern hinter sleep
ist die Wartezeit in Sekunden.
Premium User¶
Da der Entwickler die Premium-Funktion von Tuxload selten testet, kann es sein, dass sie nicht funktioniert. Das Problem kann man ganz einfach umgehen, indem man wget nutzt. Das genaue Vorgehen ist auf der Seite Archiv/Skripte/RapidShare (Abschnitt „Premium-User-Download-mit-wget“) beschrieben.
Benutzung¶
Die Anwendung von Tuxload gestaltet sich relativ einfach. Mit dem Parameter -f
wird ein einzelner Link verarbeitet. Beispiel:
tuxload -f http://rapidshare.com/files/70769769/tuxl-0_26.tgz
Mit dem Parameter -l
wird eine ganze Liste mit Links verarbeitet, die als Textdatei vorliegt. Beispiel:
pid
tuxload -l /download_liste
Die Parameter können auch in einem Befehl kombiniert werden. Beispiel:
tuxload -f http://rapidshare.com/123/abc.rar -f http://rapidshare.com/456/def.rar -l download_liste
Falls man ein alternatives Zielverzeichnis angeben will, geschieht das mit der Option -d
. Beispiel:
tuxload -d /home/user/downloads -f http://rapidshare.com/files/70769769/tuxl-0_26.tgz
*.ccf und *.rsdf¶
Viele Rapidsharelinks werden in den verschlüsselten Containerformaten *.ccf oder *.rsdf angegeben. Diese Containerformate gestatten das Herunterladen der einzelnen Dateien ohne den direkten Link für den Benutzer sichtbar zu machen. Zur Zeit wird keines der Formate von Tuxload unterstützt. Allerdings fand Kugelfisch 🇩🇪 den 160 Bit langen Schlüssel für das rsdf-Format heraus:
8C 35 19 2D 96 4D C3 18 2C 6F 84 F3 25 22 39 EB 4A 32 0D 25
Um damit eine *.rsdf-Datei zu entschlüsseln, kann man folgendes Python-Skript benutzen, was die Installation des Pakets python-crypto erfordert:
python-crypto
Befehl zum Installieren der Pakete:
sudo apt-get install python-crypto
Oder mit apturl installieren, Link: apt://python-crypto
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | #!/usr/bin/env python import binascii import base64 from Crypto.Cipher import AES import sys # 8C 35 19 2D 96 4D C3 18 2C 6F 84 F3 25 22 39 EB 4A 32 0D 25 infile = sys.argv[1] Key = binascii.unhexlify('8C35192D964DC3182C6F84F3252239EB4A320D2500000000') IV = binascii.unhexlify('FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF') IV_Cipher = AES.new(Key,AES.MODE_ECB) IV = IV_Cipher.encrypt(IV) obj = AES.new(Key,AES.MODE_CFB,IV) rsdf = open(infile,'r') data = rsdf.read() data = binascii.unhexlify(''.join(data.split())) data = data.splitlines() for link in data: link = base64.b64decode(link) link = obj.decrypt(link) print link.replace('CCF: ','') rsdf.close() |
Quelle: Gulli Board 🇩🇪
Das Skript kann unter dem Namen decodersdf in ~/bin/ gespeichert werden und muss Ausführrechte [7] bekommen. Die Ausgabe des Skriptes kann direkt in eine Textdatei umgeleitet werden. So ist es möglich, die Links einer *.rsdf-Datei an eine Liste für Tuxload anzuhängen. Beispiel:
decodersdf container.rsdf >> ~/liste
Links¶
Download-Manager Übersichtsartikel