pyLoad non è altro che una specie di Jdownloader ( ossia un gestore di download ) scritto in python. La sua più grande forza è la versatilità, è infatti installabile su Windows, Mac e Linux, quest'ultimo ci permette di installarlo anche su Android, su router e su NAS ( nel caso specifico un QNAP TS-119P+ ).
DISCLAIMER: La guida seguente ha un intento puramente didattico, da per scontato la conoscenza dei comandi base e dell'utilizzo di un client SSH. Non mi prendo quindi nessuna responsabilità nel caso di danneggiamento dell'apparato o della perdita di dati accidentale.
PREREQUISITI: Optware da QPKG, SSH abilitato ed un consiglio: leggete tutto prima di cimentarvi. 😀 Ricordo inoltre che su NAS aventi più bay la cartella di mount cambia, nel mio caso ad esempio questa è /share/HDA_DATA.
NOTA: Se volete accedere alla cartella dei file scaricati da pyLoad tramite FTP o web file manager dovreste far puntare il parametro "configdir" ad una cartella condivisa. Ad esempio la cartella Download. Oppure se preferite potete crearne una ad-hoc.
NOTA: Potete integrare questa guida con questo post, in cui si spiega come effettuare l'aggiornamento della TIP versione da Mercurial. L'installazione manuale della versione 0.4.5 credo sia solo per i smanettoni, dato che ormai esiste la versione QPKG già pronta.
Per prima cosa procuriamoci un client SSH, tra i più utilizzati e più semplici troviamo putty e kitty. Collegatevi all'indirizzo IP del vostro NAS ( nel mio caso era 192.168.2.5 ) ed ora si comincia.
Come primo comando date:
$ ipkg update & ipkg install nano
Questo ci permetterà di editare facilmente i file di testo, se ce ne fosse bisogno, senza andare fuori di testa nell'utilizzare vi. Ora installiamo le dipendenze di pyLoad.
$ ipkg install python py25-crypto py25-curl libcurl py25-openssl py25-django tesseract-ocr unzip sqlite wget-ssl py25-pil unrar ossp-js
Ed ora scarichiamo i sorgenti. A questo indirizzo potete consultare i download possibili.
$ cd /opt/ $ wget --no-check-certificate https://bitbucket.org/spoob/pyload/get/v0.4.5.tar.gz $ tar -xzf v0.4.5.tar.gz $ rm v0.4.5.tar.gz
Se volete scaricare la versione TIP, chiamiamola la versione dev ( io uso questa ) basta che scriviate:
$ wget --no-check-certificate https://bitbucket.org/spoob/pyload/get/tip.tar.gz
al posto di:
$ wget --no-check-certificate https://bitbucket.org/spoob/pyload/get/v0.4.5.tar.gz
Per la tip version ho scritto un post a parte, che spiega come reperire i sorgenti tramite Mercurial. Con questo strumento potremmo sempre aggiornare pyLoad all'ultima revision senza sbatterci tanto. Se volete la tip io consiglio questo metodo.
Io comunque seguo i path della versione 0.4.5 e non della tip, ovviamente i path varieranno a seconda della versione scaricata. Ora impostiamo la cartella di default e diamo i seguenti comandi:
$ cd /opt/spoob-pyload-73cb51958a1d/ $ python pyLoadCore.py --changedir --configdir=/opt/pyload
Ora procediamo con l'installazione.
$ python pyLoadCore.py -s
L'installer vi chiederà di configurare passo dopo passo le configurazioni del software, per facilitarvi vi posto l'echo completo:
Choose your Language / Wähle deine Sprache ([en], de, it, pl, fr, cs, es): it Benvenuto nell'Assistente di Configurazione di pyLoad. Il setup controllerà il tuo sistema e creerà una configurazione di base per avviare pyLoad. Il valore tra le parentesi quadre [] è sempre il valore di default, nel caso in cui non vuoi cambiare impostazione o non sei sicuro su cosa scegliere, premi semplicemente Invio. Ricorda: Puoi sempre eseguire questo assistente con i parametri --setup o -s, quando avvii pyLoadCore. Se hai qualche problema con questo assistente premi CRTL+C, per annullare e non farlo partire più automaticamente con pyLoadCore. Quando sei pronto per la verifica del sistema premi Invio. ## Verifica del Sistema ## Versione di Python: OK pycurl: OK sqlite3: OK pycrypto: OK py-OpenSSL: OK py-imaging: OK tesseract: OK PyQt4: mancante jinja2: OK beaker: OK motore JS: OK Verifica del sistema finita, premi Invio per vedere il report di stato. ## Stato ## Funzioni disponibili: decrittografia contenitore, connessione ssl, decrittografia automatica captcha, Interfaccia web, Click'N'Load esteso Continua con il setup? ([y]/n): y Do you want to change the config path? Current is /share/HDA_DATA/.qpkg/Optware/spoob Se si utilizza pyLoad su un server o la partizione principale si trova su una memoria flash interna potrebbe essere una buona idea cambiarla. Cambiare il percorso della configurazione? (y/[n]): n Do you want to configure login data and basic settings? E' consigliato per il primo avvio. Fai la configurazione di base? ([y]/n): y ## Setup Base ## The following logindata is valid for CLI, GUI and webinterface. Nome utente [User]: admin Password: Password (di nuovo): Lingua ([en], de, it, pl, es, cs, fr): it Cartella di download [Downloads]: Max download contemporanei [3]: Usa la riconnessione? (y/[n]): n Vuoi configurare l'ssl? Configurare ssl? (y/[n]): y ## Setup SSL ## Execute these commands from pyLoad config folder to make ssl certificates: openssl genrsa -out ssl.key 1024 openssl req -new -key ssl.key -out ssl.csr openssl req -days 36500 -x509 -key ssl.key -in ssl.csr > ssl.crt Se hai finito e tutto quanto è andato bene, ora puoi attivare l'ssl. Attivare SSL? ([y]/n): y Vuoi configurare l'interrfaccia web? Configurare l'interfaccia web? ([y]/n): y ## Setup dell'interfaccia web ## Attivare l'interfaccia web? ([y]/n): y Indirizzo di ascolto, se usi 127.0.0.1 o localhost, l'interfaccia web sarà accessibile soltanto localmente. Indirizzo [0.0.0.0]: Porta [8000]: In some rare cases the builtin server is not working, if you notice problems with the webinterface change the builtin server to the threaded one here. Server ([builtin], threaded): Installazione terminata con successo. Premi Invio per uscire e riavviare pyLoad
Se volete attivare l'SSL dovrete aprire un'altra finestra di putty o kitty e dare quei 3 comandi openssl che l'installer vi suggerisce. A questo punto pyLoad è pronto per l'avvio:
$ python /opt/spoob-pyload-73cb51958a1d/pyLoadCore.py ( avvio da terminale ) $ python /opt/spoob-pyload-73cb51958a1d/pyLoadCore.py --daemon ( avvio come demone ) $ python /opt/spoob-pyload-73cb51958a1d/pyLoadCore.py --quit ( termina il processo )
L'interfaccia web è disponibile all'indirizzo del vostro QNAP e alla porta 8000 di default. Per semplicità facciamo un link simbolico che collega la cartella di download di pyLoad con la cartella Download del QNAP.
$ ln -s /opt/pyload/Downloads /share/HDA_DATA/Download/pyLoad
Io spero di aver scritto i path corretti. 😀 Io ho installato la versione tip e i file di configurazione sono in cartelle differenti. Ad ogni modo il procedimento è questo, prima di dare il comando controllate che il path sia corretto, tanto con la funzione di autocompletamento di Unix ci si mette 3 secondi 😛
AUTOSTART PYLOAD
Ora bisogna far si che pyLoad si avvii subito dopo dell'avvio del QNAP. Altrimenti ad ogni riavvio dovremmo collegarci tramite SSH e dare il comando d'avvio. Io ho provato diversi metodi ma solo questo che vi andrò a spiegare mi funziona correttamente.
Diamo questo comando:
$ nano /etc/init.d/Optware.sh
Troviamo la stringa /bin/echo "Enable Optware/ipkg" e scrollando qualche riga più in giù troviamo ;; e, a capo, stop). Prima dei ;; andremo a scrivere:
/share/HDA_DATA/.qpkg/Optware/bin/python /share/HDA_DATA/.qpkg/Optware/spoob-pyload-73cb51958a1d/pyLoadCore.py --daemon 2>/tmp/pyLoad.log
Ora CTRL+X, Yes e Invio. Salvato questo file, riavviate il QNAP per vedere se al riavvio successivo troverete pyLoad attivo.
Attenzione la parte della stringa qui sopra "spoob-pyload-73cb51958a1d" può cambiare, a seconda della versione scaricata. Basterà sostituirla con il nome della cartella in cui è contenuto lo script d'avvio ( pyLoacCore.py ).
Ho notato che pyLoad ci mette comunque un po' ad attivarsi, attendete quindi 1-2 minuti al riavvio successivo ( io nella fretta pensavo che non andasse, invece bastava solo aspettare 😉 ).
Oltre a questo ho notato che con Optware abilitato la spia di accensione dei QNAP lampeggia tra rosso e verde, normalmente significherebbe un problema, in questo caso però basta attendere qualche minuto in modo da far caricare tutto il necessario al NAS.
Buon download 😉
P.S.
Per controllare pyLoad da remoto esiste una Gui, disponibile anche per Windows. La trovare a questo indirizzo.