hp@xxxxxxxxxx said: > Dan Reed has some code written that's a bit simpler approach - it just > rsyncs the homedir periodically. This would work fine, at least for people with small /home directories, and it has the distinct advantage that it can be done right now, without a lot of development. It might be a problem for folks with larger /home directories, though. On my laptop, I have about 20GB of user files (images, maps, data, documents) and it takes a few minutes of disk grinding for rsync just to walk the tree and decide what's changed. This might be prohibitive (or at least prohibitively annoying) for the user. It also cuts into the battery life. Another possible user-space option would be something based on SGI::FAM. Around here, I use a fam-based intrusion-detection system to monitor a few system files that are commonly modified by root kits, and send me a notice when one changes. A similar system could monitor the directories in /home and, whenever a file changes, queue it up for synchronization with a remote mirror. This has the advantage of not needing to walk the whole file tree repeatedly, as you'd need to do with rsync. I suspect that you might run into problems with the number of file descriptors or memory use for large /home directories, though. When I get a chance, I'll whip up a script and try it out on my laptop. Moving out of user space, and requiring some of development, you could have the kernel's VFS layer generate a notice, maybe via DBUS, whenever a file changes. It'd be nice to be able to turn this on only for selected filesystems: monitor /home, but don't bother with /var, for example. A client would watch for changes and queue up files for synchronization. Back to my original suggestion of a "RAID 1" mirror composed of a local disk and a network block device: It seems like you'd need to make the RAID system smart enough to realize that one device has much bigger latencies than the other, otherwise you'd get performance problems. You'd want to preferentially read from the local disk, for example, and you'd want to queue up writes to the remote disk instead of waiting for them to complete synchronously. I don't know if the current software RAID implementation supports this sort of thing. Ideas are easy. Coding's hard. Thanks again for pulling together a lot of disconnected useful ideas into "stateless linux" and starting to instantiate them in code. Bryan -- =============================================================================== Bryan Wright |"If you take cranberries and stew them like Physics Department | applesauce, they taste much more like prunes University of Virginia | than rhubarb does." -- Groucho Charlottesville, VA 22901 | (434) 924-7218 | bryan@xxxxxxxxxxxx ===============================================================================