Synchronize Data Between Linux, OS X, and Windows?
aaaaaaargh! writes "I'm using a laptop with Ubuntu 8.04 for work, a netbook with Ubuntu 9.10 when I'm outside, Mac OS X 10.5 for hobby projects, and Windows XP for gaming. For backups, I'm currently using Jungle Disk and Apple's Time Machine, and I use a local svn repository for my work data. Now I need to frequently exchange and synchronize OpenOffice and Latex files and source code in various cross-platform programming languages between one machine and another. Options range from putting everything online (but Jungle Disk disks seem to be too slow for anything else than backup), storing my data on external media like USB sticks or SD cards, or working with copies by synchronizing folders over the network. I don't want to give my data away to some server outside without strong encryption (controlled by me, including the source code) and external media like USB sticks are a bit too fragile according to my taste. The solution should be reliable, relatively failsafe, as simple as possible, and allow me to continue to use Jungle Disk for backup. So what would you recommend?"
Bluehost.com | FTP it
Set up one computer as a server and rsync/ssh to it with either a cron job or at your whim.
I like Unison for this sort of thing.
www.dropbox.com
Nuff' said.
https://www.dropbox.com/referrals/NTE5NDk3Mzg5 Use this link and both you AND I get an extra 250 megs space. The first 2 gigs cost nada.
USB sticks are a bit too fragile
damn straight. that is the number one problem with USB anything. i've seen more broken jump drives, and more broken usb ports from someone tripping over usb cable, than i care to fix. yes, they ARE handy as can be, but to WHOMEVER is designing USB 4 or whatever it will be called, PLEASE make the damn connection more sturdy.
https://www.dropbox.com/ will give you 2gb of free space. It'll keep all files in your "dropbox folder" synchronized on all computers where it is installed. It works on Linux, Mac, and Windows. A video on installing Dropbox on Linux from The Linux Journal's Shawn Powers is here: http://www.linuxjournal.com/video/dropbox-linux
I personally use Dropbox for a similar type of setup (Ubuntu 9.10, OS X 10.6, XP). It uses SSL, but would most likely not meet your requirements of allowing you control of the source code that sits on their servers. It provides 2 GB of storage for free with the option to upgrade to 50 or 100 GB for $9.99 or $19.99 respsectively.
Three options that I use, or have used, are rsync, Chronosync and Jungle Disk.
Jungle Disk is the best solution if you have more money than time and can rely on being online a reasonably good percentage of the time. In the Jungle Disk settings, you can specify a certain portion of your disk to be used as an offline cache. Jungle Disk will then keep downloaded files in that disk cache, so you don't have to worry about the download speed so much, assuming you have the disk space available for the cache. If you don't have the disk space you'll need an online solution anyway.
Chronosync is Mac-based, but you can set it up to sync your files with your Windows and Linux computers. I recently bought it and haven't been through all its features yet, but I'm pretty sure it will do everything you need it to for about $40.
Rsync is of course great if you have the time and expertise to set it up. If you want to take the time to learn how it works, it's probably the best solution. OTOH I think Chronosync will do 99% of what rsync will do (from what I've seen) and is easier so I felt like the purchase price of Chronosync was worth it to me.
www.clarke.ca
I'd recommend that you check out any of a variety of psychotropic drugs known to reduce the symptoms of extreme paranoia.
But seriously, if your data is important enough to worry about somebody sneaking backdoors into the encryption package, it should be worth enough to apply some serious $$$ to security. If it isn't, then relax.
Also note that strong encryption is still subject to rubber-hose cryptanalysis, or the more modern variant, waterboard cryptanalysis.
End of discussion.
Pick the laptop that you travel with (perhaps between home and work). Store all shared data on it. Samba mount that directory on the OS you are currently using (all of the OS's you list support samba).
You can work on your data on that laptop while on the move... but when you are using another computer (e.g. desktop) that laptop just effectively serves as an external disk. As long as you use GigE, there is no performance drop over a single locally-attached disk.
As an added benefit, you can backup this data whenever you mount the share (i use rsync). This ensures that I automatically have redundant, geographically diverse, versioned backups of my important files!
... someone like you who is using three different Operating Systems cannot figure out how to sync data?
Unison from UPenn http://www.cis.upenn.edu/~bcpierce/unison/
Works on all the platforms you mentioned... It can synchronize 2 disparate directory trees (you made updates to files A, B, C on one system and D, E, F on another system and want to merge them) and when it can't figure out what to do it asks you.
You can easily quad-boot Ubuntu, Windows, and OS X on a single computer.
Set up one computer as a master repository and do everything over SVN+SSH.
Its what I do for the complete working set I have, passing between 3+ systems, is everything is through subversion over SSH to a backed-up system.
Test your net with Netalyzr
Mercurial for...
Windows
MacOS
For linux it should be in standard repos.
This way you can make changes on any of your systems and move them around as required, merging only when needed.
http://michaelsmith.id.au
https://www.dropbox.com/referrals/NTMwODU3ODA5
If you don't mind having to manually synchronize (and even this limitation can be worked around with a careful set up), I'll say Unison over SSH. It handles circular version conflict resolution quite well, it's not too difficult to setup if in the chain there's only a windows machine (so you don't need to setup a ssh server on the win box) and it's serving me very well. I don't know about OSX but I think it should work there good enough.
It has a nice GUI too to manually resolve nasty conflicts (e.g. you modified a document in on two different environments before the sync.)
I just discovered Unison last week. Sounds perfect for your needs.
external media like USB sticks are a bit too fragile according to my taste
That's because you're using the wrong external media. You're going for new and exciting and not old and reliable. What you need to do is convert all of your data to human-readable binary (you know, 1100110001111 and so on), and chisel it on to large stone tablets. These are extremely resistant to wear, especially if stored with the written side down, and are virtually theft proof (who's going to steal a bunch of 500-pound rocks?).
You can also easily transfer data from one machine to another either via forklift or just by bringing the machines to the tablets themselves. Backup to Jungle Disk is simple: store a second set of tablets in the Amazon (you can even have a DR site in southeast Asia!), and hire local villagers to update them for you. You should provide a telegraph machine to the villagers to send data back and forth for synchronization purposes. If the telegraph is too unreliable, you can use an elaborate network of smoke signal or semaphore (the thing with the flags) specialists to send data back and forth.
Encryption may be a little more difficult, but easily solved if you happen to have a couple of old Enigma machines sitting around (and really, who doesn't?). If the Enigma machine isn't reliable enough, Little Orphan Annie decoder pins can be used instead.
HTH.
I use SVN with my Latex and oo.org files. The only, well known, issue with SVN is iWorks, which may or may not be an issue for this situation. I am told git is functional. I am thinking of migrating to git just because of the local overhead.
"She's a scientist and a lesbian. She's not going to let it slide." Orphan Black
Was meant for XtreemOS, but works as a standard fuse filesystem.
Just released version 1.1 a few days ago (read it on LWN and tried their public demo server - worked nicely).
I've been using unison for many years and it works just fine and should be as secure as ssh. It's even smart enough to warn on errors caused by things like synchronizing between case sensitive/insensitive filesystems and illegal characters. Combined with dynDNS for the home computer, and I'm all set anywhere.
Been using it for awhile, works great windows, Linux and Mac. Also you don't have to place files in the dropbox folder, you can choose what folders to sync and backup. The also have zero knowledge of your files, which I find reassuring.
Half of writing history is hiding the truth.
I'm not sure if you knew, but JungleDisk just released version 3 of their software which lets you sync any folder in your computer. This is better than DropBox in that the synced folders can be located anywhere. I'm not sure how this works with the backed up files though, but I would imagine that synced files are also part of the backup vault.
Of course, this still requires you to upload the files Amazon or RackSpace. Just want to make sure that you are aware that you don't have to use DropBox if you're already using Jungle Disk :)
If you're looking for a commercial hosted solution with limited storage, Dropbox is probably the best product there is right now. Unison also syncs great both ways against a central "master" copy (if you delete a file from _one_ child copy, it will get deleted from the master and other children as well), although I have no personal experience with Unison on Windows. It also doesn't come with a fancy UI AFAIK.
I once saw Unison advertised as a generic cross-platform user-friendly system on top of rsync.
Dunno if it works in real life or even if it was completely finished as Google SoC project. Perhaps someone else here has tried it?
No no, clearly you need to click on MY link.
https://www.dropbox.com/referrals/NTI0MDY5MDU5
Not only will you and I both get an extra 250MB of space, but you will help me keep more precious photos of my children in the cloud, for FREE!
I currently run Dropbox on 3 computers-- One Ubuntu Server, one Windows Desktop and one Windows Laptop. It's nice to have the same set of files everywhere. Not only is it convenient to have the same set of files on all 3 machines, but I like the redundancy offered by the distributed storage-- It's on 3 drives here and is also hosted in the cloud.
I can take the laptop with me to show the family photos & videos to my folks. But the files are still kept safe at home and at dropbox.com.
I might also install it on another machine outside of the San Francisco quake zone, to offer one more point of redundancy.
"Can of worms? The can is open... the worms are everywhere."
I use Wuala to keep files identically in Windows and Linux. Likely works with Mac as well. I find it quite cool.
First off I'd dump the cloud business, get a cheap little box and put a huge hard disk in it. It's cheap, super secure, nobody else owns/controls your data.
Then I set me up a backuppc server, it's super easy to set up (on ubuntu at least) then have all your machines regularly backing themselves up.
Backuppc has a very excellent web interface allowing you to request full or incremental backups at any time, and an awesome interface to allow you to push (restore) files to any of the systems you are backing up (i.e. files backed up from system A can be restored to system B).
at the end of each workday you do an incremental backup of your work machine, and push whatever files you need to sync back onto your other machines and vice versa. It's easy to schedule and script, and easy to use the web interface to do unscheduled backups/restores/browse and download backed up files
Ze Atomic Device! It iz Ztolen!
and external media like USB sticks are a bit too fragile according to my taste. ... So what would you recommend?"
I would recommend that if you consider USB flash devices too "fragile" then you likely don't have enough good backups. There might be other reasons for not using a flash drive, and there might be other ways to address your need, but if you are concerned that USB drives are too fragile then I suspect that you are setting yourself up for disaster when something other than flash drive failure compromises your data.
I'm an American. I love this country and the freedoms that we used to have.
Use unison (free) or Super Flexible File Synchronizer (better). Keeping several hosts synchronized is tough because of conflicting changes, temporary files, large stuff you don't want to transfer and moving files. You need a good UI and smart change tracking, which is what these programs provide.
I was gonna say: "Why, oh dear Novel, why did you abandon iFolder?!", but it appears it has been granted a third life:
http://ifolder.com/ifolder
I;m a little confused if you are syncronizing, mirroring or backing up data. the title says synch, but time machine and jungle disk are more for backup, and at most can be used for mirroring a master rather than synching.
If you want to backup, take a look at Crashplan. It's got two unique features the other plans lack. 1) you can backup to your own physical media, not theirs. This solves the problem of how do you backup and restore say 200GB of data in less than a month to a remote service. if the disk is yours you do the initial backup locally, them move the disk to the remote location for incremental backups. And then you do the reverse when you need to do more than in incremental restore. 2) they will sell you just the software-- a one time cost-- and you don't have to pay for a monthly remote service cost unless you want to. in which case you just backup to a freinds computer that is hosting your disk. Your data is both safe and remote (and encypted) but you can also go get the drive is if you need it using your toyota rather than the internet.
On the other hand if you want syncronization then look into Unison. It appears the source forge project is not highly maintained but also mature enough to work well. it is cross platform and scriptable.
Some drink at the fountain of knowledge. Others just gargle.
If USB sticks seem too fragile for you, you could try an SD card in a USB adapter - slightly larger, but easy to swap the SD card out if the USB connector gets broken. Decent SD cards should last a long time for just moving data around.
https://www.dropbox.com/
"Free for Windows, Mac, and Linux"
Creates a folder that is kept in sync between different computers. You can share files with other dropbox users too via shared folders. 2GB or so of space is free. It also keeps multiple versions of files so you can go back to a previous version of a file if you need to.
I don't have any affiliation with the company, other than being a satisfied user.
Specialist Mac support for creative pros, Melbourne
[ReidNews]
Set up the linux as a bacula server and put clients on the other systems, maybe a bit overdoing it, but youll have a database of sync data as well!
Dude you don't need a computer, you need a typewriter. Only thing as safe as you want. Or you could try DropBox.com and use encryption.
Why bother
I use a local svn repository for my work data. Now I need to frequently exchange and synchronize OpenOffice and Latex files and source code in various cross-platform programming languages between one machine and another.
Am I missing something here? What doesn't SVN do that you need? Clients exist for all named platforms and it handles OO, Latex, and source code files very well.
Ask Slashdot: Where bad ideas meet poor googling skills.
You didn't google this even a little, did you?
Yo dawg, I heard you like the Ackermann function, so OH GOD OH GOD OH GOD
Looks like a job for Dropbox, money-throwing included. Word is they're also working on LAN sync, so no need for the data to go to the server and back.
http://www.powerfolder.com/
Might be worth a look?
1) setup your own server, small CPU plenty of harddrives
2) Install (Open)Solaris or another ZFS capable OS. 1 small HD for OS, and the rest for RaidZ (or RaidZ2). ZFS self-healing will catch many silent errors
3) Create a work folder and export it as NFS /SMB as needed
4) Create a Subversion or similar repositotry on the server
Under normal work conditions you work directly on the NFS/whatever share and then commit to SVN at the end of the day.If you need data offline, then checkout from SVN or rsync before you go offline.
I can tell you what I do. I have a Windows 2008 SBS that runs a domain. You should be able to join ubuntu, mac os x, and windows (assuming pro) to it. I also have a single internal file server. You can map directories off of it to mount as home directories using NFS and you can map the Windows 2008 SBS data stores to the file server as well. I'd also enable samba on the file server so you can simply mount the shares when needed. When you need to access them outside of your network, I'd set up the VPN capabilities of your external router. Then you can either VPN in to access or you can go through the SBS website to access. (Of course a static IP and domain help with this.)
I do security
http://www.buffalotech.com/products/network-storage/linkstation/linkstation-quad/
Buffalo makes an incredible network storage device. Its tiny, you can hide it in your house incase someone steals your computers, it also has all of the following (copied from the webpage above). Money well spent. (I love the print server feature):
Simplified File Sharing on Your Home or Small Office Network
Easy Setup Does Not Require Drivers
BitTorrent client for all of your file sharing needs
Seamlessly Integrates with iTunes® and Allows you to Access your Music Files on the LinkStation from Your iTunes Software
Access all your files via any Web browser from Anywhere
Built-in DLNA CERTIFIED server for easy playback of multimedia files to any DLNA CERTIFIED device
Protect Data by Restricting Access With Group and User Level Security
Built-in Print Server to Print Files from Anywhere on your Network. Multi-function printers not supported. Works in Windows only.
Direct Copy Feature Allows you to Quickly and Easily Transfer Photos from a Digital Camera Directly to a LinkStation
Expand Storage by Adding a USB Hard Drive
Scheduled Backup via USB 2.0 to External Storage
Support for Time Machine Functionality
Memeo AutoBackup Software for PCs and Macs Included
RAID 0 (Striping), RAID 1 (Mirroring), RAID 5 (Parity) and RAID 10 (Striped Mirrors)
Does JungleDisk provide SSH access to your data? ExpanDrive easily mounts S/FTP, SSH, etc. in Windows (as a mapped drive) and Mac (as a mount point in Finder).
body massage!
It's open source and cross platform. Works great!! http://www.ifolder.com/ifolder
On a somewhat related note, my wife recently gave up on backing up to a different medium all together and now just builds backup into her work flow. She is a photographer and takes 50,000+ digital photos a year (in raw TIFF format). Each file is ~70MB so she requires several terabytes of storage. Loosing these images is unacceptable (ie: would result in a financial loss) and ripping to DVD for backup is simply impossible (would require a full time job in and of itself).
So she builds backup into her work flow such that at any one point in time she has at least one copy of the image spread across multiple drives. In the work flow, photos go from raw TIFF -> PSD pre-proccess -> PSD final -> JPEG for online viewing and she uses different drives for each stage in the process. That way, if a drive goes out, she only looses time, not data. For data retention requirements (~2-3 years), she just has ~10 TB of storage and rotates files from older jobs out onto other drives (spreading across 3 - drives as per the work flow).
Of course if something catastrophic were to happen to cause all of the drives to die (since they are all in the same location) then files would be lost, but that's what insurance is for.
Faith is a willingness to accept something w/o complete proof and to act on it. Reason allows you to correct that faith.
its OSS, multi platform and can be encrypted:
http://en.wikipedia.org/wiki/IFolder
SSHFS But if you just need sync, I fail to see why SVN doesn't cut it for you...
Sent from my PDP-11
Set up your own AFS cell. There are clients for all the above, and you could resell it to other slashdot readers to lower the costs.
For version control, use whatever you like, but place it on the same system from which remote, off-site backups will be run. Git and BZR are recommended repositories.
For backups, use rdiff-backup to a central, local server area. If your clients are NOT RAID-something, this area should be.
For remote backups, just rsync the rdiff-backup areas where ever you normally store off-site backups. If you want them encrypted, do that too.
Make certain this stuff all happens automatically. Manual backups fail too often for lack of running them.
I'm starting to see some pretty good portable (note portable, not just external, fits in your pocket) hard drives for carrying data around such as this one http://www.wdc.com/en/products/Products.asp?DriveID=701
If you don't want to rely on having to carry around this hard drive with you all the time, you can use Dirsyncpro (FOSS, all platforms) http://directorysync.sourceforge.net/index.html and install it on all your PCs and just sync said hard drive with each one on occasion.
If you want all the data in sync all the time without requiring you have the hard drive with you, you could probably make a network drive at home that you can access from anywhere by entering your ip address and password in somewhere, or use vnc to access the files on on your other computers.
I'm currently looking at doing something like this myself since I have 2 windows PCs and a Laptop with Ubuntu that I want to keep in sync but want to be in complete control of everything myself. I don't want to be stuck relying on anything/one but myself and no monthly fees/data limits outside of my 100GB/monthly bandwidth.
I've tried Dropbox and SpiderOak. I think I've settled on SpiderOak for now, since it is cheaper per MB and offers really nice, granular controls. For example, I can sync specific sets of data between different computers and backup some computers without syncing them to others at all (unlike Dropbox which syncs everything to everyone). Like Dropbox, you get 2GB free with no purchase necessary and the client automatically encrypts data in such a way that allegedly the company cannot decrypt it without you providing them with your password. It also counts your quota against the size of your data once it has been "deduplicated" rather than before (Dropbox does it before).
As an added bonus, while the client takes more resources when sending data (since it encrypts it on the client side), it idles much lower -- virtually at 0% processor usage -- than Dropbox, I found.
Of course, giving a referral link is mandatory, right? This link provides both you and me with an extra gig of free space. :-)
-------------
"You would not get a high grade for such a design" -- Andy Tanenbaum on Linus' Linux design.
I use ZFer. http://zfer.net
I got invited to the beta and it's very easy to use.
I don't want to give my data away to some server outside without strong encryption
Man, no one reads anymore!
Depending upon how much work and money you're willing to expend, you might check out Tarsnap. It's not going to have a pretty GUI or anything, and you'll need Cygwin to get it running on Windows, but it's got pretty much everything you want.
It's snapshotting, so you only transfer small changes.
It encrypts (and it does so on the client, before sending it to the server) and the source code to the client is available for review. Unfortunately, the terms of use for the Tarsnap server do not allow modifications to the client. I'm not sure if this counts for your open source requirement.
The back-end is Amazon S3, much like Jungle Disk (though unfortunately, you wouldn't be able to continue using Jungle Disk to access this data, as you hoped.)
The biggest problem I have with it is that it doesn't do true syncing. There's nothing stopping you from writing a few scripts to effectively get syncing. I could envision storing/backing up your subversion repository with Tarsnap and downloading the last snapshot any time you need to start working on a new machine.
There's really not much else that suitable without running your own server somewhere.
there is something called external hard drives that allow you to transport the data anywhere just plug it in and go
Trouble is, almost nobody uses WebDAV.
It seems like WebDAV would be a natural for this sort of thing-- Robust HTTP protocol, security over SSL, delta compression using Deltav, easy to set up with well known webservers like Apache HTTP, supported by Windows, MacOSX and Linux (Looks like a local folder, but it's on the network), etc.
But there are very few products that use WebDAV, and the idea has been around since the late 90s.
I can't tell why. Maybe something is horribly wrong with the WebDAV specification. I've tried a few implementations, but they seem immature and slow.
"Can of worms? The can is open... the worms are everywhere."
That problem is mentioned all over the net, what's not mentioned is that the problem stems from transfers across different OSs.
A suggestion that might be a work-around : Sync Windows to a smb share, and use unison locally on that directory.
I am not using windows, so I'm fine. But, I also can't guarantee that my suggestion works.
I have done what was described: rsyncing a TrueCrypt volume file that changes over time. Yes, there is an "expansion factor", but I would peg it at 2 - 5x the size of the diff within the encrypted volume. To restate: this scheme is entirely tenable with TrueCrypt volumes and rsync. A good binary diff capability is required, but that is the raison d'etre of rsync. I have never used Dropbox, so I have no idea how their deltas work for binary files.
I was originally of the same opinion as you. I anticipated some sort of avalanche effect from small changes in the ciphertext. However, this isn't the case for several reasons -- first, you can read about TrueCrypt's crypto modes of operation and how the blocks work. Second, you can reason that TrueCrypt would be completely unusable if writing a single byte near the beginning of an encrypted hard drive/volume caused a chain reaction that would require the entire partition to be re-encrypted due to cipher block chaining cascading to the whole drive.
I don't claim to be a cryptography expert (perhaps someone can further enlighten me), but it seems that CBC would break down in a disk encryption scheme if there weren't a new IV rather frequently (for the same reason as I mentioned above). Of course, TrueCrypt uses XTS mode, so it seems that I am just idly musing at this point and should click Submit.
What if you need a local copy for those times you don't have connectivity or just poor bandwidth.
I do this now with AFS... works great. with a little effort, you can even get it working with portable home directories on the Mac, and Roming profiles on windows.
I built a file server.
Linux based with a drive backplane, 4 large drives configured with software RAID 5. Shared out via NFS and Samba. I setup port forwarding so I could get to it via ssh/ftp when not at home if I forgot a file.
Worked well enough to share between me and my (now ex) girlfriend.
Perhaps iFolder can help...
http://www.ifolder.com/ifolder
git for small files. nfs for large ones.
I was researching this earlier today and found something called CrashPlan, but admittedly I haven't had time to read about it yet. Could be useful? Supports Win/OSX/Linux. http://www9.crashplan.com/landing/index.html
You already have JungleDisk. JungleDisk 3.0 just came out in the last couple of days and has the capability of synchronizing arbitrary folders between computers. Upgrade is free if you already have JD. (FYI - not a JungleDisk or Amazon employee, just a happy JungleDisk user of close to 2 years).
Have you ever considered piracy? You'd make a wonderful Dread Pirate Roberts.
I think that's why it's called that right? I use it to sync folders and documents between my desktop and laptop to keep browser, email, rss feeds and other things up to what I've done on the desktop when I'm on the go. The SSH implementation works great, UI could be better (at least under Linux from what I can tell) but it works and didn't do anything stupid so far. Can't say anything about the Windows or OS X implementation but I'd think it works equally well.
I use a similar mix of OSes and devices. I don't have a serious strategy for keeping files in synch between them, but what I do works pretty well. First, I have a Linux box running Samba which is the official "home" for all data; OS X, Windows, and Linux can all access this anywhere around the house. For stuff I'm working on that I know I'll want to access away from home, I use my MobileMe account; OS X knows how to use the iDisk natively, and there's a utility to map a Windows drive letter to it (but without background synching, damnit). (A Linux laptop should be able to access the iDisk through WebDAV, but I haven't had a reason to try that.) For files I didn't know I'd want on the road, there's always SFTP back to the Linux server. I manually copy files from the iDisk to the server every few days... like I said, it's mostly for active projects. For semi-remote backup, the server "cp -dupR"s files nightly to a wifi-connected little Linux box with a big disk, tucked away in the basement, and the Macs use my Time Capsule, mostly for their software (the Aperture and iTunes libraries are on the file server).
http://alternatives.rzero.com/
I want free space too! Click my link in my sig :(
I use DropBox for this between work and home, and it's fantastic.
That said, I don't believe it supports encryption (But it's a commonly requested feature, and they are generally quick to respond to demand so it's probably in the works).
My plan B would be an rsync server sitting in a colo somewhere. I'm sure you could find automated dropbox style clients that would work with it.
After proving to be very capable of synchronizing references (w/ PDF files), I've found Zotero (http://www.zotero.org) quite handy in synchronizing my other documents as well. Coupled with one's own webdav server, it comes very close to my idea of least-effort backup.
Folder Redirection on Windows XP (definitely on Pro - not sure about Home) works incredibly well with SMB shares. Consider exporting a share from your Mac - it and Windows can work offline any time, and when they can connect sync will be fast and automatic. No new software to install or buy.
Then set up sync between Ubuntu and Mac - multiple options, including rsync and Unison.
I use spideroak http://www.spideroak.com . Bascilly Dropbox, but with the added "we don't know your data" thing. They tell you that once you loose your password, your data is gone. While it's not (yet) open source and maybe won't be ever, they at least seem to try to keep your data secure. And storing it in the cloud is just soo much more convinient!
You're in luck! Jungle Disk 3.0 was released this week, with Sync support (for Windows, Mac, and Linux).
http://blog.jungledisk.com/2009/11/17/jungle-disk-launches-an-all-new-product-lineup/
Since you're already a Jungle Disk customer, the upgrade is free. Jungle Disk 3.0 also has a new backup engine that does block-level de-duplication and compression, making it by far the most efficient method for doing online backup.
Man, these fuckers are tossing up shitty clothing adds all over the intarwebs, what gives?
Actually, I have been synching data between operating systems (Linux and Windows only, I haven't had a call to do this with OsX yet). I use my old Palm E2 with Palm OS5, hot synch with each computer in turn. Documents, spreadsheets, calendar, phone book, expenses, etc. I don't even have to think about where I last worked on a particular file- HotSync takes care of that. It is a shame newer technology can not accomplish the same tasks that were trivial a couple of years ago...
In about 10 minutes you can set up a Bazaar repository on a hub machine and commit your files to it. I've been using mine now for about 8 months and it works great. Just do the following every time you start work:
.
..or something like that. You can do it from all your machines. Be sure to use a LIGHTWEIGHT CHECKOUT or the local repository will double your folder size.
$ bzr update
And then when you are done:
$ bzr add
$ bzr commit -m "bulk commit"
Laws are rules for the court, but merely a bottom bar to hit for life. Think beyond laws in your actions always.
One i've not seen anyone mention yet is JFileSync.
Yes yes, we all know that java is anathema around here, but this is an exceptional tool to have in the toolchest...
freenas.org
Seems to do everything a synology server does.
(http://www.ifolder.com/ifolder)
to sync "My Documents" between my Win7 and Linux box.
The client is a open source .NET client that could run on MS .NET Framework and Mono. Supporting Windows, Mac, Linux.
It is a client + server arch. The server holds all the data. I setup my Linux box to be the server.
It works by detecting the changes and send the differences to the server when you are online. Conflict are resolved manually, through the client app.
You could create different repository, say me Workplace desktop has the Work folder sync, and my laptop has both Work and Home folder in sync. While I also has an Archive folder which keeps all the unused junk, not synced to any machine, but available through the web interface included with the server package.
Then of course, the data on server are regularly backup. I have another very old P4 which is woke every 2am, using Dirvish to rsync the data.
I know this isn't particularily helpful, but if your Windows XP machine is just a gaming box, why do you need to back it up or have it share data with the other boxes? If you are worried about the drive crashing and having to reload windows and all of your games why not just toss an external hard drive on it, take an image, and put it away until your drive crashes. You are taking one OS out of the equation that way.
I cannot believe nobody mentioned FreeFileSync yet (http://sourceforge.net/projects/freefilesync/).
It's a portable-app, and you can create batch jobs..
usually don't handle large files all that well, plus you often need to manually say "start tracking file X" rather than having it happen automatically -- usually you want "track everything in folders X,Y,Z". Essentially DVCS'es are too complex for this task and rsync is too simplistic. Unison is "about right" (though it does have some shortcomings.)
However, if you're talking synchronising only stuff like shell scripts (like profile scripts, little self-made utilities, etc.) then I'd prefer a DVCS too for the reasons you've already stated.
HAND.
ZFS isn't a synchronization solution, it's just a file system.
Run eyeos in your server.
I'd like to buy homeland for our 10 million people. http://twitter.com/mahadiga
Comment removed based on user account deletion
I've been playing with this problem for a long time. You could try iFolder (http://www.kablink.org/). It's free, you can run your own server, and everything is encrypted during transport and on the server.
Teamdrive (http://www.teamdrive.net/) is also worth a look. They have linux, mac, and windows clients and you can run your own server (webDAV) or buy their server software an run it yourself - or they also offer hosting of your files. One if the cool things about teamdrive is that it has built in revision control.
I have much the same problem. Here is my solution:
First: Unison is a good, cross-platform solution. There are two important things to be aware of with Unison: first, use a star-configuration. Something should be the master, and this master is then synchronized with each client. In my case, the master is a USB stick that I always have with me. The second thing is: set Unison to filter out unnecessary stuff. For example, configuration files that apply to specific platforms.
I don't recommend it, but you can also use Unison to synchronize source code - if you do this, you will need to set more filters. For example, Eclipse stores lots and lots of files that you never want to see - and certainly don't want to synchronize.
A much better solution is to put your source code in a subversion repository and synchronize the clients with this repository as necessary. So two parts: SVN (or CVS) for code, and Unison for everything else.
Enjoy life! This is not a dress rehearsal.
The reason USB sticks are so fragile is because people tend to prefer sticks which are more GB per dollar.
If you want a sturdy USB stick you got to pay the money for it. There are good options for consumer-grade disks and dongles, in addition there are military-grade usb sticks (though I have no idea if it is possible to get them in the USA).
I have been using dropbox for past 8-10 months in a similar scenario and it has worked for me very well. I have a server machine at home on Debian etch, my workstation is on Ubuntu 8.04 and my laptop is on OSX with dual boot on Ubuntu 9.10
With a single account i am able to sync files across all these machines. The beauty is once you have installed it, you don't have to do anything to sync. All of the sync occurs automatically moment you save the files. Disadvantage is, it has it's own folder that it syncs up on and you need to manually copy or mange the files within that folder. I ended up creating a lot of 'soft links' to handle this.
Another advantage was I could share certain files/folders with my colleagues and and another set with my wife without any hassle.
So maybe it is not a bug, but a feature.
IANAL but write like a drunk one.
But of course you need some computing literacy beyond knowing how to turn on your computer, but the original poster seems to fit that profile,
IANAL but write like a drunk one.
I use svn for that exact task. Runs everywhere, tools are abundant, CLI-handling is fast and easy. I only use TortoiseSVN on Windows because the Windows shell sucks big time. Do a regular backup of your repository and you've got that in the mix aswell.
We suffer more in our imagination than in reality. - Seneca
Put all three operating systems on one computer and use a data partition shared among them. That is what I do.
Your big problem will be file formats, but openoffice runs on all 3, and other data should be saved in cross-platform friendly formats.
Just save it onto a NAS box that can run NFS, and work from NFS?
I run: Windows, OS X, Linux, FreeBSD. Just because you have a hammer, doesn't mean everything is a nail.
Maybe Tonido? Your own p2p cloud! http://www.tonido.com/
There are clients for Mac, Windows and Linux. There are your syncing solution. Backup the data should not be a problem. Maybe the TonidoPlug as a home server? Its a sheevaplug running Ubuntu with Tonido-software.
http://www.tonidoplug.com/
Strange nobody mentioned this service:
http://www.xp-dev.com/
Subversion repository, 200MB free (should be enough for a few personal files) and lots more if you pay.
HTTPS support for SVN for paying customers.
Lots of extra stuff (bug tracking, wiki etc) if you are a developer.
No affilitation, just a happy customer!
What is the sound of one hand clapping?
cat
http://www.tarsnap.com/ may prove helpful.
Jake ? http://jakeapp.com/ see http://hardware.slashdot.org/story/09/06/23/1823201/How-Do-You-Sync-amp-Manage-Your-Home-Directories
http://unite.opera.com/application/472/
For the server side and http://unite.opera.com/application/331/ for the client side, super simple. I don't know if there is any encryption (I don't care, I only use it for safe data) But even without, have anything you care about and encrypt it and then move it to the folder.
I use Meld locally for backups, but for multiple machine syncing/backup I am considering trying Bacula. Anybody already uses it?
Mostly harmless.
Perhaps Unison makes this simpler - rsync has an "IT pro" CLI interface - but this is trivially achievable with rsync.
Consult rsync --help and man rsync and apply a little thought, no big deal. Unless you're GUI-dependent of course.
The connections are SSL secured. It has clients for Windows, Linux, and Mac. You are going to need to set up your own server though.
"The most sensible request of government we make is not, "Do something!" But "Quit it!"
Sorry, helps to provide the site:
http://www.openafs.org/
Karma: Chameleon (mostly due to the fact that you come and go).
Well thank you for this info, I do use bluehost for a business drupal install but didn't really think about it. I was trying to be funny mostly, because doing that wasn't something the OP wanted to do or deal with.
Wrote a blog about it..: http://keskydee.com/wordpress/archives/625
Gil.
PGP public key at: http://keskydee.com/gil.asc
This is an FOSS Dropbox that functions on Windows, OS X, and Linux. I have the server running on Ubuntu based off of http://www.x2b4.com/howto/how-to-install-ifolder-on-ubuntu-server/ and it works wonderfully. All of my files are synced immediately and it's open source and it's MY storage. No limitations, I pay for the bandwidth and electricity already, and now I get the benefit. Everything can be individually encrypted, if you want to offer the same service to family or friends. It's just a great solution. If you want to use Amazon, I'm sure you could just set it up to store the data on your Jungle Disk, or you can just switch to backing up your local data directory to your Jungle Disk.
i wrote some git scripts to synchronize my computers on my blog http://faltufund.wordpress.com
I looked into this problem myself, and it isn't pretty. I use a Windows box for everyday stuff, a Linux based server, and my Sister uses a Mac.
Basically I had the idea that I wanted to share some Anime videos with my Sister who also enjoys the TV shows. Anyway originally my idea was to buy an external USB HD, copy the files and then give her the HD, this way she also gets a new external HD out of the deal. However when I looked into it, not as simple as I thought. While most external drives are compatible with Mac or PC, the emphasis is on "OR". Usually they are formatted differently and are not compatible with the other once formatted.
The only other solutions I could find were to use a NAS (Networked Attached Storage), and this would work, because you would be using the network protocol to translate the data between OS, SMB I think it is called. Anyway at the time, they were very expensive and still are to a degree however they have come down in price more recently and I have seen solutions out there for 200-300$ range. Which is still more than I wanted to spend as an external HD only runs you about 100-200$.
I settled for the getto version and just spent the time and burned like 10 8GB DVD-R's as it was easiest. However for a continual solution, this would not work. I would say your only choice is some sort of NAS with SMB. I am sure given the time and know how you could also build your own linux box to do the same thing, but for price it likely depends if you have an extra kicking around someplace. Either could likely be set up for remote FTP. I would recommend just buying a NAS, likely simpler that way.
If you're willing to pay, you could use Dropbox. If you keep it under 2 GB, it's free. Anything you drag into your dropbox gets synced to their servers and then synced back down to your other PCs you have linked to your dropbox account.
If you would prefer a roll your own solution, and are willing to build a server, then go look at Novell's iFolder http://www.ifolder.com./
Andy
For your local needings use a vcs (subversion http://subversion.tigris.org/ or a distributed vcs as mercurial http://mercurial.selenic.com/ or bazaar http://bazaar-vcs.org/en/) and store a copy of your repository on Ironkey S200 https://www.ironkey.com/compare-hardware, a multi-os (linux, win, mac) military-grade encrypted usb key with good size (up to 16gb) speed (Up to 27MB/s read and 24MB/s write) and SLC technology (100K write cycles http://en.wikipedia.org/wiki/Flash_memory#Write_Endurance).
And continue to backup online with Jungledisk.