Groups | Search | Server Info | Login | Register
Groups > uk.comp.os.linux > #23802
| 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.
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 | Next — Previous in thread | Next in thread | Find similar
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