一步步教你配置NFS服务:轻松实现文件共享

在这里插入图片描述

什么是NFS

  1. NFS(Network File System)简介

    • NFS是Network File System的缩写,即网络文件系统。NFS是一种用于分布式文件系统的协议,它允许不同的机器、不同的操作系统能够共享个人数据,使应用程序通过网络可以访问位于服务器磁盘中的数据。NFS在文件传输或信息传递的过程中,依赖于RPC协议。
  2. RPC(Remote Procedure Call)简介

    • RPC,远程过程调用,是使客户端能够执行其他系统中程序的一种机制。NFS本身是没有提供信息传输的协议和功能的,能够实现基于网络的资料共享,就是因为NFS使用了RPC提供的传输协议,可以说NFS就是使用RPC的一个程序。

NFS的工作模式

  1. 服务器/客户端工作模式

    • NFS采用服务器/客户端工作模式。在NFS服务器上将目录设置为输出目录(即共享目录)后,客户端就可以将这个目录挂载到自己系统中的某个目录下。
  2. 挂载示例

    • 例如,在CentOS系统中,NFS服务器共享目录设置为/nfs/public,NFS客户端将此目录挂载到/mnt/nfs。客户端之间通过网络连接到NFS服务器,并访问共享的目录。

RPC守护进程

  1. nfsd

    • nfsd是基本的NFS守护进程,主要功能是管理客户端是否能登录NFS服务器。
  2. mountd

    • mountd是RPC安装守护进程,主要功能是管理NFS的文件系统。当客户端顺利通过rpc.nfsd登录NFS服务器后,在使用NFS服务器提供的文件前,还必须通过文件使用权限的验证。它会读取NFS的配置文件/etc/exports来对比客户端权限。
  3. rpcbind

    • rpcbind的主要功能是进行端口映射工作。当客户端尝试连接并使用RPC服务(如NFS服务)时,rpcbind会将管理的与服务对应的端口提供给客户端,从而使客户端可以通过该端口向服务器请求服务。

NFS工作原理

  1. 启动RPC服务

    • 首先,服务器端启动RPC服务,并开启111端口。
  2. 启动NFS服务

    • 服务器端启动NFS服务,并向RPC注册端口信息。
  3. 客户端请求NFS端口

    • 客户端启动RPC(portmap服务),向服务器的RPC(portmap)服务请求服务器的NFS端口。
  4. 反馈端口信息

    • 服务器端的RPC(portmap)服务反馈NFS端口信息给客户端。
  5. 数据传输

    • 客户端通过获取的NFS端口来建立和服务器端NFS的连接并进行数据的传输。

NFS软件包

  1. RPC主程序:rpcbind

    • 启动RPC服务之前,需要做好port的对应(mapping)的工作,这就是rpcbind这个服务所负责的。也就是说,在启动任何一个RPC服务之前,我们都需要启动rpcbind才行。
  2. NFS主程序:nfs-utils

    • 提供rpc.nfsd及rpc.mountd这两个NFS守护进程与其他相关文档与说明文件、执行文件等的软件。这些是NFS服务所需要的主要软件。

NFS服务的配置文件

  1. /etc/exports配置

    • NFS服务器共享目录时所使用的配置文件为/etc/exports。此文件的语法结构如下:
      共享目录的绝对路径 客户端(选项)
      例如:/share 172.16.1.0/24(ro)
      
  2. 查看共享资源的指令

    • 客户端查询服务器共享资源的指令:/usr/sbin/showmount
      • exportfs 是用在NFS Server端,而showmount则主要用在Client端。showmount可以用来察看NFS分享出来的目录资源。

配置举例:配置NFS服务器和客户端

在CentOS上配置NFS服务器
  1. 安装NFS和相关软件包

    sudo yum install nfs-utils rpcbind
    
  2. 配置共享目录

    • 编辑/etc/exports文件,添加以下内容:
      /srv/nfs 192.168.1.0/24(rw,sync,no_root_squash)
      
  3. 启动并启用NFS服务

    sudo systemctl start rpcbind
    sudo systemctl start nfs-server
    sudo systemctl enable rpcbind
    sudo systemctl enable nfs-server
    
  4. 导出共享目录

    sudo exportfs -a
    
在CentOS上配置NFS客户端
  1. 安装NFS和相关软件包

    sudo yum install nfs-utils
    
  2. 创建挂载点并挂载NFS共享

    sudo mkdir -p /mnt/nfs
    sudo mount -t nfs 192.168.1.100:/srv/nfs /mnt/nfs
    
  3. 验证挂载

    • 使用df -h命令检查是否成功挂载NFS共享。
  • 13
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值