文件系统是基于存储设备的,比如硬盘,并且包含文件物理位置的维护。文件系统也可以说是虚拟数据或网络数据存储的方法,比如NFS。我是这样理解的:首先,什么是文件系统,这里我们已经明确了,就是组织的一种形式,让我们读写快的方式方法。从这一点上出发的话,那么NFS是一种网络上的读写方法,因为它是通过应用进行读写,这个应用是NFS,所以就这种的读写也可以说是一种文件系统。

服务一般指的就是守护进程。NFS对于大并发还是有一定的问题,但是对于中小企业,NFS一直是通过网络提供文件系统服务的有竞争力的选择。

在企业集群架构的工作场景中,NFS网络文件系统一般被用来存储共享文件、图片、附件等静态资源文件。

挂载NFC:(rpcbind)

1)传统的挂载: mount  源   目标

2)NFC挂载:mount   192.168.113.12: /video     /video

1.什么是RPC服务?(大型网站离不开的服务)

因为NFS支持的功能相当多,而不同的功能都会使用不同的程序来启动,每启动一个功能就会启用一些端口来传输数据,因此,NFS的功能所对应的端口才无法固定,而是随机取用一些未被使用的端口作为传输之用。

因为端口不固定,这样一来就会造成NFS客户端和NFS服务端的通讯障碍,因为客户端必须知道服务端的数据传输端口才能进行通信交互数据。

要解决上面的通讯问题困扰,就要远程过程调度RPC服务。所以在服务器启动的顺序一定是先启动RPC服务,在启动NFS服务。

这里要注意,这里的RPC服务是NFS的RPC服务,在大型企业中,可以没有NFS,但是肯定会用RPC,RPC是一种服务或者一种协议。

2. 安装:

检查系统有没有相关nfs的软件:rpm -qa nfs-utils  portmap  rpcbind

首先在客户端和服务端安装RPC服务:yum install nfs-utils rpcblind -y

查看服务器端RPC有没有NFS的信息:rpcinfo -p localhost

rpcinfo: can't contact portmapper: RPC: Remote system error - Connection refused

由此,开启RPC服务端应用。/etc/init.d/rpcblind start

再次查看服务端RPC有没有NFS的信息:rpcinfo -p localhost。由此看到全是自己的东西,RPC开放的端口是111,并没有接受NFS的任何信息。

将RPC设置称为开机自启动程序:

[root@nfsserve ~]#   chkconfig nfs on
[root@nfsserve ~]#    chkconfig rpcbind on
[root@nfsserve ~]#   chkconfig --list nfs
nfs                0:关闭  1:关闭  2:启用  3:启用  4:启用  5:启用  6:关闭
[root@nfsserve ~]# chkconfig --list rpcbind
rpcbind         0:关闭  1:关闭  2:启用  3:启用  4:启用  5:启用  6:关闭

开启nfs服务:

再次查看RPC服务有没有NFS的信息:rpcinfo -p localhost。可以发现多了好多端口,这些是因为NFS提供的功能很多,就有了很多端口。

客户端只要安装rpcbind就可以了,不需要安装nfs,前面已经讲过原理了,设置成开机自启动就可以了。

[root@nfsclient ~]# /etc/init.d/rpcbind start
Starting rpcbind:                                          [  OK  ]
[root@nfsclient ~]# chkconfig  rpcbind on
[root@nfsclient ~]# chkconfig  --list rpcbind
rpcbind         0:off   1:off   2:on    3:on    4:on    5:on    6:off

3.配置文件目录:

1)NFS的配置文件是 /etc/exprots 默认为空   共享目录是  /data

2)进行配置:其中rw 表示可读可写,sync表示同步到服务器端的磁盘中才算成功

[root@nfsserve /]# vim /etc/exports
# dangjinwei modify
/data  192.168.0.0/24(rw,sync)

3)重启nfs服务:

[root@nfsserve /]# /etc/init.d/nfs status
rpc.svcgssd 已停
rpc.mountd (pid 1623) 正在运行...
nfsd (pid 1638 1637 1636 1635 1634 1633 1632 1631) 正在运行...

4)本地检查共享文件:

[root@nfsserve /]# showmount -e localhost
Export list for localhost:
/data 192.168.0.0/24

5)客户端检查共享文件:

[root@nfsclient ~]# showmount -e 192.168.0.102
Export list for 192.168.0.102:
/data 192.168.0.0/24

6)客户端进行挂载:mount -t nfs  192.168.0.102:/data  /mnt;这里要注意,虽然挂载了,但是重启后还是会丢失。

通过这种方法可以避免丢失:

echo  "mount -t nfs  192.168.0.102:/data  /mnt">> /etc/rc.local

这里报错的原因在于:不仅仅在配置服务器端的时候,权限设置成可读可写,对于文件本身的权限也是要设置的。

这样就可以写入了,这里要注意,这里的属主是:nfsnobody

[root@nfsserve /]# cat /etc/passwd|grep 65534
nfsnobody:x:65534:65534:Anonymous NFS User:/var/lib/nfs:/sbin/nologin

这样就可以进行修改了

二十一、NFS服务的更多相关文章

  1. 二十二、NFS服务深入讲解

    一.查看nfs服务: [root@nfsserve ~]# ps -ef|grep -E "rpc|nfs"rpc       1565     1  0 17:29 ?      ...

  2. nginx nfs服务

    一.nginx服务 1.二进制安装nginx包 [root@bogon ~]# ls /etc/yum.repos.d/ [root@bogon ~]# cd /etc/yum.repos.d/ [r ...

  3. linux nginx服务 反向代理 负载均衡 nfs服务

    一.nginx服务 1.首先软件停用firewall #systemctl stop firewalld stop:本次停用 disable:开机停用 enable:开机启用 #ps aux | gr ...

  4. Linux基础-----------nginx安装和nginx web、nginx反向代理、nfs 服务

    作业一:nginx服务1)二进制安装nginx包 yum install epel-release -y 先安装epel-release 再查看yum源中已经安装上了epel相关文件 中间省去了一些安 ...

  5. NFS服务的配置与应用

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

  6. 07 nginx反向代理和nfs服务

    作业一:nginx服务二进制安装nginx包 作为web服务修改配置文件 让配置生效,验证配置 作业二:nfs服务二进制安装nfs作为共享存储挂载在三台web的网站根目录下实现,在任意一台web上修改 ...

  7. linux---nginx服务nfs服务nginx反向代理三台web

    一:nginx服务 1.二进制安装nginx包 [root@bogon ~]# systemctl disable firewalld #关闭Firewalls自启动 Removed symlink ...

  8. linux基础(5)- nginx服务、nfs服务

    一.nginx服务 源码安装: yum install gcc-* glibc-* openssl openssl-devel pcre pcre-devel zlib zlib-devel -yls ...

  9. NFS服务介绍及实验

    一.什么是NFS NFS 是 Network File System 的缩写,即网络文件系统.一种使用于分散式文件系统的协定,由 Sun 公司开发,于 1984 年向外公布.功能是通过网络让不同的机器 ...

  10. Linux centosVMware NFS介绍、NFS服务端安装配置、NFS配置选项

    一.NFS介绍 NFS是Network File System的缩写 NFS最早由Sun公司开发,分2,3,4三个版本,2和3由Sun起草开发,4.0开始Netapp公司参与并主导开发,最新为4.1版 ...

随机推荐

  1. Maven - 构建生命周期、阶段、目标

    版权所有,未经授权,禁止转载 章节 Maven – 简介 Maven – 工作原理 Maven – Repository(存储库) Maven – pom.xml 文件 Maven – 依赖管理 Ma ...

  2. Android进阶——多线程系列之异步任务AsyncTask的使用与源码分析

    AsyncTask是一种轻量级的异步任务类,它可以在线程池中执行后台任务,然后把执行的进度和最终结果传递给主线程并主线程中更新UI,通过AsyncTask可以更加方便执行后台任务以及在主线程中访问UI ...

  3. awk 总结

    说明:本文源于“朱双印博客”,原文地址:http://www.zsythink.net/archives/tag/awk awk 命令: 综合: awk功能是对“文本”进行格式化输出,形成报表:awk ...

  4. DQL单表查询

    DQL数据查询语言数据查询关键字:select 对数据库关系表中的数据进行查询 创建数据库创建表格学生表(学号s_no,姓名s_name,班级s_classno,课程s_courseno) 班级表(班 ...

  5. Java8集合框架——基本知识点

    前言 Java的基础集合框架的内容并不复杂,List.Map.Set 中大概10个常见的集合类,建议多看几遍源码(Java8),然后回过头再来看看这些各路博客总结的知识点,会有一种豁然开朗的感觉. 本 ...

  6. Java 创建对象的几种方式

    转自https://www.cnblogs.com/wxd0108/p/5685817.html 作为Java开发者,我们每天创建很多对象,但我们通常使用依赖管理系统,比如Spring去创建对象.然而 ...

  7. PHP SeasLog实现高性能日志记录

    https://www.jianshu.com/p/b5c01eb49df0 windows 安装 注意查看上面的信息 我标注了几个关键点  然后下载自己对应的 https://windows.php ...

  8. iOS精美过度动画、视频会议、朋友圈、联系人检索、自定义聊天界面等源码

    iOS精选源码 iOS 精美过度动画源码 iOS简易聊天页面以及容联云IM自定义聊天页面的实现思路 自定义cell的列表视图实现:置顶.拖拽.多选.删除 SSSearcher仿微信搜索联系人,高亮搜索 ...

  9. 2019.3.12 linux关于用户的一些命令

    su:默认切换到root 创建用户 adduser :新建一个用户 sudo adduser 新用户名字 :创建新用户 sudo passwd 用户名:修改该用户名的密码 创建组 sudo addgr ...

  10. ubuntu16.04 pcl安装教程

    https://blog.csdn.net/zkj126521/article/details/80157351 https://blog.csdn.net/e_small/article/detai ...