Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 11 Sep 2012 22:52:56 -0400
From:      Lowell Gilbert <freebsd-questions-local@be-well.ilk.org>
To:        Paul Kraus <paul@kraus-haus.org>
Cc:        FreeBSD Mailing List <freebsd-questions@freebsd.org>
Subject:   Re: cksum entire dir??
Message-ID:  <44a9wwar5j.fsf@lowell-desk.lan>
In-Reply-To: <CALhcXPBz7RhS%2B4g4AJ%2BVDoFyozrzoAP0JEPEGD-T=ZOSS=4YaA@mail.gmail.com> (Paul Kraus's message of "Tue, 11 Sep 2012 22:15:45 -0400")
References:  <20120911213804.GA9817@ethic.thought.org> <20120912011443.5df17cf2.freebsd@edvax.de> <20120912002408.GA10496@ethic.thought.org> <20120912011813.GA2305@neutralgood.org> <CALhcXPBz7RhS%2B4g4AJ%2BVDoFyozrzoAP0JEPEGD-T=ZOSS=4YaA@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Paul Kraus <paul@kraus-haus.org> writes:

> On Tue, Sep 11, 2012 at 9:18 PM,  <kpneal@pobox.com> wrote:
>
>> It's a real shame Unix doesn't have a really good tool for comparing
>> two directory trees. You can use 'diff -r' (even on binaries), but that
>> fails if you have devices, named pipes, or named sockets in the
>> filesystem. And diff or cksum don't tell you if symlinks are different.
>> Plus you may care about file ownership, and that's where the stat
>> command comes in handy.
>
> Solaris and a least a few versions of Linux have a "dircmp" command
> that is in reality a wrapper for diff that handles special files. The
> problem with it is that it tends to be slow (I had to validate
> millions of files).

It's not clear what the danger profile is supposed to be here; dircmp
(and recursing 'diff' applications) can handle many cases, but mtree(8)
(with appropriate options) covers more pathological problems. Even so,
analysis of changes in file nodes like named sockets will usually
require some understanding of the application.

I suspect that either a recursive diff or an mtree specification is a
good solution for the original poster's problem, but we don't have
enough information to be more sure than that.

Be well.
        Lowell



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?44a9wwar5j.fsf>