Synology Surveillance Station: caricare i moduli di PHP7 con uno script

Gioxx  —  26/03/2019 — Leave a comment

In seguito all’aggiornamento del pacchetto PHP 7 su Synology, mi sono accorto che il bot di Telegram non mi informava più riguardo il cambiamento di stato dell’Home Mode di casa. Ho dato un’occhiata al problema e scoperto che i moduli .so non erano più al loro posto. Ho quindi rimesso in ordine e tutto è tornato a funzionare come riportato nel mio vecchio articolo, questo di seguito:

Synology Surveillance Station: Home Mode automatico tramite WiFi

Per questo motivo ho deciso di scrivere qualche riga di codice che rendesse l’operazione più semplice nel caso in cui mi ricapiti lo stesso scenario. Ho poi condiviso con tutti lo script, caricandolo nel mio spazio GitHub all’interno del progetto (github.com/gioxx/AVM-FRITZ-Box-Synology-Surveillance-Home-Mode-Automation). Lo script si chiama molto banalmente php7ModEnabler.sh e ti posso rapidamente dire che:

  • Verifica l’esistenza del pacchetto PHP 7 sul NAS Synology, quindi:
    • Se non esiste il file /usr/local/lib/php70/modules/openssl.so lo recupera dal pacchetto PHP 7 (/volume1/@appstore/PHP7.0/usr/local/lib/php70/modules).
    • Fa la stessa cosa con /usr/local/lib/php70/modules/curl.so e /usr/local/lib/php70/modules/soap.so (che utilizzo anche per altro, e male non fa).
    • Modifica il php.ini di PHP 7 (/usr/local/etc/php70/php.ini) e “inietta” l’uso dei 3 moduli se questo non è stato precedentemente fatto (baso il mio controllo sull’esistenza della riga extension=openssl.so generalmente sotto extension_dir = "/usr/local/lib/php70/modules".
    • Riavvio PHP 7 (synoservicecfg -restart pkgctl-PHP7.0) per poter caricare correttamente il file php.ini modificato.

Ti basterà copiare lo script all’interno della tua home sul NAS, quindi renderlo eseguibile (chmod +x php7ModEnabler.sh) e lanciarlo con privilegi elevati (sudo ./php7ModEnabler.sh).

È una logica molto banale ma funzionante e utile per accelerare i tempi di configurazione del PHP 7 e relativi moduli su Synology. Ho modificato l’articolo originale per poter includere anche questa nuova possibilità. Ringrazio tutte le fonti utilizzate (quindi i relativi utenti che hanno fornito l’aiuto), tutte riportate all’interno dello script bash. Sentiti libero di suggerire delle alternative nei commenti o – se preferisci – di forkare direttamente il mio codice GitHub e proporre così possibili miglioramenti, correzioni o ulteriori controlli.

Buon lavoro.

Condividi l'articolo con i tuoi contatti: