Date: Fri, 14 Dec 2012 11:08:45 +0000 From: Arthur Chance <freebsd@qeng-ho.org> To: Polytropon <freebsd@edvax.de> Cc: "freebsd-questions@freebsd.org" <freebsd-questions@freebsd.org>, Jack Mc Lauren <jack.mclauren@yahoo.com> Subject: Re: Listen to file changes Message-ID: <50CB08BD.2060302@qeng-ho.org> In-Reply-To: <20121214113457.970f6759.freebsd@edvax.de> References: <1355478343.11175.YahooMailNeo@web160106.mail.bf1.yahoo.com> <20121214113457.970f6759.freebsd@edvax.de>
next in thread | previous in thread | raw e-mail | index | archive | help
On 12/14/12 10:34, Polytropon wrote: > On Fri, 14 Dec 2012 01:45:43 -0800 (PST), Jack Mc Lauren wrote: >> Hi all >> I want to monitor files access and change time. How can I >> listen to specific file or directory to monitor ? I'm coding with c. > > If I remember correctly, what you're searching for does already > exist: FAM - the File Alteration Monitor. It's in the ports > collection (/usr/ports/devel/fam). There are also C++ and > Ruby bindings, maybe you can also interface with C... > > For C: Maybe using readdir() et al. could be useful? Also see > "man 5 inode", "man 5 dir" and "man 3 readdir" for more info. > And struct ufs2_dinode in /usr/include/ufs/ufs/dinode.h should > have the information you need to parse for; maybe also check > the FILE type in /usr/include/stdio.h for access flags. See also kevent(2) and the EVFILT_VNODE system filter.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?50CB08BD.2060302>