Cecchino è uno strumento utile per il monitoraggio delle directory ed esegue azioni predefinite sui file creati o modificati in quella directory. Ad esempio, se vogliamo eseguire un backup di ogni file creato nella cartella di caricamento Web o nella directory ftp, utilizzando fsniper possiamo copiare tutti i file creati in quella cartella sul disco di backup.
Fsniper usa inotify da tenere d'occhio quando un file viene chiuso dopo essere stato scritto.
Passaggio 1:installa i pacchetti richiesti
Per prima cosa installa i pacchetti richiesti per l'installazione di fsniper sul tuo sistema.
# yum install file-libs file-devel pcre pcre-devel
Passaggio 2:scarica Fsniper Source
Scarica l'ultimo codice sorgente di fsniper o usa il comando seguente per scaricarlo. Estrai anche il file di archivio nella directory /usr/src.
# cd /usr/src/ # wget http://projects.l3ib.org/fsniper/files/fsniper-1.3.1.tar.gz # tar xzf fsniper-1.3.1.tar.gz # cd fsniper-1.3.1
Passaggio 3:installa Fsniper
Dopo aver estratto l'archivio, compila il codice sorgente usando i seguenti comandi.
# ./configure # make # make install
Fase 4:Configura Fsniper
Crea il file di configurazione di fsniper come indicato di seguito.
# mkdir ~/.config/fsniper/ # vim ~/.config/fsniper/config
Aggiungi di seguito il contenuto nel file di configurazione, potrebbe essere necessario modificarlo in base alle tue esigenze.
watch {
# watch the /var/www/upload directory for new files
/var/www/upload {
# matches any mimetype beginning with image/ in /var/www/upload directory.
image/* {
handler = cp %% /backup/web/upload/image/
}
# matches all file with .pdf extension in /var/www/upload directory.
*.pdf {
handler = cp /var/www/upload/%F /backup/web/upload/pdf/
}
}
}
Dettagli sul file di configurazione:
gestori:il gestore viene utilizzato per specificare un comando da eseguire su una corrispondenza trovata nella cartella specificata. .
handler = cp %% /backup/web/upload/image/
Passaggio 5:avvia Fsniper come Demone
Fsniper può essere avviato in modalità demone usando il seguente comando. Quindi il processo non terminerà né che tu abbia effettuato l'accesso dal sistema.
# fsniper --daemon
Passaggio 6:script di avvio di Fsniper
Gli script di inizializzazione sono utili per avviare l'applicazione all'avvio del sistema, quindi non è necessario avviarli dopo il riavvio del sistema. Crea un file denominato /etc/init.d/fsniper e aggiungi di seguito il contenuto.
# vim /etc/init.d/fsniper
export HOME=/root
case "$1" in
start)
echo -n "Starting Fsniper: "
/usr/local/bin/fsniper --daemon
echo -e "... [ e[00;32mOKe[00m ]"
;;
stop)
echo -n "Shutdown Fsniper: "
kill -9 `ps aux | grep "fsniper --daemon" | grep -v grep | awk {'print $2'}`
echo -e "... [ e[00;32mOKe[00m ]"
;;
restart)
$0 stop
sleep 1
$0 start
;;
*)
echo "Usage: `basename $0` start|stop|restart"
exit 1
esac
exit 0
E imposta l'autorizzazione di esecuzione sullo script da eseguire.
# chmod +x /etc/init.d/fsniper # service fsniper start