挂载NFS的两种方法
NFS服务器的配置
一、NFS服务器端的配置,即共享发布者
(一)需启动的服务和需安装的软件
1、 NFS服务器必须启动两个daemons服务:rpc.nfsd和rpc.mountd
rpc.nfsd:用来管理客户端PC是否可以登录。类似于windows中的共享权限。
rpc.mountd:用来管理客户端pc能够使用的文件安全权限。 如windows中的共享安全权限。
RPC:因为NFS支持的功能很多,所以NFS的功能对应的端口才无法固定,而是采用小于1024的随机端口。
但客户端需要得知服务器的端口才能联机,此时就需要启用RPC服务。
RPC的功能就是指定每个NFS功能的端口号。并传信息给客户端,让客户端可以连到正确的端口上。
服务器在启动NFS时会随机取用数个端口,并主动向RPC注册,因此RPC知道每个NFS功能对应的端口。
RPC用111端口监听客户端的请求,并应答正确的端口。启动NFS前,RPC就要先启动了,否则NFS会无法向RPC注册。
2、NFS 服务器需要安装nfs主程序,nfs-utils和rpc主程序 portmap
(二)exports服务器的方法:
1、 NFS文件存取权限
因为NFS没有验证机制,当客户端用户访问NFS服务器的共享文件夹时会遇到的权限情况:
(1)NFS服务器端用户列表中有与客户端用户名相同的用户名时,客户端可以直接存取共享文件夹。例:客户端用户为khp,而nfs服务器用户列表(/etc/passwd)中也有khp这个用户名,则将拥有KHP权限。。
(2)当访问NFS服务器的客户端用户UID与服务器端 UID相同,但用户名却不相同时,客户端将拥有与服务器端UID 相同但不同用户的权限。
例:客户端为 501UID,用户名为 khp的帐号访问NFS服务器。NFS服务器用户列表中(/etc/passwd)有uid为501 ,但用户名为pla的用户,所以客户端khp用户可以拥有NFS服务器pla相同权限。
(3)如果客户端用户UID在NFS服务器端用户列表中不存在时,则以匿名用户的权限访问。即nobody的用户。
(4)如果客户端用户为root用户,因为每台电脑都有root用户,如果不作控制,NFS服务器将会很危险,会被客户端全部控制。所以默认root用户名的客户端访问NFS服务器,会变为匿名用户,拥有匿名用户权限。也可不控制。
2、编辑/etc/exports文件,此文件不一定存在,如不存在就手工建立
/etc /exports的格式:
共享目录 允许访问的电脑 (选项)
共享目录:即nfs服务器准备共享的目录
允许访问的电脑:即允许访问这个共享的客户端有哪些。可用电脑名、IP地址,还可以用通配符。
选项:
(1) rw //读写。客户端拥有读写的权限。
(2) ro //只读 客户端只有读的权限。
(3) no_root_squash //root用户可访问,不变成匿名用户,即root用户可以以root用户的权限访问NFS服务器的共享资源。
(4) root_squash //root用户变成匿名用户
(5) all_squash //所有用户都变成匿名用户
(6) anonuid
(7) anongid //所有匿名用户的UID或组ID都变为后面设定的UID或GID的权限。因为所有在NFS服务器用户列表中没有用户名的都会匿名用户,这里设定这些匿名用户的用户权限。
(8) sync //同步到硬盘
(9) async //数据存放到内存而不是直接写到硬盘
例: /mnt/export www.elitek.com(rw) //这个目录只允许www.elitek.com这台电脑读写。注意,后面(rw)前没有空格。
/mnt/export www.elitek.com (rw) // /mnt/export这具目录只允许www.elitek.com这台电脑读写,且允许所有其他用户读写权限。(rw)前面有空格。
/mnt/export *.elitek.com(rw) //允许所有elitek.com这个域里的电脑读写这个共享文件夹。
3、 exportfs命令。 可以更改设置 (命令目录/usr/sbin/exportfs)
exportfs [-avu][-o option] [director]
-a:把 exprotfs里的所有路径都共享出去
-u:把export出去的路径取消
-v:在export时,共享显示到屏幕
-o option :即一些选项
-r :重新挂载exports里的设置
例: exportfs -a ro /tmp/user //即把/tmp/user目录全部exports,但用户只能读取资料。
4、 /var/lib/nfs/*tab //存放日志文件.etab记录NFS共享出来的目录完整权限设置。 .xtab记录曾经连接引NFS的客户机数据
5、rpcinfo [-p] [ip |电脑名] //查看RPC服务的注册状态
6、 netstat -ultn 查看开放了哪些端口
二、客户端的端设置
作为NFS客户端需要先运行 nfslock和 portmap服务。 /etc/init.d/nsflock start
/etc/init.d/portmap start
并且有几种挂载方法
(一)、命令方式
mount 命令挂载
1、 showmount -e [nfs服务器电脑名| ip地址 ] //查看nfs服务器的可用共享目录
2、mount nfs主机名:nfs共享目录 挂载到本机的目录 //把nfs服务器共享的目录挂载到本机。主机名外还可用IP地址
例: mount 192.168.9.1:/tmp/export /tmp/export //即把192.168.9.1nfs服务器共享的 /tmp/export目录,挂载到本机的 /tmp/export目录上。
mount -t nfs -o time=20 www.linux.com/home/khp /tmp/export //把远程nfs服务器的/home/khp 挂载到本机的/tmp/export目录下。最长响应时间为20秒。
3、 unmount 命令中断挂载
(二) 编辑 /etc/fstab文件挂载
/etc/fstab文件详解在文件系统管理中有说明
1、格式: NFS服务器及共享目录 挂载到本地的目录 文件格式 选项
www.elitek.com:/home/project /tmp/export ro //把 www.elitek.com这对口NFS服务器上的 /home/project目录挂载到本机的 /tmp/export目录上,且为只读。格式为nfs
2、打开文件夹。此时输入 mount /tmp/export 即可以打开挂载的文件
(三)autofs来挂载nfs文件系统
只在文件系统被访问时才被挂载。
1、在 /etc/auto.master中定义挂载点
2、再在 auto.master中定义的 /etc/auto.dirctory 中定义目录的总挂载点。
即在系统文件 /etc/auto.master中先定义一个总的总挂载点。 然后依这个文件中定义的总挂载点文件,再设置详细挂载点。
例: vi /etc/auto.master 编辑这个文件:
/misc /etc/auto.khp -timeout 60 //即 /etc/auto.khp中的文件将挂载到 /misc目录下
再编辑: vi /etc/auto.khp 这个文件,定义挂载点。
myproject -rw,soft,intr www.elitek.com:/home/project //即把NFS服务器 www.elitek.com:/home/project共享目录,挂载到本机的 /misc/myproject目录下。
注意: /misc/myproject目录是动态的,不是实际存在的,只是在访问时这个目录才会产生。退出就消息。但 /misc目录需存在。
当防火墙开着时,有时就无法访问,可用 /etc/rc.d/init.d/iptables stop 停用防火墙,或用 iptable命令开放NFS的端口。
本文出自 “网行天下 ” 博客,请务必保留此出处http://kuangkuang.blog.51cto.com/838/263164
挂载NFS的两种方法相关推荐
- 挂载NTFS分区的两种方法
挂载NTFS分区的两种方法 第一种是安装内核模块,可到 http://sourceforge.net/projects/linux-ntfs/files/ 下载,需下载与你系统内核想对应的版本,使用u ...
- mysql php gpl_MySQL_MySQL数据库远程访问权限如何打开(两种方法),下载GPL版本安装MySQL Community - phpStudy...
MySQL数据库远程访问权限如何打开(两种方法) 下载GPL版本安装 MySQL Community Edition(GPL) Community (GPL) Downloads » 在我们使用mys ...
- Unity Android 之 应用打开手机的指定网页浏览器(external browser)的两种方法(封装aar和不用封装aar方法)
Unity Android 之 应用打开手机的指定网页浏览器(external browser)的两种方法(封装aar和不用封装aar方法) 目录 Unity Android 之 应用打开手机的指定网 ...
- php lotus notes,Linux_Ubuntu Linux Wine上使用Lotus Notes 7,两种方法: A、如果data - phpStudy...
Ubuntu Linux Wine上使用Lotus Notes 7 两种方法: A.如果data目录装在d盘,wine下虚拟d盘到Windows的D盘 B.不用动原来的notes.ini,而是另外维护 ...
- python租车系统_使用Python实现租车计费系统的两种方法
您的位置:首页 > 站长学院 > 网络技术 正文内容 使用Python实现租车计费系统的两种方法 使用Python实现租车计费系统的两种方法 更新时间:2018-09-29 18:0 ...
- bootice添加黑苹果引导_黑苹果去除clover多余引导项的两种方法
第一种 利用clover工具 直接上最关键的部分: 1. 打开Clover Configurator, 挂载对应的EFI分区 2. 打开分区,加载对应的config.plist文件 3. 切换到Clo ...
- 让Mac复制文件到U盘的两种方法
2019独角兽企业重金招聘Python工程师标准>>> 让Mac复制文件到U盘的两种方法 一.让Mac支持ntfs格式磁盘 下载安装tuxera ntfs这款Mac读写软件,然后在系 ...
- 进Linux系统单用户模式,Linux进入单用户模式的两种方法
单用户模式的作用 在使用Linux系统中,维护人员经常会碰到一个问题,就是在拥有root账号权限和密码的用户中,总是会出现忘记root密码的情况. 遇到这种情况,一般情况下,维护人员就会通过最常用的方 ...
- 使用Linux服务器运行深度学习代码 || 两种方法,粗暴高效
[本文是介绍快速远程使用Linux服务器运行深度学习.机器学习代码,全程高能,史上最全] 前面介绍了以下几个内容,不会的可以转链接看下 教你无脑式安装Xshell.Xftp,快速远程连接使用Linux ...
- SQL Server中灾难时备份结尾日志(Tail of log)的两种方法
简介 在数据库数据文件因各种原因发生损坏时,如果日志文件没有损坏.可以通过备份结尾日志(Tail of log)使得数据库可以恢复到灾难发生时的状态. 例如: 上图中.在DB_1中做了完整备份,在Lo ...
最新文章
- 史上第二走心的 iOS11-Drag Drop 教程
- EJB-Java服务器端构件模型使用入门(2)
- METERREC万用表测量自动记录命令
- 【SSH系列】Hibernate映射 -- 一对多关联映射
- OC语言Block和协议
- java常用代码_Java 中常用代码 (欢迎补充)
- webcast(利用sharepoint Designer 定制 Office SharePoint Server 2007)学习笔记
- 数据分级分类实施指南_运营商行业数据安全治理实践
- 【Win 10 应用开发】分析 URI 中的查询字符串
- 超棒!纯Rust编写的机器学习框架,速度堪比PyTorch
- nodejs+socket.io即时聊天实例
- c语言全文件操作函数,C语言文件操作函数大全
- java反射获取注解id,通过反射获取注解(Annotation)
- ADT(Android)—Eclipse开发AndroidManifest.xml在哪里
- nRF52832 矩阵按键调试 同一列上的按键 任意两个按键 按下 检测不到低电平(电平拉不下来)...
- Ajax+PHP快速上手及简单应用
- ACWING828 模拟栈
- Java调用OpenDDS(1)-编译安装openDDS-补上了所有网络上其他文章遗漏的细节
- 详细的组态王软件与200 Smart PLC网口通信教程
- 美国国债收益率回复2021年年初水平 黄金同时趋向上走势
热门文章
- matlab函数accumarray,matlab函数调用问题
- Canvas动画案例演示,含动画猫、变幻线、代码雨等
- 开源第三方登录组件OAuthLogin2.0 支持QQ,阿里巴巴,淘宝,京东,蘑菇街,有赞等平台...
- 以下数值中 不能用作C语言标识符,C语言题库及答案(选择题)
- SFDC中的DEBUG
- 4399c++游戏开发2023届实习笔试
- 关于个人网贷查询系统网贷信用查询,公司开发图片整合技术
- 【Python】import class/import module
- CodeLite配置
- 学神乔明达和他堪称神迹的学习履历