rsnapshot.conf
#################################################
# rsnapshot.conf - rsnapshot configuration file #
#################################################
config_version 1.2
# All snapshots will be stored under this root directory.
#
# what ron uses
snapshot_root /bkup/private/
# If no_create_root is enabled, rsnapshot will not automatically create the
# snapshot_root directory. This is particularly useful if you are backing
# up to removable media, such as a FireWire or USB drive.
#
no_create_root 1
#################################
# EXTERNAL PROGRAM DEPENDENCIES #
#################################
# LINUX USERS: Be sure to uncomment "cmd_cp". This gives you extra features.
# EVERYONE ELSE: Leave "cmd_cp" commented out for compatibility.
#
# See the README file or the man page for more details.
#
cmd_cp /bin/cp
# uncomment this to use the rm program instead of the built-in perl routine.
#
cmd_rm /bin/rm
# rsync must be enabled for anything to work. This is the only command that
# must be enabled.
#
cmd_rsync /usr/bin/rsync
# Uncomment this to enable remote ssh backups over rsync.
#
#cmd_ssh /usr/bin/ssh
# Comment this out to disable syslog support.
#
cmd_logger /bin/logger
# Uncomment this...
# Uncomment that...
#########################################
# BACKUP LEVELS / INTERVALS #
# Must be unique and in ascending order #
# e.g. alpha, beta, gamma, etc. #
#########################################
# retain alpha 6
# retain beta 7
# retain gamma 4
# retain delta 3
# what ron uses, daily non-incremental backup via cron at 2am,
# crontab entry: * 2 * * * /usr/local/bin/rsnapshot daily
retain daily 1
############################################
# GLOBAL OPTIONS #
# All are optional, with sensible defaults #
############################################
# Verbose level, 1 through 5.
# 1 Quiet Print fatal errors only
# 2 Default Print errors and warnings only
# 3 Verbose Show equivalent shell commands being executed
# 4 Extra Verbose Show extra verbose information
# 5 Debug mode Everything
#
verbose 2
# Same as "verbose" above, but controls the amount of data sent to the
# logfile, if one is being used. The default is 3.
#
loglevel 3
# If you enable this, data will be written to the file you specify. The
# amount of data written is controlled by the "loglevel" parameter.
#
logfile /var/log/rsnapshot
[... bunch of stuff removed to post on stackexchange easier...]
###############################
### BACKUP POINTS / SCRIPTS ###
###############################
# LOCALHOST
# backup /home/ localhost/
# backup /etc/ localhost/
# backup /usr/local/ localhost/
# backup /var/log/rsnapshot localhost/
# backup /etc/passwd localhost/
# backup /home/foo/My Documents/ localhost/
# backup /foo/bar/ localhost/ one_fs=1, rsync_short_args=-urltvpog
# backup_script /usr/local/bin/backup_pgsql.sh localhost/postgres/
# You must set linux_lvm_* parameters below before using lvm snapshots
# backup lvm://vg0/xen-home/ lvm-vg0/xen-home/
# EXAMPLE.COM
# backup_exec /bin/date "+ backup of example.com started at %c"
# backup [email protected]:/home/ example.com/ +rsync_long_args=--bwlimit=16,exclude=core
# backup [email protected]:/etc/ example.com/ exclude=mtab,exclude=core
# backup_exec ssh [email protected] "mysqldump -A > /var/db/dump/mysql.sql"
# backup [email protected]:/var/db/dump/ example.com/
# backup_exec /bin/date "+ backup of example.com ended at %c"
# CVS.SOURCEFORGE.NET
# backup_script /usr/local/bin/backup_rsnapshot_cvsroot.sh rsnapshot.cvs.sourceforge.net/
# RSYNC.SAMBA.ORG
# backup rsync://rsync.samba.org/rsyncftp/ rsync.samba.org/rsyncftp/
# what ron uses, very simple, local disks
# /data is /dev/sdb1 an N tb drive
# snapshot root folder /bkup is /dev/sdc1 an n tb volume
# this will copy everything under /data to /bkup/private/mybackup/
backup /data mybackup/
If you set up a service and I think SSH is the preferred but it could be RSH or others, it's as simple as copy from source to destination via tailoring the rsnapshot.conf file.
https://wiki.archlinux.org/index.php/Rsnapshot
https://rsnapshot.org/
http://www.mikerubel.org/computers/rsync_snapshots/
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. Rsnapshot is written entirely in perl with no module dependencies, and has been tested with versions 5.004 through 5.16.3. It should work on any reasonably modern UNIX compatible OS.
rsnapshot is great if installed on linux, and when backing up from source to destination where source is basically anything mounted on linux. Realize mounted on linux does not need to be local disks.