Commit | Line | Data |
---|---|---|
c3469aed MP |
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. |