Premessa: Guida buttata giù velocemente. Mi riprometto nei prossimi giorni di sistemarla e di dettagliarla ulteriormente. Inoltre spero di riuscire ad allegare un pacchetto ".ipk" per evitarsi tutta la parte di compilazione. Qualsiasi commento e miglioria proposta è molto più che benaccetto!
FASE 1 - PREPARAZIONE DEL NAS
Installare Optware-ng per la gestione pacchetti seguendo le indicazioni --> https://github.com/Optware/Optware-ng
La lista dei pacchetti disponibili è qui --> http://ipkg.nslu2-linux.org/optware-ng/buildroot-armeabihf/Packages.html
L'installazione avviene tramite consolle/terminale.
Logghiamoci via SSH (utente admin), installiamo Optware-NG e quindi diamo:
/opt/bin/ipkg update
e /opt/bin/ipkg install nano
Oppure:
export PATH=/opt:/opt/bin:/opt/sbin:$PATH
ipkg update
ipkg install nano
Una volta installato Optware-NG ricordatevi che ad ogni riavvio si perdono:
- la configurazione della PATH --> export PATH=/opt:/opt/bin:/opt/sbin:$PATH
- la configurazione di Optware-ng (vedi sotto)
Per ovviare a questo secondo problema:
Nella cartella /share/CACHEDEV1_DATA/.qpkg/ vengono installati i pacchetti QNAP.
Ho creato quindi la cartella "autorun" [/share/CACHEDEV1_DATA/.qpkg/autorun/] con all'interno il file autorun.sh
#!/bin/sh
#cancello il refuso della cartella
rm -R /opt
#creo link virtuale ad Optware
ln -s /share/CACHEDEV1_DATA/.qpkg/Optware-NG /opt
Per poter successivamente compilare ed installare aMule come utente non root, dobbiamo garantirci l'accesso ssh.
OpenSSH è preinstallato, ma accetta solo connessioni dall'utente "admin" e il file di configurazione è nella memoria flash che viene reinizializzata ad ogni riavvio; serve quindi usare un escamotage.
1) Nel pannello di controllo del NAS, alla voce SSH/Telnet, va cambiata la porta di default del demone SSH (da 22 a quella che volete). In questo modo l'SSH di default ascolterà su una porta diversa e lascerà libera la 22 per il nostro SSH.
2) Installiamo openssh --> /opt/bin/ipkg install openssh
3) Inseriamo nel file autorun.sh:
#OpenSSH per Optware-ng
/share/CACHEDEV1_DATA/.qpkg/Optware-NG/sbin/sshd -f /share/CACHEDEV1_DATA/.qpkg/Optware-NG/etc/openssh/sshd_config
4) (opzionale) Nel file di configurazion sshd_config io ho inserito la riga
AllowUsers amule utente1 utente2
Per garantire l'accesso alle utenze.
In realtà ho visto che anche senza questa riga, pare non ci siano problemi.
Possiamo provare il funzionamento lanciando il comando inserito prima in autorun.sh
/share/CACHEDEV1_DATA/.qpkg/Optware-NG/sbin/sshd -f /share/CACHEDEV1_DATA/.qpkg/Optware-NG/etc/openssh/sshd_config
A questo punto dovremmo riuscire con un client SSH a collegarci sulla porta 22.
NOTA BENE: PRIMA di collegarsi, va creata l'utenza amule
Ora dobbimo essere sicuri che il file autorun.sh venga fatto partire ad ogni avvio di NAS.
Per farlo apriamo il file /etc/config/qpkg.conf e aggiungiamo (versione, autore e date modificatele a vostro piacimento):
[Autorun]
Name = Autorun
Status = complete
Version = 1.0
Author = Claudio Salvatore
Date = 2016-02-06
Shell = /share/CACHEDEV1_DATA/.qpkg/autorun/autorun.sh
Install_Path = /share/CACHEDEV1_DATA/.qpkg/autorun
Desktop = 1
Enable = TRUE
Questo fa si che il NAS pensi che il nostro "autorun" sia un pacchetto QNAP e lo esegue ad ogni avvio.
Ora la prova del nove. Riavviate il NAS.
Dovreste trovare:
1. Connessione SSH su porta 22 attiva
2. /opt/bin/ipkg è un comando conosciuto e presente
FASE 2 - PREPARAZIONE ALLA COMPILAZIONE DI AMULE ADUNANZA
NOTA BENE
Per compilare dopo aver installato Optware-ng usare sempre la seguente dicitura
LDFLAGS="-Wl,--dynamic-linker=/opt/lib/ld-linux-armhf.so.3 -L/opt/lib -Wl,-rpath,/opt/lib -Wl,-rpath-link,/opt/lib" CPPFLAGS="-I/opt/include" ./configure --prefix=/opt
Installare tramite Optware-ng:
- coreutils
- binutils
- sudo
- python e python-xml
- libxml2
- libfreetype
- gtk
- atk
- gtk-doc
- cairo
- pango
- altri programmi che eventualmente richiede aMule e che si scoprono provando a compilarescaricare le wxGTK 2.8.12 --> https://github.com/wxWidgets/wxWidgets/releases/download/v2.8.12/wxGTK-2.8.12.tar.gz
Compilare le wxGTK con le opzioni "--enable-unicode --enable-gui --enable-utf8"
Scaricare la libreria Boost --> https://sourceforge.net/projects/boost/files/boost/1.60.0/boost_1_60_0.tar.bz2 (compila con
. bootstrap.sh
)
Modifichiamo la lista degli utilizzatori di 'sudo', per poter poi installare aMule con l'utenza amule non root.
nano /etc/group
Aggiungere il gruppo "sudo" e l'utenza "amule" precedentemente creata a tale gruppo:
sudo:x:28:amule
Quindi apportiamo una modifica al file di configurazione di sudo:
visudo
e togliamo il commento alla linea
## Uncomment to allow members of group sudo to execute any command
%sudo ALL=(ALL) ALL
:wq!
(per salvare ed uscire)
Ora loggatevi con l'utente amule via SSH ($HOME --> /share/homes/amule)
Prendete l'ultima versione di Adunanza dal repository svn:
svn co http://svn.code.sf.net/p/amule-adunanza/code/branches/MoonRiver/ adunanza
Entriamo nella cartella adunanza e compiliamo:
cd adunanza
LDFLAGS="-Wl,--dynamic-linker=/opt/lib/ld-linux-armhf.so.3 -L/opt/lib -Wl,-rpath,/opt/lib -Wl,-rpath-link,/opt/lib" CPPFLAGS="-I/opt/include" ./configure --prefix=/opt --enable-amule-daemon --enable-optimize --with-boost
Se ci sono errori, probabilmente manca qualche pacchetto (di solito è esplicitato) o quello presente nel repository manca di qualche parametro di compilazione.
Se non abbiamo errori:
make
e quindi:
sudo make install
Amule è compilato.
Facciamo partire il demone aMule Adunanza per la prima volta:
amuled -f
[crea alcuni file necessari]
Se non abbiamo errori, terminiamo il processo e proseguiamo con la configurazione.killall amuled
[termina il processo amuled]
Entriamo nella cartella (nascosta da File Station su QNAP):
cd /share/homes/amule/.aMuleAdunanza
all'interno abbiamo il file di configurazione amule.conf. Per la configurazione ci sono molti thread. Io onestamente al momento ho solo abilitato l'accesso da amuleGUI.
se volete condividere una cartella --> nano shareddir.dat
[ogni riga un percorso completo ai file. Non è ricorsivo]
Per collegarsi e configurare aMule valgono tutte le discussioni presente nel forum adunanza.
In particolare questa guida è fatta bene, il procedimento è molto simile e comprende anche la parte di configurazione.
Una volta completata la configurazione, sempre con l'utente amule
amuled -f