rsnapshot(1) rsnapshot-tools rsnapshot(1) (NAME) rsnapshot - (SYNOPSIS) rsnapshot [-vtxqVD] [-c cfgfile] [command] [args] (DESCRIPTION) rsnapshot () . . rsync(1) . rsync ssh(1) rsync rsync . rsync . rsnapshot . . rsnapshot (hard links) . rsnapshot (root) cron cron . . /etc/rsnapshot.conf . . . : -v (verbose) -t (test) -c -x -q (quiet) -V -v -D /etc/rsnapshot.conf . (tab) . /etc/rsnapshot.conf.default . /etc/rsnapshot.conf.default /etc/rsnapshot.conf /etc/rsnapshot.conf . . <<>> (Continuation) (space) (tab) . . : config_version (). 1.2 snapshot_root include_conf . . . . include_conf `` STDOUT . . no_create_root 1 rsnapshot snapshot_root cmd_rsync "rsync" () cmd_ssh "ssh" () cmd_cp "cp" ( GNU ) cmd_cp . GNU cp cmd_cp . GNU cp rsnapshot ( FIFO /) . cmd_cp rsnapshot native_cp_al() . rsync ( ) . cmd_rm "rm" () cmd_logger "logger" ( syslog) cmd_du "du" ( ) cmd_rsnapshot_diff "rsnapshot-diff" () cmd_preexec ( ) preexec (). ( ) . rsnapshot . cmd_postexec ( ) postexec (). ( ) . rsnapshot . linux_lvm_cmd_lvcreate linux_lvm_cmd_lvremove linux_lvm_cmd_mount linux_lvm_cmd_umount lvcreate lvremove mount umount LVM . . lvcreate lvremove mount umount LVM . retain [name] [number] <> ( alpha beta <> ). <> . <> rsnapshot . 'retain' 'interval' . : retain alpha 6 [root@localhost]# rsnapshot alpha : /alpha.5/ . /alpha.{1,2,3,4} +1 (rotate ). /alpha.0/ (hard links) /alpha.1/ . ( ) /alpha.0/ (rsync) . . . ( beta gamma ) .0 . : retain alpha 6 retain beta 7 retain gamma 4 beta.0/ alpha.5/ gamma.0/ beta.6/ . alpha.0/ (rsync) . link_dest 1 rsync --link-dest ( 2.5.7 ) rsync GNU cp . rsnapshot . sync_first 1 sync_first rsnapshot . rsnapshot . rsnapshot <> . <<.sync>> snapshot_root . rsnapshot . <> . . 0 () . verbose 2 . 1 5 . 2 . 1 Quiet 2 Default 3 Verbose 4 Extra Verbose Verbose 5 Debug loglevel 3 verbose . logfile /var/log/rsnapshot rsnapshot. loglevel . () . include [file-name-pattern] --include rsync . . rsync(1) . exclude [file-name-pattern] --exclude rsync . . rsync(1) . include_file /path/to/include/file --include-from rsync . rsync(1) . exclude_file /path/to/exclude/file --exclude-from rsync . rsync(1) . rsync_short_args -a rsync. <<-a>> . . <<-az>> <<-a -z>> . <<-a>> (<>) rsync . (hard links) ** rsync . <> . rsync_long_args --delete --numeric-ids --relative --delete-excluded rsync. : --delete --numeric-ids --relative --delete-excluded . rsync_long_args "--rsync-path='sudo /usr/bin/rsync'". (') (") ( ) . rsync_long_args . rsync_numtries 0 rsync . rsync rsnapshot <> rsync . (<>). rsync_wait_between_tries 0 . rsync . rsync_numtries . 0 . ssh_args -p 22 ssh . . du_args -csh du . -csh . GNU du -csh BSD du -csk Solaris du -c . GNU . lockfile /var/run/rsnapshot.pid stop_on_stale_lockfile 0 rsnapshot . . . . . rsnapshot . ** PID . rsnapshot . PID (stale) * * stop_on_stale_lockfile 1 . stop_on_stale_lockfile 0 . one_fs 1 rsync . 1 . 0 . . 0 () . use_lazy_deletes 1 rsnapshot . _delete.[processid] . rsnapshot . ( ) rsnapshot . . 0 () . rsnapshot 1.3.1 . .delete . ( alpha) (lazy delete) _delete . linux_lvm_snapshotsize 2G () LVM ( --size lvcreate). linux_lvm_snapshotname rsnapshot () LVM ( --name lvcreate). linux_lvm_vgpath /dev LVM (Volume Groups). linux_lvm_mountpath /mnt/lvm-snapshot () . backup /etc/ localhost/ backup root@example.com:/etc/ example.com/ backup rsync://example.com/path2/ example.com/ backup /var/ localhost/ one_fs=1 backup lvm://vg0/home/path2/ lvm-vg0/ backup_script /usr/local/bin/backup_pgsql.sh pgsql_backup/ : backup /etc/ localhost/ /etc/ /.0/localhost/etc/ rsync backup /usr/local/ localhost/ /usr/local/ rsync /.0/localhost/usr/local/ backup root@example.com:/etc/ example.com/ root@example.com:/etc/ rsync ssh /.0/example.com/etc/ backup example.com:/etc/ example.com/ ssh ( ~/.ssh/config ) backup root@example.com:/usr/local/ example.com/ root@example.com:/usr/local/ rsync ssh /.0/example.com/usr/local/ backup rsync://example.com/pub/ example.com/pub/ rsync://example.com/pub/ rsync /.0/example.com/pub/ . rsync ssh rsync <<>> (export) . ( pub/ ). backup /var/ localhost/ one_fs=1 . . . (excludes) rsync : backup root@somehost:/ somehost +rsync_long_args=--exclude=/var/spool/ + . rsync_long_args rsync . + rsync_long_args rsync_short_args rsnapshot . backup lvm://vg0/home/path2/ lvm-vg0/ LVM home vg0 /.0/lvm-vg0/ . lvm:// LVM (mount) (unmount) . backup_script /usr/local/bin/backup_database.sh db_backup/ . / . rsnapshot . . rsnapshot backup_script . backup_database.sh : #!/bin/sh mysqldump -uusername mydatabase > mydatabase.sql chmod u=r,go= mydatabase.sql # r-------- (0400) rsnapshot <> /.0/db_backup/ . rsnapshot . (hard link) . backup_exec ssh root@1.2.3.4 "du -sh /.offsite_backup" optional backup_exec rsync -az /.snapshots/daily.0 root@1.2.3.4:/.offsite_backup/ required backup_exec /bin/true/ backup_exec . 'optional' . 0 . 'optional' 'required' . optional . 'required' rsnapshot . Tab () . (#) () . ( ): # THIS IS A COMMENT, REMEMBER TABS MUST SEPARATE ALL ELEMENTS config_version 1.2 snapshot_root /.snapshots/ cmd_rsync /usr/bin/rsync cmd_ssh /usr/bin/ssh #cmd_cp /bin/cp cmd_rm /bin/rm cmd_logger /usr/bin/logger cmd_du /usr/bin/du linux_lvm_cmd_lvcreate /sbin/lvcreate linux_lvm_cmd_lvremove /sbin/lvremove linux_lvm_cmd_mount /bin/mount linux_lvm_cmd_umount /bin/umount linux_lvm_snapshotsize 2G linux_lvm_snapshotname rsnapshot linux_lvm_vgpath /dev linux_lvm_mountpath /mnt/lvm-snapshot retain alpha 6 retain beta 7 retain gamma 7 retain delta 3 backup /etc/ localhost/ backup /home/ localhost/ backup_script /usr/local/bin/backup_mysql.sh mysql_backup/ backup root@foo.com:/etc/ foo.com/ backup root@foo.com:/home/ foo.com/ backup root@mail.foo.com:/home/ mail.foo.com/ backup rsync://example.com/pub/ example.com/pub/ backup lvm://vg0/xen-home/ lvm-vg0/xen-home/ backup_exec echo "backup finished!" rsnapshot root . cron . . crontab alpha beta gamma delta /etc/rsnapshot.conf : 0 */4 * * * /usr/local/bin/rsnapshot alpha 50 23 * * * /usr/local/bin/rsnapshot beta 40 23 * * 6 /usr/local/bin/rsnapshot gamma 30 23 1 * * /usr/local/bin/rsnapshot delta : alpha ( ) beta : gamma : ( ) delta : . crontab <> <> . (rotate) beta alpha beta ( alpha alpha ) . rsync . <> rsnapshot ( beta ) . ( lockfile ) alpha beta . . retain /etc/rsnapshot.conf . rsnapshot <> . : rsnapshot du snapshot . du <<-csh>> (PATH) . cmd_du du_args du . . rsnapshot du localhost/home/ GNU <> . BSD -h ( -k ). <> Solaris . rsnapshot <> . : rsnapshot diff beta.0 beta.1 rsnapshot diff beta.0/localhost/etc beta.1/localhost/etc rsnapshot diff /.snapshots/beta.0 /.snapshots/beta.1 "rsnapshot-diff" ( ) . rsnapshot sync sync_first rsnapshot sync cron . sync . : 0 */4 * * * /usr/local/bin/rsnapshot sync && /usr/local/bin/rsnapshot alpha 50 23 * * * /usr/local/bin/rsnapshot beta 40 23 1,8,15,22 * * /usr/local/bin/rsnapshot gamma 30 23 1 * * /usr/local/bin/rsnapshot delta sync rsync . . <> rsnapshot << >> ( rsync ) . cron : 0 */4 * * * /usr/local/bin/rsnapshot sync || [ $? -eq 2 ] && /usr/local/bin/rsnapshot alpha rsnapshot sync [dest] sync_first sync ( ). sync . . example.com : rsnapshot sync example.com example.com . ( example.com/etc/) . example.com/etc rsnapshot example.com/etc . rsnapshot configtest . 0 1 2 (FILES) /etc/rsnapshot.conf (SEE ALSO) rsync(1), ssh(1), logger(1), sshd(1), ssh-keygen(1), perl(1), cp(1), du(1), crontab(1) (DIAGNOSTICS) -t . rsnapshot . ( lockfile ) . -v -V -D STDOUT . (tab) (space) . ssh . (BUGS) ( ) rsnapshot-discuss : http://lists.sourceforge.net/lists/listinfo/rsnapshot-discuss (NOTES) /etc/rsnapshot.conf . /etc/rsnapshot.conf.default . (trailing slash) . . rsync(1) . chmod 700 root ( root ). . . : snapshot_root /etc/rsnapshot.conf /.private/.snapshots : drwx------ /.private drwxr-xr-x /.private/.snapshots /.private/.snapshots NFS Samba (export) . HOWTO rsnapshot . ssh cron . ssh (passphrase) root . root . . "rsnapshot" root UID GID 0 . ssh . ! . ssh(1) sshd(1) ssh-keygen(1) . rsnapshot . root . root root . . rsnapshot . rsync --numeric-ids . UID/GID . . . GNU tar --numeric-owner . /etc/passwd /etc/group UID/GID . . ".0" . /home/ localhost/ alpha : rm -rf /alpha.0/localhost/home/ /home/ alpha.0/ (rotations) ..SH " (AUTHORS)" Mike Rubel - http://www.mikerubel.org/computers/rsync_snapshots - Nathan Rosenquist (nathan@rsnapshot.org) - rsnapshot. David Cantrell (david@cantrell.org.uk) - rsnapshot - "rsnapshot-diff" - use_lazy_deletes . David Keegel - rsnapshot - - ssh "~/" "/" - Benedikt Heine - rsnapshot (2015-2017) Carl Wilhelm Soderstrom (chrome@real-time.com) - .spec RPM RPM . Ted Zlatanov (tzz@lifelogs.com) - one_fs autoconf . Ralf van Dooren (r.vdooren@snow.nl) - rsnapshot FreeBSD. SlapAyoda - . Carl Boe (boe@demog.berkeley.edu) - . Shane Leibling (shane@cryptio.net) - utils/backup_smb_share.sh Christoph Wegscheider (christoph.wegscheider@wegi.net) - ( ) rsnapshot. Bharat Mediratta (bharat@menalto.com) - snapshot ( ). Peter Palfrader (weasel@debian.org) - . Nicolas Kaiser (nikai@nikai.net) - Chris Petersen - (http://www.forevermore.net) permanent-share cwrsync Robert Jackson (RobertJ@promedicalinc.com) use_lazy_deletes Justin Grote (justin@grote.name) rsync Anthony Ettinger (apwebdesign@yahoo.com) "utils/mysqlbackup.pl" Sherman Boyd "utils/random_file_verify.sh" William Bear (bear@umn.edu) "utils/rsnapreport.pl" ( rsync) Eric Anderson (anderson@centtech.com) "utils/rsnapreport.pl". Alan Batie (alan@batie.org) include_conf Dieter Bloms (dieter@bloms.de) Henning Moll (newsScott@gmx.de) stop_on_stale_lockfile Ben Low (ben@bdlow.net) snapshot LVM (C) 2003-2005 Nathan Rosenquist (C) 2002-2007 Mike Rubel, Carl Wilhelm Soderstrom, Ted Zlatanov, Carl Boe, Shane Liebling, Bharat Mediratta, Peter Palfrader, Nicolas Kaiser, David Cantrell, Chris Petersen, Robert Jackson, Justin Grote, David Keegel, Alan Batie, Dieter Bloms, Henning Moll, Ben Low, Anthony Ettinger rsnapshot : GPL ( ). (GNU General Public License) (Free Software Foundation) / 2 ( ) . . GNU General Public License . GNU General Public License Free Software Foundation, Inc. : 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA rsnapshot-tools 2025-02-02 rsnapshot(1)