NFS周边
Network File System
作用
像访问本地文件一样去访问NFS服务器上的文件,目录
引用场景:
..1 用户上传的静态文件---图片,视频,用户上传的视频,头像
..2 中小企业使用NFS的频路很高,如果高并发的大型网站可能使用分布式文件系统
..3 有多个web服务器提供同一个服务的时候,这些server都使用后台的NFS
##用户上传信息存储位置区别
数据库:博文,帖子(按钮发布的文本)
共享存储:静态的文件,压缩包,图片,放在共享存储里面
#类似解决方案
网上邻居 windows
samba windows + linux
分布式文件系统: mfs FastDFS ---- windows
##原理
##安装过程
两个服务
nfs-utils
rpcbind
在所有的机器都要安装上面两个
查看RPC信息
rpcinfo -p localhost
服务器端
注意:
..0 安装
yum install nfs-utils rpcbind -y
..1 先启动rpcbind 在启动nfs
/etc/init.d/rpcbind start
/etc/init.d/nfs start
??chkconfig 如何保证先启动rpcbind
..2修改配置文件
..3重启nfs
/etc/init.d/nfs reload == 平滑读取配置
查看是否配置成功
showmount -e 127.0.0.1 showmount - show mount information for an NFS server
客户端:
挂载
rc.local 的配置
#start rpcbind
/etc/init.d/rpcbind start
#mount nfs from 192.168.202.100
mount -t nfs 192.168.202.100:/data /nfs-data/
权限控制
现在能读,但是不能写和删除
原因:
nfs加上了好多默认的参数
当客户端来访问服务器端的数据的时候使用的而是本地的nfsnobody(65534)这个用户,只需要把文件的owner改为这个用户,客户端就可以读写了
配置文件
/etc/exports
EXAMPLE
# sample /etc/exports file
/ master(rw) trusty(rw,no_root_squash)
/projects proj*.local.domain(rw)
/usr *.local.domain(ro) @trusted(rw)
/home/joe pc001(rw,all_squash,anonuid=150,anongid=100)
/pub *(ro,insecure,all_squash)
/srv/www -sync,rw server @trusted @external(ro)
/foo 2001:db8:9:e54::/64(rw) 192.0.2.0/24(rw)
/build buildhost[0-9].local.domain(rw)