设为首页 收藏本站
查看: 708|回复: 0

[经验分享] NFS 网络文件系统

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2016-7-28 10:05:11 | 显示全部楼层 |阅读模式
    NFS(Network File System)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源。在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样。

以下是NFS最显而易见的好处:
1. 节省本地存储空间,将常用的数据存放在一台NFS服务器上且可以通过网络访问,那么本地终端将可以减少自身存储空间的使用。
2. 用户不需要在网络中的每个机器上都建有Home目录,Home目录可以放在NFS服务器上且可以在网络上被访问使用。
3. 一些存储设备如软驱、CDROM和Zip(一种高储存密度的磁盘驱动器与磁盘)等都可以在网络上被别的机器使用。这可以减少整个网络上可移动介质设备的数量。

实验环境:
一:服务器和客户机都要安装nfs 和 rpcbind软件包:

yum -y install nfs-utils  rpcbind

二:在服务端创建需要共享的文件并添加权限

mkdir /usr/local/xcb
chmod 666 /usr/local/xcb
三:编辑export文件   vim /etc/exports
/usr/local/xcb 192.168.103.106(rw,sync,no_root_squash,no_all_squash)
设置共享的目录,哪些可以访问的客户端ip,也可以设置一个网段(192.168.103.0/24)
权限说明:
rw:  可读可写
ro:  只读
sync: 数据同步写入内存和硬盘,也可以使用async,此时数据会先暂存于内存中,而不立即写入硬盘。
no_root_squash: NFS客户端连接服务端时如果使用的是root的话,那么对服务端分享的目录来说,也拥有root权限。显然开启这项是不安全的。
root_squash:NFS客户端连接服务端时如果使用的是root的话,那么对服务端分享的目录来说,拥有匿名用户权限,通常他将使用nobody或nfsnobody身份;
all_squash:不论NFS客户端连接服务端时使用什么用户,对服务端分享的目录来说都是拥有匿名用户权限;
anonuid:匿名用户的UID值,通常是nobody或nfsnobody,可以在此处自行设定;
anongid:匿名用户的GID值。

exportfs -f 使配置生效

四:启动服务
service nfs start
service rpcbind start
注意:在访问的时候需要关闭防火墙,或者在防火墙里面开启需要的端口

修改/etc/service,添加以下内容(端口号必须在1024以下,且未被使用)   

# Local services

mountd 1011/tcp #rpc.mountd

mountd 1011/udp #rpc.mountd

rquotad 1012/tcp #rpc.rquotad

rquotad 1012/udp #rpc.rquotad


在防火墙里开通如下端口vim /etc/sysconfig/iptables
#rpc

-A INPUT -m state --state NEW -m tcp -p tcp --dport 121 -j ACCEPT

-A INPUT -m state --state NEW -m udp -p udp --dport 121 -j ACCEPT

#nfsd

-A INPUT -m state --state NEW -m tcp -p tcp --dport 2049 -j ACCEPT

-A INPUT -m state --state NEW -m udp -p udp --dport 2049 -j ACCEPT

#rquotad

-A INPUT -m state --state NEW -m tcp -p tcp --dport 1012 -j ACCEPT

-A INPUT -m state --state NEW -m udp -p udp --dport 1012 -j ACCEPT

#mountd

-A INPUT -m state --state NEW -m tcp -p tcp --dport 1011 -j ACCEPT

-A INPUT -m state --state NEW -m udp -p udp --dport 1011 -j ACCEPT

五:客户端挂载
showmount -e 192.168.103.106  查看服务器共享的目录
nfs默认使用的是udp协议,为了提高nfs的稳定性,如下使用tcp协议挂载
mount -t nfs 192.168.103.106:/usr/local/xcb /usr/local/xcb -o proto=tcp -o nolock
挂载成功后,即可访问共享的nfs文件系统
六:卸载已挂载的nfs
umount /usr/local/xcb

windwos挂载linux主机NFS

启动windos NFS客户端服务:

1. 打开控制面板->程序->打开或关闭windows功能->NFS客户端

勾选NFS客户端,即开启windows NFS客户端服务.

2.win+R->cmd

mount 192.168.1.10:/xcb X:

成功挂载,打开我的点脑,你即可在你网络位置看到 X:盘了

解释:

mount,是指令

192.168.1.10你的linux主机IP

/xcb 你的共享目录

X:你挂载的网络文件盘--注意,可能会与你的其他盘冲突,你可以随意更改

3.取消挂载:

直接在 我的电脑 里面鼠标点击取消映射网络驱动器 X:

或者: win+R->cmd

输入: umount X:

(umount -a 取消所有网络驱动器)


1.问题:
     Win7 NFS客户端访问Linux NFS服务问题Win7 NFS客户端使用mount命令挂载NFS服务之后,
文件系统对Win7只读,无法写入文件,无法新建文件夹,
解决:
     使用mount命令可以查看到如下状态:
可以看到UID=-2由于在存储设备上共享出来的NFS文件系统归属于root权限,并且无法修改
该所属用户,而Windows通过UID=-2的用户去写,肯定写不进去。

解决办法:是让Win7在挂载NFS的时候将UID和GID改成0即可:打开注册表:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ClientForNFS\CurrentVersion\Default,增加两项:AnonymousUid,AnonymousGid
重新启动计算机,重新mount

2.问题:
F:\SVN\DataEngineHAT\Robot\ENMC>mount \\192.168.103.106\xcb z:

网络错误 - 53

有关详细信息,请键入“NET HELPMSG 53”。

解决方法:配置文件是否配置正确,nfs服务是否正确开启,防火墙是否关闭
=============================================================================
linux访问linux下的NFS服务器
#showmount -e 192.168.103.106                       (192.168.103.106—》linux的nfs服务器ip)
#mount 192.168.103.106:/xcb /var/NFS



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-250546-1-1.html 上篇帖子: Linux系统帮助方法总结 下篇帖子: linux下历史命令history使用方法 网络
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表