trackfs(1)

NAME
trackfs - track file system changes

SYNOPSIS
trackfs [-b backupfile] [-l logfile] [-I pattern] command [arg ...]
trackfs -h

DESCRIPTION
trackfs runs the specified command and watches over it by means of the ptrace(2) system call. When the child (including all its direct and indirect child processes) makes a system call that modifies a file system object, trackfs logs the name of the object in the file specified with the -l option.

If the -b option is specified, trackfs writes backup copies of all possibly modified files to backupfile. Note that the existance of a file in the backup does NOT indicate that it has actually been modified: The system call that triggers the backup may fail, leaving the file unchanged. To find out which files really have been modified, consult the logfile.

Specifying the -I option requests that file names matching pattern are ignored - that is, neither logged nor backed up. Note that pattern is a shell (wildcard) pattern, not a regular expression, and must match the whole path. This option may be given more than once.

FILES
The logfile contains one line per file. The line format is supposed to be easily parsed by humans as well as programs:

    "%c %s\n", indicator, pathname

The indicator character is one of
     | (that is, created and then deleted)

Since trackfs summarizes all uses of a file, pathnames appear at most once, and in no particular order.

If a backupfile is written, it contains (at least) those files that are reported as having been deleted or updated, in POSIX.1 cpio(1) format. Note that trackfs reports absolute pathnames in the logfile but removes their leading slashes when writing the backupfile.

SEE ALSO
trexec(1), cpio(1), strace(1), ptrace(2).

BUGS
trackfs only works on Linux/i386 and Linux/x86_64 systems with a 2.6 (or later) kernel.

Please send bug reports to <trackfs@mr511.de>.

AUTHOR
Michael "Tired" Riepe

LICENSE
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA