linux中rsync异步效劳器实现文件同步与备份linux操作
系统电脑资料
rsync是一个非常好用的文件同步软件它可以实现不同效劳器之间文件实时备份功能,它比起我们常用的ftp要强大的多了,rsync 可以实现文件有更新或有新文件就会自动备份到指定机器中去哦,下面我来给大家介绍一个例子,
Rsync 非常适合在两台机器之间快速同步大型、复杂的目录,例如论坛的附件目录。再配合 ssh ,那么平安性也有保证,且可以利用ssh public key 和 cron 来进行自动定时同步。
说明:两台机器分别为 localhost 和 remotehost ;用户分别为localuser 和 remoteuser。
环境:FreeBSD 4.9 和 FreeBSD 6.1
设置 ssh public key 认证
$ssh-keygen -t dsa -b 2048
生成所需的密钥
$scp /home/localuser/.ssh/iddsa.pub
remoteuser@remotehost:/home/remoteuser/.ssh/localuseriddsa. pub
将公钥拷贝至 remotehost
$ssh remoteuser@remotehost
到?端
至此,设置 ssh 认证完毕。
设置 rsync
确认两端机器都安装 rsync , freeBSD 有 ports ,安装非常方便,
写个脚本名为 backup.sh ,内容如下:
RSYNC=/usr/local/bin/rsync
SSH=/usr/bin/ssh
什么电脑可以装linux系统
KEY=/home/localuser/.ssh /idrsa
RUSER=remoteuser
RHOST=remotehost
RPATH=/remote/dir
LPATH=/this/dir
$RSYNC -az—delte -e “$SSH -i $KEY” $RUSER@$RHOST:$RPATH $LPATH
-a 选项相当于选项 -rlptgoD 。简单来讲,此选项可递归并将几乎所有的东西同步过去,非常有用。注意的是, -a 默认不会保存hardlinks ,不过可以单独用 -H 选项来实现。
-z 选项在传输中压缩文件,这无疑加快同步速度。
-delete 选项会删除承受方一些不应存在的文件,此文件在发送方已经被删除,这将保持目录完全同步。
让 cron 每天凌晨1点来跑这个脚本
0 1 * * * /home/localuser/bin/backup.sh
提示
rsync是没有自动启动同步功能了,如果我们要定时去备份一个网站数据我们就需要用到定时功能了,上面的例子来使用到了linux 中$crontab命令来定时执行备份数据脚本了哦。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。