I was slightly annoyed at how dropbox isn’t working in countries like China and the fact that the free version now only works on a limited number of devices. Also, I’m not a huge fan of the subscription model — not in this use-case at least.
Recently, I revisited the idea of trying out BT Sync again. Apparently, the then BT Sync is now rebranded as Resilio Sync. I stop using it previously because it was slightly buggy previously, but this time round after trying it out of a month. I really like that it was able to handle most of the different scenarios I was throwing at it.
So, I decided to purchase the Home pro version, and they kindly gave me a discount too, so I was sold almost immediately. Oh~ did I mention I tried it on iOS, macOS, Ubuntu, Windows 10 and Android too?! Yes, you’re probably only limited to the amount of hard disk space you throw at it. And it sure as hell works in China too! Selective syncing works really well for mobile devices, so that was one of the really cool features for me.
I decided to set up a central node using a raspberry pi. On this node, one of its responsibility is to hold a copy of all of the folders between all of the different devices and will run 24/7, I will run this in a headless mode, so I will probably need to setup a NAS on it such that I can drop files into it if I need to.
I’ll skip the part about setting a NAS, if you’re interested in that, look at the article I wrote earlier here.
Convert your 4TB USB HDD into a NAS in 5 minutes with Raspberry
With a built-in WIFI module, true Gigabit Ethernet ports and multiple USB3 ports, the raspberry was turning to be a…
I’ll start off next with the assumption that we have a group named
smbgrp this group will have access to the entire external 4TB USB. The USB drive is mounted onto
Installing Resilio Sync
First, let’s add the package repository to rasberry.
$ echo "deb http://linux-packages.resilio.com/resilio-sync/deb resilio-sync non-free" | sudo tee /etc/apt/sources.list.d/resilio-sync.list
Next, we need to add the public key.
$ curl -LO http://linux-packages.resilio.com/resilio-sync/key.asc && sudo apt-key add ./key.asc
Finally, update the repository list and install.
$ sudo apt-get update
$ sudo apt-get install resilio-sync
Setting up Resilio Sync
To ensure Resilio sync is up when I do a reboot, I’ll use
$ sudo systemctl enable resilio-sync
Now, reboot the device and use a Firefox browser. When the raspberry pi is completed booted up. Visit
https://x.x.x.x:8888 this is the default url for the web login page.
Note: Firefox browser was the only browser that allowed me to visit the self-signed certificate site. Maybe there is a way to create an exception on Chrome but I haven’t found the way yet.
Follow the steps as shown on the Web UI, setting up a username and password. Finally, if you have an account you can also set it up in this Web UI.
Setting up File Permissions
I think this is the most important part. Firstly, the user
rslsync needs to be added to the group and allowed to write and read from that folder.
In this article, it’s assumed the folder we are interested in is
/mnt/stuffs and the users in
smbgrp will have access to it.
Let’s add the user to the group.
$ sudo usermod -aG smbgrp rslsync
Finally, let’s ensure that the group has access to write and read.
$ sudo chmod g+rw /mnt/stuffs
With that you should then be able to sync without any problems.