[ltp] intermezzo?
Tony Whitmore
linux-thinkpad@linux-thinkpad.org
Tue, 17 Feb 2004 21:59:56 +0000
Tod Harter wrote:
> On Tuesday 17 February 2004 1:51 pm, Ferdinand Haselbacher (jr.) wrote:
>>anyone got a better solution for handling such things ?
>
>
> Nope, rsync rules! You could even hack your network startup scripts a bit and
> have the sync happen when the machine notices its on your home network. Can
> be a bit tricky to do, but given the fact that rsync is pretty close to
> maximum theoretical efficiency for this kind of thing its hard to do better.
>
> I believe the coda file system (CFS) also provides the ability to do a form of
> syncing, but its more like you declare a network volume and you can then work
> with it in 'disconnected mode' which just means the files are locally cached
> for you. When the system notices you've reconnected it can synchronize. I've
> never worked with it though and I don't think its really ever been in very
> common use (though Linux does support it).
FWIW, InterMezzo works basically as you have described the Coda FS. In
fact, InterMezzo is based on Coda. I've been reading up on InterMezzo
this evening and have been playing with rsync recently. Whilst both have
their merits, I think it's fair to say that there are slightly different
uses, IMHO, for both tools.
rsync is probably best suited as a network backup mechanism for mobile
clients. You can backup all your data (home directory, etc, whatever)
with a single scheduled rsync command. The efficiencies of the rsync
"protocol" mean that only changes to files are transferred over the
network. However, rsync is probably not best suited for sharing data
with multiple clients. There is little "revision control" and it is
therefore possible for multiple clients to overwrite data altered by the
other.
Obviously NFS is an option for sharing a home directory with multiple
clients, but many laptop users would like to be able to take their work
with them when they are away from the network, so unless a VPN can be
set up, NFS is ruled out. InterMezzo keeps a local cache of files, so
you can work away from the network. On reconnection to the network
changes to the client cache _and_ the server cache can be synced between
the two. Also, there are systems that monitor changes to files, allowing
multiple clients to use the same data repository without over-writing
changes made by the other.
For example, I'm using rsync to keep the mail archive on my desktop
machine in sync with the mail archive on my laptop. That's working fine
for me ATM, but I couldn't automate the process very easily. If I were
to set up an automated copying of files from the laptop to the desktop,
changes to the archive made by the desktop machine could be overwritten
by the automated sync from the laptop. If I were to extrapolate this to
the entire home directory, files I created on the desktop could be
deleted at the next sync from the laptop (assuming I have rsync up to do
this in the interests of storage space efficiency.) However, with a
distributed file system, changes made by one "client" would be
propagated to the others. In some circumstances, rsync might be the most
appropriate tool, in others a distributed file system might be worth
considering.
Just my thoughts :)
Tony