Have a cool use for Sync? Write about it in our blog!

Recommended Posts

Hey everyone!

First, thanks for your interest in BitTorrent Sync and your participation in this forum. We really appreciate it!

As we continue development on Sync we want to highlight some of the awesome uses that people are finding for the program. Similar to this post on our blog, we want to do some guest posts from members of the community who are doing awesome, unique things with Sync, to highlight the program's possibilities and give other people ideas that they might be able to incorporate into their own lives.

If you're doing something nifty with Sync and you'd be willing to write it up into a quick blog post, let me know in this thread or via PM. Keep in mind that the use case can be anything as long as it demonstrates a neat use for Sync. I'm happy to assist with formatting and editing, and we can send some BitTorrent swag your way for your trouble ;)


Lucas @ BitTorrent

Link to post
Share on other sites

Well I found myself with a problem; How do you provide IT Services to those not under the same building as the IT Support Team?

I work for a small company with employees spread around the country; We do not have a domain being so spread out and yet we still have to push updates, get our personnel , patches, perform file and print services, send out manuals (in the form of PDFs), Send out spreadsheets, Perform Backups, and do some custom applications and get them out quickly.

Mind you that my predecessor used a remote control application to update these computers; this was effective but seemed a little slow; Email though effective does have limitations as well.

I decided that I liked the concept of drop box, but the idea of installing it on every computer and assigning each user an account gave me a headache just to think about it. I then created a SFTP Server and began creating a script that would sync up the data from a common folder to the Ftp Server. Though I had to wonder what kind of timing scheme I would use to backup all the computers in a single night, this failed after I started to deploy it out to a few workstations and found the syncing did not always work.

But then I ran across a Application called BTSync I thought why not use the same concept of my ftp Server

User 1 ====================\

User 2 ==================== \

User 3 ==================== \ FTP SERVER (Individual Folders for each PC)

User 4 ==================== /

User 5 ==================== /

User 6 ====================/


Why not create a junction (folder) which has a number of symlinks to 10 different areas of each hard drive (Favorites, Desktop, My Documents, etc). Then create one secret for the junction folder (No username and Password to Manage) and share that with a Backup Server in my office.

Also create a unique name (PCNAME) that would also be the folder name on the Backup Server. Next why not let that run 24 hours a day so any files would be synced up with the Backup Server so as to limit the amount of data transfer thus the users would not see any large file transfers during the work day.

Next If there was a need to send out a mass mailing of manuals or a new email contact list a simple javascript could be created to copy the file(s) to each users Desktop folder(on the Server) and it would be sent to the users computer in a matter of minutes.

Over all I have been very happy with the application and how it has improved backups and updating of data on my Wide Area Network.


Keep up the Good work, I can hardly wait for a version that will allowing scripting.

Link to post
Share on other sites

Now with the BitTorrent Sync version for mobile, DropBox and Cubby are almost obsolete. The only thing that is missing for a range of infinite apps is scripting or an API, those would make apps so easy to develop, including web interfaces, p2p message communication, and so on.

Link to post
Share on other sites

I was using git in order to sync some stuff across my computers. Using AGit client on my android devices, I was able to do only pulls - no way to edit data.

Now, with Sync, I'm able (well, I'll BE able, once we can provide the known_hosts params to Sync mobile ;) ) to push modification from my mobile devices as well.

That's for my personnal useā€¦ Regarding some more professional suff, I'm currently testing Sync in order to maintain about 1.7To of data on ~20 servers.

For now, we have one master, and there are, daily, an rsync running from all the others. You can imagine the load as well as the time it takes.

With Sync, it should be able to:

- leverate the load on the master

- accelerate dramatically the speed of update

Knowing there's only "small" diffs (about 10% of the total size so far), Sync should be the good way to do that. Plus, having about 20 servers, it's a good way to use the p2p protocol, as they will be able to sync different chunk from different hosts, meaning the load will be distributed on every servers. The master will still need to work a bit more than the others, but as it will distribute different chunks to each slaves, it won't be that scary.

Thanks a lot for this app, there are some improvements (like replacing ionotify by fnotify, for example), but, really, it's on a very good way!



Link to post
Share on other sites

Hey everyone, thanks for these. Pretty awesome so far. For now we're focusing on the blog but in the future we're hoping to set up a place where people can share their own uses for Sync and discover the things other people are doing.

I'll review what's been posted and get in touch with you all individually. Thanks again!

Link to post
Share on other sites

On my Android phone I've setup btsync to to share documents, photos, music, pictures, etc. I no longer need to hook up my phone to the computer and manually initiate a transfer of data in either direction. The phone is simply backed up, and if I want to get rid of stuff on the phone, I can just get rid of it in the shared (mirrored) directory on my computer, and with the next sync, my phone is cleaned, too.

Link to post
Share on other sites

I sometimes run across audio files on the web that I would like to listen to later on my iPhone. I have set up BT Sync so that I download the files on my laptop to a 'podcasts' directory, which then gets synced to my webserver. The webserver has a small java based webapp running in Tomcat that serves up a podcast feed of the synced podcast directory, and then my iPhone (using the podcast app "Downcast") automatically gets a copy of the file too.

Link to post
Share on other sites

I work for a large construction company and I have it setup to backup my fileserver offsite and basically have a live backup available to me at all times. I still run my tape backups but now go to my offsite backup first to get deleted files. We also have a lot of employees who work across the country at jobsites and we have always struggled with how to back them up but I can see this working really well.

A lot of cloud backup places offer a couple of gigs but we have basically as much space as we want in our cloud. It's kind of like getting your own private cloud.

Link to post
Share on other sites

Kinda Slick Password Management.

I've been using KeePass for a numer of years but always had to manually update the password vault on the various devices (Windows, Linux, Android, backup).

Now I have set a a directory (kee_sync) on all of the relevant devices and included the encrypted password vault and also a text file containing the key.

I also copied the key into a contact in my google contacts called kee_sync so I can copy and paste out of it into btsync on the various android devices.

NOTE: I am not worried about the key to this one folder being in plain text because the pasword vault itself is encrypted.

So at this point I have achieved seemless sync of my password vault across all my devices. Big deliverable there.

Now that the pasword vault sync is in place, I add new secrets to an entry in the password vault so now I can copy and paste it into btsync on any of the devices that have the password vault. Saves me from myopic typing of keys.

An additional benefit is that KeePass2 can merge files if I forget and somehow update the vault on different devices. It does this by detecting that the vault has changed (upon a save attempt) and prompts asking if you want to merge or otherwise. Kinda slick!

For extra credits: I have this directory on my primary home machine included in a JungleDisk backup that automagically backs up to Amazon S3 with serious versioning back forever on this particular directory.

Link to post
Share on other sites

Torrents added during the day are ready when we get home

I have a folder synced on my phone (mike_torrents_sync).

That same folder is on my main laptop at home and my transmission client is set to automatically add torrents from that folder.

So when I need to download something for use at home that night (like the latest release of an ISO), I download the torrent file into that folder and it is automagically downloaded at home no VPN/Remote Access required.

(downloads at work are crap, I'd talk to the sysadmin about it but, ahh that's me)

For extra credits: If that item happened to be a media file it would be synced over to the Plex server where it is indexed (every 15 minutes) and available to watch/listen over my Plexpass connection from whatever device, wherever I am.

In fact you could probably spin up a virtual machine in a media sharing benign jurisdiction with this sort of setup and then btsync the downloaded media back to your home base, wherever that was. Safely.

Link to post
Share on other sites

Media Sharing in an Unsnoopable Mesh Of Trust

At the current time there are multiple ways for various "powers that be" to track what is downloaded through torrents.

All they have to do is add the torrent themselves and track the IPs (blocklists notwithstanding).

This alternative could potentially result in the file sharing activity being unsnoopable/untrackable:

  • Node A lives in a media sharing benign jurisdiction (define that however you want). Node A sets up a share folder showx_sync.

  • Nodes B, C & D live in a media sharing draconian states (TPP signatories for instance) and are close personal trusted peers of Node A so node B, C & D have the read only key for Node A's showx_sync.

  • Node A uses conventional bittorrenting to download the latest just aired episode of "showx" into the showx_sync folder. It automagically appears in the sync folders of B, C & D.

  • Even if Node A resided in a media sharing draconian state, if they are the person recording the show themselves this could still work.

  • Node B, C & D also have three different close personal trusted peers and share the showx_sync folder each of them with differnt NEW READ ONLY KEYS; Node B with Node E, F& G; Node C with H, I & J; Node D with K, L & M.

  • When Node A adds the latest episode to showx_sync it flows to B, C & D and from them to E,F,G,H,I,J,K,L & M.

  • E,F,G,H,I,J,K,L & M have no knowledge of A. They only know of the single upstream node.

  • E,F,G,H,I,J,K,L & M may have one or more close personal trusted peers of their own and provided they follow the "resync with new read only key" methodology they will only ever see their own close personal trusted peers in their downstream syc logs. Anybody new or untrusted appears they can change the key and read them the riot act before resharing the key.
  • It becomes interesting when Node M is also a close personal trusted peer of Node A. Then we have a mesh (of sorts).

An unsnoopable mesh of trust.

Link to post
Share on other sites

Syncernet - Disconnected Nodes with intermedeate connections traversing firewalls by Sneakernet

My firewall at work is managed by a corporate group overseas. The chances of me successfully getting them to open a port for me to sync with Nodes outside the internal network are nil!

But I have devices that travel between home and work; my phone and my tablet (I rarely bring my work laptop home).

A folder synced from my work laptop to my phone and tablet will sync when I am at work (perhaps containing a simple encrypted password vault like (KeePass2).

When I leave work and go home, my "sneakernet" connection starts to kick in as soon as I pull up in the driveway of my home.

In very short order the same password sync folder is synced on all my devices at home (and then gets backed up via a seperate process).

So the two networks are effectively connected by a Sneakernet based sync courier (me) physically traveling between the two locations.

It is conceivable that these two networks are in two different countries, like China and Australia, thereby bypassing any kind of Great Firewall that would otherwise interfere and thereby seeding the disconnected network of sync nodes.


Link to post
Share on other sites

Using BTSync to synchronise two email servers:

Using MDaemon email server v13.x.x on two hosts in different locations.

BYSync 1.1.48 at present. Windows Server 2003.

Using BTSync to sync the user data folders (=all email content)

This enables email failover in the event of server failure or internet link failure at one site.

On wishlist too: Please make BTSync with a 'windows service' option...

Excellent piece of software. Thank you to the developers.

Link to post
Share on other sites

I would love it if you created an enterprise version of this tech that would work in the following way:

1) Allow is to run as a service on a file server to map local drives, iSCSI, etc.

2) create a management console that would integrate with AD or OpenAD, where you could assign users to groups,departments, etc and allow each user to have access via one key to all groups/teams/department/etc files and folders.

3) allow each shared folder to have the possibility of adding a mapped drive letter.

4) a setup wizard to port over all users and groups from AD and file/folder permissions from file-servers.

With these options in place, a company could keep all the comforts and ease of management in place but be able to give all employees the same access to work files and folders easily without huge costs and installation burdens.

Most AD companies have only local file access to everything except by users with VPN access and are stuck with only allowing windows computers (primarily, not only) to allow for managed file, printer and authentication management. If you could allow for a print service to run on print servers too that would monitor a certain sync'd spooler folder for print requests and then hand them off to the print server, that would alleviate two of the primary restrictions keeping computer locked as windows only and allow for print from anywhere solutions as a benefit to clients too. Of course this would have to be wrapped into the management console to limit certain printers availability to certain users, departments or groups.

Link to post
Share on other sites

One of my clients bought a new PC last week. Normally I would drive to the client's office, pickup the PC and bring it back to my office for basic OS updates, program installs, drive partitioning, etc.

My next trip would be to copy over the data and make the swap, that usually was a 2 or 3 hour process.

This week I used a remote control program to install Bitsync on the existing PC and had all the data copied over before I left my office, a great time saver. Once I got onsite the last minutes data copied without any intervention on my part.

I've stopped using Spideroak for syncing folders and will soon stop using it for my online backup service once I get a NAS.

Since Spideroak and Bitsync both use about 200k of RAM each that will help reduce the overhead.

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.