How to do a Freenas local rsync over localhost

How to do a Freenas local rsync over localhost

This article shows how easy it is to setup an rsync within a single Freenas server to an external disc.

This article shows how easy it is to setup an rsync within a single Freenas server to an external disc, to make a almost realtime safety copy of your source files on your Freenas server.

In the setup I have Freenas installed on a HP Microserver with a couple of discs installed and on a USB port (USB 3) an 2.5" external disc. Never rely on the external disc only and secure your source code or any other data that you never should lose on another backup, but that you already knew.

This article assumes version 9.1 of Freenas to be installed. And that you have your external drive connected and have a volume like "USB-External" created to this disc.

Step 1. Prepare the rsync module

The rsync module is the receiver of the rsync request. This is going to be the reference to the USB disc.

Now head to the menu "Services" and select "Add Rsync Module".

Freenas local rsync

Once you have done that a window will open up where you can configure the module.

Freenas local rsync

As you can see we are using IP address 127.0.0.1 (localhost) of the server itself.

In the Path you select the root of you USB disc or the root folder where the task should put its data. Why not selecting the source folder on the USB disc? Well if you do that it will put the folder name in the task under the selected folder. It would turn up to be something like "SourceVault/SourceVault" (example).

The Access Mode should be "Read and Write", otherwise nothing will happen.

As user you select "root", because the rsync task is in fact talking to itself.

In the group you put "wheel" and in "Hosts allow" you put "127.0.0.1/24", although I think that is not even required. But it always good to limit who can talk to this module.

Now save the module and it will show up in the Rsync Modules list in the Services menu of Freenas.

Step 2. Prepare the rsync task

The rsync task is the requester of the rsync task and communicates with the rsync module from step 1.

Now head to the tasks menu of Freenas. Select here "Add Rsync Task". You can also select "View Rsync Tasks" and create the task from the overview.

Free local rsync

Now we configure the task.

Free local rsync

The parameters are already configured in the image.

In the Path you select the folder that you want to sync with the remote module. So don't select here the USB Disc folder, but the actual folder to be copied.

As user you select "root", which corresponds with the just created module.

In the "Remote host"  we put "127.0.0.1", for it will talk to itself.

In the "Remote Module Name" you put exactly the name of the created module, be aware that this is case-sensitive. The direction is "push", for you want to push it to the USB disc.

The frequency of the synchronization you have to configure to you own taste.

Now we go a bit down in this dialog and configure the other options.

Freenas local copy

Well just take over the options above or modify it to your own flavor.

Save the task and you're ready to go.

Final tip of experience

If initially your data is huge and has a lot of folders and files it is best to copy the data first within the shell of the program or with putty or another SSH client.

You can do than something like:

cp -r /mnt/dataset-pool/source-folder/ /mnt/dataset-pool/USB-External/target-folder

Modify this statement so that it corresponds with your own server configuration.

More from same category