一、简介

NFS(Network File System)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源。在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样。
 
NFS在文件传输和信息传输过程中依赖于PRC(Remote Procedure Call)协议。
 
二、NFS安装
查看是否安装了nfs-utils和portmap,注意centos6.x里portmap改名为rpcbind了。
> rpm -qa|grep nfs
> rpm -qa|grep rpcbind
> yum install nfs-utils
> yum install rpcbind
NFS服务默认需要5个端口,我们把这些端口设置成静态的。
> vi /etc/sysconfig/
#端口
RQUOTAD_PORT=30000
#TCP锁使用端口
LOCKD_TCPPORT=30001
#UDP锁使用端口
LOCKD_UDPPORT=30002
#挂载使用端口
MOUNTD_PORT=30003
#状态使用端口
STATD_PORT=30004
除了以上端口,还有NFS的协议端口2049和RPC的111端口。
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 111 -j ACCEPT
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 2049 -j ACCEPT
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 30000 -j ACCEPT
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 30001 -j ACCEPT
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 30002 -j ACCEPT
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 30003 -j ACCEPT
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 30004 -j ACCEPT

如果觉得实在麻烦,把iptables关闭

> service iptables stop

查看iptables端口开放情况

> iptables -L -n
我们新建一个目录并创建test.txt,用于测试
> mkdir /data/nfs
> cd /data/nfs
> touch test.txt
我们编辑/etc/exports(NFS服务的主要配置)文件
> vi /etc/exports

文件内容格式如下:

<输出目录> [客户端1 选项(访问权限,用户映射,其他)] [客户端2 选项(访问权限,用户映射,其他)]
<输出目录>
输出目录是指NFS系统中需要共享给客户机使用的目录 [客户端]
客户端是指网络中可以访问这个NFS输出目录的计算机
例如:
指定IP: 192.168.0.1
指定子网所有主机: 192.168.0.0/24 192.168.0.0/255.255.255.0
指定域名的主机: test.com
指定域名所有主机: *.test.com
所有主机: * [选项]
访问权限:
ro:设置输出目录只读
rw:设置输出目录读写 用户映射:
all_squash:将远程访问的所有普通用户及所属组都映射为匿名用户或用户组(nfsnobody)
no_all_squash:与all_squash取反(默认设置)
root_squash:将root用户及所属组都映射为匿名用户或用户组(默认设置)
no_root_squash:与rootsquash取反
anonuid=xxx:将远程访问的所有用户都映射为匿名用户,并指定该用户为本地用户(UID=xxx)
anongid=xxx:将远程访问的所有用户组都映射为匿名用户组账户, 并指定该匿名用户组账户为本地用户组账户(GID=xxx) 其他:
secure:限制客户端只能从小于1024的tcp/ip端口连接nfs服务器(默认设置)
insecure:允许客户端从大于1024的tcp/ip端口连接服务器
sync:将数据同步写入内存缓冲区与磁盘中,效率低,但可以保证数据的一致性
async:将数据先保存在内存缓冲区中,必要时才写入磁盘
wdelay:检查是否有相关的写操作,如果有则将这些写操作一起执行,这样可以提高效率(默认设置)
no_wdelay:若有写操作则立即执行,应与sync配合使用
subtree:若输出目录是一个子目录,则nfs服务器将检查其父目录的权限(默认设置)
no_subtree:即使输出目录是一个子目录,nfs服务器也不检查其父目录的权限,这样可以提高效率
/data/nfs 192.168.9.10/24(ro,sync,wdelay,root_squash)

上述代码我们将/data/nfs共享给192.168.9.10所有主机

 
启动NFS服务和rpcbind服务
> service rpcbind start
> chkconfig rpcbind on
> service nfs start
> chkconfig nfs on
查看NFS状态
> service nfs status

查看NFS共享状态(前提是要DNS能解析自己,不然容易报错)

> showmount -e
客户端安装NFS与服务端差不多,这里就不过多叙述了。
客户端挂载服务端NFS共享目录
mount NFS服务器IP:共享目录 本地挂载点目录
> mount 192.168.9.10:/data/nfs /data/nfs2

查看/data/nfs,如果有文件了,说明成功。

> ls /data/nfs2

我们重新配置共享目录,让它可读写

> vi /etc/exports
/data/nfs 192.168.9.10/24(rw,sync,wdelay,root_squash)

重启rpcbind和nfs服务

> service rpcbind restart
> service nfs restart
给/data/nfs读写的权限
> chmod 777 /data/nfs

我们重新挂载共享目录

