Uživatelské nástroje

Nástroje pro tento web

Tato dokumentace již není udržována týmem projektu Turris (přestože ji lze i nadále používat pro sdílení komunitního obsahu). Aktuální oficiální dokumentace se nachází na docs.turris.cz.

Instalace pyLoadu v LXC kontejneru

Na úvod si řekneme, co to pyLoad vlastně je.

pyLoad je nástroj pro stahování souborů z internetových úložišť jako je například uloz.to, webshare.cz a mnoho dalších. Samozřejmostí je podpora prémiových účtu pro stahování vyšší rychlostí. Pokud stahuješ soubory resp. archívy s příponou .zip, .rar., tak je možné nastavit po úspěšném stažení rozbalení do určité složky a po rozbalení se dá nastavit, že smaže archívy a rozbalený soubor může přesunout jinam. pyLoad provadí automatickou kontrolu staženého souboru (CRC). Tohle prostě nesmí chybět ve tvé lokální síti.

Pokud ti to připomnělo například program jDownloader, tak je to super! V naší komunitní dokumentaci, také najdeš návod, jak nainstalovat jDownloader 2 v LXC kontejneru nechám na tobě, co Ti vice vyhovuje, ale jDownloader 2 je velmi náročný na procesor.

Ze svého počítače, tabletu, mobilu se můžeš přihlásit do webového rozhraní pyLoadu.

Je možné, také najít aplikaci pro Android, ale bohužel není oficiálně podporována a v první řadě se pracuje na přepsaní kódu pyLoadu na python 3.0 a povýšení pyLoadu na verzi 1.0.0 ve které má dojít na kompletní redesign webového rozhraní, ale zatím ani sám autor neví, kdy to bude vydáno. Můžeš také najít odkaz na desktopovou aplikaci, ale bohužel je to stejné jako v případě aplikace pro Android.

Na začátek je dobré si připomenout z minulého článku, proč vlastně pyLoad budeme instalovat v LXC kontejneru.

Požadavky:

  • SSH klienta (Windows: PuTTY | Linux: terminal)
  • minimálně 250GB volného místa na pevném disku
  • mít LXC kontejner Turris 1.x Omnia.

Nyní si ukážeme, jak nainstalujeme pyLoad v LXC Debian kontejneru.

Závislosti / Dependencies

Nejprve je potřeba stáhnout potřebné balíky (tzn. dependencies), abychom mohli vůbec začít s kompilací (→ překladem nebo-li převedením zdrojových kódu na výsledný program) a následnou instalací

Turris 1.x

apt-get install git python-pycurl python-crypto tesseract-ocr python-openssl python-imaging python-qt4 rhino python-passlib

Omnia

apt-get install git python-pycurl python-crypto tesseract-ocr python-openssl python-imaging python-qt4 rhino python-passlib

Stažení pyLoadu

Začneme tím, že si stáhneme pyLoad z repozitáře na github a budeme k tomu potřebovat SSH použijeme k tomu (PuTTY nebo terminal)

Po připojení do SSH serveru zkopíruj/přepiš následující řádky:

git clone https://github.com/pyload/pyload.git
cd pyload
git checkout stable

Nyní jsme úspěšně stáhli zdrojové kódy a můžeme se pustit do dalšího bodů a tím je instalace.

Instalace pyLoad a průvodce instalací

Nejsnazší a nejjednodušší cesta jak nainstalovat pyLoad je díky instalačnímu průvodci, který nám usnadní práci.

python pyLoadCore.py

Na začátku se tě zeptá průvodce v jakém jazyku ho budeš chtít mít.

Pro zvolení češtiny napiš: cs a potvrď to pomocí klávesy enter. Každá volba bude potvrzena klávesou enter.

Po potvrzení se tě zeptá, zda chceš ověřit všechny potřebné zásuvné pluginy (moduly) pro využití všech možností pyLoad. Měl bys mít stejný výpis jako já.

