nfs的管理命令不包括

nfs的管理命令不包括,第1张

热门频道

首页

博客

研修院

VIP

APP

问答

下载

社区

推荐频道

活动

招聘

专题

打开CSDN APP

Copyright © 1999-2020, CSDN.NET, All Rights Reserved

c语言文件读写 *** 作代码

打开APP

开心才是真

关注

Linux网络文件系统NFS详解 转载

2018-12-07 14:21:17

开心才是真

码龄5年

关注

Linux网络文件系统NFS详解

阅读目录

什么是文件系统,NFS文件系统又是什么?

NFS包括两部分,服务端(servlet)及客户端(client)

NFS配置文件

回到顶部

什么是文件系统,NFS文件系统又是什么?

简单的说,文件系统就是通过软件对磁盘上的数据进行组织和管理的一种机制,对其的一种封装或透视。

你女朋友拍了美美的暧昧照片,放一个文件夹里发送给了A服务器,当你来访问的时候,被F5路由给B服务器了,然后你找不到资源了,你女朋友给你闹,你就不性福了哈哈,所以我们很容易想到,是不是可以把文件上传到一个公用的服务器上呢? 这样不管访问的是A还是B,读、取文件都只存在一份。答案是肯定的,这个公用的服务器我们也称之为文件服务器,NFS,Network File System。顾名思义,网络文件系统,即通过网络,对在不同主机上的文件进行共享。

回到顶部

NFS包括两部分,服务端(servlet)及客户端(client)

由于NFS服务功能很多,会有很多端口,这些端口还有可能不固定,(pc -ef | egrep nfs 我们可以看到nfs 不同的端口号)那么客户端就无法与服务器进行通信,因为程序间通信必须通过端口(tcp/udp都是端到端通信),那么就需要一个中间的桥接机制,RPC进程即充当这样一个角色,RPC的端口是一定的(111),当NFS启动时,会向RPC进行注册, (rpc 一定是在nfs启动前,就已经启动了,)那么客户端PRC就能与服务器RPC进行通信, 从而进行文件的传输。

当客户端用户打开一个文件或目录时,内核会判断,该文件是本地文件还是远程共享目录文件(如果是远程共享文件就都挂载mount 到/etc/init.d/rc.local下面),如果是远程文件则通过RPC进程访问远程NFS服务端的共享目录,如果是本地文件,则直接打开。

为了更好的并发,RPC进程及NFS进程都有多个。

NFS服务进程启动说明表格

服务(进程名字) 用途说明

nfsd(rpc.nfsd) rpc.nfsd主要功能就是管理NFS客户端是否能够登陆NFS服务器主机(登陆着id判别)

mountd(rpc.mountd) rpc.mountd管理nfs文件系统,当nfs客户端顺利通过rpc.nfsd服务端后,它可以使用NFS服务器提供数据,读取NFS的配置文件/etc/exports来进行文件系统权限比对

rpc.statd 检查文件的一致性

这些进程都可以执行man 进程名 来查看进程的详细功能

回到顶部

NFS配置文件

NFS配置文件定义

NFS的配置文件为 /etc/exports,内容格式,如:<共享目录> 客户端1(选项) [客户端2(选项) ...]

共享目录:NFS共享给客户机的目录。

客户端 :网络中可以访问此目录的主机。多个客户端以空格分隔。

选项:设置目录的访问权限、用户映射等,多个选项以逗号分隔。

例如: /data 192.168.1.0/24(rw,insecure,sync,all_squash,anonuid= 65534,anongid=65534)

NFS配置文件路径

NFS常用路径 说明

/etc/exports NFS服务主配置文件,配置NFS具体共享服务的地点,默认内容是空的 /usr/sbin/exports NFS服务的管理命令

exportfs

不重启nfs服务应用更新,相关选项如下:

-a 全部挂载或卸载 /etc/exports中的内容

-r 重新读取/etc/exports 中的信息 ,并同步更新/etc/exports、/var/lib/nfs/xtab

-u 卸载单一目录(和-a一起使用为卸载所有/etc/exports文件中的目录)

-v 在export的时候,将详细的信息输出到屏幕上。

