NFS介绍与搭建
一、NFS的介绍
1.1、什么是NFS
- NFS 是Network File System的缩写,即网络文件系统。一种使用于分散式文件系统的协定,由Sun公司开发,于1984年向外公布。
- NFS在文件传送或信息传送过程中依赖于RPC协议。RPC:远程过程调用 (Remote Procedure Call) 是能使客户端执行其他系统中程序的一种机制。
- NFS服务器可以看作是一个FILE SERVER。它可以让你的机器(客户端)通过网络将远端的NFS SERVER共享目录MOUNT到自己的系统中。

1.2、NFS守护进程
- nfsd:它是基本的NFS守护进程,主要功能是管理客户端是否能够登录服务器;
- mountd:它是RPC安装守护进程,主要功能是管理NFS的文件系统。当客户端登录到NFS服务器后,必须通过文件使用权限的验证。它会读取NFS的配置文件/etc/exports来对比客户端权限。
- portmap:主要功能是进行端口映射工作。
1.3、NFS服务器的配置
1.3.1 需要的包:一般都缺省安装好了,如果需要可从镜像文件中安装。

1.3.2 NFS的相关配置文件和命令
- /etc/exports NFS服务的主要配置文件
- /usr/sbin/exportfs NFS服务的管理命令
- /usr/sbin/showmount 查看命令
1.3.3 /etc/exports文件内容格式:
<输出目录> [客户端1 选项(访问权限,用户映射,其他)] [客户端2 选项(访问权限,用户映射,其他)]
[root@NFS ~]# vi /etc/exports
/soft 192.168.3.0/24(rw) 访问权限
二、NFS 搭建
2.1. 创建NFS服务器
2.1.1 安装nfs-utils和RPC
[root@NFS ~]# rpm -qa nfs-utils rpcbin #检查系统中是否安装 NFS 和 RPC
[root@NFS ~]# yum -y install nfs-utils rpcbind #使用 yum 安装nfs 和 rpc
2.1.2 创建共享目录
[root@NFS ~]# mkdir -p /data/nfs/ [root@NFS ~]# chmod 777 /data/nfs/ [root@NFS ~]# ll /data
2.1.3 编辑配置NFS配置文件
/etc/exports
文件添加需要共享目录,每个目录的设置独占一行,编写格式如下:NFS共享目录路径 客户机IP段(参数1,参数2,...,参数n)
参数 | 说明 |
---|---|
ro | 只读访问 |
rw | 读写访问 |
sync | 所有数据在请求时写入共享 |
async | nfs在写入数据前可以响应请求 |
secure | nfs通过1024以下的安全TCP/IP端口发送 |
insecure | nfs通过1024以上的端口发送 |
wdelay | 如果多个用户要写入nfs目录,则归组写入(默认) |
no_wdelay | 如果多个用户要写入nfs目录,则立即写入,当使用async时,无需此设置 |
hide | 在nfs共享目录中不共享其子目录 |
no_hide | 共享nfs目录的子目录 |
subtree_check | 如果共享/usr/bin之类的子目录时,强制nfs检查父目录的权限(默认) |
no_subtree_check | 不检查父目录权限 |
all_squash | 共享文件的UID和GID映射匿名用户anonymous,适合公用目录 |
no_all_squash | 保留共享文件的UID和GID(默认) |
root_squash | root用户的所有请求映射成如anonymous用户一样的权限(默认) |
no_root_squash | root用户具有根目录的完全管理访问权限 |
anonuid=xxx | 指定nfs服务器/etc/passwd文件中匿名用户的UID |
anongid=xxx | 指定nfs服务器/etc/passwd文件中匿名用户的GID |
- 注1:尽量指定IP段最小化授权可以访问NFS 挂载的资源的客户端
- 注2:经测试参数insecure必须要加,否则客户端挂载出错 mount.nfs: access denied by server while mounting
[root@NFS ~]# cat >>/etc/exports<<EOF
> /data/nfs 192.168.3.87(rw,sync,no_subtree_check) 192.168.3.88(rw,sync,no_subtree_check)
> EOF
[root@NFS ~]# cat /etc/exports
/data/nfs 192.168.3.87(rw,sync,no_subtree_check) 192.168.3.88(rw,sync,no_subtree_check)
[root@NFS ~]#
2.1.4 启动RPC和NFS服务
[root@NFS ~]# systemctl start rpcbind # 启动rpc
[root@NFS ~]# systemctl start nfs-server #启动nfs
[root@NFS ~]# systemctl enable rpcbind #设置开机自启
[root@NFS ~]# systemctl enable nfs-server #设置开机自启
2.1.5 设置配置文件生效
[root@NFS ~]# exportfs -r #让配置文件生效
2.1.6 检查
[root@NFS ~]# rpcinfo -p localhost # 检查NFS服务是否向rpc注册端口信息
[root@NFS ~]# showmount -e # 检查共享目录信息
2.2 客户端挂载
2.2.1 检查客户端是否可以连接服务端
[root@localhost ~]# showmount -e 192.168.0.89 # 检查共享目录信息
Export list for 192.168.3.89:
/u01/upload 192.168.3.88,192.168.3.85,192.168.3.87
2.2.2 进行挂载
[root@localhost ~]# mount -t nfs 192.168.3.89:/data/nfs /u01/upload # 进行磁盘挂载
[root@localhost ~]# df -h #检查挂载情况
[root@localhost ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/centos-root 50G 7.4G 43G 15% /
devtmpfs 16G 0 16G 0% /dev
tmpfs 16G 0 16G 0% /dev/shm
tmpfs 16G 8.9M 16G 1% /run
tmpfs 16G 0 16G 0% /sys/fs/cgroup
/dev/sda1 1014M 145M 870M 15% /boot
/dev/mapper/centos-home 334G 34M 334G 1% /home
tmpfs 3.2G 0 3.2G 0% /run/user/0
192.168.3.89:/data/nfs 50G 22G 29G 44% /u01/upload
三、安装过程中的报错与解决
clnt_create: RPC: Port mapper failure - Unable to receive: errno 113 (No route to host)
exportfs: 192.168.3.87:/data/share: Function not implemented
-bash: showmount: command not found
NFS介绍与搭建的更多相关文章
- ubuntu 16.04 nfs服务的搭建
nfs服务是实现Linux和Linux之间的文件共享,nfs服务的搭建比较简单. 现在介绍如何在ubuntu16.04系统中搭建nfs服务,ubuntu的搭建比红帽的还要简单. 1.安装nfs服务 s ...
- Red Hat 6.5 nfs服务的搭建
nfs服务是实现Linux和Linux之间的文件共享,nfs服务的搭建比较简单. 现在介绍如何在红帽6.5系统中搭建nfs服务. 1.关闭selinux服务 如果已经关闭该服务的可以直接跳过该步骤. ...
- nfs服务器的搭建和使用
目录 更新记录 1.nfs介绍 1.1 nfs概念 1.2 nfs工作原理 1.3 nfs通讯过程 2.搭建和测试 NFS 服务器 2.1 搭建NFS服务器 2.2 测试NFS服务器 3.在线调试:N ...
- 4、nfs服务器的搭建
4.1.nfs服务介绍: samba服务器一般互联网企业不会使用 nfs服务的端口是不固定的,需要先启动rpc服务对nfs服务端口进行注册 4.2.安装nfs: rpm -qa nfs-utils r ...
- MySQL 复制介绍及搭建
MySQL复制介绍 MySQL复制就是一台MySQL服务器(slave)从另一台MySQL服务器(master)进行日志的复制然后再解析日志并应用到自身,类似Oracle中的Data Guard. M ...
- crtmpserver流媒体服务器的介绍与搭建
crtmpserver流媒体服务器的介绍与搭建 (2012-02-29 11:28) 标签: crtmpserver C++ RTMP Server rtmp Adobe FMS(Flash ...
- NFS配置与搭建
参考: Linux下NFS服务器的搭建与配置 https://www.cnblogs.com/liuyisai/p/5992511.html http://blog.51cto.com/hongten ...
- NFS介绍 NFS服务端安装配置 NFS配置选项
NFS 介绍 • NFS是Network File System的缩写 • NFS最早由Sun公司开发,分2,,4三个版本,2和3由Sun起草开发,.0开始Netapp公司参与并主导开发,最新为4.1 ...
- 搭建ELK日志分析平台(上)—— ELK介绍及搭建 Elasticsearch 分布式集群
笔记内容:搭建ELK日志分析平台(上)-- ELK介绍及搭建 Elasticsearch 分布式集群笔记日期:2018-03-02 27.1 ELK介绍 27.2 ELK安装准备工作 27.3 安装e ...
随机推荐
- “如何实现集中管理、灵活高效的CI/CD”在线研讨会精彩内容分享
"如何实现集中管理.灵活高效的CI/CD"在线研讨会精彩片段分享 片段主讲人:李培(西瓜刀) 大家好,我是李培.前面听文老师讲DevOps,包括CI/CD 的一些理论,也是挺有 ...
- Bootstrap Blazor Table 组件(三)智能生成
原文链接:https://www.cnblogs.com/ysmc/p/16201153.html Bootstrap Blazor 官网地址:https://www.blazor.zone 有了解过 ...
- py文件加密打包成exe文件
python的py.pyc.pyo.pyd文件区别 py是源文件: pyc是源文件编译后的文件: pyo是源文件优化编译后的文件: pyd是其他语言写的python库: 为什么选用Cpython .p ...
- Citus 11(分布式 PostgreSQL) 文档贡献与本地运行
Citus 可以使用分片跨多台计算机来水平缩放查询. 其查询引擎会将这些服务器的传入 SQL 查询并行化,加快大型数据集上的响应. 它为需要比其他部署选项更大规模和更高性能的应用程序提供服务:通常,工 ...
- CSS展开收起
有一个问题是,在上述例子中,把段落内容的"浮动元素"去掉后,段落最后从"行"字开始换行了,"收起"却不换行,也就是会存在有两个字内容看不见情 ...
- linux fedora35 配置jdk,安装mysql,安装tomcat
配置jdk18很简单,下载jdk,只需要.tar.gz结尾的文件就行,https://download.oracle.com/java/18/latest/jdk-18_linux-x64_bin.t ...
- drools session理解
一.理解 在drools中存在2种session,一种是有状态的Session (Stateful Session),另外一种一种是无状态的Session (Stateless Session). 1 ...
- 群晖下 gitea+drone+harbor实现CI/CD 发布到云服务器
常用命令 sudo -i然后输入密码登录root账户(群晖默认只能使用admin账号登陆) vim xxx编辑(编辑是进去之后按i,退出并保存是按esc,然后:wq!再回车) mkdir xx创建文件 ...
- isprime
C++实现求素数个数 问题描述 求1~n的素数个数(例:n=10) 1 2 3 4 5 6 7 8 9 10 prime 2 3 5 7 not prime 1 4 6 8 9 10 素数又称质数.所 ...
- 第1章 C++绪论
写于2022年5月13日: 开通博客用于学习记录分享及交流. C++复习笔记内容参考教材[双语版C++程序设计(第2版)][(爱尔兰)Paul Kelly(P. 凯利),苏小红]. 本书的网站:htt ...