[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Minimal rsync version
From: |
Manuel Landesfeind |
Subject: |
Re: Minimal rsync version |
Date: |
Thu, 12 May 2011 16:54:15 +0200 |
User-agent: |
Roundcube Webmail/0.5 |
Hi,
I am aware of the reason using "-E" and I was thinking that it is
absolutely necessary. This is the reason why I would recommend a "die".
But rsync 2.6.7 is a very old version (year 2006) and from my point of
view it is ok not support it. Nevertheless I performed the checks you
wanted (see below).
Funny story: From my check results it seems that the -E option is not
necessary.
Manuel
---
www.landesfeind.de
On Thu, 12 May 2011 15:39:20 +0200, Ole Tange wrote:
On Tue, May 10, 2011 at 8:13 PM, Manuel Landesfeind
<manuel@landesfeind.de> wrote:
Hi,
using parallel on an older system resulted in an error which can be
tracked
down to the usage of the "-E" parameter to rsync (see below).
-E is unfortunately necessary to transfer executable files (which may
be the case for --basefile).
I checked the rsync git-log and it seems that the parameter has been
introduced in version 2.6.7. It may be useful to check if the
required
version of rsync is available and print some warning if not. Please
find
attached a code snippet which may help you.
Maybe GNU Parallel should just warn if -E is not working and say that
executables cannot be transferred and then transfer as non-executable
- which would often be sufficient.
I do not have access to a system with old rsync. Can you test what
happens the 4 cases when running rsync -E:
For testing purpose I have created a executable file
$ touch testfile
$ chmod +x testfile
$ ls -l testfile
-rwxr-xr-x 1 manuel manuel 0 2011-05-12 16:37 testfile
* sender rsync has -E, recipient rsync has -E
manuel@newserver: ~$ rsync -E testfile other_new_server:
=> (File has been transfered and executable flag is set)
* sender rsync does not have -E, recipient rsync has -E
manuel@oldserver: ~$ rsync -E testfile newserver:
rsync: -E: unknown option
rsync error: syntax or usage error (code 1) at main.c(1084)
=> (Obviously the file has not been transfered)
* sender rsync has -E, recipient rsync does not have -E
manuel@newserver: ~$ rsync -E testfile oldserver:
rsync: on remote machine: -Ee.Lsf: unknown option
rsync error: syntax or usage error (code 1) at main.c(1084)
rsync: connection unexpectedly closed (0 bytes received so far)
[sender]
rsync error: error in rsync protocol data stream (code 12) at io.c(601)
[sender=3.0.7]
=> (The file has not been transfered)
* sender rsync does not have -E, recipient rsync does not have -E
manuel@oldserver: ~$ rsync -E testfile other_old_server:
rsync: -E: unknown option
rsync error: syntax or usage error (code 1) at main.c(1084)
=> (The file has not been transfered)
I tried another one:
* sender rsync has -E, recipient rsync does not have -E (but dont
specify -E parameter)
manuel@newserver: ~$ rsync testfile oldserver:
=> (File has been transfered and executable flag is set)
And then the funny one:
* sender rsync does not have -E, recipient rsync does not have -E (but
dont specified -E parameter)
manuel@oldserver: ~$ rsync testfile other_old_server:
=> (File has been transfered and executable flag is set)
and also from older version to newer version:
manuel@oldserver: ~$ rsync testfile newserver:
=> (File has been transfered and executable flag is set)
/Ole