centos6.2变更了portmap服务为rpcbind,在使用nfs时这点与centos5不同,下面配置一个nfs系统,用来使局域网内的所有用户均可访问该目录,可将该目录配置成yum源,供内网机器安装软件。


 


首先安装NFS套件,命令如下:

yum install nfs-utils.x86_6464位系统

yum install nfs-utils(32位系统)

 

然后安装portmap服务,portmapcentos6中改名为rpcbind

yum install rpcbind(centos6)

yum install portmap(centos5)

 

挂载光盘,将文件拷贝到要挂载的目录上

mkdir /opt/centos6

mount  /dev/cdrom /media -o loop

cp -r /media/* /opt/centos6/

 

配置nfs服务端

vi /etc/exports

添加

/opt/centos6 192.168.0.0/24(ro,no_root_squash)

这一行表明本机的/opt/centos6这个目录为nfs共享目录,可访问的ip地址区间为192.168.0.0-192.168.0.254,权限为只读,当访问者为root用户时方位该目录具有root权限

 

重启nfs服务

/etc/init.d/rpcbind start

/etc/init.d/nfs start

 

nfs加入开机启动项

chkconfig nfs on

 

客户端配置

查看是否能访问nfs服务

showmount -e 192.168.0.10

显示如下:

 

Export list for 192.168.0.10:

/opt/centos6 192.168.0.11

 

表示可以访问,如不可访问查看nfs服务端nfs服务是否启用,防火墙是否允许通过。

 

挂载nfs目录

mkdir /opt/centos6

mount -t nfs 192.168.0.10:/opt/centos6/ /opt/centos6/

 

 

配置开机自动挂载

vi /etc/fstab

添加

192.168.0.10:/opt/centos6 /opt/centos6 nfs  nodev,ro,rsize=32768,wsize=32768    0 0

 

 

附上:

RPC详解:
因为NFS支持的功能相当多,而不同的功能都会使用不同的程序来启动。每启动一个功能就会启用一些端口来传输数据,因此NFS的功能所对应的端口才没有固定,而是采用随机取用一些未被使用的小于724的端口来作为传输之用。但如此一来又造成客户端要连接服务器时的困扰,因为客户端要知道服务器端的相关端口才能够联机,此时我们需要远程过程调用(RPC)的服务。RPC最主要的功能就是指定每个NFS功能所对应的端口号,并且回报给客户端,让客户端可以连接到正确的端口上。当服务器在启动NFS时会随机选用数个端口,并主动地向RPC注册。因此RPC可以知道每个端口对应的NFS功能。然后RPC固定使用端口111来监听客户端的请求并回报客户端正确的端口,所以可以让NFS的启动更为容易。注意,启动NFS之前,要先启动RPC;否则NFS会无法向RPC注册。另外,重新启动RPC时原本注册的数据会不见,因此RPC重新启动后它管理的所有程序都需要重新启动以重新向RPC注册。
当客户端有NFS文件要存取请求时,它如何向服务器端要求数据?
(1)客户端会向服务器端的RPC(port 111)发出NFS文件存取功能的询问请求。
(2)服务器端找到对应的已注册的NFS daemon端口后会回报给客户端。
(3)客户端了解正确的端口后,就可以直接与NFS守护进程来联机。
由于NFS的各项功能都必须要向RPC注册,因此RPC才能了解NFS服务的各项功能的port number、PID和NFS在主机所监听的IP等,而客户端才能够通过RPC的询问找到正确对应的端口。即NFS必须要有RPC存在时才能成功地提供服务,因此我们称NFS为RPC Server的一种。事实上,有很多这样的服务器都向RPC注册。例如,NIS(Network Information Service)也是RPC Server的一种。所以如图7-3所示,不论是客户端还是服务器端,要使用NFS都需要启动RPC。




(点击查看大图)图7-3 NFS与RPC服务及操作系统的相关性

NFS协议从诞生到现在为止,已经有多个版本,如NFS V2(rfc794)及NFS V3(rfc1813)(最新的版本是V4(rfc307))。最早,SUN公司曾将NFS V2设计为只使用UDP,主要原因是当时机器的内存、网络速度和CPU的影响,不得不选择对机器负担较轻的方式。而到了NFS V3,SUN公司选择了TCP作为默认的传输方式。V3相对V2的主要区别如下。
(1)文件尺寸。
V2最大只支持32位的文件大小(4 GB),而V3新增加了支持64位文件大小的技术。
(2)文件传输尺寸。
V3没有限定传输尺寸,V2最多只能设定为8 KB,可以使用-rsize and -wsize来设定。
(3)返回完整的信息。
V3增加和完善了返回错误和成功信息,对于服务器的设置和管理能带来很大好处。
(4)增加了对TCP传输协议的支持。
V2只提供了对UDP的支持,在一些高要求的网络环境中有很大限制;V3增加了对TCP的支持。UDP有着传输速度快且非连接传输的便捷特性,但是在传输上没有TCP稳定。当网络不稳定或者******时很容易使NFS的性能大幅度降低,甚至使网络瘫痪。所以对于不同情况,网络要有针对性地选择传输协议。NFS的默认传输协议是UDP,然而RHEL 4.0内核提供了对通过TCP的NFS的支持。要通过TCP来使用NFS,在客户端系统上挂载NFS导出的文件系统时包括一个“-o tcp”选项。使用TCP的优点和缺点如下。
被提高了的连接持久性,因此获得的NFS stale file handles消息就会较少。
载量较大的网络的性能会有所提高,因为TCP确认每个分组,而UDP只在完成时才确认。
TCP具有拥塞控制技术(UDP根本没有),在一个拥塞情况严重的网络上,UDP分组是被首先撤销的类型。使用UDP意味着,如果NFS正在写入数据(单元为8 KB的块),所有这8 KB数据都需要被重新传输。由于TCP的可靠性,8 KB数据中只有一部分需要重新传输。
错误检测。当TCP连接中断(由于服务器停止),客户端就会停止发送数据而开始重新连接。UDP是无连接的,使用它的客户端就会继续给网络发送数据直到服务器重新上线为止。
TCP的费用在性能方面的提高并不显著。
(5)异步写入特性。
(6)改进了服务器的mount性能。
(7)有更好的I/O写性能。
(8)更强的网络运行效能,使得网络运行更为有效。
(9)更强的灾难恢复功能。
在Linux上,UDP是默认使用的协议。作为服务器别无选择。但作为客户端,可以使用TCP和其他使用TCP的UNIX NFS服务器互联。在局域网中使用UDP较好,因为局域网有比较稳定的网络保证。使用UDP可以带来更好的性能,Linux默认使用V2,但是也可以通过mount option的nfsvers=n选择。NFS使用TCP/IP提供的协议和服务运行于OSI层次模型的应用层,如表7-1所示。
表7-1 OSI层次模型上的NFS

层 数

名 称

功 能

1

应用层

NFS

2

表示层

XDR

3

会话层

RPC

4

传输层

UDP,TCP

5

网络层

IP

6

数据链路层



7

物理层

Ethernet