Rsync and Buffalo Linkstation Quad Pro LS-QVL/R5 (Part 2) – A Better Rsync Client using QtdSync

Recently my windows PC started to play up and so I had to reinstall the entire windows OS from scratch and in doing so, I have to re-setup the deltacopy rsync client to work with the Linkstation. While the setup of deltacopy’s rsync script is pretty straightforward (and I have to refer my original article since I have forgotten all the settings already), the issue I am facing now is that deltacopy just won’t run reliably under windows scheduler. Deltacopy can still backup the folders reliably but it will no longer automatically start the backup process when called by windows scheduler.

I have no idea what went wrong (I am not sure which party is at fault here – whether windows 7 or deltacopy) but I have been spending so much time trouble-shooting that I thought I will give another rsync client a go this time.

I first chance upon the QtdSync rsync client sometime late Feb this year. It is written by Thomas Doring and is at beta version v0.6.16 when I first try it. When I first tried it then, I have major issues to make it work with the buffalo quad pro. While the backup actually works, all the files backed up on the linkstation become read only and I can only delete the files by logging into the NAS as root.

Sounds familiar? Yes. I experienced that before when I was setting up DeltaCopy. I managed to overcome DeltaCopy’s issues by replacing all the binary/DLL files with another version and to force rsync to use command line switches like so: “-v -rlt -z –delete -avr –chmod=a+rwx,g+rwx,o+rwx“. This works well for me . I thought I might be able to make QtdSync work as well but there is no way I can make QtdSync v0.6.16 accept a custom parameter at its GUI interface.

I seeked help from the QtdSync forum (read more here) and after a long wait, Thomas Doring replied that this feature will be made available in the bugfix version v0.6.17. I did not try to see if this version works then but I kept this feature at the back of my head in case I need to switch Rsync client one day.

So today I decided to try QtdSync v0.6.17 since I could not get DeltaCopy to work anymore and I am happy to report that QtdSync works just fine and I have good results with it.

Installing QtdSync is a breeze. It comes in a 6MB executable file. I like software that is not bloated. The author also has a good QtdSync tutorial page here.

QtdSync will install into c:\Program Files\QtdSync folder and the binary files are all located in a “bin” sub-folder. The installation menu is in german but it is pretty easy to figure out which button to press. Fortunately the software menus are all in English when it is fully installed.

When QtdSync runs, you will have the opportunity to create a new backup set. This will bring us to a window like this.

This is how I setup QtdSync to work with my linkstation and I will use the document folder of my ScanSnap s1500 as an example.

First, key in a name for the backup set. I type in #PERSONAL FILE STORAGE which corresponds to the actual folder name I intend to backup. This is important. Setting any other name different to the original folder name will not work (your mileage may vary in this case) since I have tried.

Next click on the yellow button and it will bring up a sub menu allowing you to choose “Local path”, “Remote rsync path”, or “Remote SSH path”. I choose “Remote rsync path”.

A small dialog box then pops up prompting you to input the server’s IP address and the user authentication details. Since I don’t have any user authentication on my rsync server side of the linkstation, I just use the IP address.

This will populate the Host field automatically. And if you click the “Path” drop down menu, you should be able to see all the available shares from the linkstation. If you don’t, something is not setup right on your linkstation.

Note that the rsync destination folder is determined automatically for you and note the folder name at the end of the rsync command is the same as the name of the backup set and note also that QtdSync automatically substitutes an underscore “_” to any space in the folder name. So it is always better to start with a folder name without the empty space between characters.

Now the folder /disk1_Archive1/#PERSONAL_FILE_STORAGE is not the right place where I want the backup to go to. I want the backup data to go to another folder but I will use a temporary server folder to illustrate in this example.

In this example, I will set the folder I want the backup data to go to as “16_Vostro”. Obviously you can set any folder you like. Note that QtdSync will automatically update the rsync path accordingly. A very nice touch. Now you are pretty much done with this dialog window.

Now click the “Tasks” tab.

This will bring you to an empty dialog box where you can then select the source folder you want to backup.

Click the green button to add the source data folder. This will bring up a sub menu with “Folder”, “Preprocessing” and “Postprocessing”. The latter 2 settings are quite interesting though I have not figured out what to do with them yet. I select “Folder” for my setup.

Now a standard windows dialog box will pop up and you can select the source folder u want to backup. In my case, this is the folder D:\#PERSONAL FILE STORAGE.

A dialog box will pop up and says the selected folder is located on the same drive as the backup set file and if we want to “bind” it. This actually puzzle me a little. After referring to the author’s tutorial, I decided to select the setting “To the drive where the Qtd-File is located“. This seems to work well for me.

The “Tasks” dialog box then become like so:

Now click the yellow button on the right. Another dialog box will pop up. This is the part where I have some issues with but after some experiments, this is the setting I used.

You will note that the rsync path has now become “duplicated” with the backup set name which is not what I want. I do not know why this is happening but perhaps this is an intended part of the software design. I do not know well enough to comment on this.

What I did was to disable the “Backup into subfolder” checkbox. Okay. This brought up a warning dialog that makes me wonder what is happening.

I am still unsure about this but I am inclined to ignore this for now. Just click OK for now.

Note that rsync path destination is now changed to this.

The duplicated folder name thingy is now gone. I am pleased.

Click the green button and this will drop us back to the previous “Task” dialog.

Now click the “Save & Quit” green button. This will prompt us to save the QtdSync backup set file. Select a folder to save to. I suggest to save to the root directory of the source folder. So I save to the root directory of drive D in this case. This will also drop to the main starting menu.

Now click the backup set again and select “Edit selected Backup Set”. This will bring us again to the “Destination” dialog box.

Now click the “Settings” button on the top right.

This will load the QtdSync Settings dialog box. I suppose you can set these settings at an earlier step if u know what to do but this is how I do mine. This seem more logical to me.

You can proceed to setup the QtdSync Monitor thingy here if you wish but I will return to these settings later. Now click the green ok button.

This will enable an “Expert” settings and allow us to customize the rsync command we used.

This is the settings I used.

–hard-links –delete –ignore-errors –force –chmod=a+rwx,g+rwx,o+rwx -avr -rlt -z

This is how it looks like.

Note that I HAVE to use the above settings because for whatever reasons, the stock rsync settings from QtdSync (while works well to copy the files to the server, will render the files copied readonly on the server). The above settings appear to remedy the issues for me. Again, YMMV.

Press “Save & Quit” button. This will again drop us to the main menu box.

Now its time to test. Select the backup set and press “Run checked Backup Sets”. QtdSync will run and the following is an example of the run process.

Here is another screenshot of the actual rsync command. You should be able to see all the custom rsync commands reflected here.

Now check the server end to see if the files are transferred correctly and that the file permissions are set correctly. If so, our job is 90% done.

Now we need to setup QtdSync’s automated features such that the rsync script get executed automatically. Go back to the main starting dialog box again, select the backup set and select “Edit selected Backup set”. Then click the “Schedule” button at the top menu bar.

You can set the backup schedule to however you wish. I started off with the above settings and fine tune things as I move along. If the PC to be backed up is running 24/7, I suppose running the backup once a day is fine. If data integrity is more important, I suppose there is nothing wrong to make QtdSync run every 6 hours or so.

Pressing the green ok button will bring up a dialog box warning us that we have activated backup scheduling and now QtdSync needs to turn on the QtdSyncMonitor feature and the process must start on windows startup.

Just press ok. QtdSync will append the settings correctly and the next time you click on QtdSync Settings button, you will see this.

You can also set QtdSync to email you informing the rsync process (errors, etc) by the “Notification” button. I have setup DeltaCopy previously to also deliver an email notification but after a while, it gets annoying to me so I disabled it. So I am going to ignore the QtdSync’s Email notification for now. You can set this up if you like.

Now all you have to do is to hit the “Save & Quit” button and we are 100% done!

Now if you peek under Windows’s system tray, you will find a clock icon. Right click on that icon, you should see that there should be a tick next to the word “Active”.

As far as I know, QtdSync does not rely on Windows’s built-in scheduler function as it runs as a service by itself. It has proven pretty reliable so far and I am rather pleased with it.

In terms of user friendliness, I would say QtdSync is better than DeltaCopy but there are some settings within QtdSync that may not be so apparent for first time users. DeltaCopy is very straightforward in nature and as a result, the user interface has less features. It is not necessarily a weakness however. What I like about QtdSync is that the rsync binaries that come bundled with the software work out of the box. I do not have to substitute any rsync EXE and DLL files with another version. And of course, the QtdSync’s scheduling feature works just fine. So I am a happy camper now.

I hope this tutorial is useful to anyone trying to get Rsync running with the linkstation.

Happy “Nas”ing 🙂

Posted on April 7, 2012, in Buffalo Quad Pro NAS and tagged , , , , , , . Bookmark the permalink. 4 Comments.

  1. Thanks for the great tutorial and for the illustrations. I was having a hard time pinpointing the errors linked to the permissions settings.

  2. Glad this post is helpful to you. Visit often 🙂

  3. Very good article on rsync. Here is one from around 1999 but still the very best rsync tutorial I’ve ever read. Explains it very well IMO:

  4. hi,

    could you do a screenshot demo for dummies? what i want to do is simple, and i know qtdsync can do it, but i don’t know how to get it to do what i want.

    basically, i have a laptop and 2 usb hard drives. one hard drive has all the latest data (song files) and the other hard drive is a backup or mirror for that data.

    so what i want to do is tell it the i want everything on:


    rsync’d to another backup usb drive, something like:


    and have everything mirrored, so all the files, filepaths, edits to files, etc all make it over.

    how do i do it?

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: