Sync files locally?
xfb52 at dial.pipex.com
Wed Sep 27 15:27:40 PDT 2006
Paul Schmehl wrote:
> What's the best way to sync files locally?
> I'm running rsync over ssh to backup files from a server. Now I'm
> setting up a new server, so I rsynced to it as well. The files end up
> in a subdir of my home directory, because my account is being used for
> the rsync. I've been using cp -R to put them in the right place on
> the server and the chmod and chown to get the perms right, but I'm
> thinking there has to be a way to sync the files locally so that only
> the ones that have changed or are new have to be copied to the right
> I can use find to set the perms, but I'm not sure how to sync the
> files. This is unix, so there's got to be a built-in utility that does
> this, but I can't seem to find it.
Well, rsync. When the paths are both local it won't use ssh since it
doesn't need it. Not sure why you think the files have to end up under
your home dir. Something like
rsync -a --delete /path1/ /alt/path2
will make an exact copy under /alt/path2, updating only things that need
it. Done as root it would do all the preservation of users, modes etc
regardless of ownership.
You also have --flags if you need it but it doesn't appear to work with
schg flag - maybe nouulnk and variants either.
Other than that you can use tar with pipes, which was the traditional
method Before Rsync (TM). But obviously not very efficient for keeping
a tree up-to-date.
These days cp -Rp as root should also do a one-time copy but won't
preserve any hard links.
More information about the freebsd-questions