Skip to content

Dietro le quinte dell'installer

Alessandro Gubitosi edited this page Mar 3, 2014 · 5 revisions

L'installer è stato scritto per evitare problemi di mal-configurazione e mal-funzionamento sui NAS locali.
Prima di tutto, uno script controlla che ci sia il file config.ini, se non c'è redireziona l'utente su http://LOCALHOST/?setup (per LOCALHOST si instende l'indirizzo IP del device in uso).
Dopodiché i passi sono i seguenti:

  1. Crea la chiave RSA (privata e pubblica), utile per cifrare le comunicazioni asincrone: queste possono contenere dati sensibili e non è detto che tutti i dispositivi abbiano configurata una connessione SSL.
  2. Controlla periodicamente che ci sia la connessione ad internet.
    Se non c'è l'utente viene avvisato e non è possibile proseguire con l'installazione finché il device non viene connessp alla rete.
    I tempi relativi al check sono: ogni 30 secondi in caso positivo, che si dimezzano a 15 in caso di assenza di connettività.
  3. Scarica l'elenco dei nodi attivi (e hotspot) dal MapServer, così da attivare la select per la scelta del nodo di riferimento.
    Ogni chiamata asincrona verso l'esterno passa attraverso un parser che fa un CURL. Questo perché è possibile che a volte le richieste asincrone non sono abilitate verso HOST diversi dal proprio IP: senza tale script la macchina potrebbe restituire "errore" 200 e non acquisire il contenuto.
  4. Effettua un check delle condivisioni SAMBA configurate (parsando il comando shell: find / -type f -name "smb.conf" -print 2>/dev/null)
  5. Una volta scelto dalla select il nodo di riferimento, ne assume le coordinate e:
  1. Una volta che l'utente ha compilato tutti i campi necessari parte l'installazione vera e propria, i valori del modulo vengono cifrati via RSA e inviati al parser che:
  • crea il file config.ini
  • crea il file nascosto .db.conf (dati per la connessione al database in caso si abbia la Stazione Meteo)
  • crea un cronjob per la scansione ciclica dei files (ogni 6 ore). In ogni caso crea un file crontab da cui si può copiare il cronjob.
  • avvia lo scanning e una volta terminato ricarica la pagina.

A questo punto verrà controllata nuovamente la presenza del file config.ini, ma dato che è appena stato creato, verrà visualizzata la barra della ricerca con la statistica del numero di files scansionati.

Reset delle configurazioni

Nel caso in cui si voglia resettare tutte le configurazioni e riavviare il setup, basterà rimuovere il file config.ini e procedere nuovamente con l'installazione di Ninuxoo.