|
| 1 | +rsyncsh |
| 2 | +Copyright (C) 2001 by Martin Pool |
| 3 | + |
| 4 | +This is a quick hack to build an interactive shell around rsync, the |
| 5 | +same way we have the ftp, lftp and ncftp programs for the FTP |
| 6 | +protocol. The key application for this is connecting to a public |
| 7 | +rsync server, such as rsync.kernel.org, change down through and list |
| 8 | +directories, and finally pull down the file you want. |
| 9 | + |
| 10 | +rsync is somewhat ill-at-ease as an interactive operation, since every |
| 11 | +network connection is used to carry out exactly one operation. rsync |
| 12 | +kind of "forks across the network" passing the options and filenames |
| 13 | +to operate upon, and the connection is closed when the transfer is |
| 14 | +complete. (This might be fixed in the future, either by adapting the |
| 15 | +current protocol to allow chained operations over a single socket, or |
| 16 | +by writing a new protocol that better supports interactive use.) |
| 17 | + |
| 18 | +So, rsyncsh runs a new rsync command and opens a new socket for every |
| 19 | +(network-based) command you type. |
| 20 | + |
| 21 | +This has two consequences. Firstly, there is more command latency |
| 22 | +than is really desirable. More seriously, if the connection cannot be |
| 23 | +done automatically, because for example it uses SSH with a password, |
| 24 | +then you will need to enter the password every time. We might even |
| 25 | +fix this in the future, though, by having a way to automatically feed |
| 26 | +the password to SSH if it's entered once. |
0 commit comments