SNAPSHOT-DIR(1C)SNAPSHOT-DIR(1C)NAMEsnapshot-dir - create a snapshot database of a directory tree
SYNOPSISsnapshot-dir [-vN] directory [directory...] [:output=database-name]
[:old=database-name] [:devcross=true]
DESCRIPTIONsnapshot-dir
Finds all files in the directory, recursively, and writes to the [data‐
base-name] or to standard output a description of each file including
name, file modes, sizes, dates, and an MD5 checksum of each REG file,
and the contents of each symbolic link.
The database can be further processed by other programs that can deter‐
mine what has changed in a file system.
The directory arguments can also be regular file names.
The -v argument lets you specify a verbosity level.
If :old=database-name is given then the old database will be used as a
cache of md5 values. The md5 of a regular file will only be recomputed
for files which have been apparently changed according to the operating
system reported status. Programs can of course modify a file and then
set the status values back, so do not use this technique during secu‐
rity audits.
If :devcross=false is specified then all entries which do not reside on
the same "device" as the starting directory will be ignored. This is
useful for creating a snapshot that can be compared with a filesystem
backup tape.
# snapshot-dir /tmp/gjc
("/tmp/gjc/."
(dev 8 0)
(ino . 8034)
(mode DIR XOTH ROTH XGRP RGRP XUSR WUSR RUSR)
(nlink . 3)
(uid . 148)
(gid . 0)
(rdev . 36789)
(size . 512)
(atime . 815151544)
(mtime . 815085346)
(ctime . 815085346)
(blksize . 8192)
(blocks . 2)
(flags . 0)
(gen . 815085365)
)
("/tmp/gjc/foo"
(dev 8 0)
(ino . 8059)
(mode DIR XOTH ROTH XGRP RGRP XUSR WUSR RUSR)
(nlink . 3)
(uid . 148)
(gid . 0)
(rdev . 36821)
(size . 512)
(atime . 815151319)
(mtime . 815151527)
(ctime . 815151527)
(blksize . 8192)
(blocks . 2)
(flags . 0)
(gen . 815085366)
)
("/tmp/gjc/foo/test.txt"
(md5 . "bd7090333ff9eabec6a4c1f9461aaaff")
(dev 8 0)
(ino . 8085)
(mode REG ROTH RGRP WUSR RUSR)
(nlink . 1)
(uid . 148)
(gid . 0)
(rdev . 36963)
(size . 13)
(atime . 815151527)
(mtime . 815151537)
(ctime . 815151537)
(blksize . 8192)
(blocks . 2)
(flags . 0)
(gen . 815151527)
)
EXIT STATUS
Errors result in a non-zero exit status.
AUTHOR
gjc@world.std.com
SEE ALSO
siod http://people.delphi.com/gjc/siod.html
FILES
/usr/local/bin/snapshot-dir /usr/local/bin/siod
/usr/local/lib/siod/find-files.scm
LOCAL SNAPSHOT-DIR(1C)