## Kontrola Systemu ##
Verze Pythonu: OK
pycurl: OK
sqlite3: OK

pycrypto: OK
py-OpenSSL: OK

py-imaging: OK
tesseract: OK

PyQt4: OK

jinja2: OK
beaker: OK
jadro JS: OK

Pokud kontrola proběhla v pořádku, tak můžeme dál pokračovat v instalaci. Pokud ne, tak se neváhej na mě obrátit - kontakt najdeš na konci článku a spolu to vyřešíme.

Nyní to zkontroluje, zda jsou všechny funkce dostupné.

## Stav ##

Dostupne funkce: dekodovani kontejneru, pripojeni ssl, automaticke rozpoznavani captchy, GUI, Webove rozhrani, rozsirene Click'N'Load

Pokracovat v instalaci? ([a]/n):

Opět bys to měl mít stejné jako já.

Nyní se tě instalátor zeptá, zda si přeješ zachovat výchozí instalační cestu, která je: /root/.pyload

Pokud ti nevadí, tak stačí zmáčknout klávesu enter. Pokud ti tato cesta nevyhovuje, tak jí uprav podle svých představ a zmáčkni enter. Instalátor se nyní ukončí a restartuje, protože si změnil složku, kde se bude nacházet konfigurační složka pyload, která je ve vychozím nastavení schovaná (hidden) a musíš instalátor spustit ještě jednou pomocí:

python pyLoadCore.py

a instalace probíhá stejně jako v prvním kroku. Zvolení jazyku a tak dále až se dostaneš do bodu, kdy ti to vypíše do terminálu:

Chcete zmenit cestu k nastaveni? Stavajici je /root/.pyload
Pokud pouzivate pyLoad na serveru, nebo je domovsky oddil na vnitrni flash, muze byt dobre ji zmenit.
Zmenit cestu k nastaveni? (a/[n]):

zkontroluj, zda si neudělal chybu v cestě a pokračuj pomocí N a klávesy enter.

Řiď se nadále pokyny instalačního průvodce.

Nezapoměň, že grafické rozhraní pyLoad není aktuálně ve vývoji s Androidí aplikací, a proto si můžes ušetřit místo v RAM (operační paměti routeru čili kontejneru). S instalací SSL certifikátu ti ukáži v dalším bodě článku.

Při vyplňování hesla do webového rozhraní pyLoadu se hesla neukazují. Nepoužívej výchozí hesla případně slabá hesla typu: 12345, admin. Případně můžeš použít správce hesel např. Sticky Password.

SSL certifikát

V konfigurační složce pyLoad (pokud si nezměnil cestu, kde se bude nacházet), tak ve vychozím nastavení se nachází v /root/.pyload

Pokud nevíš, jak se dostat do této složky, tak pomocí:

cd /root/.pyload

a nyní zkopírujeme pomocí CTRL + C po jednom řádku vložíme do terminálu pomocí kláves CTRL + V tyto příkazy:

openssl genrsa -out ssl.key 1024
openssl req -new -key ssl.key -out ssl.csr

Nyní nás čeká vyplnění informací pro SSL certifikát, ale pokud je nechceš vyplnit, tak zmáčkni 9x enter a vlož následující řádek ze šedého rámečku.

Zeptá se to nás to bohužel v angličtině, ale:

Country Name (2 letter code) [AU]:
State or Province Name (full name) [Some-State]:
Locality Name (eg, city) []:
Organization Name (eg, company) [Internet Widgits Pty Ltd]:
Organizational Unit Name (eg, section) []:
Common Name (e.g. server FQDN or YOUR name) []: 
Email Address []:

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:pyload
An optional company name []:
openssl req -days 36500 -x509 -key ssl.key -in ssl.csr > ssl.crt

Spuštění pyLoadu:

Nyní přejdeme z konfigurační složky pyload do složky, kde máme stažený pyload tzn. ve složce /root/pyload

cd /root/pyload

Abychom viděli, zda je vše v pořádku prvně spustíme:

python pyLoadCore.py

Pokud máš tento výstup:

29.03.2017 18:07:11 INFO      Spoustim pyLoad 0.4.9
29.03.2017 18:07:11 INFO      Nastaven domovsky adresar: /root/.pyload
29.03.2017 18:07:13 INFO      Aktivovane pluginy: ClickNLoad, EventMapper, ExternalScripts, ExtractArchive, MergeFiles, UnSkipOnFail, UpdateManager, UserAgentSwitcher, XFileSharing
29.03.2017 18:07:13 INFO      Deaktivovat pluginy: AndroidPhoneNotify, AntiStandby, AntiVirus, BypassCaptcha, Captcha9Kw, CaptchaBrotherhood, Checksum, CloudFlareDdos, DeathByCaptcha, DeleteFinished, DownloadScheduler, ExpertDecoders, HotFolder, IRC, ImageTyperz, JustPremium, LinkFilter, LinkdecrypterComHook, LogMarker, MultiHome, PushBullet, PushOver, RestartFailed, SkipRev, TransmissionRPC, WindowsPhoneNotify, XMPP
29.03.2017 18:07:13 INFO      Cas stahovani: True
29.03.2017 18:07:13 INFO      Zahajuji ThriftBackend: 0.0.0.0:7227
29.03.2017 18:07:13 INFO      Volne misto: 64.58 GiB
29.03.2017 18:07:14 INFO      Aktivuji Ucty...
29.03.2017 18:07:14 INFO      Aktivuji Pluginy...
29.03.2017 18:07:16 INFO      Starting threaded webserver: 0.0.0.0:8000
29.03.2017 18:07:16 INFO      ADDON UpdateManager: pyLoad is up to date!
29.03.2017 18:07:17 INFO      ADDON XFileSharing: Auto-discover new hosters
29.03.2017 18:07:17 INFO      ADDON XFileSharing: Auto-discover new crypters
29.03.2017 18:07:17 INFO      pyLoad is up and running
29.03.2017 18:07:18 INFO      ADDON UpdateManager: All plugins are up to date!
29.03.2017 18:07:19 INFO      ADDON ClickNLoad: Proxy listening on 0.0.0.0:9666

Tak je vše v pořádku. Nyní raději spustíme pyLoad v pozadí, protože pokud bys teď zavřel PuTTY, tak se ti ukončí i PyLoad a to rozhodně nemáš v plánu. PyLoad ukončíš pomocí klávesových zkratek: ctrl + c.

pyLoad na pozadí spustíš pomocí:

python pyLoadCore.py --daemon

Pokud chceš vypnout pyLoad, aby neběžel na pozadí, tak ho ukončíš pomocí:

python pyLoadCore.py -q

Webové rozhraní pyLoadu se nachází: http://192.168.1.10:8000 (případně si ověřit v rozhraní LuCI, jaká je IP adresa kontejneru).

Ve webovém rozhraní přejdi do Config do SSL.
V SSL certificate najdi soubor, který se jmenuje ssl.crt.
V SSL Key vyber cestu k souboru, který se jmenuje ssl.key.
Ulož. Přejdi do Webinterface a u Use HTTPS vyber: on.

Nyní je potřeba restartovat pyLoad, co si ukážeme v dalším kroku. Po restartu, když půjdeš do webového rozhraní pyLoad nešifrovaně (tedy pomocí http ) , tak uvidíš tohle upozornění:

The client sent a plain HTTP request, but this server only speaks HTTPS on this port.

