Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 31 Aug 2005 09:14:36 +0200 (CEST)
From:      Svein Halvor Halvorsen <svein-freebsd-questions@theloosingend.net>
To:        Garance A Drosihn <drosih@rpi.edu>
Cc:        questions@freebsd.org
Subject:   Re: rsync and moving files [Re: backup w/ snapshots]
Message-ID:  <20050831091404.W29039@maren.thelosingend.net>
In-Reply-To: <p06230912bf3a35c8b887@[128.113.24.47]>
References:  <20050828234043.H22315@maren.thelosingend.net> <20050829161506.E2522@maren.thelosingend.net> <43131C85.1070100@meijome.net> <20050829170053.M3014@maren.thelosingend.net> <43133BA5.2010608@scls.lib.wi.us> <20050830091919.J13913@maren.thelosingend.net> <p06230912bf3a35c8b887@[128.113.24.47]>

next in thread | previous in thread | raw e-mail | index | archive | help

* Garance A Drosihn [2005-08-30 12:50 -0400]
>  Fwiw, I understand the problem you're trying to describe.  And the
>  basic issue is that rsync keeps no information between separate
>  runs of it.  It has no way of knowing that a given file on the
>  source volume used to be at a different location.  It does not even
>  know that the destination volume was sync'ed by a previous run of
>  rsync, so it does not even know that the file at the old location
>  on the destination is the same as the file at the old location on
>  the source.  It knows nothing more than the information it has at
>  the moment of any given run of rsync.
>  
>  You could kinda fudge that information for rsync by creating a lot
>  of hard links, but that is probably going to create more of a mess
>  than it will solve.
>  
>  So, you're left with doing something else outside of rsync.  The
>  script you are suggesting would probably be fairly easy to write
>  in something like ruby, perl, or python.  Use a key made up of the
>  inode number + lastchange date, or maybe inode number + file size.
>  Then save away the key-to-filename(s) mapping for every file.  On
>  the next run of rsync, see which files have moved on the source
>  directory.  If the destination volume has a file at the old location
>  which matches the file-size or lastchange date (depending on which
>  key you used...), then move it to the new location on the destination
>  volume.


Thanks! I think I will try to implement this, then!



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