Linux下NFS服务的搭建

本文介绍了NFS(Network File System)的基本概念及其在CentOS 6.5系统上的安装、配置和服务启动流程。NFS允许不同操作系统之间的文件共享。文章详细讲解了如何通过yum安装所需的nfs-utils和rpcbind软件包,并提供了配置示例,如设置共享目录、客户端挂载及防火墙配置等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、NFS服务简介

NFS (Network File System)即网络文件系统。由Sun公司开发,于1984年向外公布。功能是通过网络让不同的机器、不同的操作系统能够彼此分享个别的数据,让应用程序在客户端通过网络访问位于服务器磁盘中的数据,是在类Unix系统间实现磁盘文件共享的一种方法。

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是负责负责信息的传输。

二、服务器环境(仅供参考)

系统:CentOS release 6.5 (Final)

三、下载软件包

yum -y install nfs-utils rpcbind#下载nfs和rpc软件包(portmap已经被rpcbind取代)

rpm -qa | grep nfs-utils#通过rpm命令查询一下有哪些相关包

rpm -qa | grep rpcbind #通过rpm命令查询一下有哪些相关包

四、服务启动

因为这两个包是通过yum安装的,所以可以用service命令进行操作

service nfs start(restart)

service rpcbind start(restart)

查看rpc端口

rpcinfo -p localhost

设置开机启动

方法一:

chkconfig --level 2345 nfs on

chkconfig --level 2345 rpcbind on

方法二:

vim /etc/rc.local

加入 service nfs start(restart) //  service rpcbind start(restart)

五、配置选项

mkdir /var/cloud

chmod a+x /var/cloud

vim /etc/exports

加入:/var/cloud/ 172.16.0.20 (rw,async,no_root_squash)#共享路径 客户端主机(选项)

NFS选项:ro(只读),rw(读写)

    sync(同步写,当写入磁盘才返回成功信息),async(异步写,写入内存就返回成功信息)   #这两个选项决定什么时候回返信息

    wdelay(延迟写),no_wdelay(非延迟写)                                                                                      #这两个决定怎么写,写入内存后是否缓冲再写入磁盘

    no_root_squash(不屏蔽远程root),all_squash(屏蔽所有远程用户权限)

六、客户端访问

客户端:

客户端机只需安装rpcbind服务,然后直接对目标文件夹进行挂载

mount -t nfs 172.16.0.20:/var/cloud /var/nfs

七、防火墙配置

当然可以通过关闭防火墙的方式来避免设置

由于nfs服务需要开启 mountd,nfs,nlockmgr,rpcbind,rquotad这5个服务,需要将这5个服务的端口加到iptables里面

而nfs 和 rpcbind两个服务是固定端口的,nfs为2049,rpcbind为111。其他的3个服务是用的随机端口,那就需要
先把这3个服务的端口设置成固定的。
vim /etc/sysconfig/nfs
添加:
mountd  976/tcp
mountd  976/udp
rquotad  966/tcp
rquotad  966/udp
nlockmgr 33993/tcp
nlockmgr 33993/udp
在防火墙中开放这5个端口:
vim /etc/sysconfig/iptables
-A RH-Firewall-1-INPUT -s 192.168.0.0/24 -m state --state NEW -p tcp --dport 111 -j ACCEPT
-A RH-Firewall-1-INPUT -s 192.168.0.0/24 -m state --state NEW -p tcp --dport 976 -j ACCEPT
-A RH-Firewall-1-INPUT -s 192.168.0.0/24 -m state --state NEW -p tcp --dport 2049 -j ACCEPT
-A RH-Firewall-1-INPUT -s 192.168.0.0/24 -m state --state NEW -p tcp --dport 966 -j ACCEPT
-A RH-Firewall-1-INPUT -s 192.168.0.0/24 -m state --state NEW -p tcp --dport 33993 -j ACCEPT
 
-A RH-Firewall-1-INPUT -s 192.168.0.0/24 -m state --state NEW -p udp --dport 111 -j ACCEPT
-A RH-Firewall-1-INPUT -s 192.168.0.0/24 -m state --state NEW -p udp --dport 976 -j ACCEPT
-A RH-Firewall-1-INPUT -s 192.168.0.0/24 -m state --state NEW -p udp --dport 2049 -j ACCEPT
-A RH-Firewall-1-INPUT -s 192.168.0.0/24 -m state --state NEW -p udp --dport 966 -j ACCEPT
-A RH-Firewall-1-INPUT -s 192.168.0.0/24 -m state --state NEW -p udp --dport 33993 -j ACCEPT


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值