Skip site navigation (1)Skip section navigation (2)
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>