-1

我有一个脚本,我每晚在我的网络服务器上运行,将所有内容从实时存储复制到后台存储。我目前正在测试,但它并没有按照我需要的方式工作 - 基本上我需要将实时存储的完整副本复制到备份存储,因此实时存储中的任何更改都会显示在备份存储中。什么不起作用是如果有人在备份存储中进行更改,这些应该被实时数据覆盖?

它似乎不起作用 - 我对 rsync 开关做错了吗?让你知道它大约有 300G 的数据被复制

谢谢

   #!/bin/bash

#Nightly RYSNC backup script


RSYNC=`which rsync`
SOURCE="/mnt/sdb1"
TARGET="/mnt/sdc1"
MAIL_ADDR="user@example.com"
OPTS="-vaz --exclude=/sdb1/lost+found --exclude=/sdb1/home/temp --exclude=/sdb1/temp/_tmp"

cat /dev/null > /tmp/rsync-errors.txt

nohup $RSYNC $OPTS $SOURCE $TARGET >> /var/log/rsync-raw-out.txt 2>> /tmp/rsync-errors.txt


if [ -s '/tmp/rsync-errors.txt' ]; then
   mail -s "Errors on $HOSTNAME" < /tmp/rsync-errors.txt $MAIL_ADDR
else
   echo "Successful, no errors reported." | mail -s "Nightly Report for $HOSTNAME" $MAIL_ADDR
fi
4

2 回答 2

0

你试过了吗:

rsync -avz --delete 
于 2012-08-24T15:21:51.727 回答
0

您可能想研究一个名为“rbme”的程序

http://sourceforge.net/projects/rbme/

它对 rsync 进行了包装,并通过首先在最后一个备份中进行硬链接,然后在其之上进行 ryncing 来创建一个新的“每日”备份。它 /appears/ 好像您有一个归档完整备份,但只占用磁盘空间进行实际更改。

它还内置了日志记录和电子邮件功能。

于 2012-08-24T20:05:26.453 回答