rsnapshot

work in progress . . . work in progress . . . work in progress . . . work in progress . . .

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. 1

Installation

rsnapshot can be installed with the Pakfire web interface or via the console:

pakfire install rsnapshot

Usage

There is no web interface for this Addon. To run this Addon open the client console or terminal and access the IPFire box via SSH.

To obtain a list of possible commands, options, and arguments enter rsnapshot help. The output is similar to this:

$ rsnapshot help
rsnapshot 1.4.5
Usage: rsnapshot [-vtxqVD] [-c cfgfile] [command] [args]

rsnapshot is a filesystem snapshot utility. It can take incremental
snapshots of local and remote filesystems for any number of machines.

Options:
    -v verbose       - Show equivalent shell commands being executed.
    -t test          - Show verbose output, but don't touch anything.
                       This will be similar, but not always exactly the same
                       as the real output from a live run.
. . .

Example: Local backup of IPFire device

  1. Format (as ext4) and mount an external drive. See Extra HD
    • Example: mount point of /mnt/hdd
  2. Create a new directory for the repository
    • Example: mkdir -pv /mnt/hdd/rsnapshot
    • this is snapshot_root from the /etc/rsnapshot.conf file
  3. Recommended changes to /etc/rsnapshot.conf file:
# All snapshots will be stored under this root directory.
snapshot_root   /mnt/hdd/rsnapshot/

# If no_create_root is enabled, rsnapshot will not automatically create the snapshot_root directory. 
no_create_root  1

# Location of commands
cmd_cp      /bin/cp
cmd_rm      /bin/rm
cmd_rsync   /usr/bin/rsync
cmd_logger  /usr/bin/logger
cmd_du      /usr/bin/du
cmd_rsnapshot_diff  /usr/bin/rsnapshot-diff

#  BACKUP LEVELS / INTERVALS
retain  hourly  24          #   24 times per day
retain  daily   7           #   7 times per week
retain  weekly  4           #   4 times per ~month
retain  monthly 12          #   12 times per year
retain  yearly  2           #   retain for 2 years total

#  GLOBAL OPTIONS
verbose     2
loglevel    2
logfile /var/log/rsnapshot.log
lockfile    /run/rsnapshot.pid
link_dest   1
sync_first  1

Run to check:

$ rsnapshot configtest
  1. Make changes to fcron
# m h  dom mon dow   command
30 * * * *  /usr/bin/rsnapshot sync 2>&1 && /usr/bin/rsnapshot hourly 2>&1
20 0 * * *  /usr/bin/rsnapshot daily 2>&1
15 0 * * 0  /usr/bin/rsnapshot weekly 2>&1
10 0 1 * *  /usr/bin/rsnapshot monthly 2>&1
05 0 1 1 *  /usr/bin/rsnapshot yearly 2>&1

  1. Introduction from https://rsnapshot.org 

Edit Page ‐ Yes, you can edit!

Older Revisions • March 14 at 9:42 pm • Jon