2

I have an iMac and a MacBook Pro, both running the latest version of mavericks.. I want to sync files and folders outside Dropbox across the two computers. Up until now, I've been using symbolic links which I created via terminal. I've found that the symbolic links stop working after a while and I was wondering if there was a better way of syncing data between computers.

PS: I use Dropbox as part of it. For example if I want to sync mamp databases across two machines, on my iMac I find the db folder, create a symbolic link for that folder, move it into dropbox, go to my MacBook and make a symbolic link of the db folder that's in Dropbox and move it into the mamp folder, delete the current db folder and replace it with the db symbolic version. That's what I want to achieve, I want to be able to sync folders outside Dropbox through Dropbox if that makes sense.

  • Do you mean that you put symbolic links to the files/directories you wish to sync into a single directory to make the procedure easier? If that's the case, you can provide a list of files to copy via "--files-from=FILE" and that might work out better for you. – Kent Jan 29 '14 at 6:34
  • 5
    What do you mean with "symbolic links stop working after a while", what is the problem you are seeing? – nohillside Jan 29 '14 at 7:32
  • See my reply to cksum below, I've tried to explain better there. – Iestyn Jan 29 '14 at 11:18
  • 1
    @Iestyn put that info in the question not a comment - this is not a forum where you carry on a conversation and so have replies, comments are there to help people improve their question or answer – Mark Jan 29 '14 at 12:06
  • I've moved your comment into the question but please feel free to edit it further to make it more easy to understand what you are trying to accomplish. – nohillside Jan 29 '14 at 13:40
5

There are are a range of third party tools for synchronising files across two or more computers. You mention already using DropBox.

DropBox is designed to sync only one folder. Using symbolic links is a great work around but as you have experienced, the approach is likely to be fragile as it is not the focus of DropBox's developers.

Consider using another synchronising approach that can handle multiple shared folders across your Macs.

Unison File Synchronizer

A stalwart of the file-synchronization world, Unison is designed for keeping two or more computer's files in sync. It deals with edge cases and is aimed at those needing more than just a routine copy between computers.

Unison is a file-synchronization tool for Unix and Windows. It allows two replicas of a collection of files and directories to be stored on different hosts (or different disks on the same host), modified separately, and then brought up to date by propagating the changes in each replica to the other.

Unison Mac interface

BitTorrent Sync

BitTorrent Sync is relatively new and claims to need no cloud and share no private information.

Your information stays yours.

Sync never stores your files on servers, so they stay safe from data breaches and prying eyes.

AeroFS

Another new comer is AeroFS. For private use a free plan is available. I am not sure how applicable this option will be, but it may offer more options, such as multiple shared folders, than currently offered by DropBox.

Dropbox behind the corporate firewall.

File Sync and Share, for the Enterprise, deployed behind your firewall

rsync

rsync is a command line tool included with OS X. You can use rsync to synchronise file systems with relative ease. Setting up rsync requires a scheduling tool such as launchd, cron, or Power Manager but once done it is extremely reliable.

  • +1 for BitTorrent Sync (I use it to sync files that are just too big for Dropbox and it works great) but I don't actually think that this solves the problem that the OP was having. – zelanix Jan 29 '14 at 12:33
2

I think in your case, the best way to achieve this is to have Dropbox installed and running on both computers. That is, by design, what Dropbox does: sync files.

Enable LAN sync, and as long as both computers are on the same local network, they'll sync without even the need to consume bandwidth.

enter image description here

Dropbox was design specifically for what you're looking to do. And since it works with OS X so seamlessly, it's by far the most elegant solution.

As an aside, OS X has had trouble with symlinks for several iterations. Even local symlinks break very easily and under numerous (most often mysterious) circumstances. It is a problem that is most certainly known to the more advanced OS X user base.

1

The official Dropbox advice is to use aliases rather than symbolic links. Aliases are more robust than links as they can cope with either the source or the destination file being moved, for example.

0

The absolute best way to sync files between two computers if they are always on the same network is to use rsync.

Have a long, detailed read of the man page and visit its web page for more documentation.

  • rsync isn't so easily useable for people not used to the command line. So it might help the OP if you add the specific syntax required to sync folders between computers (including the impact of file deletions etc.). – nohillside Jan 29 '14 at 8:24
  • 1
    Well rsync is so powerful and dangerous that giving any examples could be worse than helpful. The man page and the documentation at the web site both give well explained examples and context. – Tony Williams Jan 29 '14 at 8:36
  • Sorry, but rsync just isn't suitable for normal users. Yes, it's powerful but it's just too complicated. BitTorrent Sync as mentioned by Graham in his answer is much more appropriate these days. – zelanix Jan 29 '14 at 12:26
  • I also don't think rsync is all that neat when it comes to syncing data in a complete graph of N computers. It doesn't really scale well, unlike bittorrent and similar P2P protocols. – Witiko Jun 22 '14 at 11:39
-2

Try wml, it uses Facebook's Watchman to listen to changes in one folder and copied changed files to another.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .