Home / guides   Print version

Gentoo rsynd install tutorial

Publish date 29/11/2010

This is a tutorial to install rsyncd on Gentoo.
rsyncd version: 3.0.7
gentoo kernel: 2.6.30-gentoo-r4

As Gentoo compiles everything it can takes some time. You might want to use screen, so you don't have to leave a console open.

To install on gentoo just emerge the necessary packages.
You might want to sync the emerge database first:

emerge --sync
Then emerge
emerge net-misc/rsync

As emerge compiles and installs everything, you only need to configure.

You should find the config-file in: /etc/rsyncd.conf.
You might need to create the /etc/rsyncd.secret file.
This holds the usernames and passwords.


You can simply edit the password file with:
nano /etc/rsyncd.secret
The format is very simple:
You don't have to use users from the system, Actually it is even better if they are totally different users.

As it is a password file make sure it is only readable by root!

ls -la /etc/rsyncd.secret -rw------- 1 root root 22 Nov 19 17:53 /etc/rsyncd.secret
You can adapt the permissions it with the following command:
chmod 600 /etc/rsyncd.secret

rsyncd-conf file

There are a lot of option you can set in the config-file.
Here is a short example:

# This line is required by the /etc/init.d/rsyncd script
pid file = /var/run/rsyncd.pid
uid = root
gid = root
use chroot = yes

motd file = /usr/local/etc/rsync.motd
log file = /var/log/rsyncd.log
pid file = /var/log/rsyncd.pid
lock file = /var/log/rsyncd.lock
transfer logging = true

# Simple example for enabling your own local rsync server
#       path = /usr/portage
#       comment = Gentoo Portage tree
#       exclude = /distfiles /packages

path = /var/share/backup/
read only = no
list = yes
auth users = backup_user
secrets file = /etc/rsyncd.secret
comment = Rsync backup module
hosts allow =

There are 2 main section. The general section and 1 for each "share".
In the general section, you shouldn't change anything.
It config the user of the daemon and the loging, process-id-file, ...

Gentoo sets standard a share for portage. If you don't use it, you can comment it out, like I did.

The important part of the example is the following part:

path = /var/share/backup/
read only = no
list = yes
auth users = backup_user
secrets file = /etc/rsyncd.secret
comment = Rsync backup module
hosts allow =
Most of the settings explain themselves.
[backup]: is the name of the share. You can have several shares, but not with the same name.
path = /var/share/backup/: Is the directory on where all the files will be on the server.
read only = no: if the share/module needs to be read only. Because we want to backup to server, it is no in our case.
list: if it should be listed when clients ask for a list of available shares.
auth users = backup_user: Which users can access the share. User should be in "secrets file".
secrets file = /etc/rsyncd.secret: The location of the secrets file.
comment = Rsync backup module: A comment that explains what the share is about.
hosts allow = which host(range) are allowed access.

Now we need to start the server:

#(Start the daemon now) /etc/init.d/rsyncd start #(Add the daemon to your default run-level) rc-update add rsyncd default


Now we have setup the server side. On the client side we only need rsync installed.

Client side


On a linux-machine it is easy to start the backup.
Of course we need to install rsync first:
on gentoo:

sudo emerge net-misc/rsync
On Ubuntu, Debian, ...
sudo apt-get install rsync

The simple command to start the backup:

rsync -a /home/username/ rsync://backup_user@
The first time it can last a while, because everything needs to be copied.
But after that it goes really fast :-)

If you want to see what happens you can add -v.

rsync -va /home/username/ rsync://backup_user@

You can also backup just a part. For example:

rsync -a /home/username/Documents rsync://backup_user@

You probably want to automate the backup task with a script.
Consider the option --password-file=pass.txt.
This allows to use a password, without storing it in your script. You still store it in a file on the client, so it isn't exactly save.


There are several windows version.
DeltaCopy, QtdSync, Syncrify and RsyncBackup (client only).

Try them and see what works best for you.