Bittorrent klient přes webové rozhraní

Nedávno mě otec požádal, zda-li bych mu na počítači nezprovoznil nějaké stahování torrentů. To není takový problém, pro Linux existuje celá řada klientů. Problém byl spíše v tom, že torrenty se obvykle stahují velmi dlouho. Například takovou DVD verzi nějaké distribuce můžete stahovat i několik dní. Nechat počítač hučet a žrát kvanta energie několik dní není to pravé ořechové, proto jsem si řekl, že bych do toho mohl zapojit domácí server, který spotřebuje mnohem méně energie, je tišší a navíc zastrčený v komoře, takže nikoho neruší. Mým úkolem tedy bylo najít program, který poběží na serveru jako démon a který je možné vzdáleně ovládat, přičemž jsem preferoval webové rozhraní před příkazovou řádkou, protože taťka by se s takovým ovládáním asi těžko vyrovnával.

Po krátkém zkoumání nabídky jsem se rozhodl pro Transmission, který je známý jako výchozí bittorrent klient pro Ubuntu. Od verze 1.33 se jedná o velmi schopného klienta, který je navíc nenáročný na systémové prostředky a má povedené ovládání přes webové rozhraní postavené na AJAXu.

Prvním problémem bylo nainstalovat nový Transmission na Debian Etch, který na serveru mám. V jeho repozitářích se totiž nacházela starší verze a za poslední rok Transmission prodělal takový vývoj, že je to téměř jiná aplikace, jednou z funkcí, které nově získal, je právě i ono ovládání přes webové rozhraní. Rozhodl jsem se ho tedy zkompilovat ze zdrojových kódů. Jenže si nerozuměl s distribuční verzí openSSH, takže jsem musel nejdříve kompilovat toto. Následně po mně chtěl novější verzi jedné knihovny, která měla hned několika závislostí. Tudy cesta nevedla, tímto stylem bych si musel zkompilovat polovinu systému. Rozhodl jsem se tedy hledat starší verzi programu, která má webové rozhraní a přitom jí stačí verze knihovny, kterou mám v systému. Tou nakonec byla verze 1.33.

Transmission jsem měl na serveru a dalším úkolem bylo, aby běžel jako démon. Původně jsem si myslel, že si budu muset dát práci s psaním spouštěcího skriptu, ale nakonec jsem na internetu jeden dobrý našel. Jeho výhodou je to, že je dobře okomentovaný a přizpůsobení vlastním potřebám je otázkou minuty. Stačí nastavit, kde bude Transmission ukládat stažené soubory, pod jakým uživatelem poběží a jaké bude uživatelské jméno a heslo pro přihlášení ve webovém rozhraní. Ostatní proměnné lze ponechat na původních hodnotách. Přímo ze zdroje ho na potřebné místo stáhnete tímto příkazem:

wget http://www.vanutsteen.nl/wp-content/uploads/2008/12/transmission-daemon -O /etc/init.d/transmission-daemon

V dalším kroku je potřeba skriptu udělit práva spustitelného souboru:

chmod +x /etc/init.d/transmission-daemon

Vytvořil jsem si uživatele transmission, pod kterým Transmission poběží:

adduser --home /dev/null --shell /bin/false --no-create-home --disabled-login transmission

Dále jsem vytvořil složku /etc/transmission:

mkdir /etc/transmission

Změnil jejího majitele na transmission:

chown transmission:transmission -R /etc/transmission

Návod, který jsem použil, navíc doporučuje vytvořit soubor s nastavením /etc/default/transmission-daemon, který obsahuje:

TRANSMISSION_HOME=/etc/transmission
 
# Slozka, kde bude Transmission stahovat soubory
TORRENTFOLDER=/media/sda11/downloads
 
# Port, ktery bude Transmission pouzivat pro spojeni s ostatnimi peery 
PORT=54318
 
# Jmeno uzivatele, pod kterym Transmission pobezi
USERNAME=transmission
 
# login a heslo pro prihlaseni pres webove rozhrani
REMOTE_USER=admin
REMOTE_PASS=password

Nakonec jsem provedl příkaz, kterým jsem zajistil, že se skript spustí po startu systému automaticky:

update-rc.d transmission-daemon defaults

Ještě bych dodal, že složka, do které chcete soubory stahovat, by měla mít majitele transmission. Když jsem měl nastaveného jiného majitele, byť s právy zapisovat i pro ostatní, dělalo to neplechu.

Webové rozhraní naleznete na této adrese http://localhost:9091/transmission/web/. Místo localhost je samozřejmě nutné zadat IP adresu serveru, pokud se přihlašujete z jiného počítače. Jak můžete vidět na obrázku dole, webové rozhraní je jednoduché a přehledné a nezadá si ani s grafickým rozhraním Transmissionu. Jedinou nevýhodu spatřuji v tom, že nelze zadat přímo adresu torrentu, ale musíte torrent stáhnout do počítače a potom ho do aplikace nahrát.

7 komentářů: „Bittorrent klient přes webové rozhraní“

  1. anonymous avatar
    anonymous

    shadowman writes:u nás na wifi síti používáme Torrentflux. Pro víc lidí je to lepší řešení …

  2. Sesivany avatar
    Sesivany

    A nepotřebuje to Apache a PHP? Já jsem se taky rozhodoval podle toho, jestli to webový server potřebuje nebo ne. Transmission byl jeden z mála, který to uměl. Pro víc lidí to asi vhodné nebude, ale dokud nebude taťka trpět schizofrenií, tak nám Transmission bude stačit 🙂

  3. anonymous avatar
    anonymous

    Honzík writes:Ahoj a co MLdonkey ?

  4. anonymous avatar
    anonymous

    Jiřík writes:A Ktorrent s povoleným zásuvným modulem Web Interface by nestačil? Myslím že je naprosto ideální a nemusí se člověk tak prát s konfigurací. Teď jsem to aktivoval asi na tři kliknutí.

  5. Sesivany avatar
    Sesivany

    Na tři kliknutí, aby to běželo jako démon? Pochybuju, celá ta práce je o tom, aby to běželo jako démon, tedy nezávisle na tom, jestli jsem k počítači přihlášený nebo ne. Ostatní nastavení spočívá v tom, že zadám, kam se to má stahovat, a přihlašovací údaje.

  6. anonymous avatar
    anonymous

    K. writes:Zrovna jsem nainstaloval, aktualni verze mi uz umoznuje adat URL torrent file-u

  7. anonymous avatar
    anonymous

    Karel writes:Deluge to přes webové rozhraní taky uměl, dokonce to šlo snadněji zprovoznit. Ale v nové verzi to, myslím, ještě není…

Napsat komentář: anonymous Zrušit odpověď na komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *