网络共享服务(二)之NFS
NFS: Network File System,是一种基于TCP/IP传输的网络文件系统协议,最初由SUN公司开发。通过使用NFS协议,客户机可以像访问本地目录一样访问服务器中的共享资源。但是,NFS没有用户验证机制,而且数据在网络上传输是明文传输的,所以安全性较差,一般只能在局域网中使用。
Note: RPC: Remote Procedure Call protocol, 远程过程调用,函数调用(远程主机上的函数), 一部分功能由本地程序完成,另一部分由远程主机上的函数完成
NFS的工作流程如下图所示:
用户请求访问的文件系统在另一台主机上,那么客户端(内核发起)第一次请求的是portmapper(提供RPC服务,mountd服务进程启动时会向portmapper注册端口号),然后portmapper将mountd的端口号告知客户端,
接着客户端第二次请求mountd,mountd根据IP进行认证,如果认证通过,将给客户端一个令牌;
然后客户端拿着令牌第三次去访问nfsd服务进程,nfsd访问资源后通过idmapd(属主属组映射)再返回给客户端。

NFS启动后端口监听情况:
nfs服务进程监听端口: /tcp,/udp
mound监听的是半随机端口
idmapd不需要监听端口
RPC服务:portmapper
portmapper默认监听端口是111
查看portmapper监听的端口:
rpcinfo: report RPC information
# rpcinfo -p [IPADDR] //默认查看的是本地主机,也可以查看其他主机:比如: # rpcinfo -p 192.168.1.102
配置NFS服务:
NFS服务的配置文件:/etc/exports
定义的内容格式为:
文件系统 客户端(选项) 客户端(选项)
Note:
客户端:IP、FQDN或DOMAIN、NETWORK
选项:secure(默认,使用1024以下的端口实现NFS的连接,指定insecure可以禁用这个选项),
rw(默认是ro只读的),
async(默认是该选项异步的),sync,
root_squash(默认是该选项挤压管理员,使用该选项即使客户端可以写但是以root身份也不能修改,root会被挤压为nobody),no_roots_quash,
all_squash(限制所有的UID和GID,只使用匿名用户,缺省设置为no_all_squash),
anonuid,anongin(这两个选项将匿名UID和GID修改成特定用户和组账号)
实现NFS共享服务:这里以103作为nfs服务器,102和104作为客户端
1.确保rpc服务portmapper处于工作状态
查看rpc相关信息
# rpcinfo -p [IPADDR]
2.服务器端安装NFS服务:nfsd, mountd, idmapd
# rpm -q nfs-utils
# lsmod | grep nfs
# rpm -ql nfs-utils //系统默认是安装的
3. 服务器端创建共享文件目录
# mkdir /shared/nfs
4.服务器端配置共享客户端
# vim /etc/exports
/shared/nfs 192.168.1.104(rw) 192.168.1.102(ro) //指定104对共享文件系统有读写权限,102度共享文件系统有只读权限
重启NFS服务
# service nfs restart
# ss -tunlp | grep :2049 //nfs服务监听在tcp的2049端口和udp的2049端口。
不重启NFS服务重新导出文件系统
exportfs -ar: 重新导出所有的文件系统
exportfs -au: 关闭导出的所有文件系统
exportfs -u FS: 关闭指定的导出的文件系统
5.客户端挂载NFS文件系统
mount -t nfs SERVER:/path/to/sharedfs /path/to/mount_point
比如: # mount -t nfs 192.168.1.103:/shared/nfs /mnt
开机自动挂载NFS文件系统
# vim /etc/fstab
SERVER:/PATH/TO/EXPORTED_FS /mount_point nfs defaults,_netdev 0 0
挂载选项示例:rw,relatime,vers=4.0,rsize=8192,wsize=8192,namlen=255,hard,proto=tcp,port=0,timeo=600,retrans=2,sec=sys,clientaddr=192.168.1.102,local_lock=none,addr=192.168.1.101
Note: rsize的值是从服务器读取的字节数,wsize是写入到服务器的字节数,默认都是1024,如果使用比较高的值,如8192,可以提高传输速率
6. 查看NSF服务器共享的文件系统
showmount -e NFSSERVER_IP //服务器端可使用localhost,客户端查看需要指定服务器IP
网络共享服务(二)之NFS的更多相关文章
- 网络共享服务(一)之FTP
网络共享服务:ftp,nfs,samba比较 从跨平台角度说, samba, ftp差不多, 而nfs不支持windows平台 从挂载角度说, samba, nfs可以把远程目录挂载到本地目录上, 对 ...
- 网络共享服务(三)之SAMBA
前面说到了FTP和NFS,由于FTP是客户端和服务器基于ftp应用协议进行交换数据的,它不支持挂载共享目录的方式,而NFS又不支持跨平台,所以就催生了第三种网络共享服务:samba Samba是在Li ...
- nfs网络共享服务基础
nfs原理 1.开启RPC服务 2.NFS向RPC服务注册启动的端口 3.用户向RPC询问NFS服务的端口 4.RPC返回端口给客户端 5.客户端通过获得的端口与NFS服务器进行数据传输 实验步骤 一 ...
- NFS网络共享服务 挂载参数及优化 内核优化建议
配置NFS服务端 nfs01上安装软件 [root@nfs01 ~]# yum install nfs-utils rpcbind -y nfs-utils:NFS服务的主程序,包括rpc.nfsd. ...
- NFS网络共享服务部署
10.3 NFS服务端部署环境准备 10.3.1 NFS服务部署服务器准备 服务器系统 角色 IP Centos6.7 x86_64 NFS服务器端(NFS-server) 192.168.1.14 ...
- 搭建企业级NFS网络文件共享服务[二]
1.1.8 NFS问题总结 1.问:使用showmount -e 127.0.0.1后报clnt_create: RPC: Program not registered错误 答:顺序不对,重启nfs服 ...
- 网络共享服务—SAMBA服务
SAMBA服务简介 SMB:Server Message Block服务器消息块,IBM发布,最早是DOS网络文件共享协议 Cifs:common internet file system,微软基于S ...
- win7老是弹出“Windows Media PIayer网络共享服务配置应用程序 已停止工作”
应是优化软件的时候把服务禁止启动了. 我的电脑 > 管理 > 服务和应用程序 > 服务 Windows Media Player Network Sharing Service 启动 ...
- Linux网络服务12——NFS共享服务
Linux网络服务12--NFS共享服务 一.NFS简介 端口号:TCP.UDP 111端口 NFS(Network File System)网络文件系统,是一种基于TCP/IP传输的网络文件系统协议 ...
随机推荐
- Altium Designer打印多块PCB到热转印纸上、拼板发给工厂
接下来介绍的方法的优势有: 节省电脑性能(来自不同PCB文件的图案被放置时只在第1块会卡顿一小会儿,之后不再卡顿) 便于排版(拖放图案时绝不会改变图案内容,拖放图案时鼠标拖住的矩形框的尺寸与图案的尺寸 ...
- 我的一个配置redux(实现一次存储与调用方法)之旅
前言 : 今天呢,就配置一下redux,redux的重要性呢,就叭叭叭一大堆,什么也没有带着配置一次来的重要,因为许多涉及到的属性和方法,用法是活的,但格式是需要记忆的. 过程中不要嫌我唠叨,有的地方 ...
- c++ 中数组的引用
在C++里,数组也是可以引用的. 代码如下: char str1[] = "abcde"; ] = str1; 解读第二句代码,括号的优先级最高,'str2'首先与'&'相 ...
- 数据算法 --hadoop/spark数据处理技巧 --(3.左外连接 4.反转排序)
三. 左外连接 考虑一家公司,比如亚马逊,它拥有超过2亿的用户,每天要完成数亿次交易.假设我们有两类数据,用户和交易: users(user_id,location_id) transactions( ...
- 维基逃离MySQL 力挺开源数据库 MariaDB
近日全球著名百科类网站维基百科宣布,将不会再用MySQL数据库,据国外媒体报道,很多年,MySQL一直是热门的开源数据库,不过在被甲骨文收购后,面临闭源的风险.因此维基百科将切换到另外一款开源数据库M ...
- NCE L5
课文内容 重点单词解析 重点课文解析
- Zookeeper分布式系统协同器概念快速学习
原文格式可以访问:https://www.rockysky.tech 分布式系统的基本操作 主节点选举:在绝大多数分布式系统中,都需要进行主节点选举.主节点负责管理协调其它节点或者同步集群中其它节点的 ...
- Python爬虫连载10-Requests模块、Proxy代理
一.Request模块 1.HTTP for Humans,更简洁更友好 2.继承了urllib所有的特征 3.底层使用的是urllib3 4.开源地址:https://github.com/req ...
- Python3标准库:copy复制对象
1. copy复制对象 copy模块包括两个函数copy()和deepcopy(),用于复制现有的对象. 1.1 浅副本 copy()创建的浅副本(shallow copy)是一个新容器,其中填充了原 ...
- Invalid `Podfile` file: undefined method `pod' for main:Object.
如果你是在iOS中引用flutter的时候,报的这个错.建议移步 https://www.cnblogs.com/jukaiit/p/12181184.html 其他: 先 "pod set ...