nfsstat

查看NFS的运行状态。

rpcinfo

查看rpc服务注册情况。

相关选项:

-p 显示所有的端口与程序信息。

示例:

rpcinfo -p localhost #列出本机的RPC注册状况。

showmount

查询nfs共享目录信息,相关选项如下:

-a 显示已经于客户端连接上的目录信息

-e IP或者hostname 显示此IP地址分享出来的目录

示例:

showmount -e localhost #查询本机nfs共享目录情况

showmount -a localhost #查询本机共享目录连接情况

/usr/sbin/showmount 用来查看客户度那,查看NFS配置及挂载结果的命令 /var/lib/nfs/etab NFS配置文件的完成参数设定的文件

NFS配置参数权限

rw  表示可读写权限。

sync 请求或写入数据时,数据同步写入到NFS Server的硬盘后才返回。

async写入数据时会先写到内存缓冲区,直到硬盘有空档才会在写入磁盘,这样可以提升写入效率。风险是若服务器宕机或不正常关机,会损失缓冲区中未写入硬盘的数据(解决办法:服务器主板电池或UPS不间断电源)。

all_squash不管访问NFS Server共享目录的用户身份如何,它的权限都将被压缩为匿名用户,同时它的UID和GID都会变成nfsnobody账号身份,在生产环境中配置NFS的重要技巧:

  1)确保所有客户端服务器对NFS共享目录具备相同的用户访问权限,all_squash把所有客户端都压缩成匿名用户(UID相同),就是anonuid,anongid指定的UID和GID相同,

  2)所有的客户端和服务器端都需要有一个相同的UID和GID的用户,nfsnodoby(UID必须相同)

anonuid 参数以anon*开头即值anonymous匿名用户,这个用户的UID设置值通常为nfsnobody的UID值,当然我们也可以自行设置这个UID值。但是,UID必须存在于/etc/passwd中。在多个NFS Clients时,如多台web server共享一个NFS目录时,通过这个参数可以使得不同的NFS Clients写入的数据对所有NFS Clients保持同样的用户权限,即为配置的匿名UID对应用户权限,这个参数很有用。一般默认就好

anongid 同anonuid,区别是把uid(用户id)换成gid(组id)

ro  表示只有只读权限

sync是synchronized的缩写,意为同步,async是asynchonous的缩写意为异步,怎么理解同步和异步的,比如:你女朋买了一张票等你下班一起看电影,她会亲自给你电影票然后一起看电影,在比如生产者跟消费者,(要实现这个问题,需要用到多线程,要实现多线程,就需要继承(extend)Thread类,实现Runnable,Future接口并写run方法,,,线程有6中状态,初始,运行,阻塞,等待,等待超时,结束,,,咳咳咳跑题了)我们常常加同步锁synchronized,这样就是生产一个,消费一个(Linux分为实时同步和定时同步)。异步,在比如生产者跟消费者,生产100个产品,消费者只能消费50个,那么就会把生产者的产品放在超市,消费者就会去超市买东西,

总结NFS服务的配置过程:

--服务端--

1)查看系统版本,并检测有没有安装nfs和rpcbind服务,如果没有安装就执行:

2.启动服务(先启动rpcbind)

3.设置开机自启动

4.配置NFS服务

5.重新加载服务

6.检查或测试挂载

--客户端-

1.安装软件

2.启动rpcbind

3.配置开机自启动

?

1

chkconfig rpcbind on

4.测试服务端共享情况

5.挂载

如果客户端没有写权限,就检查共享文件的配置是否是rw权限,检查共享的文件的本身是否是rw 权限(也就是检查/data ls -li /data 如果不是655 就chmod 655 /data)

常见错误

1.df -h 检查服务端的NFS服务是不是启动成功,

2.确认NFS客户端showmount是否OK。

3.确认rpcbind上是否有NFS注册,(rpcbind必须先启动)

3.确认网络是否通畅

4.确认是否因为防火墙挡住(一般内网不需要开启防火墙,在出口加防火墙就够了)(/etc/init.d/iptables stop/start)

技术的提升是量的积累,思想的提升是质的飞越

分类: Linux学习之路

打开CSDN,阅读体验更佳

最新发布 linux-NFS(网络文件系统)

全称 Network File System,网络文件系统专用于Linux与Linux之间的文件共享服务NFS服务可以将远程Linux机器上的文件目录数据,通过挂载的形式映射在本地机器。

继续访问

linux 的NFS网络文件系统

NFS(Network File System)即网络文件系统,是由Sun 公司开发的一种通过网络方式共享文件系统的通用共享解决方案。目前NFS 有三个版本,分别为NFSv2、NFSv3、NFSv4。NFSv2 是一个古老的版本,但却被众多的 *** 作系统所支持,这样它的兼容性会更好;NFSv3 拥有更多的特点,包括更快的速度、更大的单个文件大小、更多便于排错的错误及成功信息、对TCP ...

继续访问

服务器 硬盘 恢复,服务器硬盘故障恢复备忘

新系统使用的是Fedora Core 4。回家学习使用了一下yum,和debian的apt-get差不多了:而且软件包的依赖关系整理的比较好。以下是应用的安装备忘:2006年7月30日 星期日 00时18分用awk生成关闭服务的脚本:关闭不需要的服务sudo /sbin/chkconfig --list| grep 3:on | awk '{print "/sbin/chkconfig "$1" ...

继续访问

配置网络文件系统(NFS)

网络文件系统(NFS)网络文件系统(NFS)是一种在网络上的机器间共享文件的方法,文件就如同位于客户的本地硬盘驱动器上一样。Red Hat Linux 既可以是 NFS 服务器也可以是 NFS 客户,这意味着它可以把文件系统导出给其它系统,也可以挂载从其它机器上导入的文件系统。NFS 对于在同一网络上的多个用户间共享目录很有用途。譬如,一组致力于同一工程项目的用户可以通过使用 NFS 文件系统(

继续访问

linux 命令 /sbin/chkconfig

chkconfig --list 查看全部服务状态 例如: 运行chkconfig --list httpd 看自动启动状态 httpd 0:off 1:off 2:off 3:on 4:on 5:on 6:off 0~6是指运行级别,一般服务器都运行在3这个级别上。 添加为自...

继续访问

linux查看nfs服务状态,Linux下NFS服务配置

NFS(Network File System)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源。在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样。NFS在文件传送或信息传送过程中依赖于RPC协议。环境:项目IP服务目录nfs-server192.168.1.253nfs-utils...

继续访问

NFS挂载情况查看

Linux NFS挂载 一、NFS挂载 192.25.10.101/home/sharedata/azkaban/ODS_HS08 挂载到 192.25.10.102/home/data_azkaban (一)192.25.10.101上 *** 作: 1,查看rpcbind、nfs是否安装 rpm -qa|grep nfs rpm -qa|grep rpcbind 安装命令:yum install -y nfs-utils rpcbind 2,vi /etc/exports 内容:/home/s

继续访问

linux系统如何启动rpcbind,关于Centos6.8 *** 作系统安装配置nfs、rpcbind服务后实现linux系统间文件数据共享(挂载mount共享路径)...

一、前言关于多个centos6.8 *** 作系统间实现文件数据资源共享(挂载mount网络文件路径),这边通过在服务端配置nfs(网络文件系统)+rpcbind服务软件,具体 *** 作步骤如下所示。二、安装步骤1. 确认服务端安装ndf服务、启动并设置为开机启动[root@centos6~]#rpm-qa|grepnfs@b@nfs-utils-1.2.3-64.el6.x86_64@b@nfs4...

继续访问

linux系统如何启动rpcbind,rpcbind无法启动的问题【已解决】

linux小白,请大神指教环境如下:[root@nfs-server ~]# uname -r2.6.32-504.el6.x86_64[root@nfs-server ~]# uname -mx86_64[root@nfs-server ~]# uname -aLinux nfs-server 2.6.32-504.el6.x86_64 #1 SMP Wed Oct 15 04:27:16 UT...

继续访问

配置 NFS 服务器并实现开机自动挂载

NFS 服务端概述: NFS,是 Network File System 的简写,即网络文件系统。网络文件系统是 FreeBSD 支持的文件系统中的一种,也被称为 NFS.NFS 允许一个系统在网络上与他人共享目录和文件。通过使用 NFS,用户和程序可以像访问本地文件一样访问远端系统上的文件。 NFS 的模式: C/S 模式 NFS 监听的端口: 2049 CentOS7 是以 NFSv4 作为默认版本,NFSv4 使用 TCP 协议(端口号是 2049)和 NFS 服务器建立连接。 NFS 是通

继续访问

nfs自动启动 linux,CentOS7系统下安装NFS并设置开机时启动

yum 安装yum -y install nfs-utils rpcbindnfs 的配置文件 /etc/expots默认为空vi /etc/exports/opt/test/ 192.168.1.0/24(rw,no_root_squash,no_all_squash,sync,anonuid=501,anongid=501)使配置生效exportfs -r注:配置文件说明:/opt/test ...

继续访问

使用nfsstat命令查看NFS服务器状态

转载于:http://www.cnblogs.com/jankie/archive/2011/09/03/2165851.html nfsstat命令显示关于NFS和到内核的远程过程调用(RPC)接口的统计信息,也可以使用该命令重新初始化该信息。如果未给定标志,默认是nfsstat -csnr命令。使用该命令显示每条信息,但不能重新初始化任何信息。 nfsstat命令的主要参数如下。 (1)...

继续访问

linux查看nfs挂载信息,Linux NFS挂载

Linux NFS挂载一、NFS挂载192.25.10.101/home/sharedata/azkaban/ODS_HS08 挂载到 192.25.10.102/home/data_azkaban(一)192.25.10.101上 *** 作:1,查看rpcbind、nfs是否安装rpm -qa|grep nfsrpm -qa|grep rpcbind安装命令:yum install -y nfs-ut...

继续访问

大话存储-学习总结6-系统IO路径及优化

理解主机端IO路径架构应用程序层1. NFS下的缓存机制 默认mount参数下的IO 默认条件下使用异步(async)方式,rsize=wsize=65535。内核不会透传程序的IO给NFS Server,对于写IO会延缓执行,积累一定的时间以便合并上层的IO。不管读还是写,async方式都会具有一定的效果,尤其是连续的IO地址。 Linux下使用NFS,对于写 *** 作,不管offset是否为P

继续访问

linux检查nfs服务,Linux-nfs服务

一、概念nfs server:提供服务的服务器。nfs client:访问服务端的服务器。RPC:远程过程调用 (Remote Procedure Call) 是能使客户端执行其他系统中程序的一种机制。关系:NFS是一种文件系统,RPC负责信息的传输。二、NFS守护进程nfsd:基本的nfs守护进程,保证客户端能够连接服务端。mountd:RPC安装守护进程,管理NFS文件系统。当客户端通过nfs...

继续访问

linux查看nfs服务是否打开,linux 验证 NFS 是否成功

服务器端----->>客户端1. 服务器端[root@allentuns ~]# ifconfig |grep "Bcast"inet addr:192.168.1.4 Bcast:192.168.1.255 Mask:255.255.255.0[root@allentuns ~]# cd /web/htdocs/[root@allentuns htdocs]# ls[root@a...

继续访问

Linux之nfs文件系统详解

NFS 概念 网络文件系统 (NFS) 是 Unix 系统和网络附加存储文件管理器常用的网络文件系统 , 允许多个客户端通过网络共享文件访问。它可用于提供对共享二进制目录的访问 , 也可用于允许用户在同一工作组中从不同客户端访问其文件。 一、nfs配置文件常用参数 服务端: 安装nfs服务 [root@server ~]# yum install nfs-utils -y 实验环...

继续访问

linux中的NFS

NFS的连接一、NFS1.1 概述1.2 相关软件包1.3 nfs特点1.4 nfs 工作原理1.5 nfs工作流程图1.6 挂载原理二、nfs 部署2.1 主服务器配置 IP 192.168.161.1282.2二、客户端配置2.3 检验总结: 引言: 阐述了多个客户端通过一台服务器达到数据互通 一、NFS 1.1 概述 NFS 是一种基于 TCP/IP 传输的网络文件系统协议,最初由 sun 公司开发。通过使用 NFS协议,客户机可以像访问本地目录一样访问远程 NFS 服务器中的共享资源。 NFS 也

继续访问

linux-NFS详解

一、NFS共享存储服务概述 1、NFS的概念及优点 NFS是一种基于TCP/IP传输的网络文件系统协议。 通过使用NFS协议,客户机可以像访问本地目录一样访问远程服务器中的共享资源; 对于大多数负载均衡群集来说,使用NFS协议来共享数据存储 是比较常见的方法,NFS也是NAS存储设备必然支持的一种协议; 2、NFS的缺点 由于NFS没有用户认证机制,而且数据在网络上明文传输,所以安全性很差,一般只在局域网中使用。 3、NFS的使用要求: NFS服务的实现依赖于RPC(远程过程调用)机制,以完成远程到本

继续访问

数据库课程设计

c语言文件读写 *** 作代码

html+css+js网页设计

写评论

1

1

点赞

分享

由于阿里云线上有NAS存储,又不能公网访问,所以本地通过软件构建一个NAS以供测试。

NFS的挂载原理

NFS分为客户端与服务器端,一般设置为一个Server端,多个客户端,也可设置为多对多,当服务器端设置好共享目录/data后,客户端通过相应的访问权限,将共享目录挂载到本地系统的某个目录下,就可以透明的看到共享目录里的文件了,依据服务器制定的相应权限做 *** 作

NFS服务器与客户端的通信原理

客户端NFS和服务端NFS通讯过程

1)首先服务器端启动RPC服务,并开启111端口

