###########################
# SNAPSHOT ROOT DIRECTORY #
###########################
# All snapshots will be stored under this root directory.
#
snapshot_root /.snapshots/
###############################
### BACKUP POINTS / SCRIPTS ###
###############################
# LOCALHOST
# 1st dir to backup
backup /home/username/some_dir/to_backup/ localhost/
# 2nd dir to backup
backup /home/username/another_dir/to_backup/ localhost/
#backup /foo/bar/ localhost/ one_fs=1, rsync_short_args=-urltvpog
#backup_script /usr/local/bin/backup_pgsql.sh localhost/postgres/
Run Code Online (Sandbox Code Playgroud)
现在使用这些设置,所有备份将.snapshots在我的根目录下的目录中保留目标,从而保持层次结构.
所以我会:
/.snapshots/localhost/home/username/some_dir/to_backup
Run Code Online (Sandbox Code Playgroud)
是否有可能2nd dir to backup有另一个目的地,例如我的/home/username/backup-scripts?
我知道--ignore-existing选择权,想知道是否有些不同。
我的情况是:我有一个带有大量用户上传图片的Web服务器。现在大约2TB。通常,这些文件根本不会被修改。我使用rsync并将其备份到其他服务器。
但是,如果某些文件损坏了怎么办?假设文件的一半消失了。它将被复制到备份并覆盖以前的正确文件,因此备份也将损坏。
我可以用--ignore-existing。但是,如果某些文件仍被更改怎么办(这很少,但是可能)。使用此选项,备份将没有此新文件。
如果文件更改,我希望备份所有版本。可能吗?也就是说:如果rsync定义该文件已存在,则它将现有的旧文件移至某个文件,../previous-TIMESTAMP/oldFileHere然后将新文件放在旧文件的位置。
有没有办法做到这一点?
我以为我已经正确设置了 rsnapshot,但第二天检查日志后,我发现了以下内容:
[05/Sep/2014:10:34:11] /usr/bin/rsnapshot daily: ERROR: /usr/bin/rsync returned 12 while processing john@192.168.0.102:/media/linuxstorage/docs/
Run Code Online (Sandbox Code Playgroud)
返回码“12”是什么意思?