Moniteur d'altération de fichiers : FAM

17 Sep. 2006
Auteur : Akh
Responsable : TrustRobot
Score ( voter ) :
Connexes : Même auteur | Même responsable | Historique

1. Qu'est ce que fam ?

FAM est un moniteur d'altération de fichiers. Il permet de prendre en compte à la volée des changements effectués sur les dossiers et fichiers. Exemple : FAM est inclue par défaut dans certaines distributions telle que Mandriva, fedora etc... Par contre les utilisateurs de debian, slackware, gentoo ect ... devront l'installer manuellement. FAM se constitue en deux parties distinctes : fam, le démon qui écoute des demandes, et libfam, une bibliothèque que les applications de client peuvent employer pour communiquer avec fam. FAM a été à l'origine écrit pour IRIX en 1989 par Bruce Karsh, et a été récrit en 1995 par Bob Miller. Ce dégagement Open source a permis à FAM sur Linux d'être presque identique à la version de FAM pour IRIX 6.5.x.

2. Téléchargement et installation de FAM à partir des sources :

Vous pouvez récupérer les sources à cette adresse. FAM dépend de portmap-5 que vous devrez installer si ce n'est pas déjà fait ! Son installation se fait ainsi :
$ tar -xvzf fam-latest.tar.gz $ cd fam-2.7.0 $ ./configure --prefix=/usr --sysconfdir=/etc $ make $ su -c "make install"
Maintenant, ajoutez FAM à portmapper en ajoutant cette ligne dans le fichier /etc/rpc :
sgi_fam 391002 famd # File Alteration Monitor
Ensuite si vous utilisez inetd, ajouter la ligne suivante dans /etc/inetd.conf :
famd/1-2 stream rpc/tcp wait root /usr/local/sbin/famd famd
Pour prendre en compte les changements :
killall -HUP inetd
Autrement, si vous utilisez xinetd, ajouter les lignes ci-dessous dans /etc/xinetd.d :
# default: on # description: File Alteration Monitor (FAM) daemon service famd { type = RPC UNLISTED socket_type = stream user = root group = nobody server = /usr/local/sbin/famd wait = yes protocol = tcp rpc_version = 2 rpc_number = 391002 }
Vous pouvez démarrer FAM en saisissant cette ligne de commande :
/usr/sbin/famd
Assurez-vous que FAM est enregistré avec portmapper :
rpcinfo -p | grep fam
Si il n'apparait pas, essayer de redémarrer portmapper et (x)inetd.