Rsnapshot alternatives and similar tools
Based on the "Backups" category.
Alternatively, view Rsnapshot alternatives based on common mentions on social networks and blogs.
-
Bup
Very efficient backup system based on the git packfile format, providing fast incremental saves and global deduplication (among and within files, including virtual machine images). Please post problems or patches to the mailing list for discussion (see the end of the README below). -
TimeShift
DISCONTINUED. System restore tool for Linux. Creates filesystem snapshots using rsync+hardlinks, or BTRFS snapshots. Supports scheduled snapshots, multiple backup levels, and exclude filters. Snapshots can be restored while system is running or from Live CD/USB. -
Back In Time
A comfortable and well-configurable graphical Frontend for incremental backups, with a command-line version also available. Modified files are transferred, while unchanged files are linked to the new folder using rsync's hard link feature, saving storage space. Restoring is straightforward via file manager, command line or Back In Time itself. -
Bareos
Bareos is a cross-network Open Source backup solution (licensed under AGPLv3) which preserves, archives, and recovers data from all major operating systems. -
Shield
A standalone system that can perform backup and restore functions for a wide variety of pluggable data systems -
gutbackup
[Bash] The simplest rsync wrapper for backup and restore Linux system. Support ArchLinux, Ubuntu, etc -
rclone
a command line program to sync files and directories to and from several cloud storage systems/providers.
CodeRabbit: AI Code Reviews for Developers

* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of Rsnapshot or a related project?
README
RSNAPSHOT 
rsnapshot comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to redistribute it under certain conditions. See the GNU General Public Licence for details.
rsnapshot is a filesystem snapshot utility based on rsync. rsnapshot makes it easy to make periodic snapshots of local machines, and remote machines over ssh. The code makes extensive use of hard links whenever possible, to greatly reduce the disk space required.
It is written entirely in perl with no module dependencies, and has been tested with versions 5.004 through 5.24.3. It should work on any reasonably modern UNIX compatible OS. It has been tested successfully on the following operating systems:
- Debian: 3.0 (woody), 9.9 (stretch)
- Redhat: 7.x, 8.0
- RedHat Enterprise Linux: 3.0 ES, 5, 6, 7
- Fedora Core: 1, 3
- Fedora: 17, 18
- CentOS: 3, 4, 5, 6, 7
- WhiteBox Enterprise Linux 3.0
- Slackware 9.0
- SuSE: 9.0
- Gentoo Linux
- FreeBSD 4.9-STABLE
- OpenBSD 3.x
- Solaris 8 (SPARC and x86)
- Mac OS X
- IRIX 6.5
If this is your first experience with rsnapshot, you may want to read the man page which will give you a detailed walk-through on how to get rsnapshot up and running and also serve as a reference of all available commands.
If you are upgrading from version 1.1.6 or earlier, make sure you read the file [Upgrading from 1.1](docs/Upgrading_from_1.1).
For installation or upgrade instructions please read the [INSTALL](INSTALL.md) doc.
If you want to work on improving rsnapshot please read the [CONTRIBUTING](CONTRIBUTING.md) doc.
If you want to ask a question or have a general discussion use the Mailing List.
COMPATIBILITY NOTICES (Please read)
Note that systems which use GNU cp version 5.9 or later will have problems with rsnapshot versions up to and including 1.2.3, if
cmd_cp
is enabled (and points at the later gnu cp). This is no longer a problem since rsnapshot 1.2.9, as it strips off trailing slashes when running cp.If you have rsync version 2.5.7 or later, you may want to enable the link_dest parameter in the rsnapshot.conf file.
If you are running Linux but do not have the problem above, you should enable the
cmd_cp
parameter in rsnapshot.conf (especially if you do not have link_dest enabled).Be advised that currently
link_dest
doesn't do well with unavailable hosts. Specifically, if a remote host is unavailable usinglink_dest
, there will be no latest backup of that machine, and a full re-sync will be required when it becomes available. Using the other methods, the last good snapshot will be preserved, preventing the need for a re-sync. We hope to streamline this in the future.
CONFIGURATION
Once you have installed rsnapshot, you will need to configure it.
The default configuration file is /etc/rsnapshot.conf, although the exact path
may be different depending on how the program was installed. If this
file does not exist, copy /etc/rsnapshot.conf.default
over to
/etc/rsnapshot.conf
and edit it to suit your tastes. See the man page for
the full list of configuration options.
When /etc/rsnapshot.conf
contains your chosen settings, do a quick sanity
check to make sure everything is ready to go:
$ rsnapshot configtest
If this works, you can see essentially what will happen when you run it for
real by executing the following command (where interval is alpha
, beta
, etc
):
$ rsnapshot -t [interval]
Once you are happy with everything, the final step is to setup a cron job to automate your backups. Here is a quick example which makes backups every four hours, and beta backups for a week:
0 */4 * * * /usr/local/bin/rsnapshot alpha
50 23 * * * /usr/local/bin/rsnapshot beta
In the previous example, there will be six alpha
snapshots
taken each day (at 0,4,8,12,16, and 20 hours). There will also
be beta snapshots taken every night at 11:50PM. The number of
snapshots that are saved depends on the "interval" settings in
/etc/rsnapshot.conf.
For example:
interval alpha 6
This means that every time rsnapshot alpha
is run, it will make a
new snapshot, rotate the old ones, and retain the most recent six
(alpha.0
- alpha.5
).
If you prefer instead to have three levels of backups (which we'll
call beta
, gamma
and delta
), you might set up cron like this:
00 00 * * * /usr/local/bin/rsnapshot beta
00 23 * * 6 /usr/local/bin/rsnapshot gamma
00 22 1 * * /usr/local/bin/rsnapshot delta
This specifies a beta
rsnapshot at midnight, a gamma
snapshot
on Saturdays at 11:00pm and a delta
rsnapshot at 10pm on the
first day of each month.
Note that the backups are done from the highest interval first
(in this case delta
) and go down to the lowest interval. If
you are not having cron invoke the alpha
snapshot interval,
then you must also ensure that alpha
is not listed as one of
your intervals in rsnapshot.conf (for example, comment out alpha,
so that beta
becomes the lowest interval).
Remember that it is only the lowest interval which actually does
the rsync to back up the relevant source directories, the higher
intervals just rotate snapshots around. Unless you have enabled
sync_first
in your configuration-file, in which case only the sync
pseudo-interval does the actual rsync, and all real intervals
just rotate snapshots.
For the full documentation, type man rsnapshot
once it is installed. The
[HOWTO](docs/HOWTOs/rsnapshot-HOWTO.en.html) also has a detailed overview of
how to install and configure rsnapshot, and things like how to set it up so
users can restore their own files.
If you plan on using the backup_script
parameter in your backup scheme,
take a look at the utils/
-directory in the source distribution for several
example scripts. The utils/rsnapreport.pl
script is well worth a look.
AUTHORS
Please see the AUTHORS file for the complete list of contributors.