linux中rsync异步服务器实现文件同步与备份

linux中rsync异步服务器实现文件同步与备份,第1张

Rsync
非常适合在两台机器之间快速同步大型、复杂的目录,例如论坛的附件目录。再配合
ssh
,则安全性也有保证,且可以利用
ssh
public
key

cron
来进行自动定时同步。
说明:两台机器分别为
localhost

remotehost
;用户分别为
localuser

remoteuser。
环境:FreeBSD
49

FreeBSD
61
代码如下

设置
ssh
public
key
认证
$ssh-keygen
-t
dsa
-b
2048
生成所需的密钥
$scp
/home/localuser/ssh/id_dsapub
remoteuser@remotehost:/home/remoteuser/ssh/localuser_id_dsapub
将公钥拷贝至
remotehost
$ssh
remoteuser@remotehost
登录到端
代码如下

$cd
ssh/
;
cat
localuser_id_dsapub
>>
authorized_keys
至此,设置
ssh
认证完毕。
设置
rsync
确认两端机器都安装
rsync

freeBSD

ports
,安装非常方便。
写个脚本名为
backupsh
,内容如下:
代码如下

#!/bin/sh
RSYNC=/usr/local/bin/rsync
SSH=/usr/bin/ssh
KEY=/home/localuser/ssh
/id_rsa
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点来跑这个脚本
代码如下

$crontab
-e
0
1



/home/localuser/bin/backupsh
友情提示
rsync是没有自动启动同步功能了,如果我们要定时去备份一个网站数据我们就需要用到定时功能了,上面的例子来使用到了linux中$crontab命令来定时执行备份数据脚本了哦。

AJAX异步和同步区别
AJAX
1、AJAX(Asynchronous JavaScript And XML)
主要由javascript和xml两种技术以一种新的方式组合成一门客户端技术
AJAX:DHTML+XML>

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/10940475.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-12
下一篇2023-05-12

发表评论

登录后才能评论

评论列表(0条)

    保存