服务器先安装nfs服务,由于nfs服务端没有固定端口给客户端访问,因此须要借助rpc服务的111端口给客户端链接,即客户端访问rpc会调用nfs服务html
yum -y install rpcbind nfs-utilsgit
因为nfs共享目录须要给网页服务器使用,而且要对共享目录作一个实时同步操做,为了目录下文件权限的统一以及推送到rsync服务器时不会报权限错误,故在rsync服务器上新建用户,并把Uid,Gid改为65534github
建立共享目录,并把权限改为nfsnobodybash
mkdir /nfs-server chown nfsnobody.nfsnobody /nfs-server服务器
设置nfs配置文件async
echo '/nfs-server 0.0.0.0/24(rw,async,all_squash)' >/etc/exportstcp
先启动rpcbind,在启动nfs服务,并把服务加入开机自启动spa
systemctl start rpcbind systemctl enable rpcbindcode
开放防火墙端口orm
检查nfs启动状况
showmount -e 出现共享目录即为成功
下载inotify-tools
http://github.com/downloads/rvoicilas/inotify-tools/inotify-tools-3.14.tar.gz
解压,安装
cd inotify-tools-3.14.
./configure --prefix=/usr/local/inotify-tools-3.14
make && make install
ln -s /usr/local/inotify-tools-3.14/ /usr/local/inotify-tools
安装完写脚本监测nfs共享目录,即当目录发生建立,删除,写入,关闭时把该目录下数据实时同步到rsync服务器上
#!/bin/bash inotify=/usr/local/inotify-tools/bin/inotifywait $inotify -mrq --timefmt '%d/%m/%y %H:%M' --format '%T %w%f' -e delete,create,close_write /data \ |while read file do cd / && rsync -az /data --delete rsync_backup@0.0.0.0::backup \ --password-file=/etc/rsync.password done
详细参考https://www.cnblogs.com/hackerer/p/5243639.html