Live data from Hacker News

Unison File Synchronizer

cis.upenn.edu

81–90 of 102 posts

Re: Unison File Synchronizer

#81
post #53
post #50

Earlier quoted context omitted.

I used Unison to sync between two laptops. In using only one laptop now and I switched to Syncthing to sync some folders of my phone, tablets and laptop. Unfortunately Unison doesn't run on Android. I liked the way it could perform a merge of the folders from different computers.

Can you not mount the android file system on your laptop, and sync the two different directory trees, running exclusively from the laptop?

Modern Androids only support mtp for data access, which doesn't work well for that use case.

Re: Unison File Synchronizer

#82

Is this project still going? I used to use it a lot for duplicating my project directories between my lap PC and my home PC. It was so powerful and so useful at the time. Honestly I thought it had died. I use Syncthing now. It's really useful.

Unison suffers from the Lisp Curse - it's written in OCaml, a similarly powerful but small-audience language. It "just works", so there doesn't need to be much activity.

The problem is that it didn't just work e.g. on Windows with filenames that contained non-Ascii chars for a long time.

Re: Unison File Synchronizer

#83
post #39

Is this project still going? I used to use it a lot for duplicating my project directories between my lap PC and my home PC. It was so powerful and so useful at the time. Honestly I thought it had died. I use Syncthing now. It's really useful.

I recently switched from Syncthing to Unison, after getting tired of Syncthing either taking forever to sync anything or getting stuck altogether, with very little visibility or control over what it was doing. So far Unison (with fsmonitor) has ‘just worked’, with files updating immediately on save as I’d expect. (That said, one of the problems I encountered with Syncthing seemed to be that it wouldn’t properly recon…

I also have a three computer setup with syncthing (one master, two slaves), and the thing was bulletproof around the world.

When go to another country, open my laptop, connect to a wireless network and bam. Syncthing connects, things got synced automagically.

Re: Unison File Synchronizer

#84
post #70
post #30

Earlier quoted context omitted.

> Is there a way to make my arrangement more robust so that I can sync files through and USB drive, without needing to use the same numeric user id in all my computers? $ chown -Rf ufo.users /media/usbdrive && unison

Would I need `sudo` for this chown command?

Yes, you very likely need to be root. You could also perhaps add in fstab that you mount the USB drive as a specific uid. See man mount and man fstab and search for " uid" (with the space, else you search for uuid as well).

Re: Unison File Synchronizer

#85
post #33

I can't praise Unison enough. I've been using it every day for over 10 years and is easily one of the most useful pieces of software I've ever come across. I've donated multiple times over the years.

"I can't praise Unison enough. I've been using it every day for over 10 years and is easily one of the most useful pieces of software I've ever come across." Unison was the first backup binary that we built into the rsync.net platform - breaking our original design goal of only offering client agnostic SSH and the tools that would run over that. Shortly afterward we also added rdiff-backup. Both of these tools were q…

We still use duplicity because it allows us to use our own rsync backup servers, has encryption, compression and par2 optional (defaults to 10%). Every one of these is optional. Too bad it doesn't offer the ability to use compression algorithms other than gzip (lzma or zstd would be nice).

Re: Unison File Synchronizer

#86
post #62
post #56

Earlier quoted context omitted.

I disagree. POSIX, although somewhat dated, has provided a good enough abstraction layer for filesystems and OSs. My proof of this is the number of different and successful filesystems for Unix/Linux. If the abstraction didn't work, everyone would be forced to use the same filesystem. The issues and subtleties are with bidirectional sync. It is not "the easy part". Dropbox didn't get it right in the past, we have no…

> POSIX, although somewhat dated, has provided a good enough abstraction layer for filesystems and OSs. First of all, POSIX semantics are not what Windows support. Second, even where available, POSIX is a tiny part of the possible issues. Adequate for naive apps that need to open or write some files, not for a reliable sync tool. https://danluu.com/deconstruct-files/

The issues discussed in that link, such as concurrency, lack of atomicity and failure are all factors that make bi-directional sync a hard problem. Yes POSIX provides few guarantees and so that burden rests on the application code above. The formal model must consider the race conditions and failure modes, it is not "the easy part". I do acknowledge there is a modelling gap to overcome and some problems with POSIX, but I disagree that its the hardest part of the problem.

Re: Unison File Synchronizer

#87
Unison's cool, but I hit some major roadblocks with it, namely: it can't run on an heterogeneous network [0,1]. As many others have already suggested, syncthing[2] is the new best tool out there for multi-directional sync.

[0] https://wiki.archlinux.org/index.php/Unison#Version_incompat... , https://groups.yahoo.com/neo/groups/unison-users/conversatio...

[1] https://try.popho.be/byeunison.html

[2] https://syncthing.net

Re: Unison File Synchronizer

#88
Unison efficiently and reliably syncs my website (static blog mostly) between OS X and FreeBSD. It's one of those extremely underrated pieces of software that just quietly does an excellent job, yet most people never heard of it and continue to struggle with rsync or similar (syncthing fulfills a somewhat different role). Perhaps because it's written in an oddball language, or because the website isn't flashy enough.

I often evaluate a wide range of software before choosing what I consider best for a job, and many years ago, Unison came out way ahead in such an evaluation. It never failed me.

Re: Unison File Synchronizer

#89

I've been working on a spiritual successor to Unison for a few years called Mutagen [1]. It aims to provide more flexible synchronization and tighter integration with filesystem watching, enabling ~real-time remote editing with your local editor of choice. It also adds SSH-style network forwarding, so you can forward network traffic to/from remote systems to access remote applications without exposing ports. It curre…

The name seems to conflict with the Python module (https://mutagen.readthedocs.io/en/latest/), which has been around for a longer time. While you seem to have put in a lot of effort seeing your commit history and search ranking, your first commit is in Nov 2016 - nearly a decade after the other one. Perhaps you should consider rebranding the project, with the greater interest of the FOSS community in mind.

Re: Unison File Synchronizer

#90

Earlier quoted context omitted.

Do you mean rclone or a whole service like Dropbox? (Rclone is pretty amazing, btw) https://rclone.org/

What the best way to do bidirectional sync using rclone?

rclone has a "mount" feature whereby you use FUSE to mount a filesystem which corresponds to a path in your remote share.
Post reply on HN