2)启动NFS服务,并向RPC注册端口信息

3)客户端启动RPC(portmap服务),向服务端的RPC(portmap)服务请求服务端的NFS端口

4)服务端的RPC(portmap)服务反馈NFS端口信息给客户端。

5)客户端通过获取的NFS端口来建立和服务端的NFS连接并进行数据的传输。

NFS系统守护进程

nfsd:它是基本的NFS守护进程,主要功能是管理客户端是否能够登录服务器;

mountd:它是RPC安装守护进程,主要功能是管理NFS的文件系统。

当客户端顺利通过nfsd登录NFS服务器后,在使用NFS服务所提供的文件前,还必须通过文件使用权限的验证。它会读取NFS的配置文件/etc/exports来对比客户端权限。

portmap:主要功能是进行端口映射工作。当客户端尝试连接并使用RPC服务器提供的服务(如NFS服务)时,portmap会将所管理的与服务对应的端口提供给客户端,从而使客户可以通过该端口向服务器请求服务。

环境:

新建一个虚拟机,系统安装使用最小化安装,可参照我前面的文章,有详细介绍。一般情况是系统盘是和数据盘分开。系统盘在线上我一般情况是分配20G,如果是容器等应用系盘我会分配50G,当然如果是有很多镜像的容器环境,那么我会系统将/var/lib/docker等用单独的数据盘来挂载。

安装配置NAS文件共享存储

1、服务端安装

2、关闭防火墙

3、配置nas

配置文件:/etc/exports

共享目录创建:

4. 本地NAS存储目录 192.168.230.0/24(授权访问客户端的地址段)

5. 重新加载NFS配置

参数说明:

rw:可读写的权限

ro:只读的权限 anonuid:可以自行设定这个UID的值,这个UID必需要存在于你的/etc/passwd当中anongid:同anonuid,但是变成groupID就是了 sync:资料同步写入到内存与硬盘当中 async:资料会先暂存于内存当中,而非直接写入硬盘 insecure:允许从这台机器过来的非授权访问

no_root_squash:登入NFS主机,使用该共享目录时相当于该目录的拥有者,如果是root的话,那么对于这个共享的目录来说,他就具有root的权限,这个参数『极不安全』,不建议使用

root_squash:登入NFS主机,使用该共享目录时相当于该目录的拥有者。但是如果是以root身份使用这个共享目录的时候,那么这个使用者(root)的权限将被压缩成为匿名使用者,即通常他的UID与GID都会变成nobody那个身份

all_squash:不论登入NFS的使用者身份为何,他的身份都会被压缩成为匿名使用者,通常也就是nobody

6. 启动服务

7. 设置开机启动

8. 查看端口占用,以便开着防火墙的时候设置,如果闲麻烦,可以通过限制访问IP

Linux nfs客户端安装

vi /ettc/hosts

在末尾加入

开机自动挂载

vi /etc/fstab

##尾行下面新增加一行写入

注:_netdev表示设备需要网络

五一节办公室要停电,机房虽有UPS,但也支撑不了8小时。

因生产环境有业务系统挂了办公室机房的NAS存储,故需要进行迁移,步骤记录如下:

先闲谈下技术-----------------------

NFS和samba的区别

samba是混合型网络中的共享服务,windows服务器可建samba服务,linux服务器也可建samba服务

nfs只面向unix、linux间的共享,linux服务器可建nfs服务(winodws系统也可以挂载nfs,就是有点不稳定)

NFS服务器上的 *** 作--------------------------

nfs服务器 *** 作系统版本:

[root@c7110 ~]# more /etc/system-release

CentOS Linux release 7.9.2009 (Core)

nfs服务器安装nfs服务

[root@c7110 ~]# yum -y install nfs-utils rpcbind

创建nfs目录,并授权

[root@c7110 ~]# mkdir /opt/nfs-test

[root@c7110 ~]# chmod 777 /opt/nfs-test

编辑nfs服务配置文件

[root@c7110 ~]# vi /etc/exports

内容如下:

/opt/nfs-test *(rw,root_squash,all_squash,sync)

重新加载nfs配置:

[root@c7110 ~]# exportfs -r

nfs服务设置开机启动

[root@c7110 ~]# systemctl enable rpcbind

[root@c7110 ~]# systemctl enable nfs

[root@c7110 ~]# systemctl enable nfs-lock

[root@c7110 ~]# systemctl enable nfs-idmap

启动nfs服务

[root@c7110 ~]# systemctl start rpcbind

[root@c7110 ~]# systemctl start nfs

[root@c7110 ~]# systemctl start nfs-lock

[root@c7110 ~]# systemctl start nfs-idmap

查看nfs服务启动后,所监听的端口信息:

[root@c7110 ~]# rpcinfo -p

linux服务器服务器上 *** 作-------------------------------

业务服务器安装nfs软件客户端

[root@c7111 ~]# yum -y install nfs-utils

建立一个挂载目录

[root@c7111 ~]# mkdir /opt/test-m

挂载nfs服务器共享出来的目录

[root@c7111 ~]# mount -t nfs 10.x.x.10:/opt/nfs-test /opt/test-m/

查看下已挂载的nfs

[root@c7111 ~]# df -h

Filesystem Size Used Avail Use% Mounted on

devtmpfs 1.5G 0 1.5G 0% /dev

tmpfs 1.5G 0 1.5G 0% /dev/shm

tmpfs 1.5G 8.8M 1.5G 1% /run

tmpfs 1.5G 0 1.5G 0% /sys/fs/cgroup

/dev/mapper/centos-root 97G 2.3G 95G 3% /

/dev/sda1 1014M 171M 844M 17% /boot

tmpfs 297M 0 297M 0% /run/user/0

10.x.x.6:/opt/nfs-test 97G 4.1G 93G 5% /opt/test-m

经测试,数据可读可写,证明nas服务没有问题,于是进行数据同步,数据同步用rsync命令。

rsync -avp gdsz@10.87.5.6::nas_6 /mnt/guidang/ --password-file=/root/rsync_pass --bwlimit=100000

数据同步完,通知研发进行挂载切换。研发同事在测试时,发现文件属性中的uid及gid与原来的不一致,有些担心,于是又小完善了一下NFS服务。

编辑nfs服务配置文件

[root@c7110 ~]# vi /etc/exports

内容如下:

/opt/nfs-test *(no_all_squash,anonuid=600,anongid=600)

重新加载nfs配置:

[root@c7110 ~]# exportfs -r


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11203175.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-14
下一篇 2023-05-14

发表评论

登录后才能评论

评论列表(0条)

保存