Linux NFS服务器安装与配置思路分析
一,nfs服务优缺点
NFS服务简介
NFS 是Network File System的缩写,即网络文件系统。一种使用于分散式文件系统的协定,由Sun公司开发,于1984年向外公布。功能是通过网络让不同的机器、不同的操作系统能够彼此分享个别的数据,让应用程序在客户端通过网络访问位于服务器磁盘中的数据,是在类Unix系统间实现磁盘文件共享的一种方法。
NFS 的基本原则是“容许不同的客户端及服务端通过一组RPC分享相同的文件系统”,它是独立于操作系统,容许不同硬件及操作系统的系统共同进行文件的分享。
NFS在文件传送或信息传送过程中依赖于RPC协议。RPC,远程过程调用 (Remote Procedure Call) 是能使客户端执行其他系统中程序的一种机制。NFS本身是没有提供信息传输的协议和功能的,但NFS却能让我们通过网络进行资料的分享,这是因为NFS使用了一些其它的传输协议。而这些传输协议用到这个RPC功能的。可以说NFS本身就是使用RPC的一个程序。或者说NFS也是一个RPC SERVER。所以只要用到NFS的地方都要启动RPC服务,不论是NFS SERVER或者NFS CLIENT。这样SERVER和CLIENT才能通过RPC来实现PROGRAM PORT的对应。可以这么理解RPC和NFS的关系:NFS是一个文件系统,而RPC是负责负责信息的传输。
NFS优点:简单、方便、可靠、稳定
NFS缺点:
1、存在单点故障
2、在高并发环境下,NFS性能有限(几千万以下pv的网站不是瓶颈,2千万PV/日)
3、多台客户端挂载NFS服务时,连接管理维护麻烦
4、NFS数据是明文的,对数据完整性不做验证
系统环境
系统平台:CentOS release 5.6 (Final)
NFS Server IP:192.168.1.108
防火墙已关闭/iptables: Firewall is not running.
SELINUX=disabled
二、安装与配置思路
NFS服务端
1、查看系统版本
2、检查并安装nfs服务
注意:CentOS 5.x NFS服务为为portmap、nfs-utils
CentOS 6.7 NFS服务为为rpcbind、nfs-utils
3、启动rpc、nfs服务并检查
4、设置开机自启动并检查
5、配置共享目录
6、创建共享目录
7、重新加载nfs服务并检查
NFS客户端
1、查看系统版本
2、安装rpc服务并检查
3、启动rpc服务并检查
4、设置开机自启动并检查
5、检查服务端nfs
6、挂载并测试
三、服务器的配置
NFS服务的配置文件为 /etc/exports
/etc/exports文件内容格式:
输出目录 地址(权限)
24等同于255.255.255.0
rw:为读写权限
四、关于权限的分析
1. 客户端连接时候,对普通用户的检查
a. 如果明确设定了普通用户被压缩的身份,那么此时客户端用户的身份转换为指定用户;
b. 如果NFS server上面有同名用户,那么此时客户端登录账户的身份转换为NFS server上面的同名用户;
c. 如果没有明确指定,也没有同名用户,那么此时 用户身份被压缩成nfsnobody;
2. 客户端连接的时候,对root的检查
a. 如果设置no_root_squash,那么此时root用户的身份被压缩为NFS server上面的root;
b. 如果设置了all_squash、anonuid、anongid,此时root 身份被压缩为指定用户;
c. 如果没有明确指定,此时root用户被压缩为nfsnobody;
d. 如果同时指定no_root_squash与all_squash 用户将被压缩为 nfsnobody,如果设置了anonuid、anongid将被压缩到所指定的用户与组;