I will look at this as a replacement for Luckybackup.
Thanks! If you just need backup, with Synchi you set the 'force=root_a' in config, otherwise its bidirectional sync. If you need pure backups, rsync or similar might still be the better fit as they have some backup specific features.
Syncthing was made for this and has been around for almost a decade now.
I used Syncthing for years, it's great (if you use it and you are happy, then you dont need to switch), but they are quite different. Syncthing requires daemons on all devices and can't sync two local folders on the same machine. Synchi is on-demand, runs only on one side, and doesn't care where the two root folders are.
I wrote a more detailed comparison here: https://jakobkreft.github.io/synchi/why.html
Doesn't rclone also do the same thing but with many more features like e2ee etc?
Setup SFTP remote along with bisync?
rclone bisync can do two-way sync, yes, great tool, especially for cloud backends and more automated syncs. Synchi is a lot simpler and more focused: works over SSH, nothing needed on the remote side. The key difference is that Synchi shows you exactly what it's about to do (copy A→B, copy B→A, delete in A, delete in B) and asks before changing anything. Conflicts get an interactive UI. No surprises.
rclone also works over SSH, and isn't needed on the remote side, rclone also shows you exactly what it's gonna do with colored text and formatting along with conflict management, but yes it is a bit complicated and a step above nextcloud etc, although GUIs exist I haven't tested them. Loking forwards to how a new tool focused on personal use specifically can manage to be more user friendly and adapt exclusive focused features for such, looks more approachable and simple.
Thanks for correcting me! Honestly, I haven't used rclone bisync myself so thanks for sharing it. I have to give it a try now. rclone definitely looks a lot more compex feature-rich tool. Synchi I think would be alot simpler to setup and works great for my specific use case of syncing notes and files between my devices. Perhaps, targeted users is the distinction? Anyways I need to try it and see what good things I can learn from it.
Genuine question: How's this different to rsync?
I have rsync installed locally, but not remotely and I'm able to sync changes, so how does this differ?
Edit: ok, I read the article a bit further and found the rsync comparison
Great question! Let me sum it up here for others:
rsync is one-way only and has no memory between runs, every execution starts from scratch. Synchi is two-way, stateful (knows what changed since last sync), and content-aware (uses hashes, so no false positives from timestamp changes). It also handles conflicts explicitly instead of silently overwriting.
That said, rsync is still the better tool for backups and one-way mirroring. Synchi is for when you need true bidirectional sync.
Here is also a comparison with unison and syncthing: https://jakobkreft.github.io/synchi/why.html
Maybe I missed it, but you don't seem to mention anywhere sub-file sync (binary diffing) support (or presumably the lack of it), which is very important for fast syncing when files actually change!
You are correct! no sub-file sync / binary diffing at the moment. It was my deliberate choice to keep complexity down. In practice, text files where diffing helps are tiny and transfer instantly anyway, and large files like images and videos almost never change partially. The main case where it would matter is something like large database files or VM images. That said, it's not off the table for the future!
I love the concept for this. Syncthing is pretty good but it is annoying to have it running all the time on Android.
I'd love to use something like this to sync my Obsidian md files between computer and phone just when needed. I suspect this could be baked into to an Obsidian plugin to make it pretty seemless for folks.
This is exactly how I use Synchi! Same idea but I use Logseq instead of Obsidian (very similar open-source alternative, worth checking out). Works great for syncing markdown notes between computers and my phone on demand. Of course I need to remember to sync before switching devices, but I prefer this then constant running in the background.
Haven't thought about an Obsidian/Logseq plugin but honestly that sounds like a great idea... For now it's CLI only, but I can definitely see the value.
Does it work on smartphones
Yes! On android with Termux terminal.
(note: If you sync between computer and phone you don't need to install it on your phone. One side only is enough.)
Yes, I would like to use this as an alternative to syncthing. Arch Linux and Android. So how the phone should be connected? Do I need to open my phone's SSH port?
Yes, you do need SSH set up on your phone. I'm using the same setup (Linux + Android). I wrote a short tutorial for it here: https://jakobkreft.github.io/synchi/termux.html
Also I use it with Tailscale so I can sync from anywhere not just local network.
How about photos on iOS?
iOS is tricky since there's no easy way to set up SSH access to the filesystem like you can on Android with Termux. So unfortunately not really supported at the moment. If you have a jailbroken device it might be possible, but that's not something I've tested.
This might be good on Steam Deck for multiple games that have carry-over data. Just mirror the save data folder of one proton directory into that of the follow-up game’s directory. I assume you can go back to the first game to unlock more stuff to carry over, and not have to manually copy-paste the save folder each time. Just run a sync.
I'm not too familiar with Steam Deck, but that sounds like it would work! As long as you can point Synchi at both save directories, it would keep them in sync and save you the manual copy-paste.
Linux
From Wikipedia, the free encyclopedia
Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).
Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.
Rules
- Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
- No misinformation
- No NSFW content
- No hate speech, bigotry, etc
Related Communities
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0