Fabius85
07-06-2014, 05:05
NUOVA GUIDA
È finalmente uscito un pacchetto nativo di JDownloader 2 per NAS Synology quindi vi bastetà:
- installare Java 8 dalla repository ufficiale Synology
- aggiungere la repository dove si trova il pacchetto di JDownloader 2: https://spk.netzbaer.de/
- creare una cartella condivisa (ad esempio "Downloads")
- installare il pacchetto di JDownloader 2
- seguire la procedura che vi chidererà di introdurre le credenziali di accesso a My.JDownloader e il percordo alla cartella di download precedentemente creata (ad esempio "/volume1/Downloads")
- al termine della procedura lanciate l'applicazione (potrebbe volerci un po', se non dovesse proprio andare clickate sul pulsante Azione nella pagina del pacchetto e lanciatela manualmente di nuovo finchè non parte - questo problema può capitare solo dopo la prima installazione)
Questo nuovo metodo di installazione, oltre al vantaggio di essere molto più rapido e di non richiedere particolari conoscenze dell'ambiente linux offre la possibilità di lasciare che il NAS vada in sleep mode quando inattivo (cosa che la vecchia procedura non consentiva, avendo un server VNC con ambiente desktop e JDownloader costantemente aperti).
Per comodità, nel caso in cui la repository dovesse andare offline, ho caricato l'SPK di JDownloader che può essere manualmente installato. Lo trovate qui: JDownloader_noarch_017.spk (http://www69.zippyshare.com/v/sF71YKAj/file.html)
IMPORTANTE! Come segnalato da EdoFede il pacchetto in questione fa girare JDownloader con utenza root, il che significa che, potenzialmente, JDownloader può fare qualsiasi cosa con qualsiasi file presente sul NAS (sia vostro, che di configurazione).
Seguite quindi la procedura da lui suggerita per farlo girare con un'utenza a permessi limitati per una maggiore sicurezza: QUI LA GUIDA (http://www.hwupgrade.it/forum/showpost.php?p=44214283&postcount=100)
-------------------------------------------------------------------------------------
VECCHIA GUIDA
PREMESSA
- Questa guida è in parte estrapolata da altre guide che si trovano sul web e da ricerche su google e in parte farina del mio sacco.
- Si presuppone una basilare conoscenza degli strumenti che state andando ad utilizzare (SSH, ambiente linux, ecc...). Se operate in ambiente Windows (come me), posso consigliare l'utilizzo di WinSCP in combinazione con PuTTY.
- Non sono certo che Jdownloader 2 BETA funzioni su NAS Synology con architettura ARM, mentre JDownloader 0.9 dovrebbe andare senza problemi.
- Tutto è stato testato su NAS Synology DS214play (con CPU Intel e architettura Evansport i686), tuttavia non escludo che possa funzionare anche su modelli con altre CPU e architetture (come ARM), sebbene con i dovuti accorgimenti per l'appunto nei passaggi che dipendono dall'architettura del vostro NAS. A tal proposito, data un'occhiata a questa tabella (http://forum.synology.com/wiki/index.php/What_kind_of_CPU_does_my_NAS_have)
- Se si seguono i passaggi come si deve non dovrebbero esserci problemi, tuttavia non mi assumo alcuna responsabilità per eventuali malfunzionamenti causati ai vostri dispositivi. Fate tutto a vostro rischio e pericolo.
- Con questa procedura andrete ad installare nel NAS un sistema operativo aggiuntivo e a sé stante (Debian oppure Ubuntu) in una cartella del vostro NAS, e all'interno di questo sistema operativo installerete un server VNC per l'accesso remoto, Java e JDownloader. Far girare il server VNC e JDownloader porta al fatto che il NAS non vada più in standby.
- Prima di imbarcarvi in una procedura pittosto lunga e complessa, vi consiglio di dare una scorsa a quello che andrete a fare.
INSTALLAZIONE DEL BOOTSTRAP E DI IPKG
1) Per prima cosa assicuratevi di aver abilitato nel NAS (da Pannello di controllo > Terminale e SNMP) il servizio SSH.
2) Collegatevi via SSH al NAS utilizzando come nome utente "root" (NON "admin") e come password invece la password che avete impostato per l'account "admin".
3) Questo punto non è fondamentale, serve solo per evitare la comparsa di un errore in fase di installazione del bootstrap. Se per qualche motivo preferite saltarlo non dovrebbero esserci problemi, quindi potete andare al punto 4). Inoltre, verificate che il file "/usr/syno/ssl/openssl.cnf" non esista, in caso contrario saltate al punto 4).
Se la cartella "/usr/syno/ssl" non esiste, createla:
cd /usr/syno
mkdir ssl
Quindi scaricate al suo interno il file "openssl.cnf":
cd ssl
wget http://123adm.free.fr/home/pages/documents/syno-cert_fichiers/openssl.cnf
4) Passiamo dunque all'installazione del bootstrap. Per sapere quale file di installazione scaricare in base al modello del vostro NAS vi consiglio di guardare questa tabella (http://www.synology-wiki.de/index.php/Welchen_Prozessortyp_besitzt_mein_System%3F), alla colonna "Optware-Pfad".
Nel mio caso, con il DS214play, il file da scaricare è syno-i686-bootstrap_1.2-7_i686.xsh (http://ipkg.nslu2-linux.org/feeds/optware/syno-i686/cross/stable/syno-i686-bootstrap_1.2-7_i686.xsh)
Scaricate l'installer nella cartella "/volume1/@tmp":
cd /volume1/@tmp
wget http://ipkg.nslu2-linux.org/feeds/optware/syno-i686/cross/stable/syno-i686-bootstrap_1.2-7_i686.xsh
5) Dategli permessi di esecuzione:
chmod +x syno-i686-bootstrap_1.2-7_i686.xsh
6) Lanciate l'installazione:
sh syno-i686-bootstrap_1.2-7_i686.xsh
7) Ora potete rimuovere l'installer:
cd /volume1/@tmp
rm syno-i686-bootstrap_1.2-7_i686.xsh
8) Aggiornate la lista pacchetti di ipkg:
ipkg update
ipkg upgrade
9) Ora bisogna fare in modo che il comando "ipkg" sia reperibile da qualunque posizione.
Installate l'editor nano:
ipkg install nano
10) Modificate con nano il file "/etc/rc.local":
nano --nowrap /etc/rc.local
Aggiungete prima di "exit 0" la riga:
mount -o bind /volume1/@optware /opt
Ctrl+O, poi INVIO per salvare. Ctrl+X per uscire.
11) Modificate con nano il file "/root/.profile":
nano --nowrap /root/.profile
Alla riga:
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/syno/sbin:/usr/syno/bin:/usr/local/sbin:/usr/local/bin
Dopo "PATH=" aggiungere:
/opt/bin:/opt/sbin:
In modo che risulti:
PATH=/opt/bin:/opt/sbin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/syno/sbin:/usr/syno/bin:/usr/local/sbin:/usr/local/bin
Ctrl+O, poi INVIO per salvare. Ctrl+X per uscire.
12) Riavviate il NAS.
13) Se tutto è andato a buon fine dopo il riavvio date il comando:
ipkg
e dovreste veder comparire l'help del comando. Se così non fosse, ricontrollate di aver seguito correttamente i punti 10) e 11).
INSTALLAZIONE DEL CHROOT
JDownloader non può essere installato direttamente nel sistema operativo del NAS, sarà quindi necessario installare un sotto-sistema in una cartella in cui farlo girare.
A questo punto potete scegliere:
- il metodo facile, installare Debian con la semplice installazione di due pacchetti SPK da una repository tramite il Centro pacchetti del DSManager;
- il metodo un pò più complesso, installare Ubuntu (o Debian) effettuando il (debootstrap (https://wiki.ubuntu.com/DebootstrapChroot)) su un PC con Ubuntu (o Debian) o direttamente sul NAS.
Prima di lanciarvi su quella che sembrerebbe la scelta più ovvia (cioè il metodo più facile), vi devo far notare che, leggendo qua e là, ho trovato scritto da qualche utente che JDownloader 2 BETA non si installa (e/o non funziona) su Debian chroot. Non posso nè confermare nè smentire questa notizia in quanto i miei test si sono limitati a Debian chroot da SPK + JDownloader 0.9 e Ubuntu chroot da deboostrap + JDownloader 2 BETA. Anche se onestamente sono convinto che i problemi più grossi, come accennavo nella premessa, possono derivare più dall'architettura del sistema che dalla distro installata. Al contrario, anche se non l'ho testato, sono pressochè certo che JDownloader 0.9 funzioni perfettamente su Ubuntu (o Debian) chroot da debootstrap. Se qualcuno vuole provare ad installare Debian chroot da SPK + JDownloader 2 BETA oppure Ubuntu (o Debian) chroot da debootstrap + JDownloader 0.9, ed in caso dare un feedback in questo topic, è il benvenuto.
Se avete scelto il metodo facile continuate a leggere qui sotto al punto A), se invece avete scelto il metodo più complesso, saltate fino al punto B)
A) * Metodo facile (Debian chroot) *
1) Aprite il DSManager del vostro NAS ed entrate nel Centro pacchetti
2) Clickate su Impostazioni, quindi sulla scheda Pacchetti sorgente
3) Clickate su Aggiungi, e impostate
Nome: SynoCommunity
Posizione: http://packages.synocommunity.com/
e date OK.
4) Clickate nuovamente su OK per chiudere la finestra delle impostazioni, poi clickate sulla barra di sinistra selezionando Comunità e clickate su Aggiorna.
5) Installate prima Python e poi Debian chroot, entrambi dalla repo di SynoCommunity.
Se preferite l'installazione manuale, o se la repository di SynoCommunity fosse down e non siete stati in grado di aggiungerla, ecco gli ZIP contenenti gli SPK per tutte le architetture che sono riuscito a recuperare:
Python (https://mega.co.nz/#!0Y0F0IKS!9O0K7jU9TQ79hZkaG8o5qpEfDfgbA9wWIbzlwSAIeio) Debian chroot (https://mega.co.nz/#!MMtSHISA!qsBECPXTTWteXy9cXCUICHJEPD_o-HdjtXdW9wDSiB4)
Nel mio caso, con un DS214play, gli SPK da scegliere sono quelli per architettura "evansport". Fate nuovamente riferimento al link che ho scritto nella premessa per conoscere qual è l'architettura del vostro NAS.
6) Fatto, Debian chroot è installato e dovrebbe trovarsi nella cartella "/volume1/@appstore/debian-chroot/var/chroottarget". L'avevo detto che era semplice, no? :)
Passate dunque al capitolo successivo, CONFIGURAZIONE DEL CHROOT.
B) * Metodo complesso (Ubuntu o Debian chroot) *
Se avete scelto il metodo più complesso, vi trovate nuovamente di fronte a una scelta: eseguire il debootstrap su un PC con Ubuntu (o Debian) o direttamente sul NAS. Dai miei test ho constatato che il debootstrap effettuato su un PC con Ubuntu è praticamente identico al debootstrap fatto direttamente sul NAS.
Per eseguire il debootstrap su un PC con Ubuntu (o Debian), se non disponete di un PC su cui sia installato tale sistema operativo, potete usare anche una Virtual Machine, come ho fatto io. Vi basta scaricare ed installare VirtualBox (https://www.virtualbox.org/wiki/Downloads) + relativo Extension Pack (download sempre dallo stesso link) e montare la VM utilizzando l'immagine ISO di Ubuntu (http://www.ubuntu-it.org/download). Personalmente ho utilizzato la versione corrente di Ubuntu, la 14.04 (Trusty Tahr).
Se avete scelto di effettuare il debootstrap su un PC con Ubuntu (o Debian) continuate a leggere qui sotto al punto X), se invece avete scelto di effettuare il debootstrap direttamente sul NAS, saltate fino al punto Y)
X) Debootstrap su un PC con Ubuntu (o Debian)
1) Andate all'indirizzo http://ftp.it.debian.org/debian/pool/main/d/debootstrap/ e copiatevi il link della versione più recente del pacchetto "debootstrap_x.x.xx_all.deb" ad esempio:
http://ftp.it.debian.org/debian/pool/main/d/debootstrap/debootstrap_1.0.80_all.deb
2) Da Terminale sul vostro PC scaricate nella cartella "/tmp" il pacchetto in questione:
cd /tmp
sudo wget http://ftp.it.debian.org/debian/pool/main/d/debootstrap/debootstrap_1.0.80_all.deb
3) Dategli permessi di esecuzione:
sudo chmod +x debootstrap_1.0.80_all.deb
4) E installatelo:
sudo dpkg -i debootstrap_1.0.80_all.deb
5) Accedete alla cartella principale con:
cd /
6) Create una nuova cartella, il nome è indifferente, io l'ho chiamata "chrooting", e poi entrateci:
sudo mkdir chrooting
cd chrooting
7) Ora dovete eseguire il debootstrap di Ubuntu, o di Debian se preferite.
Se scegliete Ubuntu, vi consiglio di fare il debootstrap dell'ultima versione, attualmente la 16.04 (Xenial Xerus) o della 12.04 (Precise Pangolin). Ho personalmente verificato che il debootstrap della 14.04 (Trusty Tahr), ha dei bug che non consentono di portare a termine dei passaggi più avanti. E cercando in giro ho letto che anche altre versioni 12.10 (Quantal Quetzal), 13.04 (Raring Ringtail) e 13.10 (Saucy Salamander) creano qualche problema.
Se scegliete Debian vi consiglio di utilizzare la versione stable, attualmente la 8.4 (Jessie).
Non posso garantire nulla per versioni future.
Ricordatevi, nel comando che segue, di specificare la corretta architettura in base al vostro NAS: nel mio caso, DS214play, l'architettura da scegliere è i386.
I valori possibili per il parametro --arch nel debootstrap di Ubuntu sono: amd64 armel armhf i386 powerpc
I valori possibili per il parametro --arch nel debootstrap di Debian sono: amd64 armel armhf i386 ia64 kfreebsd-amd64 kfreebsd-i386 mips mipsel powerpc s390 s390x sparc
(da notare che alcuni di questi tipi di architettura non li troverete mai sul vostro NAS, li ho elencati tutti solo per completezza di informazione)
Vi avviso, il comando debootstrap richiede alcuni minuti.
- Per fare il debootstrap di Ubuntu digitate:
sudo debootstrap --foreign --no-check-gpg --arch i386 precise ubuntu "http://archive.ubuntu.com/ubuntu/"
Quando ha terminato, comprimete il tutto con:
sudo tar -czf ubuntu.tar.gz ubuntu
- Per fare invece il debootstrap di Debian digitate:
sudo debootstrap --foreign --no-check-gpg --arch i386 stable debian "http://ftp.it.debian.org/debian/"
Quando ha terminato, comprimete il tutto con:
sudo tar -czf debian.tar.gz debian
8) Copiate l'archivio compresso appena generato nella cartella "/volume1" del vostro NAS. Se state usando VirtualBox ad esempio potete sfruttare la funzionalità fornita dall'Extension Pack per riconoscere i dispositivi USB sulla Virtual Machine. Copiate quindi l'archivio compresso su una chiavetta, poi dalla chiavetta a Windows e da Windows tramite WinSCP al vostro NAS.
9) Create dal Pannello di controllo del DSManager una cartella condivisa chiamata "ubuntu" (se avete fatto il debootsrtap di Ubuntu) o "debian" (se avete fatto il debootsrtap di Debian)
10) Via SSH sul vostro NAS entrate nella cartella "/volume1"
cd /volume1
11) Spacchettate l'archivio che avete precedentemente copiato nella cartella "/volume1":
- Per Ubuntu:
tar -xzf ubuntu.tar.gz
- Per Debian:
tar -xzf debian.tar.gz
12) Ora potete eliminare l'archivio dal NAS:
- Per Ubuntu:
rm ubuntu.tar.gz
- Per Debian:
rm debian.tar.gz
13) Copiate un paio di configurazioni dalla DiskStation:
- Per Ubuntu:
cp /etc/resolv.conf /volume1/ubuntu/etc
echo `hostname` > /volume1/ubuntu/etc/hostname
- Per Debian:
cp /etc/resolv.conf /volume1/debian/etc
echo `hostname` > /volume1/debian/etc/hostname
14) Avviate il secondo passaggio del debootstrap (richiede alcuni minuti):
- Per Ubuntu:
chroot /volume1/ubuntu /debootstrap/debootstrap --second-stage
- Per Debian:
chroot /volume1/debian /debootstrap/debootstrap --second-stage
15) Infine aggiungete le fonti per apt-get:
- Per Ubuntu:
echo "deb-src http://archive.ubuntu.com/ubuntu precise main restricted universe" >> /volume1/ubuntu/etc/apt/sources.list
echo "deb http://archive.ubuntu.com/ubuntu precise main restricted universe" >> /volume1/ubuntu/etc/apt/sources.list
- Per Debian:
echo "deb-src ftp://ftp.it.debian.org/debian stable main contrib non-free" >> /volume1/debian/etc/apt/sources.list
echo "deb ftp://ftp.it.debian.org/debian stable main contrib non-free" >> /volume1/debian/etc/apt/sources.list
Y) Debootstrap direttamente sul NAS
1) Create dal Pannello di controllo del DSManager una cartella condivisa chiamata "ubuntu" (se avete intenzione di fare il debootsrtap di Ubuntu) o "debian" (se avete intenzione di fare il debootsrtap di Debian)
2) Via SSH sul vostro NAS installate alcuni pacchetti:
ipkg install binutils coreutils grep nano perl wget
3) Andate all'indirizzo http://ftp.it.debian.org/debian/pool/main/d/debootstrap/ e copiatevi il link della versione più recente del pacchetto "debootstrap_x.x.xx_all.deb" ad esempio:
http://ftp.it.debian.org/debian/pool/main/d/debootstrap/debootstrap_1.0.80_all.deb
4) Scaricate nella cartella principale "/" il pacchetto in questione:
cd /
wget http://ftp.it.debian.org/debian/pool/main/d/debootstrap/debootstrap_1.0.80_all.deb
5) Dategli permessi di esecuzione:
chmod +x debootstrap_1.0.80_all.deb
6) Non potete installarlo, ma potete decomprimerlo:
dpkg --force-bad-verify --unpack debootstrap_1.0.80_all.deb
7) Ora potete eliminare il file DEB:
rm debootstrap_1.0.80_all.deb
8) Accedete alla cartella "/volume1"
cd /volume1
9) Ora dovete eseguire il debootstrap di Ubuntu, o di Debian se preferite.
Se scegliete Ubuntu, vi consiglio di fare il debootstrap dell'ultima versione, attualmente la 16.04 (Xenial Xerus) o della 12.04 (Precise Pangolin). Ho personalmente verificato che il debootstrap della 14.04 (Trusty Tahr), ha dei bug che non consentono di portare a termine dei passaggi più avanti. E cercando in giro ho letto che anche altre versioni 12.10 (Quantal Quetzal), 13.04 (Raring Ringtail) e 13.10 (Saucy Salamander) creano qualche problema.
Se scegliete Debian vi consiglio di utilizzare la versione stable, attualmente la 8.4 (Jessie).
Non posso garantire nulla per versioni future.
Ricordatevi, nel comando che segue, di specificare la corretta architettura in base al vostro NAS: nel mio caso, DS214play, l'architettura da scegliere è i386.
I valori possibili per il parametro --arch nel debootstrap di Ubuntu sono: amd64 armel armhf i386 powerpc
I valori possibili per il parametro --arch nel debootstrap di Debian sono: amd64 armel armhf i386 ia64 kfreebsd-amd64 kfreebsd-i386 mips mipsel powerpc s390 s390x sparc
(da notare che alcuni di questi tipi di architettura non li troverete mai sul vostro NAS, li ho elencati tutti solo per completezza di informazione)
Vi avviso, il comando debootstrap richiede alcuni minuti.
- Per fare il debootstrap di Ubuntu digitate:
debootstrap --foreign --no-check-gpg --arch i386 precise ubuntu "http://archive.ubuntu.com/ubuntu/"
- Per fare invece il debootstrap di Debian digitate:
debootstrap --foreign --no-check-gpg --arch i386 stable debian "http://ftp.it.debian.org/debian/"
10) Avviate il secondo passaggio del debootstrap (richiede alcuni minuti):
- Per Ubuntu:
chroot /volume1/ubuntu /debootstrap/debootstrap --second-stage
- Per Debian:
chroot /volume1/debian /debootstrap/debootstrap --second-stage
11) Infine aggiungete le fonti per apt-get:
- Per Ubuntu:
echo "deb-src http://archive.ubuntu.com/ubuntu precise main restricted universe" >> /volume1/ubuntu/etc/apt/sources.list
echo "deb http://archive.ubuntu.com/ubuntu precise main restricted universe" >> /volume1/ubuntu/etc/apt/sources.list
- Per Debian:
echo "deb-src ftp://ftp.it.debian.org/debian stable main contrib non-free" >> /volume1/debian/etc/apt/sources.list
echo "deb ftp://ftp.it.debian.org/debian stable main contrib non-free" >> /volume1/debian/etc/apt/sources.list
CONFIGURAZIONE DEL CHROOT
Da questo punto le strade, salvo piccole variazioni che vi indicherò, si riuniscono.
ATTENZIONE: D'ora in poi, non sapendo se avete installato Debian chroot da SPK oppure Ubuntu chroot o Debian chroot da debootstrap, e quindi non sapendo in quale cartella si trovi il vostro sistema chroot, userò per convenzione la dicitura "/CARTELLA_CHROOT" che in base a quanto precedentemente detto può stare per "/volume1/@appstore/debian-chroot/var/chroottarget" oppure per "/volume1/ubuntu" oppure per "/volume1/debian"
1) Montate i percorsi "/dev", "/proc" e "/sys" dal sistema principale al sistema in chroot:
mount -o bind /dev /CARTELLA_CHROOT/dev
mount -o bind /proc /CARTELLA_CHROOT/proc
mount -o bind /sys /CARTELLA_CHROOT/sys
Entrate nel sistema chroot:
chroot /CARTELLA_CHROOT /bin/bash
(attenzione che c'è uno spazio tra "/CARTELLA_CHROOT" e "/bin/bash")
Tenete bene a mente questo comando perchè è quello che anche in futuro, a prescindere da questa guida, vi permetterà di accedere via SSH nell'ambiente del chroot.
NOTA: È possibile che compaia un errore relativo al "locale" simile a questo:
warning: setlocale: LC_ALL: cannot change locale (en_US.utf8)
Niente di preoccupante, è più che normale, indica solo che il pacchetto di default della lingua non è installato, cosa che andremo a fare tra pochissimo.
2) Aggiornate la lista pacchetti di "apt-get":
apt-get update
apt-get upgrade
apt-get dist-upgrade
3) Ora dovete installare i pacchetti della lingua. Per farlo, bisogna che il pacchetto "locales" (che permette di dare i comando "locale-gen") sia installato.
Se avete utilizzato il metodo facile di installazione del chroot dovete installarlo manualmente così:
apt-get install locales
Se avete utilizzato il metodo complesso di installazione del chroot dovrebbe essere già presente. Nel caso non lo fosse, dando il primo dei comandi "locale-gen" qui sotto vi darà errore di comando non trovato, e in tal caso date anche voi il comando sopra citato, e poi passate ai comandi "locale-gen".
Indipendentemente dal fatto di aver usato il metodo facile o quello complesso, ora installate i pacchetti per la lingua inglese ed italiana:
locale-gen en_US.UTF-8
locale-gen en_US
locale-gen en_US.ISO-8859-15
locale-gen it_IT.UTF-8
locale-gen it_IT
locale-gen it_IT@euro
Poi riconfigurate i pacchetti lingua:
dpkg-reconfigure locales
Ed impostate il fuso orario su Europe > Rome:
dpkg-reconfigure tzdata
4) Installate alcuni pacchetti:
apt-get install wget less nano make atop file
5) Installate un ambiente desktop leggero, LXDE (richiede alcuni minuti):
apt-get install lxde-core
6) Installate il server VNC:
apt-get install vnc4server
Non sono sicuro al 100% che vnc4server sia disponibile per architettura ARM (richiedo feedback da qualcuno).
Quindi se, e solo se, tentando di installare vnc4server vi dice che non trova il pacchetto o che non può installarlo, installate tightvncserver:
apt-get install tightvncserver
NON installate tightvncserver se l'installazione di vnc4server è andata a buon fine!
CONFIGURAZIONE DEL SERVER VNC
1) Impostate la password di accesso (massimo 8 caratteri):
vncpasswd
2) Lanciate il server VNC e poi terminatelo (serve a generare i file di configurazione):
vncserver -geometry 800x600
vncserver -kill :1
3) Modificate con nano il file "/root/.vnc/xstartup":
nano --nowrap /root/.vnc/xstartup
Commentate tutto quello che c'è scritto (ovvero aggiungete il prefisso # a tutte le righe che già non iniziano per #) e aggiungere alla fine le righe che permetteranno di lanciare automaticamente l'ambiende desktop LXDE all'avvio del server VNC:
xrdb $HOME/.Xresources
xsetroot -solid grey
startlxde &
lxsession
Ctrl+O, poi INVIO per salvare. Ctrl+X per uscire.
INSTALLAZIONE DI JAVA
Per utilizzare JDownloader è necessario installare Java. Personalmente ho avuto modo di testare solo Java6 + Debian chroot da SPK + JDownloader 0.9 e Java7 + Ubuntu chroot da debootstrap + JDownloader 2 BETA, il tutto sempre su una CPU Intel.
Non sono sicuro che non ci possano essere problemi derivanti dall'utilizzare Java7 su Debian chroot e/o per installare JDownloader 0.9 e/o su CPU ARM.
Chiaramente sarebbe meglio utilizzare Java7 (più aggiornato e più esente da bug e falle), ma ovviamente serve un feedback da qualcuno che ci provi.
-------------------------------------------------------------------------------------
EDIT: Su Ubuntu 16.04 (Xenial Xerus) è disponibile l'installazione di Java8 con il comando:
apt-get install openjdk-8-jre
Quanto scritto sopra e sotto per Java7 vale anche per Java8.
-------------------------------------------------------------------------------------
Quindi, se state per installare JDownloader 2 BETA su Ubuntu chroot ed il vostro NAS ha CPU Intel, andate sul sicuro installando Java7 con:
apt-get install openjdk-7-jre
Se invece non è questo il vostro caso, potete tentare con il comando qui sopra per installare Java7 e vedere se funziona, oppure installare Java6:
apt-get install openjdk-6-jre
Se, e solo se, avete tentanto con Java7 e non è andata bene, prima di installare Java6 con il comando qui sopra, rimuovete prima Java7 con:
apt-get remove openjdk-7-jre
E ripulite dai pacchetti non più necessari con:
apt-get autoremove
INSTALLAZIONE DI JDOWNLOADER
Prima di avviare l'installazione di JDownloader, lanciate il server VNC:
/usr/bin/vncserver :1 -geometry 800x600
(Potete sostituire 800x600 con un'altra risoluzione, ad esempio 1024x768 se preferite)
Collegatevi con un client VNC, personalmente uso UltraVNC (http://www.uvnc.com/downloads/ultravnc.html) su Windows. L'indirizzo a cui connettersi è:
diskstation:5901
oppure
IP_DEL_NAS:5901 (ad esempio 192.168.1.72:5901)
Lasciate aperta la finestra del client VNC che vi servirà dopo l'installazione di JDownloader.
Ora potete installare JDownloader 0.9 (testato e funzionante su Debian chroot con Java6 su architettura Intel) oppure JDownloader 2 BETA (testato e funzionante su Ubuntu chroot con Java7 su architettura Intel):
- JDownloader 0.9
1) Scaricate nella cartella "/tmp" l'installer di JDownloader 0.9:
cd /tmp
wget http://installer.jdownloader.org/jd_unix_0_9.sh
2) Dategli permessi di esecuzione:
chmod +x jd_unix_0_9.sh
3) Lanciate l'installazione:
./jd_unix_0_9.sh
E seguite la procedura, durante la quale dovrete scegliere il percorso di installazione.
Al termine dell'installazione vi verrà chiesto se volete avviare JDownloader, rispondete di no.
- JDownloader 2 BETA
1) Scaricate nella cartella "/tmp" l'installer di JDownloader 2 BETA x86 oppure x64:
- Per architettura a 32 bit:
cd /tmp
wget http://installer.jdownloader.org/JD2SilentSetup_x86.sh
- Per architettura a 64 bit:
cd /tmp
wget http://installer.jdownloader.org/JD2SilentSetup_x64.sh
x86/x64: da qui il mio dubbio che JDownloader 2 BETA possa non funzionare su architettura ARM. Se volete testarlo su quest'ultima, vi consiglio di utilizzare la versione x86.
2) Dategli permessi di esecuzione:
chmod +x JD2SilentSetup_x86.sh
oppure
chmod +x JD2SilentSetup_x64.sh
3) Lanciate l'installazione:
./JD2SilentSetup_x86.sh
oppure
./JD2SilentSetup_x64.sh
E seguite la procedura, durante la quale dovrete scegliere il percorso di installazione.
Al termine dell'installazione vi verrà chiesto se volete avviare JDownloader, rispondete di no.
4) Andate alla finestra del client VNC che avete lasciato aperta precedentemente.
Clickate sul logo di LXDE in basso a sinistra. Nel menu a tendina che si apre passate col mouse sulla voce Internet, clickate con il tasto destro sulla voce JDownloader (o JDownloader 2) e clickate su Add to desktop.
CONFIGURAZIONE DI JDOWNLOADER
1) Fate doppio click sull'icona di JDownloader (o JDownloader 2) che avete creato sul desktop.
2) Fate aggiornare JDownloader. Quando sarà completamente aggiornato, andate nelle impostazioni.
3) Se avete installato JDownloader 0.9 andate ad abilitare il plugin per la connessione tramite interfaccia web, quindi configurate il nome utente, la password di accesso, la porta e scegliete se volete o meno una connessione tramite HTTPS. Chiudete e riaprite JDownloader, a questo punto vi potrete accedere anche tramite browser per aggiungere link e far partire i download dall'indirizzo (supponendo che abbiate lasciato la porta di accesso su quella di default e abilitato l'HTTPS) https://diskstation:8765 oppure https://IP_DEL_NAS:8765 (ad esempio https://192.168.1.72:8765)
Se invece avete installato JDownloader 2 BETA potete utilizzare la funzionalità My.JDownloader (http://my.jdownloader.org/), registrandovi sul sito, introducendo nell'apposita sezione delle impostazioni di JDownloader 2 l'indirizzo email, la password, il nome che volete dare al dispositivo (ad esempio JD@DiskStation) e clickando su Connect. Da PC potrete quindi collegarvi al sito di My.JDownloader per aggiungere link e far partire i download, oppure da smartphone avete a disposizione, oltre ovviamente all'opzione del sito da browser, anche delle app dedicate (le trovate elencate sul sito di My.JDownloader in base al vostro modello di smartphone).
4) Scegliete una cartella per i downloads, oppure lasciate quella di default "/root/downloads".
5) Infine, configurate a vostra discrezione il resto delle impostazioni di JDownloader (o JDownloader 2).
AVVIO AUTOMATICO DI JDOWNLOADER
Ricordate che avete creato un collegamento sul desktop a JDownloader? Ebbene, oltre che per mera praticità nel momento in cui vi collegate tramite VNC, serve anche ad un altro scopo, ovvero l'avvio automatico di JDownloader al caricamento del desktop.
1) Se avete ancora la sessione SSH precedente aperta, chiudetela ed apritene una di nuova, in modo da ritrovarvi fuori dall'ambiente chroot.
2) Nella cartella "/CARTELLA_CHROOT/root/.config" create una sottocartella "autostart"
mkdir /CARTELLA_CHROOT/root/.config/autostart
3) Se avete installato JDownloader 0.9 copiate il file "JDownloader-0.desktop" dalla cartella "/CARTELLA_CHROOT/root/Desktop" alla cartella appena creata "/CARTELLA_CHROOT/root/.config/autostart":
cp /CARTELLA_CHROOT/root/Desktop/JDownloader-0.desktop /CARTELLA_CHROOT/root/.config/autostart
Se avete installato JDownloader 2 BETA copiate il file "JDownloader 2-0.desktop" dalla cartella "/CARTELLA_CHROOT/root/Desktop" alla cartella appena creata "/CARTELLA_CHROOT/root/.config/autostart":
cp "/CARTELLA_CHROOT/root/Desktop/JDownloader 2-0.desktop" /CARTELLA_CHROOT/root/.config/autostart
(per via dello spazio dovete includere il percorso di origine del file tra "virgolette")
CREARE UN COLLEGAMENTO SIMBOLICO ALLA CARTELLA DI DOWNLOAD
Non è possibile impostare come cartella di download per JDownloader una cartella al di fuori della root del chroot (cioè al di fuori di "/CARTELLA_CHROOT").
Per praticità però potete creare un collegamento simbolico tra una cartella condivisa (o una sottocartella in una cartella condivisa) e la cartella che avete impostato per il download in JDownloader.
Supponiamo che la cartella che volete usare sia la cartella condivisa "downloads" (creata dal Pannello di controllo del DSManager), e che la cartella impostata per il download in JDownloader sia "/root/downloads".
Prima di tutto verificate che la cartella "/root/downloads" esista. Se così non fosse, createla:
mkdir /CARTELLA_CHROOT/root/downloads
Dopo di che create il collegamento simbolico tra le due cartelle.
mount -o bind /volume1/downloads /CARTELLA_CHROOT/root/downloads
Ora, per fare in modo che questo collegamento sia mantenuto anche dopo il riavvio, dobbiamo aggiungere questa riga di comando al file "/etc/rc.local" che si occupa per l'appunto di eseguire comandi all'avvio del NAS.
Modificate con nano il file "/etc/rc.local":
nano --nowrap /etc/rc.local
Aggiungete prima di "exit 0" la riga di prima:
mount -o bind /volume1/downloads /CARTELLA_CHROOT/root/downloads
Ctrl+O, poi INVIO per salvare. Ctrl+X per uscire.
AVVIARE AUTOMATICAMENTE IL SERVER VNC
L'ultimo passo è quello di far avviare in automatico il server VNC all'avvio del NAS.
1) Copiate la cartella "/CARTELLA_CHROOT/root/.vnc" fuori dalla cartella "root":
cp -a /CARTELLA_CHROOT/root/.vnc /CARTELLA_CHROOT/.vnc
2) Copiate il file "/CARTELLA_CHROOT/root/.vnc/.Xauthority" fuori dalla cartella "root":
cp /CARTELLA_CHROOT/root/.Xauthority /CARTELLA_CHROOT
3) Modificate con nano il file "/etc/rc.local":
nano --nowrap /etc/rc.local
Aggiungete prima di "exit 0" le righe:
mount -o bind /dev /CARTELLA_CHROOT/dev
mount -o bind /proc /CARTELLA_CHROOT/proc
mount -o bind /sys /CARTELLA_CHROOT/sys
chroot /CARTELLA_CHROOT /usr/bin/vncserver :1 -geometry 800x600
(Potete sostituire 800x600 con un'altra risoluzione, ad esempio 1024x768 se preferite)
Ctrl+O, poi INVIO per salvare. Ctrl+X per uscire.
CONCLUSIONE
Riavviate il NAS.
A questo punto, se tutto è andato bene, al termine del riavvio dovreste essere in grado di connettervi direttamente al server VNC oppure a JDownloader tramite browser.
Resto a disposizione per chiarimenti e per correggere eventuali errori di battitura od informazioni errate. :)
È finalmente uscito un pacchetto nativo di JDownloader 2 per NAS Synology quindi vi bastetà:
- installare Java 8 dalla repository ufficiale Synology
- aggiungere la repository dove si trova il pacchetto di JDownloader 2: https://spk.netzbaer.de/
- creare una cartella condivisa (ad esempio "Downloads")
- installare il pacchetto di JDownloader 2
- seguire la procedura che vi chidererà di introdurre le credenziali di accesso a My.JDownloader e il percordo alla cartella di download precedentemente creata (ad esempio "/volume1/Downloads")
- al termine della procedura lanciate l'applicazione (potrebbe volerci un po', se non dovesse proprio andare clickate sul pulsante Azione nella pagina del pacchetto e lanciatela manualmente di nuovo finchè non parte - questo problema può capitare solo dopo la prima installazione)
Questo nuovo metodo di installazione, oltre al vantaggio di essere molto più rapido e di non richiedere particolari conoscenze dell'ambiente linux offre la possibilità di lasciare che il NAS vada in sleep mode quando inattivo (cosa che la vecchia procedura non consentiva, avendo un server VNC con ambiente desktop e JDownloader costantemente aperti).
Per comodità, nel caso in cui la repository dovesse andare offline, ho caricato l'SPK di JDownloader che può essere manualmente installato. Lo trovate qui: JDownloader_noarch_017.spk (http://www69.zippyshare.com/v/sF71YKAj/file.html)
IMPORTANTE! Come segnalato da EdoFede il pacchetto in questione fa girare JDownloader con utenza root, il che significa che, potenzialmente, JDownloader può fare qualsiasi cosa con qualsiasi file presente sul NAS (sia vostro, che di configurazione).
Seguite quindi la procedura da lui suggerita per farlo girare con un'utenza a permessi limitati per una maggiore sicurezza: QUI LA GUIDA (http://www.hwupgrade.it/forum/showpost.php?p=44214283&postcount=100)
-------------------------------------------------------------------------------------
VECCHIA GUIDA
PREMESSA
- Questa guida è in parte estrapolata da altre guide che si trovano sul web e da ricerche su google e in parte farina del mio sacco.
- Si presuppone una basilare conoscenza degli strumenti che state andando ad utilizzare (SSH, ambiente linux, ecc...). Se operate in ambiente Windows (come me), posso consigliare l'utilizzo di WinSCP in combinazione con PuTTY.
- Non sono certo che Jdownloader 2 BETA funzioni su NAS Synology con architettura ARM, mentre JDownloader 0.9 dovrebbe andare senza problemi.
- Tutto è stato testato su NAS Synology DS214play (con CPU Intel e architettura Evansport i686), tuttavia non escludo che possa funzionare anche su modelli con altre CPU e architetture (come ARM), sebbene con i dovuti accorgimenti per l'appunto nei passaggi che dipendono dall'architettura del vostro NAS. A tal proposito, data un'occhiata a questa tabella (http://forum.synology.com/wiki/index.php/What_kind_of_CPU_does_my_NAS_have)
- Se si seguono i passaggi come si deve non dovrebbero esserci problemi, tuttavia non mi assumo alcuna responsabilità per eventuali malfunzionamenti causati ai vostri dispositivi. Fate tutto a vostro rischio e pericolo.
- Con questa procedura andrete ad installare nel NAS un sistema operativo aggiuntivo e a sé stante (Debian oppure Ubuntu) in una cartella del vostro NAS, e all'interno di questo sistema operativo installerete un server VNC per l'accesso remoto, Java e JDownloader. Far girare il server VNC e JDownloader porta al fatto che il NAS non vada più in standby.
- Prima di imbarcarvi in una procedura pittosto lunga e complessa, vi consiglio di dare una scorsa a quello che andrete a fare.
INSTALLAZIONE DEL BOOTSTRAP E DI IPKG
1) Per prima cosa assicuratevi di aver abilitato nel NAS (da Pannello di controllo > Terminale e SNMP) il servizio SSH.
2) Collegatevi via SSH al NAS utilizzando come nome utente "root" (NON "admin") e come password invece la password che avete impostato per l'account "admin".
3) Questo punto non è fondamentale, serve solo per evitare la comparsa di un errore in fase di installazione del bootstrap. Se per qualche motivo preferite saltarlo non dovrebbero esserci problemi, quindi potete andare al punto 4). Inoltre, verificate che il file "/usr/syno/ssl/openssl.cnf" non esista, in caso contrario saltate al punto 4).
Se la cartella "/usr/syno/ssl" non esiste, createla:
cd /usr/syno
mkdir ssl
Quindi scaricate al suo interno il file "openssl.cnf":
cd ssl
wget http://123adm.free.fr/home/pages/documents/syno-cert_fichiers/openssl.cnf
4) Passiamo dunque all'installazione del bootstrap. Per sapere quale file di installazione scaricare in base al modello del vostro NAS vi consiglio di guardare questa tabella (http://www.synology-wiki.de/index.php/Welchen_Prozessortyp_besitzt_mein_System%3F), alla colonna "Optware-Pfad".
Nel mio caso, con il DS214play, il file da scaricare è syno-i686-bootstrap_1.2-7_i686.xsh (http://ipkg.nslu2-linux.org/feeds/optware/syno-i686/cross/stable/syno-i686-bootstrap_1.2-7_i686.xsh)
Scaricate l'installer nella cartella "/volume1/@tmp":
cd /volume1/@tmp
wget http://ipkg.nslu2-linux.org/feeds/optware/syno-i686/cross/stable/syno-i686-bootstrap_1.2-7_i686.xsh
5) Dategli permessi di esecuzione:
chmod +x syno-i686-bootstrap_1.2-7_i686.xsh
6) Lanciate l'installazione:
sh syno-i686-bootstrap_1.2-7_i686.xsh
7) Ora potete rimuovere l'installer:
cd /volume1/@tmp
rm syno-i686-bootstrap_1.2-7_i686.xsh
8) Aggiornate la lista pacchetti di ipkg:
ipkg update
ipkg upgrade
9) Ora bisogna fare in modo che il comando "ipkg" sia reperibile da qualunque posizione.
Installate l'editor nano:
ipkg install nano
10) Modificate con nano il file "/etc/rc.local":
nano --nowrap /etc/rc.local
Aggiungete prima di "exit 0" la riga:
mount -o bind /volume1/@optware /opt
Ctrl+O, poi INVIO per salvare. Ctrl+X per uscire.
11) Modificate con nano il file "/root/.profile":
nano --nowrap /root/.profile
Alla riga:
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/syno/sbin:/usr/syno/bin:/usr/local/sbin:/usr/local/bin
Dopo "PATH=" aggiungere:
/opt/bin:/opt/sbin:
In modo che risulti:
PATH=/opt/bin:/opt/sbin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/syno/sbin:/usr/syno/bin:/usr/local/sbin:/usr/local/bin
Ctrl+O, poi INVIO per salvare. Ctrl+X per uscire.
12) Riavviate il NAS.
13) Se tutto è andato a buon fine dopo il riavvio date il comando:
ipkg
e dovreste veder comparire l'help del comando. Se così non fosse, ricontrollate di aver seguito correttamente i punti 10) e 11).
INSTALLAZIONE DEL CHROOT
JDownloader non può essere installato direttamente nel sistema operativo del NAS, sarà quindi necessario installare un sotto-sistema in una cartella in cui farlo girare.
A questo punto potete scegliere:
- il metodo facile, installare Debian con la semplice installazione di due pacchetti SPK da una repository tramite il Centro pacchetti del DSManager;
- il metodo un pò più complesso, installare Ubuntu (o Debian) effettuando il (debootstrap (https://wiki.ubuntu.com/DebootstrapChroot)) su un PC con Ubuntu (o Debian) o direttamente sul NAS.
Prima di lanciarvi su quella che sembrerebbe la scelta più ovvia (cioè il metodo più facile), vi devo far notare che, leggendo qua e là, ho trovato scritto da qualche utente che JDownloader 2 BETA non si installa (e/o non funziona) su Debian chroot. Non posso nè confermare nè smentire questa notizia in quanto i miei test si sono limitati a Debian chroot da SPK + JDownloader 0.9 e Ubuntu chroot da deboostrap + JDownloader 2 BETA. Anche se onestamente sono convinto che i problemi più grossi, come accennavo nella premessa, possono derivare più dall'architettura del sistema che dalla distro installata. Al contrario, anche se non l'ho testato, sono pressochè certo che JDownloader 0.9 funzioni perfettamente su Ubuntu (o Debian) chroot da debootstrap. Se qualcuno vuole provare ad installare Debian chroot da SPK + JDownloader 2 BETA oppure Ubuntu (o Debian) chroot da debootstrap + JDownloader 0.9, ed in caso dare un feedback in questo topic, è il benvenuto.
Se avete scelto il metodo facile continuate a leggere qui sotto al punto A), se invece avete scelto il metodo più complesso, saltate fino al punto B)
A) * Metodo facile (Debian chroot) *
1) Aprite il DSManager del vostro NAS ed entrate nel Centro pacchetti
2) Clickate su Impostazioni, quindi sulla scheda Pacchetti sorgente
3) Clickate su Aggiungi, e impostate
Nome: SynoCommunity
Posizione: http://packages.synocommunity.com/
e date OK.
4) Clickate nuovamente su OK per chiudere la finestra delle impostazioni, poi clickate sulla barra di sinistra selezionando Comunità e clickate su Aggiorna.
5) Installate prima Python e poi Debian chroot, entrambi dalla repo di SynoCommunity.
Se preferite l'installazione manuale, o se la repository di SynoCommunity fosse down e non siete stati in grado di aggiungerla, ecco gli ZIP contenenti gli SPK per tutte le architetture che sono riuscito a recuperare:
Python (https://mega.co.nz/#!0Y0F0IKS!9O0K7jU9TQ79hZkaG8o5qpEfDfgbA9wWIbzlwSAIeio) Debian chroot (https://mega.co.nz/#!MMtSHISA!qsBECPXTTWteXy9cXCUICHJEPD_o-HdjtXdW9wDSiB4)
Nel mio caso, con un DS214play, gli SPK da scegliere sono quelli per architettura "evansport". Fate nuovamente riferimento al link che ho scritto nella premessa per conoscere qual è l'architettura del vostro NAS.
6) Fatto, Debian chroot è installato e dovrebbe trovarsi nella cartella "/volume1/@appstore/debian-chroot/var/chroottarget". L'avevo detto che era semplice, no? :)
Passate dunque al capitolo successivo, CONFIGURAZIONE DEL CHROOT.
B) * Metodo complesso (Ubuntu o Debian chroot) *
Se avete scelto il metodo più complesso, vi trovate nuovamente di fronte a una scelta: eseguire il debootstrap su un PC con Ubuntu (o Debian) o direttamente sul NAS. Dai miei test ho constatato che il debootstrap effettuato su un PC con Ubuntu è praticamente identico al debootstrap fatto direttamente sul NAS.
Per eseguire il debootstrap su un PC con Ubuntu (o Debian), se non disponete di un PC su cui sia installato tale sistema operativo, potete usare anche una Virtual Machine, come ho fatto io. Vi basta scaricare ed installare VirtualBox (https://www.virtualbox.org/wiki/Downloads) + relativo Extension Pack (download sempre dallo stesso link) e montare la VM utilizzando l'immagine ISO di Ubuntu (http://www.ubuntu-it.org/download). Personalmente ho utilizzato la versione corrente di Ubuntu, la 14.04 (Trusty Tahr).
Se avete scelto di effettuare il debootstrap su un PC con Ubuntu (o Debian) continuate a leggere qui sotto al punto X), se invece avete scelto di effettuare il debootstrap direttamente sul NAS, saltate fino al punto Y)
X) Debootstrap su un PC con Ubuntu (o Debian)
1) Andate all'indirizzo http://ftp.it.debian.org/debian/pool/main/d/debootstrap/ e copiatevi il link della versione più recente del pacchetto "debootstrap_x.x.xx_all.deb" ad esempio:
http://ftp.it.debian.org/debian/pool/main/d/debootstrap/debootstrap_1.0.80_all.deb
2) Da Terminale sul vostro PC scaricate nella cartella "/tmp" il pacchetto in questione:
cd /tmp
sudo wget http://ftp.it.debian.org/debian/pool/main/d/debootstrap/debootstrap_1.0.80_all.deb
3) Dategli permessi di esecuzione:
sudo chmod +x debootstrap_1.0.80_all.deb
4) E installatelo:
sudo dpkg -i debootstrap_1.0.80_all.deb
5) Accedete alla cartella principale con:
cd /
6) Create una nuova cartella, il nome è indifferente, io l'ho chiamata "chrooting", e poi entrateci:
sudo mkdir chrooting
cd chrooting
7) Ora dovete eseguire il debootstrap di Ubuntu, o di Debian se preferite.
Se scegliete Ubuntu, vi consiglio di fare il debootstrap dell'ultima versione, attualmente la 16.04 (Xenial Xerus) o della 12.04 (Precise Pangolin). Ho personalmente verificato che il debootstrap della 14.04 (Trusty Tahr), ha dei bug che non consentono di portare a termine dei passaggi più avanti. E cercando in giro ho letto che anche altre versioni 12.10 (Quantal Quetzal), 13.04 (Raring Ringtail) e 13.10 (Saucy Salamander) creano qualche problema.
Se scegliete Debian vi consiglio di utilizzare la versione stable, attualmente la 8.4 (Jessie).
Non posso garantire nulla per versioni future.
Ricordatevi, nel comando che segue, di specificare la corretta architettura in base al vostro NAS: nel mio caso, DS214play, l'architettura da scegliere è i386.
I valori possibili per il parametro --arch nel debootstrap di Ubuntu sono: amd64 armel armhf i386 powerpc
I valori possibili per il parametro --arch nel debootstrap di Debian sono: amd64 armel armhf i386 ia64 kfreebsd-amd64 kfreebsd-i386 mips mipsel powerpc s390 s390x sparc
(da notare che alcuni di questi tipi di architettura non li troverete mai sul vostro NAS, li ho elencati tutti solo per completezza di informazione)
Vi avviso, il comando debootstrap richiede alcuni minuti.
- Per fare il debootstrap di Ubuntu digitate:
sudo debootstrap --foreign --no-check-gpg --arch i386 precise ubuntu "http://archive.ubuntu.com/ubuntu/"
Quando ha terminato, comprimete il tutto con:
sudo tar -czf ubuntu.tar.gz ubuntu
- Per fare invece il debootstrap di Debian digitate:
sudo debootstrap --foreign --no-check-gpg --arch i386 stable debian "http://ftp.it.debian.org/debian/"
Quando ha terminato, comprimete il tutto con:
sudo tar -czf debian.tar.gz debian
8) Copiate l'archivio compresso appena generato nella cartella "/volume1" del vostro NAS. Se state usando VirtualBox ad esempio potete sfruttare la funzionalità fornita dall'Extension Pack per riconoscere i dispositivi USB sulla Virtual Machine. Copiate quindi l'archivio compresso su una chiavetta, poi dalla chiavetta a Windows e da Windows tramite WinSCP al vostro NAS.
9) Create dal Pannello di controllo del DSManager una cartella condivisa chiamata "ubuntu" (se avete fatto il debootsrtap di Ubuntu) o "debian" (se avete fatto il debootsrtap di Debian)
10) Via SSH sul vostro NAS entrate nella cartella "/volume1"
cd /volume1
11) Spacchettate l'archivio che avete precedentemente copiato nella cartella "/volume1":
- Per Ubuntu:
tar -xzf ubuntu.tar.gz
- Per Debian:
tar -xzf debian.tar.gz
12) Ora potete eliminare l'archivio dal NAS:
- Per Ubuntu:
rm ubuntu.tar.gz
- Per Debian:
rm debian.tar.gz
13) Copiate un paio di configurazioni dalla DiskStation:
- Per Ubuntu:
cp /etc/resolv.conf /volume1/ubuntu/etc
echo `hostname` > /volume1/ubuntu/etc/hostname
- Per Debian:
cp /etc/resolv.conf /volume1/debian/etc
echo `hostname` > /volume1/debian/etc/hostname
14) Avviate il secondo passaggio del debootstrap (richiede alcuni minuti):
- Per Ubuntu:
chroot /volume1/ubuntu /debootstrap/debootstrap --second-stage
- Per Debian:
chroot /volume1/debian /debootstrap/debootstrap --second-stage
15) Infine aggiungete le fonti per apt-get:
- Per Ubuntu:
echo "deb-src http://archive.ubuntu.com/ubuntu precise main restricted universe" >> /volume1/ubuntu/etc/apt/sources.list
echo "deb http://archive.ubuntu.com/ubuntu precise main restricted universe" >> /volume1/ubuntu/etc/apt/sources.list
- Per Debian:
echo "deb-src ftp://ftp.it.debian.org/debian stable main contrib non-free" >> /volume1/debian/etc/apt/sources.list
echo "deb ftp://ftp.it.debian.org/debian stable main contrib non-free" >> /volume1/debian/etc/apt/sources.list
Y) Debootstrap direttamente sul NAS
1) Create dal Pannello di controllo del DSManager una cartella condivisa chiamata "ubuntu" (se avete intenzione di fare il debootsrtap di Ubuntu) o "debian" (se avete intenzione di fare il debootsrtap di Debian)
2) Via SSH sul vostro NAS installate alcuni pacchetti:
ipkg install binutils coreutils grep nano perl wget
3) Andate all'indirizzo http://ftp.it.debian.org/debian/pool/main/d/debootstrap/ e copiatevi il link della versione più recente del pacchetto "debootstrap_x.x.xx_all.deb" ad esempio:
http://ftp.it.debian.org/debian/pool/main/d/debootstrap/debootstrap_1.0.80_all.deb
4) Scaricate nella cartella principale "/" il pacchetto in questione:
cd /
wget http://ftp.it.debian.org/debian/pool/main/d/debootstrap/debootstrap_1.0.80_all.deb
5) Dategli permessi di esecuzione:
chmod +x debootstrap_1.0.80_all.deb
6) Non potete installarlo, ma potete decomprimerlo:
dpkg --force-bad-verify --unpack debootstrap_1.0.80_all.deb
7) Ora potete eliminare il file DEB:
rm debootstrap_1.0.80_all.deb
8) Accedete alla cartella "/volume1"
cd /volume1
9) Ora dovete eseguire il debootstrap di Ubuntu, o di Debian se preferite.
Se scegliete Ubuntu, vi consiglio di fare il debootstrap dell'ultima versione, attualmente la 16.04 (Xenial Xerus) o della 12.04 (Precise Pangolin). Ho personalmente verificato che il debootstrap della 14.04 (Trusty Tahr), ha dei bug che non consentono di portare a termine dei passaggi più avanti. E cercando in giro ho letto che anche altre versioni 12.10 (Quantal Quetzal), 13.04 (Raring Ringtail) e 13.10 (Saucy Salamander) creano qualche problema.
Se scegliete Debian vi consiglio di utilizzare la versione stable, attualmente la 8.4 (Jessie).
Non posso garantire nulla per versioni future.
Ricordatevi, nel comando che segue, di specificare la corretta architettura in base al vostro NAS: nel mio caso, DS214play, l'architettura da scegliere è i386.
I valori possibili per il parametro --arch nel debootstrap di Ubuntu sono: amd64 armel armhf i386 powerpc
I valori possibili per il parametro --arch nel debootstrap di Debian sono: amd64 armel armhf i386 ia64 kfreebsd-amd64 kfreebsd-i386 mips mipsel powerpc s390 s390x sparc
(da notare che alcuni di questi tipi di architettura non li troverete mai sul vostro NAS, li ho elencati tutti solo per completezza di informazione)
Vi avviso, il comando debootstrap richiede alcuni minuti.
- Per fare il debootstrap di Ubuntu digitate:
debootstrap --foreign --no-check-gpg --arch i386 precise ubuntu "http://archive.ubuntu.com/ubuntu/"
- Per fare invece il debootstrap di Debian digitate:
debootstrap --foreign --no-check-gpg --arch i386 stable debian "http://ftp.it.debian.org/debian/"
10) Avviate il secondo passaggio del debootstrap (richiede alcuni minuti):
- Per Ubuntu:
chroot /volume1/ubuntu /debootstrap/debootstrap --second-stage
- Per Debian:
chroot /volume1/debian /debootstrap/debootstrap --second-stage
11) Infine aggiungete le fonti per apt-get:
- Per Ubuntu:
echo "deb-src http://archive.ubuntu.com/ubuntu precise main restricted universe" >> /volume1/ubuntu/etc/apt/sources.list
echo "deb http://archive.ubuntu.com/ubuntu precise main restricted universe" >> /volume1/ubuntu/etc/apt/sources.list
- Per Debian:
echo "deb-src ftp://ftp.it.debian.org/debian stable main contrib non-free" >> /volume1/debian/etc/apt/sources.list
echo "deb ftp://ftp.it.debian.org/debian stable main contrib non-free" >> /volume1/debian/etc/apt/sources.list
CONFIGURAZIONE DEL CHROOT
Da questo punto le strade, salvo piccole variazioni che vi indicherò, si riuniscono.
ATTENZIONE: D'ora in poi, non sapendo se avete installato Debian chroot da SPK oppure Ubuntu chroot o Debian chroot da debootstrap, e quindi non sapendo in quale cartella si trovi il vostro sistema chroot, userò per convenzione la dicitura "/CARTELLA_CHROOT" che in base a quanto precedentemente detto può stare per "/volume1/@appstore/debian-chroot/var/chroottarget" oppure per "/volume1/ubuntu" oppure per "/volume1/debian"
1) Montate i percorsi "/dev", "/proc" e "/sys" dal sistema principale al sistema in chroot:
mount -o bind /dev /CARTELLA_CHROOT/dev
mount -o bind /proc /CARTELLA_CHROOT/proc
mount -o bind /sys /CARTELLA_CHROOT/sys
Entrate nel sistema chroot:
chroot /CARTELLA_CHROOT /bin/bash
(attenzione che c'è uno spazio tra "/CARTELLA_CHROOT" e "/bin/bash")
Tenete bene a mente questo comando perchè è quello che anche in futuro, a prescindere da questa guida, vi permetterà di accedere via SSH nell'ambiente del chroot.
NOTA: È possibile che compaia un errore relativo al "locale" simile a questo:
warning: setlocale: LC_ALL: cannot change locale (en_US.utf8)
Niente di preoccupante, è più che normale, indica solo che il pacchetto di default della lingua non è installato, cosa che andremo a fare tra pochissimo.
2) Aggiornate la lista pacchetti di "apt-get":
apt-get update
apt-get upgrade
apt-get dist-upgrade
3) Ora dovete installare i pacchetti della lingua. Per farlo, bisogna che il pacchetto "locales" (che permette di dare i comando "locale-gen") sia installato.
Se avete utilizzato il metodo facile di installazione del chroot dovete installarlo manualmente così:
apt-get install locales
Se avete utilizzato il metodo complesso di installazione del chroot dovrebbe essere già presente. Nel caso non lo fosse, dando il primo dei comandi "locale-gen" qui sotto vi darà errore di comando non trovato, e in tal caso date anche voi il comando sopra citato, e poi passate ai comandi "locale-gen".
Indipendentemente dal fatto di aver usato il metodo facile o quello complesso, ora installate i pacchetti per la lingua inglese ed italiana:
locale-gen en_US.UTF-8
locale-gen en_US
locale-gen en_US.ISO-8859-15
locale-gen it_IT.UTF-8
locale-gen it_IT
locale-gen it_IT@euro
Poi riconfigurate i pacchetti lingua:
dpkg-reconfigure locales
Ed impostate il fuso orario su Europe > Rome:
dpkg-reconfigure tzdata
4) Installate alcuni pacchetti:
apt-get install wget less nano make atop file
5) Installate un ambiente desktop leggero, LXDE (richiede alcuni minuti):
apt-get install lxde-core
6) Installate il server VNC:
apt-get install vnc4server
Non sono sicuro al 100% che vnc4server sia disponibile per architettura ARM (richiedo feedback da qualcuno).
Quindi se, e solo se, tentando di installare vnc4server vi dice che non trova il pacchetto o che non può installarlo, installate tightvncserver:
apt-get install tightvncserver
NON installate tightvncserver se l'installazione di vnc4server è andata a buon fine!
CONFIGURAZIONE DEL SERVER VNC
1) Impostate la password di accesso (massimo 8 caratteri):
vncpasswd
2) Lanciate il server VNC e poi terminatelo (serve a generare i file di configurazione):
vncserver -geometry 800x600
vncserver -kill :1
3) Modificate con nano il file "/root/.vnc/xstartup":
nano --nowrap /root/.vnc/xstartup
Commentate tutto quello che c'è scritto (ovvero aggiungete il prefisso # a tutte le righe che già non iniziano per #) e aggiungere alla fine le righe che permetteranno di lanciare automaticamente l'ambiende desktop LXDE all'avvio del server VNC:
xrdb $HOME/.Xresources
xsetroot -solid grey
startlxde &
lxsession
Ctrl+O, poi INVIO per salvare. Ctrl+X per uscire.
INSTALLAZIONE DI JAVA
Per utilizzare JDownloader è necessario installare Java. Personalmente ho avuto modo di testare solo Java6 + Debian chroot da SPK + JDownloader 0.9 e Java7 + Ubuntu chroot da debootstrap + JDownloader 2 BETA, il tutto sempre su una CPU Intel.
Non sono sicuro che non ci possano essere problemi derivanti dall'utilizzare Java7 su Debian chroot e/o per installare JDownloader 0.9 e/o su CPU ARM.
Chiaramente sarebbe meglio utilizzare Java7 (più aggiornato e più esente da bug e falle), ma ovviamente serve un feedback da qualcuno che ci provi.
-------------------------------------------------------------------------------------
EDIT: Su Ubuntu 16.04 (Xenial Xerus) è disponibile l'installazione di Java8 con il comando:
apt-get install openjdk-8-jre
Quanto scritto sopra e sotto per Java7 vale anche per Java8.
-------------------------------------------------------------------------------------
Quindi, se state per installare JDownloader 2 BETA su Ubuntu chroot ed il vostro NAS ha CPU Intel, andate sul sicuro installando Java7 con:
apt-get install openjdk-7-jre
Se invece non è questo il vostro caso, potete tentare con il comando qui sopra per installare Java7 e vedere se funziona, oppure installare Java6:
apt-get install openjdk-6-jre
Se, e solo se, avete tentanto con Java7 e non è andata bene, prima di installare Java6 con il comando qui sopra, rimuovete prima Java7 con:
apt-get remove openjdk-7-jre
E ripulite dai pacchetti non più necessari con:
apt-get autoremove
INSTALLAZIONE DI JDOWNLOADER
Prima di avviare l'installazione di JDownloader, lanciate il server VNC:
/usr/bin/vncserver :1 -geometry 800x600
(Potete sostituire 800x600 con un'altra risoluzione, ad esempio 1024x768 se preferite)
Collegatevi con un client VNC, personalmente uso UltraVNC (http://www.uvnc.com/downloads/ultravnc.html) su Windows. L'indirizzo a cui connettersi è:
diskstation:5901
oppure
IP_DEL_NAS:5901 (ad esempio 192.168.1.72:5901)
Lasciate aperta la finestra del client VNC che vi servirà dopo l'installazione di JDownloader.
Ora potete installare JDownloader 0.9 (testato e funzionante su Debian chroot con Java6 su architettura Intel) oppure JDownloader 2 BETA (testato e funzionante su Ubuntu chroot con Java7 su architettura Intel):
- JDownloader 0.9
1) Scaricate nella cartella "/tmp" l'installer di JDownloader 0.9:
cd /tmp
wget http://installer.jdownloader.org/jd_unix_0_9.sh
2) Dategli permessi di esecuzione:
chmod +x jd_unix_0_9.sh
3) Lanciate l'installazione:
./jd_unix_0_9.sh
E seguite la procedura, durante la quale dovrete scegliere il percorso di installazione.
Al termine dell'installazione vi verrà chiesto se volete avviare JDownloader, rispondete di no.
- JDownloader 2 BETA
1) Scaricate nella cartella "/tmp" l'installer di JDownloader 2 BETA x86 oppure x64:
- Per architettura a 32 bit:
cd /tmp
wget http://installer.jdownloader.org/JD2SilentSetup_x86.sh
- Per architettura a 64 bit:
cd /tmp
wget http://installer.jdownloader.org/JD2SilentSetup_x64.sh
x86/x64: da qui il mio dubbio che JDownloader 2 BETA possa non funzionare su architettura ARM. Se volete testarlo su quest'ultima, vi consiglio di utilizzare la versione x86.
2) Dategli permessi di esecuzione:
chmod +x JD2SilentSetup_x86.sh
oppure
chmod +x JD2SilentSetup_x64.sh
3) Lanciate l'installazione:
./JD2SilentSetup_x86.sh
oppure
./JD2SilentSetup_x64.sh
E seguite la procedura, durante la quale dovrete scegliere il percorso di installazione.
Al termine dell'installazione vi verrà chiesto se volete avviare JDownloader, rispondete di no.
4) Andate alla finestra del client VNC che avete lasciato aperta precedentemente.
Clickate sul logo di LXDE in basso a sinistra. Nel menu a tendina che si apre passate col mouse sulla voce Internet, clickate con il tasto destro sulla voce JDownloader (o JDownloader 2) e clickate su Add to desktop.
CONFIGURAZIONE DI JDOWNLOADER
1) Fate doppio click sull'icona di JDownloader (o JDownloader 2) che avete creato sul desktop.
2) Fate aggiornare JDownloader. Quando sarà completamente aggiornato, andate nelle impostazioni.
3) Se avete installato JDownloader 0.9 andate ad abilitare il plugin per la connessione tramite interfaccia web, quindi configurate il nome utente, la password di accesso, la porta e scegliete se volete o meno una connessione tramite HTTPS. Chiudete e riaprite JDownloader, a questo punto vi potrete accedere anche tramite browser per aggiungere link e far partire i download dall'indirizzo (supponendo che abbiate lasciato la porta di accesso su quella di default e abilitato l'HTTPS) https://diskstation:8765 oppure https://IP_DEL_NAS:8765 (ad esempio https://192.168.1.72:8765)
Se invece avete installato JDownloader 2 BETA potete utilizzare la funzionalità My.JDownloader (http://my.jdownloader.org/), registrandovi sul sito, introducendo nell'apposita sezione delle impostazioni di JDownloader 2 l'indirizzo email, la password, il nome che volete dare al dispositivo (ad esempio JD@DiskStation) e clickando su Connect. Da PC potrete quindi collegarvi al sito di My.JDownloader per aggiungere link e far partire i download, oppure da smartphone avete a disposizione, oltre ovviamente all'opzione del sito da browser, anche delle app dedicate (le trovate elencate sul sito di My.JDownloader in base al vostro modello di smartphone).
4) Scegliete una cartella per i downloads, oppure lasciate quella di default "/root/downloads".
5) Infine, configurate a vostra discrezione il resto delle impostazioni di JDownloader (o JDownloader 2).
AVVIO AUTOMATICO DI JDOWNLOADER
Ricordate che avete creato un collegamento sul desktop a JDownloader? Ebbene, oltre che per mera praticità nel momento in cui vi collegate tramite VNC, serve anche ad un altro scopo, ovvero l'avvio automatico di JDownloader al caricamento del desktop.
1) Se avete ancora la sessione SSH precedente aperta, chiudetela ed apritene una di nuova, in modo da ritrovarvi fuori dall'ambiente chroot.
2) Nella cartella "/CARTELLA_CHROOT/root/.config" create una sottocartella "autostart"
mkdir /CARTELLA_CHROOT/root/.config/autostart
3) Se avete installato JDownloader 0.9 copiate il file "JDownloader-0.desktop" dalla cartella "/CARTELLA_CHROOT/root/Desktop" alla cartella appena creata "/CARTELLA_CHROOT/root/.config/autostart":
cp /CARTELLA_CHROOT/root/Desktop/JDownloader-0.desktop /CARTELLA_CHROOT/root/.config/autostart
Se avete installato JDownloader 2 BETA copiate il file "JDownloader 2-0.desktop" dalla cartella "/CARTELLA_CHROOT/root/Desktop" alla cartella appena creata "/CARTELLA_CHROOT/root/.config/autostart":
cp "/CARTELLA_CHROOT/root/Desktop/JDownloader 2-0.desktop" /CARTELLA_CHROOT/root/.config/autostart
(per via dello spazio dovete includere il percorso di origine del file tra "virgolette")
CREARE UN COLLEGAMENTO SIMBOLICO ALLA CARTELLA DI DOWNLOAD
Non è possibile impostare come cartella di download per JDownloader una cartella al di fuori della root del chroot (cioè al di fuori di "/CARTELLA_CHROOT").
Per praticità però potete creare un collegamento simbolico tra una cartella condivisa (o una sottocartella in una cartella condivisa) e la cartella che avete impostato per il download in JDownloader.
Supponiamo che la cartella che volete usare sia la cartella condivisa "downloads" (creata dal Pannello di controllo del DSManager), e che la cartella impostata per il download in JDownloader sia "/root/downloads".
Prima di tutto verificate che la cartella "/root/downloads" esista. Se così non fosse, createla:
mkdir /CARTELLA_CHROOT/root/downloads
Dopo di che create il collegamento simbolico tra le due cartelle.
mount -o bind /volume1/downloads /CARTELLA_CHROOT/root/downloads
Ora, per fare in modo che questo collegamento sia mantenuto anche dopo il riavvio, dobbiamo aggiungere questa riga di comando al file "/etc/rc.local" che si occupa per l'appunto di eseguire comandi all'avvio del NAS.
Modificate con nano il file "/etc/rc.local":
nano --nowrap /etc/rc.local
Aggiungete prima di "exit 0" la riga di prima:
mount -o bind /volume1/downloads /CARTELLA_CHROOT/root/downloads
Ctrl+O, poi INVIO per salvare. Ctrl+X per uscire.
AVVIARE AUTOMATICAMENTE IL SERVER VNC
L'ultimo passo è quello di far avviare in automatico il server VNC all'avvio del NAS.
1) Copiate la cartella "/CARTELLA_CHROOT/root/.vnc" fuori dalla cartella "root":
cp -a /CARTELLA_CHROOT/root/.vnc /CARTELLA_CHROOT/.vnc
2) Copiate il file "/CARTELLA_CHROOT/root/.vnc/.Xauthority" fuori dalla cartella "root":
cp /CARTELLA_CHROOT/root/.Xauthority /CARTELLA_CHROOT
3) Modificate con nano il file "/etc/rc.local":
nano --nowrap /etc/rc.local
Aggiungete prima di "exit 0" le righe:
mount -o bind /dev /CARTELLA_CHROOT/dev
mount -o bind /proc /CARTELLA_CHROOT/proc
mount -o bind /sys /CARTELLA_CHROOT/sys
chroot /CARTELLA_CHROOT /usr/bin/vncserver :1 -geometry 800x600
(Potete sostituire 800x600 con un'altra risoluzione, ad esempio 1024x768 se preferite)
Ctrl+O, poi INVIO per salvare. Ctrl+X per uscire.
CONCLUSIONE
Riavviate il NAS.
A questo punto, se tutto è andato bene, al termine del riavvio dovreste essere in grado di connettervi direttamente al server VNC oppure a JDownloader tramite browser.
Resto a disposizione per chiarimenti e per correggere eventuali errori di battitura od informazioni errate. :)