Linux NFS挂载
发布时间:2016-08-15 10:05:39 编辑:龙龙龙 分类:技术文档
需要一台图片服务器。
服务器端 IP 192.168.102.79。图片存储服务器。有1.4T的磁盘。
另一台web服务器,内网IP:192.168.102.50 图片数据太大,想交给单独的192.168.102.79这台处理。
需要图片服务器共享1.4T的磁盘。挂载到web服务器上。
首先拿图片服务器做服务端口,web服务器做客户端。
系统均是 centos 6.3
服务端安装 nfs 和 rpcbind 用yum就OK
服务器首先共享
vim /etc/exports
增行
/home/www/aaa 192.168.1.226(rw,no_root_squash,no_all_squash,sync)
前面是想要共享的路径。后面是想共享给哪个IP。可以是一个段,或者域名。
rw:read-write,可读写;
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值。
使配置生效
exportfs -r
启动nfs 和rpcbind的服务
服务端完成 这边暂时先关闭防火墙
客户端配置
和服务端一样 需要安装上述的俩服务
然后用showmount -e 192.168.102.79 查看是否有目录
有的话就挂载 没有基本就俩原因 防火墙和服务没启动
mount -t nfs 192.168.102.79:/home/www/aaa /var/www/html/uploads -o proto=tcp -o nolock
这个挂在是用tcp的 因为考虑到稳定 所以选择了TCP 默认是UDP的
挂上去就OK了
下面固定端口
修改/etc/service,添加以下内容(端口号必须在1024以下,且未被占用)
# Local services
mountd 1011/tcp #rpc.mountd
mountd 1011/udp #rpc.mountd
rquotad 1012/tcp #rpc.rquotad
rquotad 1012/udp #rpc.rquotad
服务端不可能不开iptables
添加端口
-A INPUT -m state --state NEW -m tcp -p tcp --dport 111 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 2049 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 1011 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 1012 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 32768 -j ACCEPT
如果是用UDP的 需要添加UDP的口 已完成 当然可以写开机启动项 随意
我遇到的问题:
我发现挂上去默认是用UDP的 我要修改成TCP的 怎么也umount不下来
后来找了百度
fuser -km /var/www/html/uploads
umount /var/www/html/uploads
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
----平淡的流年