Avvio allo start applicazioni Optware (ipkg) su Qnap TS-210

programmazione & dintorni
Rispondi
admin
Site Admin
Messaggi: 205
Iscritto il: dom mar 20, 2016 9:24 pm

Avvio allo start applicazioni Optware (ipkg) su Qnap TS-210

Messaggio da admin »

Oltre alle applicazioni custom del produttore è possibile aggiungere ulteriori programmi tramite Ipkg, sistema chiamato anche Optware, perche la root di questi programmi realmente è la /opt piuttosto che la /

Unico problema è che mentre tutto è già ricompilato per lavorare con i nuovi percorsi, non tutti gli script di avvio sono presenti o vengono eseguiti correttamente.

come eseguire /opt/etc/init.d/* all'avvio

Alcuni, ma non tutti, i pacchetti ipkg installano script di avvio in /opt /etc/init.d/ Queste sono da eseguire come parte di avvio del sistema. A partire da aprile 2010, TS-219P Firmware 3.2.5 build 0409T non eseguire gli script in questa directory. Questa sezione spiega come patchare il firmware per aggiungere questa azione di avvio.

Il QPKG Optware crea uno script di inizializzazione e lo memorizza in una cartella sul vostro QPKG Optware condividere dati principali. Quando il dispositivo NAS QNAP è avviato, aggiunge un collegamento a questo script da /etc/rcS.d/. Il nome di questo legame è qualcosa di simile QS100Optware, dove 100 è un numero di sequenza che dipende dal numero di pacchetti QPKG è installato e in quale ordine. Questo è ciò che questi file di apparire come in TS-219P Firmware 3.2.5 build 0409T:
-----------------------------------------------------------------------------
#ls -lFh /etc/init.d/*Optware* /etc/rcS.d/*Optware* /share/MD0_DATA/.qpkg/Optware/*Optware* lrwxrwxrwx 1 admin administ 40 Apr 19 16:02 /etc/init.d/Optware.sh -> /share/MD0_DATA/.qpkg/Optware/Optware.sh* lrwxrwxrwx 1 admin administ 40 Apr 19 16:02 /etc/rcS.d/QS100Optware -> /share/MD0_DATA/.qpkg/Optware/Optware.sh* -rwxr-xr-x 1 admin administ 1.9k Feb 21 21:10 /share/MD0_DATA/.qpkg/Optware/Optware.sh*
-----------------------------------------------------------------------------
Editiamo lo script di avvio di Optware e aggiungiamo questa patch (Fonte QNAPedia)
------------------------------------------------------------------------------
vi /etc/init.d/Optware.sh
------------------------------------------------------------------------------
Aggiungendo il blocco di codice in BLU qui sotto prima della linea contentente ;; stop).
------------------------------------------------------------------------------
case "$1" in start) ...[elided]... # adding Ipkg apps into system path ... /bin/cat /etc/profile | /bin/grep "PATH" | /bin/grep "/opt/bin" 1>>/dev/null 2>>/dev/null [ $? -ne 0 ] && /bin/echo "export PATH=$PATH":/opt/bin:/opt/sbin >> /etc/profile #Patch per http://wiki.qnap.com/wiki/Install_Optware_IPKG
/bin/echo "Run Optware/ipkg /opt/etc/init.d/*"
source /etc/profile
# Start all init scripts in /opt/etc/init.d
# executing them in numerical order.
#
for i in /opt/etc/init.d/S??* ;do
# Ignore dangling symlinks (if any).
#[ ! -f "$i" ] && continue

case "$i" in
*.sh)
# Source shell script for speed.
(
trap - INT QUIT TSTP
set start
. $i
)
;;
*)
# No sh extension, so fork subprocess.
$i start
;;
esac
done
#End patch ;; stop) ...[elided]...
-----------------------------------------------------------------------------
Salvare il file e uscire

Aggiungiamo i nostri file di avvio in /opt/etc/init.d nel mio caso S10apc_ups.sh

-------------------------------------------------------------------------------
#!/bin/sh

case "$1" in
start)
echo -n "Start Full apcupsd (optware)"
/opt/sbin/apcupsd
;;

stop)
echo -n "Stop Full apcupsd (optware)"
killall apcupsd
;;

status)
/opt/sbin/apcaccess status
;;

restart)
$0 stop
sleep 10
$0 start
;;
*)
echo "Usage: $0 {start|stop|status|restart}"
exit 1
esac
------------------------------------------------------------------------------
Configuriamo i file necessari in /opt/etc/apcupsd e creaiamo se necessario le dovute cartelle ad esempio /opt/var/log che conterrà gli eventi del servizio.

A questo punto possiamo riavviare il nostro QNAP NAS, al reboot tutto quello che si trova in /opt/etc/init.d verrà eseguito allo startup automaticamente.

Dato che questo codice è indipendentemente gli script in /opt/etc/init.d/ non dovrebbero essere danneggiati o modificati quando si effettua un aggiornamento del firmware, tuttavia, c'è il rischio che le future versioni del firmware QNAP possano sovrascrivere Optware.sh. Questo richiederebbe di riapplicare la patch.

tratto da
http://www.opensupport.it/portale/index ... nap-ts-210
Rispondi