Groups | Search | Server Info | Login | Register


Groups > uk.comp.os.linux > #23802

Re: rsync Question

From Dan Purgert <dan@djph.net>
Newsgroups alt.os.linux, uk.comp.os.linux
Subject Re: rsync Question
Date 2025-10-21 15:37 +0000
Organization A noiseless patient Spider
Message-ID <slrn10ffa6j.2p7.dan@djph.net> (permalink)
References <10d80d9$3tola$1@dont-email.me> <slrn10ff3qd.2p7.dan@djph.net> <10d85o4$2mn$1@dont-email.me>

Cross-posted to 2 groups.

Show all headers | View raw


On 2025-10-21, Java Jive wrote:
> On 2025-10-21 14:49, Dan Purgert wrote:
>> On 2025-10-21, Java Jive wrote:
>>> Having made a slight cock-up, I want to use rsync to move all the files
>>> that exist on one server but not the other into a separate heirarchy.
>>>
>>> More fully:
>>>
>>> I have two identical servers, the second of which rsyncs itself from the
>>> other overnight.  This morning, due to an oversight, I put a load of
>>> files into a directory structure that were intended to go into a
>>> subfolder of it.  What I want to do is rsync from the second server to
>>> the first and move files that only exist on the first into a directory
>>> tree elsewhere on the server, so that then I can move that extraneous
>>> tree back into the originally intended subfolder.  Something like this:
>> 
>> rsync doesn't 'move'.
>> 
>> *IF* you've already moved the relevant files from /src/wrongdir to
>> /src/correctdir ; then you can rsync with "--delete" to delete those
>> files on /dest/ that are no longer in /src/ (i.e. 'got moved from
>> /src/wrong/ to /src/correct/').
>> 
>> I would definitely do the --dry-run, and read it *very* closely, to make
>> sure the rsync isn't removing more than I expect.
>
> Yes, after posting I did a test along the following lines which proved 
> the files would be deleted, not moved ...
>
> mkdir 1temp 2temp elsewhere
> touch 1temp/test
> touch 2temp/extratest
>
> rsync -a --backup-dir=elsewhere 1temp/ 2temp/
>
> ls -al 1temp
> 	.
> 	..
> 	test
> ls -al 2temp
> 	.
> 	..
> 	test
> ls -al elsewhere
> 	.
> 	..
>
>:-(

rsync cannot "backup" something it doesn't know about or isn't
changing... likewise your command shouldn't have deleted "extratest"

dan@framework:~/rsync$ mkdir 1temp 2temp elsewhere
dan@framework:~/rsync$ touch 1temp/test
dan@framework:~/rsync$ touch 2temp/extratest
dan@framework:~/rsync$ rsync -av --backup-dir=elsewhere 1temp/ 2temp/
sending incremental file list
./
test

sent 116 bytes  received 38 bytes  308.00 bytes/sec
total size is 0  speedup is 0.00

dan@framework:~/rsync$ ls -la 1temp
total 8
drwxr-xr-x 2 dan dan 4096 Oct 21 11:31 .
drwxr-xr-x 5 dan dan 4096 Oct 21 11:31 ..
-rw-r--r-- 1 dan dan    0 Oct 21 11:31 test
dan@framework:~/rsync$ ls -la 2temp
total 8
drwxr-xr-x 2 dan dan 4096 Oct 21 11:31 .
drwxr-xr-x 5 dan dan 4096 Oct 21 11:31 ..
-rw-r--r-- 1 dan dan    0 Oct 21 11:31 extratest
-rw-r--r-- 1 dan dan    0 Oct 21 11:31 test
dan@framework:~/rsync$ ls -la elsewhere
total 8
drwxr-xr-x 2 dan dan 4096 Oct 21 11:31 .
drwxr-xr-x 5 dan dan 4096 Oct 21 11:31 ..


Now, if we add in '--delete' ... 


dan@framework:~/rsync$ rsync -av --delete --backup-dir=elsewhere 1temp/
2temp/  sending incremental file list
deleting extratest

sent 70 bytes  received 25 bytes  190.00 bytes/sec
total size is 0  speedup is 0.00
dan@framework:~/rsync$ ls -la 1temp
total 8
drwxr-xr-x 2 dan dan 4096 Oct 21 11:31 .
drwxr-xr-x 5 dan dan 4096 Oct 21 11:31 ..
-rw-r--r-- 1 dan dan    0 Oct 21 11:31 test
dan@framework:~/rsync$ ls -la 2temp
total 12
drwxr-xr-x 3 dan dan 4096 Oct 21 11:31 .
drwxr-xr-x 5 dan dan 4096 Oct 21 11:31 ..
drwxr-xr-x 2 dan dan 4096 Oct 21 11:33 elsewhere
-rw-r--r-- 1 dan dan    0 Oct 21 11:31 test
dan@framework:~/rsync$ ls -la elsewhere
total 8
drwxr-xr-x 2 dan dan 4096 Oct 21 11:31 .
drwxr-xr-x 5 dan dan 4096 Oct 21 11:31 ..
dan@framework:~/rsync$ ls -la 2temp/elsewhere/
total 8
drwxr-xr-x 2 dan dan 4096 Oct 21 11:33 .
drwxr-xr-x 3 dan dan 4096 Oct 21 11:31 ..
-rw-r--r-- 1 dan dan    0 Oct 21 11:31 extratest

NOTE -- the deleted file went into "2temp/elsewhere", because of the
behavior of --backup-dir:

    Note that if you specify a relative path, the  backup  directory
    will  be  relative to the destination directory,




-- 
|_|O|_|
|_|_|O| Github: https://github.com/dpurgert
|O|O|O| PGP: DDAB 23FB 19FA 7D85 1CC1  E067 6D65 70E5 4CE7 2860

Back to uk.comp.os.linux | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

rsync Question Java Jive <java@evij.com.invalid> - 2025-10-21 14:04 +0100
  Re: rsync Question Dan Purgert <dan@djph.net> - 2025-10-21 13:49 +0000
    Re: rsync Question Java Jive <java@evij.com.invalid> - 2025-10-21 15:35 +0100
      Re: rsync Question Dan Purgert <dan@djph.net> - 2025-10-21 15:37 +0000
        Re: rsync Question Java Jive <java@evij.com.invalid> - 2025-10-21 17:44 +0100
          Re: rsync Question Dan Purgert <dan@djph.net> - 2025-10-21 19:52 +0000
            Re: rsync Question Java Jive <java@evij.com.invalid> - 2025-10-22 13:40 +0100

csiph-web