> umount /data/nfs2
> mount 192.168.9.10:/data/nfs /data/nfs2
创建文件,并查看/data/nfs中是否会有
> touch xxx.txt
> ls /data/nfs
可以看到nfs中存在xxx.txt文件了。
 
 

Linux CentOS6.6 NFS服务的配置与安装的更多相关文章

  1. Linux系统中NFS服务配置

    文章目录:                一.NFS服务简介                二.NFS服务端配置                三.NFS客户端配置                四. ...

  2. NFS服务的配置与应用

    一.NFS服务概述 NFS(Network File System),即网络文件系统,是使不同计算机之间能够通过网络进行文件共享的一种网络协议,多用于Linux/Unix网络系统中. 一台NFS服务器 ...

  3. nfs服务权限配置

    nfs服务权限配置 1. 查看系统是否已经安装了服务Rpm -qa | grep nfs 2. 启动服务,并且开机自动运行Systemctl start nfsSystemctl enabled nf ...

  4. window nfs 服务端配置安装

    windows7下面安装nfs客户端命令(首先开启windows客户端mount挂载命令): 打开或关闭windows功能>nfs服务(勾选上)重启   windows nfs共享有两种方式分别 ...

  5. Linux系统数据共享-NFS服务

    转载:http://www.cnblogs.com/mchina/archive/2013/01/03/2840040.html 一.NFS服务简介 NFS 是Network File System的 ...

  6. nfs服务的配置

    nfs服务 nfs简介 Network file system 网络文件系统.NFS server可以看作是一个 file server.它可以让你的pc通过网络将远端的nfs server共享出来的 ...

  7. Linux下开启nfs服务

    1.什么是NFS(Network FileSystem) NFS 就是 Network FileSystem 的缩写,最早之前是由 Sun 所发展出来的.他最大的功能就是可以透过网络,让不同的机器.不 ...

  8. NFS服务基本配置及使用

    操作系统:redhat 7.2 参考链接:https://www.cnblogs.com/dscode/p/6146409.html NFS:Network File System 一.服务器端配置 ...

  9. linux centos6.5 ftp网页vsftpd配置

    安装命令centos下 yum install vsftpd 出现“Complete!”时意味着安装完成.Linux中,系统对于大小写严格区分,比如abc和ABC是完全不相同的字符,要特别注意.配置V ...

随机推荐

  1. Unity的JIT和AOT实现

    https://myhloli.com/about-il2cpp.html JIT方式: Unity的跨平台技术是通过一个Mono虚拟机实现的.而这个虚拟机更新太慢,不能很好地适应众多的平台. And ...

  2. kudu和kudu-impala的安装流程

    安装apache的kudu 第一步:下载rpm包 http://archive.cloudera.com/kudu/redhat/6/x86_64/kudu/5.11.0/RPMS/x86_64/ 第 ...

  3. bat脚本自动备份文件资源

    1:xcopy命令进行文件拷贝  2:脚本内容: <span style="font-size:18px;">@echo off color 0D MODE con:  ...

  4. RESTful转载,多看几遍就理解了写点自己的看法和理解

    要理解资源路由就要理解什么是RESTful.如果一个架构符合REST(即Representational State Transfer的缩写,意为表现层状态转化)原则,就称它为RESTful架构. R ...

  5. canvas学习笔记、小函数整理

    http://bbs.csdn.net/topics/391493648 canvas实例分享 2016-3-16 http://bbs.csdn.net/topics/390582151 html5 ...

  6. CUDA入门

    CUDA入门 鉴于自己的毕设需要使用GPU CUDA这项技术,想找一本入门的教材,选择了Jason Sanders等所著的书<CUDA By Example an Introduction to ...

  7. MySQL数据库作发布系统的存储,一天五万条以上的增量,预计运维三年,怎么优化?

    优化应该不仅仅是数据库方面使用高性能的服务器多使用缓存页面服务器.数据库服务器.图片服务器.上传下载服务器分离数据库集群,表分割(水平分割和垂直分割)和表散列负载均衡重视每个代码开发细节,特别是大循环 ...

  8. springboot - SqlSessionFactoryBean falls in circular dependencies by Spring Boot's DataSourceInitializer

    springboot mybatis配置多数据源的时候,报错:There is a circular dependency between 7 beans in the application con ...

  9. Git----分支管理之解决冲突03

    人生不如意之事十之八九,合并分支往往也不是一帆风顺. 准备新的feature1分支,继续我们的新分支开发: $ git checkout -b feature1Switched to a new br ...

  10. MFC 线程中CWnd对象

    尽量不要在MFC线程中将CWnd作为参数传递,会引起crash 正确的做法: 1. 将CWnd对应的handle传进来,通过CWnd::FromHandle()函数转换: 2. 在线程中用SendMe ...