Fsniper je užitečný nástroj pro sledování adresářů a provádění předdefinovaných akcí se soubory vytvořenými nebo upravenými v tomto adresáři. Například, pokud chceme vytvořit zálohu všech souborů vytvořených ve vaší složce pro nahrávání na web nebo v adresáři ftp, pomocí fsniper můžeme zkopírovat všechny soubory vytvořené v této složce na záložní disk.
Fsniper používá inotify sledovat, kdy se soubor po zápisu zavře.
Krok 1:Nainstalujte požadované balíčky
Nejprve nainstalujte požadované balíčky pro instalaci fsniper na váš systém.
# yum install file-libs file-devel pcre pcre-devel
Krok 2:Stáhněte si zdroj Fsniper
Stáhněte si nejnovější zdrojový kód fsniper nebo jej stáhněte pomocí příkazu níže. Rozbalte také archivní soubor v adresáři /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
Krok 3:Nainstalujte Fsniper
Po rozbalení archivu zkompilujte zdrojový kód pomocí následujících příkazů.
# ./configure # make # make install
Krok 4:Konfigurace Fsniper
Vytvořte konfigurační soubor fsniper podle pokynů níže.
# mkdir ~/.config/fsniper/ # vim ~/.config/fsniper/config
Přidejte níže obsah do konfiguračního souboru, možná jej budete muset změnit podle vašich požadavků.
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/ } } }
Podrobnosti o konfiguračním souboru:
handlery:Handler se používá k určení příkazu, který se má provést při shodě nalezené v zadané složce. .
handler = cp %% /backup/web/upload/image/
Krok 5:Spusťte Fsniper jako démona
Fsniper lze spustit v režimu démona pomocí následujícího příkazu. Proces se tedy neukončí, ani když jste se přihlásili ze systému.
# fsniper --daemon
Krok 6:Fsniper init Script
Init skripty jsou užitečné pro spouštění aplikace při spouštění systému, takže je nemusíme spouštět po restartování systému. Vytvořte soubor s názvem /etc/init.d/fsniper a přidejte níže obsah.
# 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
A nastavte oprávnění ke spuštění skriptu.
# chmod +x /etc/init.d/fsniper # service fsniper start