Rsnapshot (Probst-Baustoffe)
Aus rü5
rsnapshot ist ein Backup-Programm, dass auf rsync beruht.
( Homepage: http://www.rsnapshot.org/ )
- Installation mittels
- aptitude install rsnapshot rsync
- (das ist normalerweise schon mit der ersten Paketinstallation via Synaptic passiert)
- Backup-Verzeichnis anlegen
- su -c 'mkdir -p /home/backup/rsnapshot/'
- (s. 'snapshot_root' Konfigurations-Variable)
- Konfigurations-Dateien
- die beiden folgenden Datei-Inhalte können nicht verwendet werden, da zwangsweise Tabs (anstelle von Leerzeichen) benutzt werden müssen, die in den folgenden Dateien aber untergegangen sind. Vorlagen (ggf. noch anzupassen) stehen unter ~/2009/Projekte/Computer/ClientInstallation
/etc/rsnapshot.conf
(Konfiguration der Backups)
################################################# # rsnapshot.conf - rsnapshot configuration file # ################################################# # # # PLEASE BE AWARE OF THE FOLLOWING RULES: # # # # This file requires tabs between elements # # # # Directories require a trailing slash: # # right: /home/ # # wrong: /home # # # ################################################# ####################### # CONFIG FILE VERSION # ####################### config_version 1.2 ########################### # SNAPSHOT ROOT DIRECTORY # ########################### # All snapshots will be stored under this root directory. snapshot_root /home/backup/rsnapshot/ # 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 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. 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 /usr/bin/logger # Uncomment this to specify a path to "du" for disk usage checks. cmd_du /usr/bin/du ######################################### # BACKUP INTERVALS # # Must be unique and in ascending order # # i.e. hourly, daily, weekly, etc. # ######################################### # The interval names (hourly, daily, ...) are just names and have no influence # on the length of the interval. The numbers set the number of snapshots to # keep for each interval (hourly.0, hourly.1, ...). # The length of the interval is set by the time between two executions of # rsnapshot <interval name>, this is normally done via cron. # Feel free to adapt the names, and the sample cron file under /etc/cron.d/rsnapshot # to your needs. The only requirement is that the intervals must be listed # in ascending order. To activate just uncomment the entries. #interval hourly 6 interval daily 7 interval weekly 4 interval monthly 6 ############################################ # GLOBAL OPTIONS # # All are optional, with sensible defaults # ############################################ # If your version of rsync supports --link-dest, consider enable this. # This is the best way to support special files (FIFOs, etc) cross-platform. # The default is 0 (off). # In Debian GNU cp is available which is superior to link_dest, so it should be # commented out (disabled). # #link_dest 0 # 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 More than you care to know # 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.log # The include and exclude parameters, if enabled, simply get passed directly # to rsync. If you have multiple include/exclude patterns, put each one on a # seperate line. Please look up the --include and --exclude options in the # rsync man page for more details. # #include ??? #include ??? #exclude ??? #exclude ??? # The include_file and exclude_file parameters, if enabled, simply get # passed directly to rsync. Please look up the --include-from and # --exclude-from options in the rsync man page for more details. # #include_file /path/to/include/file #exclude_file /path/to/exclude/file # Default rsync args. All rsync commands have at least these options set. # #rsync_short_args -a rsync_long_args --delete --numeric-ids --relative --delete-excluded # ssh has no args passed by default, but you can specify some here. # #ssh_args -p 22 # Default arguments for the "du" program (for disk space reporting). # The GNU version of "du" is preferred. See the man page for more details. # #du_args -csh # If this is enabled, rsync won't span filesystem partitions within a # backup point. This essentially passes the -x option to rsync. # The default is 0 (off). # #one_fs 0 # If enabled, rsnapshot will write a lockfile to prevent two instances # from running simultaneously (and messing up the snapshot_root). # If you enable this, make sure the lockfile directory is not world # writable. Otherwise anyone can prevent the program from running. # lockfile /var/run/rsnapshot.pid ############################### ### BACKUP POINTS / SCRIPTS ### ############################### backup /etc/ server/ backup /var/log/ server/ backup /home/daten/2008/ server/ backup /home/daten/2009/ server/ backup /home/daten/bin/ server/ backup /home/dosemu/.dosemurc server/ backup /home/dosemu/.dosemu/ server/ backup /home/dosemu/bin/ server/ backup /home/dosemu/etc/ server/ backup /home/dosemu/dosemu/drive_f/netprog/ server/ backup /home/dosemu/dosemu/drive_f/tp/net/ server/ backup /home/knoppix/.forward localhost/ backup /home/knoppix/.procmailrc localhost/ backup /home/knoppix/INBOX/ localhost/ backup /home/knoppix/Mail/ localhost/ # LOCALHOST #backup /home/ localhost/ #backup /etc/ localhost/ #backup /usr/local/ 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/ # EXAMPLE.COM # for these backup points you will need ssh installed on the # local machine as well as on the remote host # #backup root@example.com:/home/ example.com/ #backup root@example.com:/etc/ example.com/ # CVS.SOURCEFORGE.NET #backup_script /usr/local/bin/backup_rsnapshot_cvsroot.sh cvs.sourceforge.net/ # RSYNC.SAMBA.ORG #backup rsync://rsync.samba.org/rsyncftp/ rsync.samba.org/rsyncftp/
/etc/cron.d/rsnapshot
(Zeitlicher Ablauf der Backups)
# This is a sample cron file for rsnapshot. # The values used correspond to the examples in /etc/rsnapshot.conf. # There you can also set the backup points and many other things. # # To activate this cron file you have to uncomment the lines below. # Feel free to adapt it to your needs. # 0 */4 * * * root /usr/bin/rsnapshot hourly 00 2 * * * root /usr/bin/rsnapshot daily 30 1 * * 1 root /usr/bin/rsnapshot weekly 00 1 1 * * root /usr/bin/rsnapshot monthly