博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
rsync+inotify
阅读量:4659 次
发布时间:2019-06-09

本文共 2783 字,大约阅读时间需要 9 分钟。

一、rsync

1.1rsync是啥

 相当于cp、scp、rm等工具,但优于这些工具,主要用在数据备份

 

 

1.2、rsync安装

yum -y install rsync--update 客户端删除文件 ,服务端不会删除,如果客户端再创建同名文件 ,会覆盖服务端文件

 

1.3、Rsync 服务器端配置修改

  vi  /etc/rsyncd.conf

如下注释要删掉,不然 不能用。。##rsyncd.conf start##uid = rsync   ##进程对应的用户,是虚拟用户。远端的命令使用rsync访问共享目录gid = rsync   ##进程对应的用户组。use chroot = no    ##安全相关max connections = 200      ##最大连接数timeout = 300    ##超时时间pid file = /var/run/rsyncd.pid      ##进程对应的进程号文件lock file = /var/run/rsyncd.lock     ##锁文件log file = /var/log/rsyncd.log        ##日志文件[bk]     ###模块名称,对应客户端 rsync -avz /tmp/ rsync_backup@47.106.130.253::bkpath = /backup      ###服务器提供访问的目录ignore errors       ##忽略错误read only = false    ##可写list = false      ##不能列表hosts allow = 172.16.1.0/24  ##允许的ip地址##hosts deny = 0.0.0.0/32auth users = rsync_backup     ##虚拟用户secrets file = /etc/rsync.password    ###虚拟密码

参考:

#创建用户    useradd rsync -s /sbin/nologin -M#创建目录    mkdir  /backup    chown -R rsync.rsync /backup/#创建密码    echo "rsync_backup:123456" >>/etc/rsync.password    chmod 600 /etc/rsync.password#启动服务    rsync --daemon     ps  -ef |grep rsync|grep -v grep ##查看进程有没有启动    netstat  -lntup|grep rsync#加入开机启动    systemctl enable rsyncd.service

 

1.4、启动rsync服务端

#centos7启动systemctl start rsyncd.service

 

1.5、rsync客户端命令

  推拉都是客户端操作

  

·  

rsync中的-delete参数是指“ 删除那些DST中SRC没有的文件”

#创建客户端密码文件

echo "oldboy" >>/etc/rsync.password
chmod 600 /etc/rsync.password
rsync -avz /tmp/ rsync_backup@47.106.130.253::bk --password-file=/etc/rsync.password
#排除某个文件
rsync -avz --exclude=a /tmp/ rsync_backup@47.106.130.253::bk --password-file=/etc/rsync.password

#排除多个文件

rsync -avz --exclude={a,b} /tmp/ rsync_backup@47.106.130.253::bk --password-file=/etc/rsync.password

 

二、Inotify

2.1、Inotify是啥

  实时监控文件变化,最多支持200-300并发

2.2、查看是否支持

ls -l /proc/sys/fs/inotify

 

2.3安装Inotify

wget http://github.com/downloads/rvoicilas/inotify-tools/inotify-tools-3.14.tar.gztar xzvf inotify-tools-3.14.tar.gzcd inotify-tools-3.14./configure --prefix=/usr/local/inotify-toolsmakemake install

 

2.4、Inotify命令

/usr/local/inotify-tools/bin/inotifywait -mrq  --format '%d/%m/%y %H:%M' -c create,delete,close_write /data
-r recursive递归
-q quiet打印好少信息
-m monitor始终保持监听
--format 监控到的文件格式

 

2.5、脚本实时同步

 

 2.6优化

关键参数说明: 在/proc/sys/fs/inotify目录下有三个文件,对inotify机制有一定限制 max_user_watches:设置inotifywait或inotifywatch命令可以监视的文件数量(单进程) max_user_instances:设置每个用户可以运行的inotifywait或inotifywatch命令的进程数 max_queued_events:设置inotify实例事件(event)队列可容纳的事件数量 echo "50000000"> /proc/sys/fs/inotify/max_user_watches echo "50000000"> /proc/sys/fs/inotify/max_queued_events

 

 

 

Inotify安装报错

报错 libinotifytools.so.0: cannot open shared object file32位系统:ln -s /usr/local/lib/libinotifytools.so.0 /usr/lib/libinotifytools.so.064位系统:ln -s /usr/local/lib/libinotifytools.so.0 /usr/lib64/libinotifytools.so.0

 

 

 

 

转载于:https://www.cnblogs.com/kevincaptain/p/10384549.html

你可能感兴趣的文章
10月区块链领域投融资事件盘点
查看>>
Mybatis缓存策略
查看>>
卷积的意义【转】
查看>>
android图形系统详解五:Android绘制模式
查看>>
[剑指offer] 23. 二叉搜索树的后序遍历序列
查看>>
canvas绘画交叉波浪
查看>>
Linux 内核分析
查看>>
试一下:XP ( SP2 ) 本身就支持查杀流氓软件!
查看>>
centos6(7) minimal 基本环境配置
查看>>
P2837晚餐队列安排
查看>>
DP专题
查看>>
UVa 1402 Runtime Error 伸展树
查看>>
笔记本安装SSD固态硬盘详细的优化设置
查看>>
批处理语法介绍
查看>>
FFmpeg 基础库(三)模块组成
查看>>
Linq 查询 与方法调用
查看>>
iOS开源项目(旧)
查看>>
winform的datagridview控件滚动更新数据
查看>>
java中Object类 源代码详解
查看>>
开源控Meteor的个人资料
查看>>