Welcome to Vitalus’ documentation!

Author:François Boulogne
Download:Stable version
Developer’s corner:
 github.com project
Generated:December 24, 2016
License:GPL v3

Vitalus is a rsync wrapper. Rsync is a good atomic tool, but it needs to be wrapped to have a real backup solution. Backup solutions are generally too basic or very difficult. This one fits my needs.



  • I want to centralize my backup in a unique script to achieve many tasks.
  • I want to backup my desktop on external disks.
  • I want to backup external disks to other external disks.
  • I want to backup my /home/user on hosts accessible via ssh to a local disk.
  • I want to backup my destop to hosts accessible via ssh.
  • I want to keep increment if I need it.
  • I want to adjust the frequency of copies for each task. The script starts much more frequently.
  • I want readable log files telling me if everything goes fine.
  • ...


This is just another way to express the philosophy :)

  • Manage different tasks
  • rsync from and to local disks
  • rsync from SSH to local disk
  • rsync from local to SSH almost supported
  • Check disk space (local disks)
  • Keep track of time evolution (increments done with hard links), not possible via SSH for the moment.
  • Old increments deleted (keeping a minimal amount of increments)
  • Rotated logs (general + one per task)

How to install?

See How to install?.

How to setup?

See Example.

In my use case, I have a cron job running every hour. IMHO, this is quite atomic. Then, the script decides which task has to be done.

About ssh

Keys must be configured with an empty passphrase. Add in your ~/.ssh/config, something like

Host sciunto.org
IdentityFile ~/.ssh/key-empty-passphrase

Source or destination must have the format: login@server:path

Indices and tables