Hello. I'm trying something from the rsync man page and it is failing.
From http://samba.anu.edu.au/ftp/rsync/rsync.html:
--------------------------------------------------------------------------------
CONNECTING TO AN RSYNC SERVER OVER A REMOTE SHELL PROGRAM
It is sometimes useful to be able to set up file transfers using rsync
server capabilities on the remote machine, while still using rsh or ssh
for transport. [...]
From the user's perspective, using rsync in this way is the same as
using it to connect to an rsync server, except that you must explicitly
set the remote shell program on the command line with --rsh=COMMAND.
(Setting RSYNC_RSH in the environment will not turn on this functionality.)
In order to distinguish between the remote-shell user and the rsync
server user, you can use '-l user' on your remote-shell command:
rsync -av --rsh="ssh -l ssh-user" rsync-user@host::module[/path]
local-path
The "ssh-user" will be used at the ssh level; the
"rsync-user" will be
used to check against the rsyncd.conf on the remote host.
[...]
RUNNING AN RSYNC SERVER OVER A REMOTE SHELL PROGRAM
[...I followed these instructions on the server...]
--------------------------------------------------------------------------------
I am trying to do this: connect to an rsyncd server, using ssh as the
transport. That is different from running rsync as not-a-server using ssh.
Whenever I try to connect, following the man page example almost
verbatim, this is what I get:
[dereks@dev testing_rsync]$ rsync -av --rsh="ssh -l rsync"
rysnc-user@dev::test ./
WARNING: --rsh or -e option ignored when connecting to rsync daemon
rsync: failed to connect to dev: Connection refused
rsync error: error in socket IO (code 10) at clientserver.c(97)
The box named "dev" is the one I am trying to connect to. The user
named "rsync" is the username on the host "dev". As per the
man page, I
have set up my ssh "~rsync/.ssh/authorized_keys" with a
"command=" line
for the key with which I am connecting. That "command=" line launches
the rsync daemon with the trailing period ('.'), as per the man page.
I think the crux of the problem is that rsync is still interpreting the
double colon to mean "connect to dev on port 873 using the rsync
protocol". I think this because of this warning message:
WARNING: --rsh or -e option ignored when connecting to rsync daemon
But I am NOT trying to connect to the rsync daemon, I am trying to
connect to the sshd daemon, which will then look at
~rsync/.ssh/authorized_keys, run this command (after auth):
rsync --server --daemon --config=/home/rsync/rsyncd.conf .
(Note the trailing period,) and then do the file synchronisation with
all the cool rsyncd daemon features such chroot() and a secrets file.
In summary: the man page says I can use --rsh with the double colon
rsyncd server syntax, but rsync says that I cannot. Please advise.
This is on "dev", a Mandrake Linux 9.0 box:
--------------------------------------------------------------------------------
[rsync@dev rsync]$ rsync --version
rsync version 2.5.5 protocol version 26
Copyright (C) 1996-2002 by Andrew Tridgell and others
<http://rsync.samba.org/>
Capabilities: 64-bit files, socketpairs, hard links, symlinks, batchfiles,
IPv6, 64-bit system inums, 64-bit internal inums
rsync comes with ABSOLUTELY NO WARRANTY. This is free software, and you
are welcome to redistribute it under certain conditions. See the GNU
General Public Licence for details.
--------------------------------------------------------------------------------
This is on my laptop (the client I'm trying to connect from), a Mandrake
Linux 9.1 box:
--------------------------------------------------------------------------------
[dereks@dev testing_rsync]$ rsync --version
rsync version 2.5.5 protocol version 26
Copyright (C) 1996-2002 by Andrew Tridgell and others
<http://rsync.samba.org/>
Capabilities: 64-bit files, socketpairs, hard links, symlinks, batchfiles,
IPv6, 64-bit system inums, 64-bit internal inums
rsync comes with ABSOLUTELY NO WARRANTY. This is free software, and you
are welcome to redistribute it under certain conditions. See the GNU
General Public Licence for details.
--------------------------------------------------------------------------------
Thank You,
Derek
Derek Simkowiak
2003-Sep-24 10:48 UTC
FIXED (ignore) Re: F'ing hell (documentation problem)
> This is on "dev", a Mandrake Linux 9.0 box: > -------------------------------------------------------------------------------- > > [rsync@dev rsync]$ rsync --version > rsync version 2.5.5 protocol version 26[...]> --------------------------------------------------------------------------------> This is on my laptop (the client I'm trying to connect from), a Mandrake > Linux 9.1 box: > -------------------------------------------------------------------------------- > > [dereks@dev testing_rsync]$ rsync --version > rsync version 2.5.5 protocol version 26[...]> --------------------------------------------------------------------------------After my message hit the list I did a double-take because I know I'm running 2.5.6 on my Mandrake 9.1 laptop... and I also noticed that the --rsh plus "::" feature didn't appear until 2.5.6. As it turns out, I had one too many xterms open and I was trying to connect from the wrong machine (a machine which, by bad luck, was running 2.5.5). So, foot firmly in mouth, my apologies for the wasted bandwidth. Cheers, Derek
Apparently Analagous Threads
- rsync rsh XP->Unix Terminal Read cygwin
- Idle connections timing out
- memory requirements was RE: out of memory in build_hash_table
- Bug report: deletion of files only on remote system is not logged.
- Password Change from Windows machines ("You do not have permission to change your password")