前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >网络文件系统——NFS

网络文件系统——NFS

原创
作者头像
江小白
修改2019-03-15 14:15:17
1.9K0
修改2019-03-15 14:15:17
举报
文章被收录于专栏:左瞅瞅,右瞅瞅

NFS:

NFS(Network File System)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源。在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样。

环境:

cnetos7 1708

IP:

192.168.13.1 linux-node1.example.com

192.168.13.2 linux-node2.example.com

nfs 服务搭建的安装包
nfs 服务搭建的安装包
实现nfs  服务器搭建(确保开机自启动)
实现nfs 服务器搭建(确保开机自启动)

ps:主要进程:

nfsd:2049端口 注册实现nfs服务。

mountd: 实现挂载,半随机端口,nfs提供。

nfs 的配置文件 /etc/exports

配置文件简单格式
配置文件简单格式
showmount  查看共享的目录  ip:nfs-server的ip
showmount 查看共享的目录 ip:nfs-server的ip

客户端:

192.168.13.2 linux-node2.example.com

客户端需要安装nfs-utils

客户端同样可以查看
客户端同样可以查看
mount  挂在使用
mount 挂在使用
权限限制为只读
权限限制为只读

修改配置文件,在不重启服务的情况下读取配置文件:

exportfs的使用相当于reload(-r 导出所有的文件系统)
exportfs的使用相当于reload(-r 导出所有的文件系统)
ps: -u  取消所有导出的文件系统
ps: -u 取消所有导出的文件系统
查看是否生效
查看是否生效

文件系统导出属性:

ro:只读

rw:读写

sync:同步

async:异步

root_squash:将root用户映射为来宾账号(默认开启)

no_root_squash:保留管理员权限

all_squash:无论什么转换为来宾账号

anonuid,anongid:指定来宾账号的UID和GID

服务器端创建linux_node1 用户授权并且赋予权限
服务器端创建linux_node1 用户授权并且赋予权限
客户端创建相同uid  gid  不同的用户客户端显示linux_node2
客户端创建相同uid gid 不同的用户客户端显示linux_node2
服务器端显示为linux_node1
服务器端显示为linux_node1
客户端切换为root  没有权限删除文件
客户端切换为root 没有权限删除文件
创建nfstest用户,指定为来宾用户
创建nfstest用户,指定为来宾用户
此时用户为510 才有写权限
此时用户为510 才有写权限

实现开机自动挂在:

标准添加
标准添加

mountd 开随机端口进行提供服务,如果占用3360 或者使用的端口,将影响改服务的使用。

编辑配置文件,固定mountd,使用的端口
编辑配置文件,固定mountd,使用的端口
此时mountd  为固定端口892
此时mountd 为固定端口892

PS:

由于业务需求,需要在windows 使用NFS:

这里以win7系统为例。

第一步,我们需要安装一个工具。

点击开始 -> 控制面板。

点击“程序”。

点击“打开或关闭windows功能”。

勾选上“基于unix的应用程序子系统”和展开NFS服务,勾选“NFS客户端”和“管理工具”然后点确定。

点击确定。等待安装完成之后,窗口会自动关闭。

这时我们按下win + r,打开运行界面:输入cmd进入命令提示符。

输入 mount -h

没有提示错误即可用。

我这边的nfs共享目录是nfs服务器的/home/pi/Server文件夹。

那么,我们输入命令mount \\NFS的IP地址或者主机名\nfs目录名 挂载点

例如我这边就是:mount \\192.168.1.4\home\pi\Server x:

输入该命令后按回车。提示成功即可。

这时我们可以按下win + e打开计算机资源管理器。可以看到,我们挂载的X盘确实存在,我们进去看看。

那么如何取消挂载呢?

我们只要”umount  挂载点”即可断开啦。

例如:umount x:

这样就可以取消挂载了。
这样就可以取消挂载了。

虽然挂载了还是存在权限问题无法访问:

使用mount命令可以查看到如下状态:

我们可以看到UID=-2由于在存储设备上共享出来的NFS文件系统归属于root权限,且无法修改该所属用户,而Windows通过UID=-2的用户去写,肯定写不进去。

通过修改注册表将windows访问NFS时的UID和GID改成0即可,步骤如下

1、在运行中输入regedit,打开注册表编辑器;

2、进入HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ClientForNFS\CurrentVersion\Default条目;

3、选择新建----QWORD值,新建AnonymousUid,AnonymousGid两个值,值为0.

大功告成,重启计算机,重新mount。
大功告成,重启计算机,重新mount。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
访问管理
访问管理(Cloud Access Management,CAM)可以帮助您安全、便捷地管理对腾讯云服务和资源的访问。您可以使用CAM创建子用户、用户组和角色,并通过策略控制其访问范围。CAM支持用户和角色SSO能力,您可以根据具体管理场景针对性设置企业内用户和腾讯云的互通能力。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档