今天,来配置下NFS服务。NFS即网络文件服务(Network File Server),使不同的计算机之间能够进行文件共享的一种网络协议。一般用于unix/linux网络操作系统中。
现在,基本上linux发行版基本都默认安装了NFS服务。要启用NFS服务需要二个软件组件包(nfs-utils和portmap)。我们通过命令,来查询是否安装并且安装那种版本号
[root@localhost ~]# rpm -q nfs-utils portmap
nfs-utils-1.0.6-46
portmap-4.0-63
如果,查询没有安装,拿出RHEL安装盘,找到相应的软件包,进行安装。
一般启用NFS服务,至少需要3个系统守护进程
1)rpc.nfsd
基本守护进程,主要功能是管理客户端是否能够成功连接到服务器上
2)rpc.mountd
它是RPC(Remote Process ) 安装守护进程,主要功能管理NFS文件系统
3)portmap
portmap主要功能是进行一些端口映射工作。
NFS的主要配置文挡/etc/exports中进行配置。默认情况下,该文件为空。
参数设置格式:
<输出目录> [客户端1(选项1,选项2,...)] [客户端2(选项1,选项2,...)]
下面是我写了一些相应共享配置
[root@localhost ~]# vi /etc/exports
/nfs/shared *(ro,no_root_squash,sync)
/nfs/upload 192.1.12.*(rw,sync,all_squash,anonuid=210,anongid=210)
/nfs/redhat 192.1.12.2(ro,sync)
一、/nfs/shared
开放所有客户机的连接,不过只能做读动作,并且不把root用户映射匿名用户,数据同步写入磁盘操作
二、/nfs/upload
仅开放192.1.12.0/24这网段的客户机连接,同步写入,可以做读写操作。将远程用户映到 uid=210,gid=210的用户
三、/nfs/redhat
仅开放192.1.12.2这台主机,只做读操作。同步写入
设置完成后,需要通过以下命令使配置文挡立即生效。
[root@localhost ~]# exportfs -rv
查看详细输出目录,效果图如下
在客户机查看远程服务器里面共享文挡
[root@localhost root]# showmount -e 192.1.12.1
mount clntudp_create: RPC: Port mapper failure - RPC: Unable to receive
可能原因,说明NFS服务器上没有启动portmap和nfs服务,执行相应动作
[root@localhost ~]# chkconfig --level 35 portmap on
[root@localhost ~]# chkconfig --level 35 nfs on
重新在客户端测试下
[root@localhost root]# showmount -e 192.1.12.1
Export list for 192.1.12.1:
/nfs/shared *
/nfs/upload 192.1.12.*
/nfs/redhat 192.1.12.2
然后,把相应NFS服务中的目录挂接到本系统中
[root@localhost root]# mount -t nfs 192.1.12.1:/nfs/shared /mnt/nfs
卸载NFS服务器
[root@localhost root]# umount /mnt/nfs
启动自动挂载NFS服务
需要在/nfs/fstab配置文挡里面后面加上以下设置
192.1.12.1:/nfs/shared /mnt/nfs nfs defaults 0 0
效果图