一。NFS共享服务
1.安装nfs服务器:
yum install nfs-utils -y
2.配置nfs服务器:
cat /etc/exports
/home/work 192.168.0.*(rw,sync,all_squash) 一般这配置就可以
- rw:read-write,可读写; 注意,仅仅这里设置成读写客户端还是不能正常写入,还要正确地设置共享目录的权限,参考问题7
- ro:read-only,只读;
- sync:文件同时写入硬盘和内存;
- async:文件暂存于内存,而不是直接写入内存;
- no_root_squash:NFS客户端连接服务端时如果使用的是root的话,那么对服务端分享的目录来说,也拥有root权限。显然开启这项是不安全的。
- root_squash:NFS客户端连接服务端时如果使用的是root的话,那么对服务端分享的目录来说,拥有匿名用户权限,通常他将使用nobody或nfsnobody身份;
- all_squash:不论NFS客户端连接服务端时使用什么用户,对服务端分享的目录来说都是拥有匿名用户权限;
- anonuid:匿名用户的UID值,通常是nobody或nfsnobody,可以在此处自行设定;
- anongid:匿名用户的GID值。
3.查看nfs服务器和客户端配置参数:
cat /var/lib/nfs/etab (服务端)
cat /proc/mounts (客户端查看挂载情况,卡住的情况必须用这个命令查看,不要用df -h)
二。RSYNC共享服务
1.客户端rsync本地工作模式:
rsync -avz --delete /etc/ /tmp/ (将etc下面的内容同步到tmp下面,并删除多余的文件。)
2.rsyn的远程同步模式:
rsync -avzP -e "ssh -p 22" /tmp/ root@192.168.88.240:/tmp/ #将本地tmp目录下面的文件同步到240
3.rsync的服务器模式的配置文件/etc/rsyncd.conf:
查看帮助 man rsyncd.conf
#rsync.conf start### uid = rsync gid = rsync use chroot = no max connections = 2000 timeout = 600 pid file = /var/run/rsyncd.pid lock file = /var/run/rsync.lock log file = /var/log/rsyncd.log ignore errors read only = false list = false hosts allow = 192.168.88.0/24 #hosts deny = 0.0.0.0/32 auth users = rsync_backup #虚拟用户 secrets file = /etc/rsync.password ######################################## [backup] comment = linux1 backup #欢迎语 path = /backup
useradd rsync -s /sbin/nologin -M #创建同步服务的用户
echo "rsync_backup:wmj" > /etc/rsync.password #创建密码文件
chmod 600 /etc/rsync.password #修改密码文件的权限
4.启动rsync的服务端:
rsync --daemon
5.rsync客户端的配置:
echo "wmj" >/etc/rsync.password #创建客户端密码文件(只要写密码不要用户)
chmod 600 /etc/rsync.password
rsync -avz --delete /tmp/ rsync_backup@192.168.88.240::backup --password-file=/etc/rsync.password (将客户端的tmp目录里面的内容推送到服务端)
二。inotify服务
1.在客户端上安装inotify:
wget http://github.com/downloads/rvoicilas/inotify-tools/inotify-tools-3.14.tar.gz
./configure
make&&make install
2.监听/tmp/目录的增,删,改操作并按格式打印:
inotifywait -mrq --timefmt '%d/%m/%y %H:%M' --format '%T %w%f' -e create,delete,close_write /tmp/ (打印的日志格式为:“29/05/16 07:55 /tmp/123”)
3.使用inotify监听目录实时rsync同步脚本:
#!/bin/bash inotify=/usr/local/bin/inotifywait $inotify -mrq --format '%w%f' -e create,delete,close_write /tmp/ \ |while read file do rsync -az --delete /tmp/ rsync_backup@192.168.88.240::backup --password-file=/etc/rsync.password done
4.优化inotify参数:
# 在/proc/sys/fs/inotify目录下有三个文件,对inotify机制有一定的限制
[root@web ~]# ll /proc/sys/fs/inotify/ 总用量0 -rw-r--r--1 root root 09月923:36 max_queued_events -rw-r--r--1 root root 09月923:36 max_user_instances -rw-r--r--1 root root 09月923:36 max_user_watches
echo 50000000>/proc/sys/fs/inotify/max_user_watches -- 把他加入/etc/rc.local就可以实现每次重启都生效 echo 50000000>/proc/sys/fs/inotify/max_queued_events
相关推荐
Rsync+sersync+inotify-tools
rsync+inotify实现服务器之间文件实时同步的两个资源包 rsync3.0.9+inotify-tools3.1.14
NULL 博文链接:https://hao3721.iteye.com/blog/1887421
实时/触发实时同步---inotify+rsync所要用到的inotify-tools软件包
inotify-tools-3.14源码包,由于使用yum安装inotify-tools时找不到资源,所以提供了inotify-tools源码包,通过编译的形式进行安装
Ubuntu结合Rsync和Inotify-tools和脚本实现数据的实时同步
内部为两个文件,rsync-3.0.9.tar.gz和inotify-tools-3.14.tar.gz
rsync+inotify实现服务器之间文件实时同步,内包含部署所需jar包和配置文件
本人亲自安装测试之后写的文档,如有不明白的地方可以询问
配合rsync使用
Inotify+Rsync实现linux文件实时同步 inotify-tools-3.14.tar.gz
本套方案采用了 NFS+Rsync+Keepalived 的高可用架构方案。利用 NFS 服务提供一个共享目录,供客户端挂载到自己的文件系统中。通过 Rsync 使 NFS 主从的数据实时同步从而提高数据的可靠性。Keepalived 则负责心跳检测...
和rsync结合实现多服务器之间文件实时同步 文件实时同步
同步静态资源所需 rsync3.0.9.tar.gz+inotify3.14.tar.gz
我使用的是google的inotify-tools,比较简单.国内有功能很强大的类似的程序,但是好复杂.
有个人做的技术文档,还有rsync和inotify-tools的安装包,希望可以帮助到大家!
rsync inotify-tools ssh实现触发式远程实时同步,两台服务器文件同步
rsync+inotify实现服务器之间文件实时同步
要利用监控服务(inotify),监控同步数据服务器目录中信息的变化 发现目录中数据产生变化,就利用rsync服务推送到备份服务器上 1.2 实现实时同步的方法 inotify+rsync 方式实现数据同步 sersync 方式实现实时数据...