fsniper :: monitorare una cartella eseguendo comandi in automatico
fsniper e’ un tool molto interessante. Tiene monitorati uno o piu’ percorsi del proprio filesystem e quando rileva l’aggiunta o la modifica di un file esegue il/i comandi specificati nel file di configurazione. La scelta dell’operazione da eseguire e’ fatta tramite regular expressions.
In questo modo e’ possibile ad esempio automatizzare l’assegnazione di permessi 755 a tutti gli script “.sh” o “.py” aggiunti alla directory /usr/bin…oppure automatizzare sync o backup in tempo reale ad ogni cambiamento…
La configurazione e’ incredibilmente semplice ed auto-esplicativa, vediamo un esempio:
watch {
$HOME/bin {
*.sh {
handler = chmod o+x %%
}
}
}
*.sh potrebbe anche essere una RegExp quale ad esempio /.*\.(sh|py)/ e il carattere %% indica il file in questione.
OpenVZ + broadcast con l’uso delle VETH
La necessita’
Avere piu’ server virtuali (container o CT) con servizi di server multimediali (Logitech Squeezecenter e Upnp) che condividono la stessa partizione dati e siano pero’ piu’ flessibili da gestire e eventualmente replicare/duplicare.
L’idea
Sfruttare le potenzialita’ e le prestazioni di OpenVZ configurando la macchina host (container0 o CT0) che gestisce i dischi in raid5 e ne condivide il contenuto via NFS ai vari CT.
Con NFS, unito alla ottima ed efficiente gestione delle risorse da parte di OpenVZ, le prestazioni di accesso ai dati multimediali (musica, video e foto) sono paragonabili a quelle di un’installazione standard con accesso diretto ai dischi.
Backup automatici su USB tramite UDEV
Utilizzando le rules di UDEV e’ possibile configurare in modo semplice, il sistema in modo tale che all’inserimento di uno specifico device USB (flash o hard disk) esegua uno script predefinito.
Due parole su Udev
Nel momento in cui una qualsiasi periferica HW genera un evento (es. collegamento/scollegamento periferica, cambio di stato, ecc…) il gestore del bus a cui la periferica e’ collegata genera un interrupt a cui fa seguito la risposta del kernel che recupera informazioni sull’evento e dettagli sulla periferica che rende quindi disponibili al sistema tramite Sys-fs.
Reboot automatico in caso di KERNEL PANIC
Per fare in modo che un server GNU/Linux si riavvii automaticamente in caso di kernel panic e’ sufficiente editare il file /etc/sysctl.conf aggiungendo questa riga:
kernel.panic = #n#
in cui al posto di #n# va un numero indicante i secondi prima del riavvio automatico.
Fatto questo per rendere attive le modifiche a /etc/sysctl.conf e’ sufficiente un:
sysctl -p
Questo e’ solo un esempio di tweak possibile tramite sysctl…
