Oggi vi spiegherò integralmente come installare Jdownloader sul Qnap Ts-110 (ossia sul processore Arm).
Premessa avendo lavorato con Java, vi dirò subito che i programmi scritti in questo linguaggio girano sulla JVM e non hanno una velocità di esecuzione pari a quella di programmi scritti in altri linguaggi compilati come C, C++, Delphi, Visual Basic che invece vengono eseguiti direttamente dal sistema operativo.
La JVM ha il vantaggio della portabilità ossia scrivi una volta ed esegui ovunque ma questo a discapito del processore, infatti il collo di bottiglia sta qui, il bytecode Java deve essere interpretato prima dalla JVM che poi in un secondo momento passa le istruzioni al S.O. della macchina; va da sè che in altri contesti è una meraviglia, ma in un piccolo Nas con le risorse contate andrà solo ad appesantirlo.
Quindi non disdegno il buon PyLoad che è nettamente più leggero e ve lo consiglio. Attualmente non ho ancora avuto modo di mettere sotto stress il nas per vedere come se la cava, diciamo che ho usato contemporaneamente Jdownloader e Twonky con un film MKV 1080p e non ho avuto nessun blocco.
Cosa ci serve:
- 1. Winscp e Putty quindi una connessione ssh verso il Nas.
In caso non lo sappiate fare vi rimando a questo articolo guida-qnap-connessione-ssh-sftp-t5.html.
- 2. Il pacchetto Optware IPKG che si installa dal pannello di controllo del Nas, ossia da Applicazioni > QPKG Plugins > Optware
- File modificati http://www.megaupload.com/?d=PVL9Z11Y
Premessa, questa guida è per il TS-110 quindi se avete un altro modello con il raid dovrete modificare i percorsi di installazione. I file modificati contengono l'utente rootx che ho usato per la mia installazione, quindi o lo sostituite con il vostro user, o lasciate tutto così e seguite la guida senza dover sostituire nulla (lo consiglio ai meno erserti).
Partiamo creando la cartella di installazione e scaricando i file necessari.
Collegatevi al nas con putty e date questi comandi:
- Codice: Seleziona tutto
[~] # cd /share/HDA_DATA
[/share/HDA_DATA] # mkdir debootstrap
[/share/HDA_DATA] # cd debootstrap
[/share/HDA_DATA/debootstrap] # ipkg install nano
[/share/HDA_DATA/debootstrap] # ipkg install wget
[/share/HDA_DATA/debootstrap] # ipkg install coreutils
[/share/HDA_DATA/debootstrap] # ipkg install binutils
[/share/HDA_DATA/debootstrap] # ipkg install perl
[/share/HDA_DATA/debootstrap] # wget -c http://ftp.it.debian.org/debian/pool/main/d/debootstrap/debootstrap_1.0.36_all.deb
[/share/HDA_DATA/debootstrap] # ar -xf debootstrap_1.0.36_all.deb
[/share/HDA_DATA/debootstrap] # tar -xzf data.tar.gz
[/share/HDA_DATA/debootstrap] # mkdir /share/HDA_DATA/debian
In caso non scarichi nulla, andate qui http://ftp.it.debian.org/debian/pool/main/d/debootstrap/ e sostituite la versione di debootstrap con l'ultima release.
Adesso entrate nel nas con winscp e sostituite questi file debootstrap, functions, che trovate nei seguenti percorsi.
- Codice: Seleziona tutto
usr/sbin/debootstrap
usr/share/debootstrap/functions
Scaricate Debian
- Codice: Seleziona tutto
[/share/HDA_DATA/debootstrap] # ./usr/sbin/debootstrap --arch armel lenny /share/HDA_DATA/debian http://ftp.it.debian.org/debian
Partirà l'installazione un pò lunga mi pare quasi 15, 20 minuti. Alla fine eliminiamo la cartella di installazione.
- Codice: Seleziona tutto
[/share/HDA_DATA/debootstrap] # cd /share/HDA_DATA/debian
[/share/HDA_DATA/debian] # rm -Rf /share/HDA_DATA/debootstrap
Mappiamo le unità condivise.
Nella guida di hwupgrade.it emerson120 capisce che ha un'errore di path sconosciuto e quindi ne deduce che l'errore è il nome delle cartelle (esatto). Ma non capisce che non è lo script
ma bensì l'errore è di Emanuele86 che scrive QDownload, QMultimedia,QUsb, invece di Qdownload, Qmultimedia,Qusb quando crea a mano con il comando make directory le cartelle.
Detto ciò controllate le cartelle nel vostro nas, e modificate coerentemente sia nello script che nei comandi sotto il nome delle cartelle in caso siano diverse.
Sul TS-110 la procedura è questa.
- Codice: Seleziona tutto
[/] # cd /share/HDA_DATA/debian
[/share/HDA_DATA/debian] # mkdir share
[/share/HDA_DATA/debian] # mkdir share/Public
[/share/HDA_DATA/debian] # mkdir share/Qusb
[/share/HDA_DATA/debian] # mkdir share/Qmultimedia
[/share/HDA_DATA/debian] # mkdir share/Qdownload
Copiate il file allegato debian.sh con winscp in questo percorso.
- Codice: Seleziona tutto
/share/HDA_DATA/debian
Adesso date i comandi in putty.
- Codice: Seleziona tutto
[/share_HDA_DATA/debian] # chmod a+x debian.sh
Per avviare debian.
- Codice: Seleziona tutto
[/] # cd /share/HDA_DATA
[/share/HDA_DATA] # debian/debian.sh start
[/share/HDA_DATA] # chroot debian /bin/bash
[root@NAS-NAME:/] #
Impostazioni internazionali ed ora.
- Codice: Seleziona tutto
[root@NAS-NAME:/] # apt-get update
[root@NAS-NAME:/] # apt-get install locales
[root@NAS-NAME:/] # dpkg-reconfigure locales
Nella finestra selezionare en_US.UTF-8 con la barra spaziatrice il tab per spostarsi su ok poi dare Invio.
Nella seconda schermata, selezionare ancora en_US.UTF-8 con la barra spaziatrice il tab per spostarsi su ok poi dare Invio.
- Codice: Seleziona tutto
[root@NAS-NAME:/] # dpkg-reconfigure tzdata
Selezionare Europe dare invio, poi rome dare invio.
Installiamo autocutsel
- Codice: Seleziona tutto
[root@NAS-NAME:/] # apt-get install autocutsel
Per stoppare debian.
- Codice: Seleziona tutto
[root@NAS-NAME:/] # exit
[/share/HDA_DATA] # debian/debian.sh stop
Ovviamente per avviarlo ripetete i passi detti prima (per avviare debian).
Adesso dovremo creare una connessione vnc per visualizzare jdownloader. Quindi avviamo Debian.
- Codice: Seleziona tutto
[/] # cd /share/HDA_DATA
[/share/HDA_DATA] # debian/debian.sh start
[/share/HDA_DATA] # chroot debian /bin/bash
[root@NAS-NAME:/] # apt-get install xorg
[root@NAS-NAME:/] # apt-get install fluxbox
[root@NAS-NAME:/] # apt-get install tightvncserver
Creiamo un utente diverso da root per accedere da terminale, ad esempio io mi chiamo rootx.
- Codice: Seleziona tutto
[root@NAS-NAME:/] # adduser rootx
Mettere la password e poi dare sempre invio fino alla conferma finale dove scriverete y e poi date invio.
- Codice: Seleziona tutto
[root@NAS-NAME:/] # su rootx
Adesso fate creare il file di configurazione e poi sostituitelo con quello allegato.
- Codice: Seleziona tutto
[/] $ vncserver :1
[/] $ vncserver –kill :1
Adesso con winscp entrate in /share/HDA_DATA/debian/home/rootx/.vnc, ovviamente rootx è il mio nome mettete quello che avete scelto voi. Sostituite il file xstartup con questo. Ed uscite con questi comandi.
- Codice: Seleziona tutto
[/] $ exit
[root@NAS-NAME:/] #
Installazione Java.
Personalmente ho installato la versione più performante ejre-1_6_0_10-ea-b39-linux-armv5-sflt-eabi-min-eval-31_jul_2009.tar.gz, in caso siete liberi di utilizzarne un'altra.
Cominciamo scaricandola da qui http://www.wuala.com/posativ/Files/Shee ... 009.tar.gz, poi scompattiamola con 7zip, ed otterremo la cartella TEMPBUNDLE.tar, scompattiamo anche questa ed avremo la cartella ejre1.6.0_10, rinominate quest'ultima in java. Adesso copiate la cartella java con winscp in questo percorso.
- Codice: Seleziona tutto
/share/HDA_DATA/debian/usr/java
poi per non avere errori di permessi nell'esecuzione di java andiamo in
- Codice: Seleziona tutto
/share/HDA_DATA/debian/usr/java
tasto destro proprietà da winscp, e selezioniamo i permessi 777 ossia spuntate le prime tre colonne ed il check ricorsivo in fondo.
Adesso con putty creiamo il link alla Java.
- Codice: Seleziona tutto
[root@NAS-NAME:/] # ln -s /usr/java/bin/java /usr/bin/java
Vediamo la versione appena installata con il comando.
- Codice: Seleziona tutto
[root@NAS-NAME:/] # java -version
Installiamo Jdownloader
- Codice: Seleziona tutto
[root@NAS-NAME:/] # apt-get install unzip
[root@NAS-NAME:/] # su rootx
Andate nel sito di jdownloader e scaricate la versione linux (MULTIOS Zip). Copiate con winscp lo zip nella cartella .
- Codice: Seleziona tutto
/share/HDA_DATA/debian/share/Public
da putty date i comandi
- Codice: Seleziona tutto
unzip /share/Public/JDownloader.zip -d /home/rootx
Ovviamente rootx sono io, voi mettete il vostro utente. Nel file xstartup che vi avevo dato prima ho già incluso la stringa di avvio di JDownloader.
- Codice: Seleziona tutto
java -Xmx256m -jar /home/web/JDownloader/JDownloader.jar
Dove -Xmx256m è la memoria ram fisica massima che la JVM può usare, avendo il TS-110 256MB DDRII di RAM, ho scelto questo valore, in caso abbiate un nas più potente cambiatelo. Nei pochi test ho notato che la memoria che la JVM usa in media è 170mb, mentre la CPU anche il 70%. Quindi non fate fare operazioni stressanti al Nas durante l'utilizzo della JVM, per avere da putty al volo i valori in real time della CPU e della RAM usate questo comando.
- Codice: Seleziona tutto
[root@NAS-NAME:/] # top
Avvio di Jdownloader.
Avviamo vnc dall'utente creato, nel mio caso rootx.
- Codice: Seleziona tutto
[root@NAS-NAME:/] # su rootx
[rootx@NAS-NAME:/] # vncserver :1
In caso riscontriate un errore dove vi dice che il file .X11-unix etc.. è bloccato, significa che avete lasciato la sessione appesa ed è rimasta bloccata, potete o andare con winscp nella cartella temp e calcellarli a mano oppure date questi comandi in Putty. Ovviamente leggete cosa vi cheide di sbloccare.
- Codice: Seleziona tutto
[rootx@NAS-NAME:/] # rm -fr /tmp/.X11-unix
Per killarlo
- Codice: Seleziona tutto
[rootx@NAS-NAME:/] # vncserver –kill :1
Per connetterci da windows vi consiglio VNC Free Edition Viewer for Windows. Basta scrivere l'ip del nas ed il formato ossia nel mio caso 192.168.1.100:1 ed ovviamente la password che avete scelto durante l'installazione di Vnc server, la prima volta sarà un pò lentino a caricarsi. Avviato JDownloader scegliete la cartella di download ossia /share/Qdownload.
Adesso viene il bello!!! Come farete a trasferire i links da windows alla sessione terminal, per incollarli in JDownloader??? Bene molti ancora stanno sbattendo la testa,
oppure si sono installati gedit e poi copiano una lista in un file txt etc... sono tutti dei metodi arrangiati. Dobbiamo ringraziare il pacchetto autocutsel che ci permette si salvare e sincronizzare nel buffer della sessione i dati catturati in maniera bilaterale < --- > tra il client ed il server quindi possiamo fare il copia ed incolla sia da client a server che da server a client. Nel file xstartup che vi ho dato precedentemente, ho già inserito il parametro che renderà ciò possibile ossia autocutsel -fork. Potete attingere a questo wiki https://wiki.archlinux.org/index.php/Tightvnc per capire meglio ciò che ho fatto.
Stoppiamo Debian.
- Codice: Seleziona tutto
[rootx@NAS-NAME:/] # exit
[root@NAS-NAME:/] # exit
[/share/HDA_DATA] # debian/debian.sh stop
Francesco Gerratana.