首页 > 代码库 > Linux-NFS
Linux-NFS
NFS(网络文件系统)是TCP/IP协议集所提供的一种子协议,该协议可以实现LINUX/UNIX主机之间的文件共享。
端口:111
简介:
NFS是Network File System的简写,即网络文件系统.
网络文件系统是FreeBSD支持的文件系统中的一种,也被称为NFS. NFS允许一个系统在网络上与他人共享目录和文件。通过使用NFS,用户和程序可以像访问本地文件一样访问远端系统上的文件。
NFS 最初是由 Sun Microsytem 公司於 1984 年所开发出来的,最主要的功能就是让网路上的 UNIX 电脑可以共享目录及档案。我们可以将远端所分享出来的档案系统,挂载 (mount) 在本地端的系统上,然後就可以很方便的使用远端的档案,而操作起来就像在本地操作一样,不会感到有甚麽不同。而使用 NFS 也有相当多的好处,例如档案可以集中管理,节省磁碟空间......等等。
组成:NFS至少有两个主要部分:一台服务器和一台(或者更多)客户机。客户机远程访问存放在服务器上的数据。为了正常工作,一些进程需要被配置并运行。
应用:
1.多个机器共享一台CDROM或者其他设备。这对于在多台机器中安装软件来说更加便宜跟方便。
2.在大型网络中,配置一台中心 NFS 服务器用来放置所有用户的home目录可能会带来便利。这些目录能被输出到网络以便用户不管在哪台工作站上登录,总能得到相同的home目录。
3.几台机器可以有通用的/data。这样的话,当您需要在几台机器上安装port时,您可以无需在每台设备上下载而快速访问源码。
原理:
NFS Server服务器上设定/data目录被分享,而客户端可以通过internet将/data目录挂载到本地的挂载点(常用mnt)后,客户端就可以进入挂载点目录进行文件的读写。NFS客户端所开放的端口是随机的,我们不知道,那该怎么办呢?那是不是就不能进行数据传输了呢?答案当然是NO了,那就需要另外一种服务帮他分配port了,服务是什么呢?那就是RPC服务了!
优点:
1.本地工作站使用更少的磁盘空间,因为通常的数据可以存放在一台机器上而且可以通过网络访问到。
2.用户不必在每个网络上机器里头都有一个home目录。Home目录 可以被放在NFS服务器上并且在网络上处处可用。
3.诸如软驱,CDROM,和 Zip(是指一种高储存密度的磁盘驱动器与磁盘)之类的存储设备可以在网络上面被别的机器使用。这可以减少整个网络上的可移动介质设备的数量。
安装配置:
NFS Server配置安装
yum安装nfs服务rpc服务
[root@nfsserver~]# yum -y install nfs*
#nfs*有nfs-utils、nfs-utils-lib、nfs-utils-lib-devel和nfs4-acl-tools
检查rpc服务和nfs服务是否安装并且安装成功
[root@nfsserver~]# rpm -qa rpc* nfs*
nfs-utils-lib-1.1.5-11.el6.x86_64
nfs-utils-lib-devel-1.1.5-11.el6.x86_64
rpcbind-0.2.0-11.el6.x86_64
nfs-utils-1.2.3-64.el6.x86_64
nfs4-acl-tools-0.3.3-7.el6.x86_64
启动rpc服务和NFS服务(先启rpc服务,后启NFS服务)
[root@nfsserver/]# /etc/init.d/rpcbind start
Startingrpcbind: [ OK ]
[root@nfsserver/]# /etc/init.d/nfs start
Starting NFSservices: [ OK ]
Starting NFSmountd: [ OK ]
Starting NFSdaemon: [ OK ]
Starting RPCidmapd: [ OK ]
设置开机自启
[root@nfsserver/]# chkconfig nfs on
[root@nfsserver/]# chkconfig rpcbind on
[root@nfsserver/]# chkconfig --list |grep -E "nfs|rpcbind"
nfs 0:off 1:off 2:on 3:on 4:on 5:on 6:off
nfslock 0:off 1:off 2:off 3:on 4:on 5:on 6:off
rpcbind 0:off 1:off 2:on 3:on 4:on 5:on 6:off
配置共享目录/data(nfs配置文件时/etc/exports 默认是空的)
[root@nfsserver~]# vim /etc/exports
#share /datafor nfsclient
/data 10.86.87.85(rw,sync,no_root_squash)
说明:
/data:共享的文件夹路径 允许访问的网段 (读写权限,)
10.86.87.85:允许IP地址访问
括号内的参数意义描述如下:
rw:读写权限,只读权限为ro;
sync:数据同步写入内存和硬盘,也可以使用async数据会先暂存于内存中,而不立即写入硬盘。
no_root_squash:NFS 服务器共享目录用户的属性,如果用户是 root,那么对于这个共享目录来说就具有 root 的权限。
建立共享目录
[root@nfsserver ~]# mkdir /data
平滑加载NFS服务并检查服务(shoumount -e localhost)
[root@nfsserver~]# /etc/init.d/nfs reload
[root@nfsserver~]# showmount -e localhost
Export list forlocalhost:
/data 10.86.87.85
NFS Client 配置
安装rpc服务
[root@nfsclient01 ~]# yum -y install rpcbind
启动rpc服务并检查
[root@nfsclient01~]# /etc/init.d/rpcbind start
Startingrpcbind: [ OK ]
[root@nfsclient01~]# ps -ef| grep "rpc"
rpc 1208 1 0 13:38 ? 00:00:00 rpcbind
root 1212 1135 0 13:39 pts/0 00:00:00 grep rpc
设置开启自启并检查
[root@nfsclient01~]# chkconfig rpcbind on
[root@nfsclient01~]# chkconfig --list rpcbind
rpcbind 0:off 1:off 2:on 3:on 4:on 5:on 6:off
挂载并测试
挂载/data到/mnt目录下
[root@nfsclient01/]# mount -t nfs 10.86.87.85:/data /mnt
本文出自 “冷水泡茶” 博客,请务必保留此出处http://miaocbin.blog.51cto.com/689091/1895355
Linux-NFS