linux – 将Rsnapshot与sync_first,link_dest和use_lazy_deletes一起使用

我已经使用下面的配置设置了rsnapshot,它似乎工作正常.但是,如果我理解了我正确阅读的内容,那么在rsnapshot文档和其他教程中,添加这些选项后操作会更加强大:
link_dest 1
sync_first 1
use_lazy_deletes    1

但是,当我启用这些,特别是sync_first时,它似乎无法正常运行.没有错误,但似乎什么都没发生(参见下面的最后一个代码块). Configtest成功.我怀疑我错过了有关sync_first的使用方法.我首先想知道这两个选项在一起使用时确实是有益的(没有冲突),其次,在启用sync_first后我必须在cron中调用rsnapshot的方式有所不同吗?

它安装在带有rsnapshot 1.3.1的Ubuntu 14.04上,而rsync具有link_dest选项.感谢您的任何指示,官方文档有点干.

CONF

config_version  1.2
    snapshot_root   /srv/rsnapshot/
    no_create_root  0
    cmd_cp      /bin/cp
    cmd_rm      /bin/rm
    cmd_rsync   /usr/bin/rsync
    cmd_ssh /usr/bin/ssh
    cmd_logger  /usr/bin/logger
    cmd_du      /usr/bin/du
    cmd_rsnapshot_diff  /usr/bin/rsnapshot-diff

    retain      HoursAgo    6
    retain      DaysAgo     7
    retain      WeeksAgo    4
    #retain monthly 3

    verbose     5
    loglevel    3
    logfile /var/log/rsnapshot.log
    lockfile    /var/run/rsnapshot.pid
    rsync_long_args --stats --delete --numeric-ids --relative --delete-excluded
    ssh_args    -p 22

    # host.mydomain.net
    backup      root@host.mydomain.net:/etc/        host.mydomain.net/
    backup      root@host.mydomain.net:/srv/www/        host.mydomain.net/
    backup_script       /usr/bin/ssh root@host.mydomain.net "rm -rf /var/local/MysqLbak/"       unused/
    backup_script       /usr/bin/ssh root@host.mydomain.net "/usr/local/bin/MysqL_bak.sh"       unused1/
    backup      root@host.mydomain.net:/var/local/MysqLbak/     host.mydomain.net/MysqL/

克龙

0     */4    * * *    root    /usr/bin/rsnapshot hourly 2>&1  | \/usr/local/bin/rsnapreport.pl | mail -s "Hourly Backup" myemail@domain.com
 30     3     * * *    root    /usr/bin/rsnapshot daily 2>&1  | \/usr/local/bin/rsnapreport.pl | mail -s "Daily Backup" myemail@domain.com
 0      3     * * 1    root    /usr/bin/rsnapshot weekly 2>&1  | \/usr/local/bin/rsnapreport.pl | mail -s "Weekly Backup" myemail@domain.com

启用所有三个额外选项的运行结果:

root@backup:~# rsnapshot HoursAgo
require Lchown
Lchown module loaded successfully
Setting locale to POSIX "C"
echo 3567 > /var/run/rsnapshot.pid
mv /srv/rsnapshot/HoursAgo.3/ /srv/rsnapshot/HoursAgo.4/
mv /srv/rsnapshot/HoursAgo.2/ /srv/rsnapshot/HoursAgo.3/
mv /srv/rsnapshot/HoursAgo.1/ /srv/rsnapshot/HoursAgo.2/
mv /srv/rsnapshot/HoursAgo.0/ /srv/rsnapshot/HoursAgo.1/
No directory to delete: /srv/rsnapshot/_delete.3567
rm -f /var/run/rsnapshot.pid
/usr/bin/logger -i -p user.info -t rsnapshot /usr/bin/rsnapshot HoursAgo: \
    completed successfully

这种情况立即发生,没有连接到遥控器,没有时间检查更改的文件.

更新:我在rsnapshot上的Ubuntu页面中找到了有关sync_first的一些其他信息.我通过添加rsnapshot sync&&来编辑我的cron.在每小时线前:

0 */4 * * * root /usr/bin/rsnapshot sync && /usr/bin/rsnapshot hourly 2>&1  | \/usr/local/bin/rsnapreport.pl | mail -s "Hourly Backup" myemail@domain.com

当我手动运行时,这似乎有效.

我仍然想知道:这三个额外选项是否有利于一起使用?

我也可以转储统计数据,以便在出现错误时只收到电子邮件.

解决方法

调用rsnapshot< level>之前,您必须调用rsnapshot sync.

相关文章

在Linux上编写运行C语言程序,经常会遇到程序崩溃、卡死等异...
git使用小结很多人可能和我一样,起初对git是一无所知的。我...
1. 操作系统环境、安装包准备 宿主机:Max OSX 10.10.5 虚拟...
因为业务系统需求,需要对web服务作nginx代理,在不断的尝试...
Linux模块机制浅析 Linux允许用户通过插入模块,实现干预内核...
一、Hadoop HA的Web页面访问 Hadoop开启HA后,会同时存在两个...