Takže stačí pouze zaměnit http za https (tedy https://192.168.1.10:8000)

Nezapomeň, pokud stahuješ ze serveru, který vyžaduje captchu pro stahování, tak jí musíš vyplnit. pyLoad tě na to upozorní:

Automatické spuštění při startu kontejneru

Pro Linuxové systémy využívající systemd jako například Debian, ArchLinuxArm použí tento skript, pokud si změnil cestu, kde se nachází pyload (nikoliv konfigurační složka) tak budeš si daný soubor upravit.

Není dobré spouštět aplikace s právy uživatele - root!

wget https://raw.githubusercontent.com/BKPepe/scripty-turris/master/pyload.service -O /etc/systemd/system/pyload.service
chmod +x /etc/systemd/system/pyload.service

Prvně zkusíme ručně zapnout pyLoad

service pyload start

a nyní zjistíme, zda se nám spustil a zda je vše OK.

service pyload status

Pokud se ti ukázal tento výstup, tak je vše v pořádku a po následujícím kroku se ti nastaví automatické spouštění pyLoadu po zapnutí LXC kontejneru případně Turrise.

root@Debian-NAS:~# service pyload status
● pyload.service - Downloadtool for One-Click-Hoster written in python.
   Loaded: loaded (/etc/systemd/system/pyload.service; disabled)
   Active: active (running) since Sat 2017-06-03 18:56:30 CEST; 3s ago
 Main PID: 6253 (python)
   CGroup: /system.slice/pyload.service
           └─6253 python /home/pepe/pyload/pyLoadCore.py

Jun 03 18:56:30 Debian-NAS systemd[1]: Started Downloadtool for One-Click-Hoster written in python..
Jun 03 18:56:31 Debian-NAS pyLoadCore.py[6253]: 03.06.2017 18:56:31 INFO      Starting pyLoad 0.4.9
Jun 03 18:56:31 Debian-NAS pyLoadCore.py[6253]: 03.06.2017 18:56:31 INFO      Using home directory: /home/pepe/.pyload
Jun 03 18:56:32 Debian-NAS pyLoadCore.py[6253]: 03.06.2017 18:56:32 INFO      Activated plugins: ClickNLoad, EventMapper, ExternalScripts, ExtractArchive, MergeFiles, UnSkipOnFail, UpdateManager, UserAgentSwitcher, XFileSharing
Jun 03 18:56:32 Debian-NAS pyLoadCore.py[6253]: 03.06.2017 18:56:32 INFO      Deactivate plugins: AndroidPhoneNotify, AntiStandby, AntiVirus, BypassCaptcha, Captcha9Kw, CaptchaBrotherhood, Checksum, CloudFlareDdos, DeathByCaptcha, Del...
Jun 03 18:56:32 Debian-NAS pyLoadCore.py[6253]: 03.06.2017 18:56:32 INFO      Downloadtime: True
Jun 03 18:56:33 Debian-NAS pyLoadCore.py[6253]: 03.06.2017 18:56:33 INFO      Starting builtin webserver: 0.0.0.0:8000
Jun 03 18:56:33 Debian-NAS pyLoadCore.py[6253]: 03.06.2017 18:56:33 INFO      Free space: 1.69 TiB
Jun 03 18:56:33 Debian-NAS pyLoadCore.py[6253]: 03.06.2017 18:56:33 INFO      Activating Accounts...
Jun 03 18:56:33 Debian-NAS pyLoadCore.py[6253]: 03.06.2017 18:56:33 INFO      Activating Plugins...
Hint: Some lines were ellipsized, use -l to show in full.

Pokud se ti ukázal jiný výstup, tak je nutné upravit cestu ve scriptu pyload.service který se nachází ve složce /etc/systemd/system/

sudo systemctl enable pyload.service

Nyní máš návod za sebou. Gratuluji!

Modifikace

Vzhledy

PyPlex

Náhled a návod, jak skin nainstalovat najdeš zde: https://github.com/xunil75/PyPlex

Odinstalace pyLoad

Pokud se někdy rozhodneš odinstalovat pyLoad, tak smaž složku pyload a skrytou (hidden) konfigurační složku .pyload

Autorem článku je: Josef Schlehofer
Pokud je ti něco nejasné, tak neváhej a kontaktuj autora. Rád ti to vysvětlí a případně pomůže.
Můžeš se také na něj obrátit prostřednictvím soukromé zprávy na Turris fóru