Rsync远程同步工具
1配置rsync源服务器(http://rsync.samba.org/)
(1)建立配置文件
vim /etc/rsyncd.conf
uid = nobody //指定运行程序的用户
gid = nobody //指定运行程序的组
use chroot = yes //禁锢在源目录,指只能访问我指定的目录不允许访问其他目录,类似以vsftpd的禁锢
address = 192.168.1.20 //指定监听的地址
port 873 //指定监听的端口
log file = /var/log/rsyncd.log //指定日志文件存放的位置
pid file = /var/run/rsyncd.pid //指定进程文件的位置
hosts allow = 192.168.1.0/24 //指定可以访问的地址,这里如果需要实现异地灾备的时候可以写上公网的IP地址,通过路由器映射进来就可以了。
[www] //指定共享的名字
path = /var/www/html //源目录的实际目录
comment = Dcoument Root of web.lzg.com //这个模块的描述信息
read only = yes(no) //目录为只读(可读可写)
dont compress = .gz .bz2 .zip .z .rar //在传输过程中不在进行二次压缩的文件类型。
auth users = backuper //授权备份的用户
secrets file = /etc/rsyncdusers.db //指定账户信息的数据文件位置*
(2)为备份账户创建数据文件
vim /etc/rsyncdusers.db
backuper:123.com //用户和密码,无需建立同名系统用户*
chmod 600 /etc/rsyncd_users.db
rsync –daemon
netstat –anput | grep rsync
2配置客户端进行验证
rsync -avz backuper@192.168.1.20::www /myweb**
3创建密码文件自动同步
vim /etc/server.pass
123.com
chmod 600 /etc/server.pass
rsync –avz –delete --password-file=/etc/server.pass backuper@192.168.1.20::www /myweb
计划任务定期同步
Crontab –e
30 22 * * * /usr/bin/rsync –avz --delete
--password-file=/etc/server.pass backuper@192.168.1.20::www /myweb
4配置inotify+rsync 实时同步
调整inotify内核参数:
vim /etc/sysctl.conf
fs.inotify.max_queued_events = 16384
fs.inotify.max_user_instances = 1024
fs.inotify.max_user_watches = 1048576
sysctl –p
安装inotify-tools
编写触发时启动脚本
Mkdir /sh
Vim /sh/inotify_rsync.sh
#!/bin/bash
INOTIFY="inotifywait -mrq -e modify,create,move,delete,attrib /myweb/"
RSYNC="rsync -azH --delete --password-file=/etc/server.pass /myweb/ backuper@192.168.1.20::www"
$INOTIFY | while read DIRECTORY EVENT FILE
do
$RSYNC
Done
运行脚本
在服务器上
Chmod –R 777 /var/www/html
验证
Rsync远程同步工具
原创zw773860471 ©著作权
文章标签 inotify;rsyn 文章分类 运维
©著作权归作者所有:来自51CTO博客作者zw773860471的原创作品,请联系作者获取转载授权,否则将追究法律责任
下一篇:Squid代理服务器
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
数据同步--rsync
使用rsync进行两台或多台主机直接的数据同步
rsync数据同步 -
Rsync本地及远程同步工具
Rsync本地及远程同步工具
rsync linux 远程同步 -
rsync远程同步
rsync远程同步
rsync 远程同步