linux的nfs服务-阿里云开发者社区

开发者社区> 开发与运维> 正文
登录阅读全文

linux的nfs服务

简介:

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

使用NFS的好处

1. 节省本地存储空间,将常用的数据存放在一台NFS服务器上且可以通过网络访问,那么本地终端将可以减少自身存储空间的使用。

2. 用户不需要在网络中的每个机器上都建有Home目录,Home目录可以放在NFS服务器上且可以在网络上被访问使用。

3. 一些存储设备如软驱、CDROM和Zip(一种高储存密度的磁盘驱动器与磁盘)等都可以在网络上被别的机器使用。这可以减少整个网络上可移动介质设备的数量。

下面我们来看看NFS服务具体怎么搭建。


在服务器端:

yum install nsf-util  -y      --------------下载NFS服务软件

因为在服务器端要为其他主机提供服务,所以我们现在将服务器端的防火墙做好必要的设置,

systemctl -cmd  --permanent   --add-service=nfs  rpc-bind   mountd      ------------------添加nfs,bind,mountd 服务到防火墙中。

Screenshot from 2017-12-09 21-11-19.png

firewall-cmd --list-all      -------------查看当前防火墙所提供的服务。

Screenshot from 2017-12-09 21-32-26.png

mkdir  -p /LBJ/nfs            ------建立要共享的目录/LBJ/nfs

Screenshot from 2017-12-09 21-13-39.png

vim   /etc/exports

共享目录的绝对路径                 为哪台主机提供怎么样的服务(目前是为所有主机能够连接到状态)

Screenshot from 2017-12-09 21-13-10.png

在客户端的主机上:

showmount    -e  172.25.254.220    ----------检验是否能够取得共享文件夹

Screenshot from 2017-12-09 21-33-52.png

nfs服务是通过在客户端主机上远程挂载后所使用的,所以说目前挂载成功

Screenshot from 2017-12-09 22-47-34.png

不过这种挂载如果客户主机很多的情况下会对服务器造成很大的压力,如何让挂载能够智能一点的?

在客户端主机   yum install    autofs    -y     ----------------安装autofs软件。

在客户端如果要远程mount 到服务器的共享目录,则必须systemctl   start  autofs  这个服务,此时会自动出现一个/net的文件夹,切换到这个文件夹中,然后在切换到要mount的目录下,就实现了挂载。

Screenshot from 2017-12-09 23-44-46.png

在客户端用这个软件的好处就是用的时候打开,直接切换到/net下的要去的目录,不用时候直接切换出/net这个目录,它就会在规定的时间内自动umount,所以不会长时间的占用服务器的资源。vim  /etc/autofs.conf  主配置文件中可以修改这个切换出/net目录后自动umount的时间,单位为秒。


Screenshot from 2017-12-11 14-19-47.png

vim   /etc/auto.master                        第八行添加          要共享到的目录的绝对路径的上层目录         制定下一步要寻找的文件。

Screenshot from 2017-12-11 14-01-35.png

vim   /etc/auto.nfs               服务                      共享到的目录的权限                     服务器ip:共享目录

Screenshot from 2017-12-11 14-02-21.png

在服务器端: vim /etc/exports        给共享的目录添加上rw权限。完了之后exportfs      -rv 

Screenshot from 2017-12-11 14-04-39.png

此时按照前边挂载到服务器主机上,在共享目录下建立file    查看时uid和gid都是nfsnobody。。而在服务器端建立的file2是root,可以通过服务器端解决这个问题。

Screenshot from 2017-12-11 14-13-03.png

vim   /etc.exports    

还是修改完后exportfs   -rv            ----------------刷新文件。

Screenshot from 2017-12-11 14-21-36.png

此时在客户端建立file3,可以看见uid和gid是1003

Screenshot from 2017-12-11 14-23-01.png

指定uid-1003的用户haha,在来查看文件,就会看见显示为用户haha

Screenshot from 2017-12-11 15-51-47.png


但是如何让客户端的主机取得像服务器端一样的权限的,在服务器端更改vim /etc/exports文件。

Screenshot from 2017-12-11 15-51-47.png

在客户端新建file4,此时这个root就是服务器端的root

Screenshot from 2017-12-11 14-34-31.png














本文转自技术小白JDY51CTO博客,原文链接:http://blog.51cto.com/13355576/2049500 ,如需转载请自行联系原作者




版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享: