一、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-utils-* :包括基本的NFS命令与监控程序
portmap-* :支持安全NFS RPC服务的连接
1、查看系统是否已安装NFS
2、如果当前系统中没有安装NFS所需的软件包,需要手工进行安装。nfs-utils 和portmap 两个包的安装文件在系统光盘中都会有。
NFS只需要在相应的配置文件中进行设置,然后启动NFS服务器即可。
NFS系统守护进程
nfsd:它是基本的NFS守护进程,主要功能是管理客户端是否能够登录服务器;
mountd:它是RPC安装守护进程,主要功能是管理NFS的文件系统。当客户端顺利通过nfsd登录NFS服务器后,在使用NFS服务所提供的文件前,还必须通过文件使用权限的验证。它会读取NFS的配置文件/etc/exports来对比客户端权限。
portmap:主要功能是进行端口映射工作。当客户端尝试连接并使用RPC服务器提供的服务(如NFS服务)时,portmap会将所管理的与服务对应的端口提供给客户端,从而使客户可以通过该端口向服务器请求服务。
NFS的常用目录
NFS服务器的配置
/etc/exports NFS服务的主要配置文件
/usr/sbin/exportfs NFS服务的管理命令
/usr/sbin/showmount 客户端的查看命令
/var/lib/nfs/etab 记录NFS分享出来的目录的完整权限设定值
/var/lib/nfs/xtab 记录曾经登录过的客户端信息
要启动或终止NFS服务器,用户需要在Shell下输入相应的命令来启动或终止NFS守护进程即可。
1.启动NFS服务器
需要启动portmap和nfs两个服务,并且portmap一定要先于nfs启动;
$service portmap start 或者 $/etc/init.d/portmap start
$service nfs start 或者 $/etc/init.d/nfs start
如果需要重新启动NFS服务,执行命令:
$service nfs restart
查看NFS服务当前的状态,执行命令:
$service nfs status
从上面的执行结果可以看到,rpc.mountd、nfsd及rpc.rquotad进程都在运行中,nfs服务已启动。
查看portmap服务当前的状态,执行命令:
$service portmap status
为了下次在重新启动系统时,NFS服务能够自动运行,可以使用checkconfig命令来进行设置。首先检查NFS和portmap服务启动时的运行等级,执行命令:
$chkconfig --list portmap
结果:portmap 0:关闭 1:关闭 2:关闭 3:启动 4:启动 5:启动 6:关闭
$chkconfig --list nfs
结果:nfs 0:关闭 1:关闭 2:关闭 3:关闭 4:关闭 5:关闭 6:关闭
即:portmap启动的运行等级为3,4,5,而nfs在任何运行等级中都不会执行。为了让nfs在系统运行级别为3,4,5时也能自动运行,可使用下面的命令进行设置:
$chkconfig --level 345 nfs on
2.停止NFS服务器
先停止NFS服务,再停止portmap服务(如果系统中还有其他服务如NLS服务需要使用portmap,则无需停止portmap服务)。
$service nfs stop
$/etc/init.d/nfs stop
Linux NFS服务器的安装与配置 - David_Tang - 博客园 (cnblogs.com)
https://blog.csdn.net/weixin_42400980/article/details/80596204
网友评论