使用网络文件系统(NFS)

10.网络文件系统( NFS)使用 本文介绍 了网络文件系统NFS在嵌入式系统开发中的优点和使用方法 阅读详情
下载
第29章使用网络文件系统(NFS)
作者:Neal S. Jamison
本章内容包括:
• 什么是N F S
• 实现—N F S工作过程
• NFS使用的文件及命令
• 示例:共享及登录N F S文件系统
• 与N F S常见问题及解决方案
• 相关协议及产品
T C P / I P提供相应的协议及服务,允许多个计算机共享数据。这一特性被广泛用于互联网
应用中,在众多此类应用中,最常见的T C P / I P应用是网络文件系统,简称N F S。
29.1 什么是NFS
N F S是分布式文件系统,它允许计算机通过T C P / I P网络共享资源。在N F S中,N F S客户端
应用可透明地读/写位于N F S服务器上的文件。在N F S出现之前,计算机间共享数据的惟一途
径是复制数据或集中使用数据。这种方式存在明显的缺陷—复制数据浪费存储空间而且存
在实时一致性问题,集中使用数据意味着大型机及多个终端,而且只存在于单一网络中。
随着N F S的诞生,用户可以共享数据且与平台无关,所有上述问题迎刃而解。
注意在本书中,文件系统指以目录结构有组织存放的一组文件的集合。例如,Unix系
统中的/usr就是一个文件系统。
N F S服务器共享资源,使它们可被网上的客户使用。如下所述, N F S既可以使用于L A N,
也可以使用于WA N,并且N F S与操作系统及硬件无关,它允许各种计算机共享资源。N F S实
际上由两个协议组成: M o u n t和N F S。
29.1.1 NFS的历史
N F S由S u n (升阳)公司于1 9 8 4年提出。它首先实现于其4 . 2 B S D上(通常称之为S u n O S )。由
于它受到广泛的关注并且应用需求很广,因此N F S迅速在其他各种平台上实现。至1 9 8 6年止,
N F S可在1 6种不同的硬件平台上的五种操作系统间共享资源。目前, N F S可应用于多种硬件平
台及操作系统平台,并且增加了基于We b的功能。
29.1.2 为何使用NFS
N F S的目标是使计算机共享资源。在它的发展过程中(即8 0年代),计算机工业飞速发展。
廉价C P U及客户/服务器技术促进了分布式计算环境的发展。然而,当处理器价格下降时,大
容量的存储系统相对而言价格仍高居不下。因此,必须采用某种机制在充分发挥单个处理器
性能的同时使计算机可共享存储资源和数据, N F S应运而生。
29.2 实现—NFS工作过程
N F S使用T C P / I P提供的协议和服务,它运行于O S I模型的应用层,如表2 9 - 1所示。
表29-1 OSI层次模型上的N F S
层数名称功能
1 应用层N F S
2 表示层X D R
3 会话层R P C
4 传输层U D P, TCP
5 网络层I P
6 数据链路层
7 物理层E t h e r n e t
出于性能上的原因, N F S起初采用性能较好的U D P,而并未采用可靠性较高的T C P。虽然
U D P在可靠性较好的局域网中工作良好,但在可靠性较差的广域网如I n t e r n e t上运行时, U D P
则不能胜任。当前,随着T C P的改进,运行于T C P上的N F S不但可靠性高而且性能良好。从
Solaris 2.6开始,S u n公司使用基于T C P的N F S。
注意要了解关于TCP和UDP的详细信息,参见第9章。
29.2.1 远程过程调用(RPC)和外部数据表示(XDR)
为了实现平台无关性, N F S基于O S I底层实现。基于会话层的远程过程调用( R e m o t e
Procedure Call,R P C )和基于表示层的外部数据表示(External Data Representation,X D R )为
N F S提供所需的网络连接及解释基于这些连接发送的数据格式。简单的说,它们使N F S可正常
工作于不同平台。本章针对此作详细讲解。
1. 理解R P C
R P C运行于O S I模型的会话层,它提供一组过程,使远程计算机系统可像调用本地过程一
样调用这些过程。使用R P C,本地计算机或应用程序可调用位于远程计算机上的服务。R P C
提供一组过程库,高层应用可以调用这些库而无需了解远程系统的底层细节。因为R P C的抽
象使得N F S与平台无关。
2. 理解X D R
外部数据表示库负责在不同的计算机系统间转换R P C数据, X D R设计了一种标准的数据
表示,使得所有计算机均可理解。
总而言之, R P C和X D R是N F S实现客户/服务器关系的基石。
29.2.2 加载类型
如前章所述, N F S的无状态特性允许客户端和客户应用程序从服务器不可用中恢复。加
载的类型决定当服务器崩溃时客户及客户应用的响应方式。加载类型将在本章2 9 . 5节中讨论。
1. 硬加载
当N F S服务器或资源不可用时,硬加载资源将导致不断尝试R F C调用。一旦服务器响应,
324使用第七部分使用T C P / I P应用
下载
R P C调用成功且进入下一个执行过程。如果服务器或网络问题持续,硬加载将引起持续等待
状态,使N F S客户端应用挂起。用户可以指定属性使硬加载可中断。
2. 软加载
使用软加载资源时, R P C调用失败将导致N F S客户应用同时失败,最终使数据不可用。此
种方法不可用于可写的文件系统或读取关键数据及可执行程序。
注意下一节与U N I X的帮助文档类似。要获取更详细的信息,参见相关文件及程序的
帮助文档。
29.3 NFS使用的文件及命令
本节主要讲述N F S使用的守护进程、程序和文件。因为N F S与U N I X系统紧密相连,本节
将以两个常见的U N I X操作系统(San Solaris 2.0和L i n u x )为例介绍共享和使用N F S资源。至于
基于其他系统的实现方法,包括基于P C的客户端将在本章2 9 . 6节中讨论。
守护进程工作过程
在U N I X中,守护进程是在后台运行的程序,它等待某些事件的发生。在英文中,守护进
程又称为精灵,即介于人与神之间的一种存在。在U N I X中,它位于两个进程之间。例如,打
印守护进程等待打印作业进入打印队列。在本章中, N F S守护进程等待客户请求文件系统。
29.3.1 NFS守护进程
N F S正常工作需要多个服务器守护进程协同工作。下面将以S o l a r i s和L i n u x操作系统分别
介绍N F S守护进程。
1. Solaris 2.x
下列S o l a r i s守护进程分别用于监听、处理及维护N F S请求。S o l a r i s服务器守护进程由脚本
/ e t c / i n i t . d / n f s . s e r v e r启动。
(1) nsfd
n s f d服务器守护进程用于监听N F S客户请求。
用法: /usr/lib/nfs/nfsd [-a] [-c #_conn] [-l listen_backlog] [-p protocol] [-t device]
[ n s e r v e r s ]
属性:
- a—运行N F S守护进程,可处理所有可用的面向连接和无连接请求,包括U D P和T C P。
-c # _conn—设置N F S服务器可处理的面向连接请求的最大连接数。缺省设置为无穷大。
- p—设置基于面向连接传输的NFS TCP连接队列的长度。缺省值为3 2。
-p protocol—启动基于指定协议的N F S守护进程。
-t device—在指定设备上启动N F S守护进程。
N s e r v e r s—指定可同时处理的最大请求数。
相关文件: / e t c / i n i t . d / n f s . s e r v e r;s h e l l脚本也可启动n f s d。
(2) mountd
m o u n t d响应N F S访问请求及文件系统加载请求。它通过读取/ e t c / d f s / s h a r e t a b确定文件系统
的可用性。m o u n t d为服务器守护进程。
第2 9章使用网络文件系统( N F S )使用325
下载
用法:/usr/lib/nfs/mountd [-v] [-r]
属性:
- v—冗余模式,在控制台显示信息。
- r—拒绝客户请求。
相关文件: / e t c / d f s / s h a r e t a b (参见2 9 . 3 . 2节)。
(3) statd
s t a t d为客户方守护进程,它与l o c k d协同工作,提供文件加锁服务的崩溃与恢复。
用法:/ u s r / l i b / n f s / s t a t d
相关文件: l o c k d。
(4) lockd
l o c k d是客户方守护进程,它是N F S锁管理器的一部分,用于对N F S文件加锁。
用法:/usr/lib/nfs/lockd [-g graceperiod] [-t timeout] [nthreads]
属性:
-g graceperiod—服务器重启后,客户端回收锁的时间间隔,单位为秒(缺省值为4 5 )。
-t timeout—客户重新请求锁的时间间隔,单位为秒(缺省值为1 5 )。
n t h r e a d s—响应锁请求的线程数(缺省值为2 0 )。
相关文件: s t a t d。
2. Linux
下列L i n u x守护进程分别用于监听、处理和维护N F S请求。它们的作用及语法与S o l a r i s中
的守护进程类似。
(1) rpc.nfsd
r p c . n f s d守护进程用于处理N F S请求,它是服务器守护进程。
用法:
属性:
-f exports-file—指定输出文件,缺省输出文件为/ e t c / e x p o r t s。
- h或- h e l p—提供帮助信息。
- l或- - l o g - t r a n s f e r s—记录所有文件的传输信息。
- n或- - a l l o w - n o n . r o o t—允许守护进程接收进入的N F S请求,即使这些请求不是由允许的
I P产生。
-P portnum 或--port portnum—让n f s d监听指定的端口,替代缺省端口2 0 4 9或文件
/ e t c / s e r v i c e s中指定的端口。
- p或- p r o m i s c u o u s—使服务器可被网络中任何主机使用。
- v或- v e r s i o n—显示程序的当前版本。
n u m s e r v e r s—允许用户同时运行多个n s f d实例。
326使用第七部分使用T C P / I P应用
下载
相关文件: exports, mountd
(2) rpc.mountd
r p c . m o u n t d接收加载请求并检测/ e t c / e x p o r t s文件中N F S文件系统的可用性。如果请求资源
可以使用, r p c . m o u n t d创建文件处理进程并在/ e t c / r m t a b中添加相应项。接收u m o u n t请求后,
从/ e t c / r m t a b文件中删除相应的项。
用法:
属性:
查询上一个命令,r p c . n f s d,可知r c p . m o u n t d命令属性的含义。
相关文件: /etc/exports, /etc/rmtab
(3) rpc.statd
参见s o l a r i s中的s t a t d。
(4) rpc.lockd
参见s o l a r i s中的l o c k d。
(5) biod
b i o d在N F S客户端启动指定数目的异步块I / O守护进程。这些进程用于在N F S文件系统上
执行提前读和推后写操作,以提高N F S的性能。
用法:/usr/etc/biod [numdaemons]
29.3.2 与NFS相关的文件
在共享或加载N F S文件系统前,必须首先修改服务器和客户方文件。
1. solaris 2.x文件
S o l a r i s中的下列文件定义和跟踪N F S资源。
(1) /etc/dfs/dfstab
d f s t a b文件中包含一组控制N F S文件系统输出的共享命令。关于s h a r e命令的详细信息将在
本章2 9 . 3 . 3节中讲述。
示例:
(2) /etc/dfs/sharetab
s h a r e t a b文件中包含与通过s h a r e命令共享的文件系统对应的项。这些项由系统自动生成。
s h a r e t a b文件中的每一项包含以下几部分:
• pathname—共享资源的路径。
• resource—远程系统访问资源的名称。
• fstype—共享资源的类型。
• specific_options—共享资源时指定可以使用的属性。
• description—共享资源的描述信息,当资源被共享时提供给客户。
示例:
第2 9章使用网络文件系统( N F S )使用327
下载
/export/home2-nfs rw=engineering "Engineering Home"
(3) /etc/rmtab
r m t a b文件中包含了当前被用户加载的N F S文件系统列表。它也是由系统自动生成,其每
一行的格式如下:
hostname: fsname
示例:
engineering5: /export/home2
(4) /etc/vfs/vfstab
v f s t a b文件用于描述被加载的本地和远程文件系统,它是N F S客户端文件。v f s t a b文件的
每一行包含以下几部分:
• 加载( m o u n t )设备
• fsck 设备
• 加载点
• 文件系统类型
• fsck pass
• 启动时加载
• 加载属性。
示例:
2. Linux文件
在L i n u x中下列文件定义和跟踪N F S资源。
(1) /etc/exports
e x p o r t s文件指定了可被N F S用户使用的文件的访问控制权限。e x p o r t s文件的每一行包含
N F S资源及允许加载资源的主机。访问控制属性以简写方式给出,也可以不指定权限。此时,
资源的访问权限由一组扩展的属性和参数管理。详细信息请查阅相关文档。
示例:
/users/home host.mydomain.com (ro)
示例表明:主机h o s t . m y d o m a i n . c o m可以加载/ u s e r s / h o m e文件系统,访问权限为只读。
(2) /etc/rmtab
r m t a b文件给出当前被用户加载的N F S文件系统列表。它由系统维护。其文件格式如下:
hostname: resource
示例:
d a t a h o u s e . a n v i . c o m : / u s e r s / h o m e
(3) /etc/fstab
/ e t c / f s t a b文件为系统可使用的每个文件系统建立一项。它等价于S o l a r i s中v f s t a b . f s t a b文件
中的每一项包含以下几部分:
• 远程文件系统(remote filesystem)—远程资源的路径。
• 加载点( m o u n t p o i n t )—远程资源在本地的加载点。
• fstype—远程资源的类型(例如n f s )。
• 加载属性( m o u n t _ o p t i o n s )—指定与文件系统相关的属性。
328使用第七部分使用T C P / I P应用
下载
• 备份属性(dump option)—指定文件系统是否应备份。缺省值表示不备份。
• fsck pass—指明f s c k在何时检查文件系统。缺省值表示f s c k不检查文件系统。关于f s t a b
的详细信息请查阅相关帮助文档。
示例:
solaris:/wwww /mnt nfs resize=1024, wsize=1024 hard, intr 0 0
29.3.3 NFS服务器命令
正确运行守护进程并且对相关文件进行修改后,共享及加载N F S资源非常简单。
1. 创建共享资源
在N F S资源可被网络客户使用之前,它们必须由N F S服务器共享。下面讲述如何在S o l a r i s
和L i n u x中使用正确的命令共享(输出)资源。
(1) slaris 2.x服务器命令
下列S o l a r i s命令用于共享及监视N F S资源。
s h a r e
s h a r e命令使指定的文件系统可被客户端使用。
用法:share [-F FSType] [-o specific_options] [-d description] [pathname]
属性:
-F FSTy p e—指定文件系统类型。
-o specific_options—用于控制访问共享资源。控制方式有以下几种:
rw 可读/写
rw=client [:client]⋯—仅能被指定客户读/写
R o 只读
ro=client [:client]⋯—仅能被列出的客户只读访问
-d description—对共享资源进行描述
p a t h n a m e—指明共享资源的路径
示例:
s h a r e a l l
s h a r e a l l命令用于共享特定文件、标准输入或d f s t a b文件列出的资源。
用法:shareall [-F FSType [, FSTy p e⋯]] [- file]
属性:
-F FSTy p e—指定文件系统类型。
[- file]—如果使用“ -”,s h a r e a l l命令以标准输入作为其输入参数。如果指令文件名,
则s h a r e a l l命令以文件的内容作为输入参数。如果项为空,则s h a r e a l l命令使用d f s t a b文件
( / e t c / d f s / d f s t a b )为输入参数。
s h o w m o u n t
s h o w m o u n t命令列出命令执行的服务器行上,加载该服务器文件系统的所有客户端。
用法:/usr/sbin/showmount [-ade] [hostname]
属性:
第2 9章使用网络文件系统( N F S )使用329
下载
- a—列出所有远程加载。
- d—列出被远程加载的目录。
- e—列出所有共享的文件系统。
(2) Linux服务器命令
下列L i n u x命令用于共享及加载N F S资源。
e x p o r t f s
e x p o r t f s命令使系统重取读取/ e t c / e x p o r t f s文件。某些L i n u x版本没有e x p o r t f s命令。如果用
户碰到这种情况,可创建s h e l l脚本完成相同的功能。
s h o w m o u n t
s h o w m o u n t命令检测N F S服务器加载守护进程,获取当前被加载的文件系统的信息。
用法:/usr/sbin/showmount [-adehv] [--all] [--directories] [--exports] [--help] [--version] [host]
属性:
- a或- a l l—以h o s t : d i r的格式列出客户端主机名及其加载的目录。
- d或- d i r e c t o r i e s—仅列出客户加载的所有目录。
- e或- e x p o r t s—列出服务器上可加载的文件系统。
- h或- h e l p—提供帮助信息。
- v或- v e r s i o n—显示当前程序的版本信息。
- n o - h e a d e r s—从输出中删除标题。
2. 不共享资源
出于某种原因,用户希望防止文件系统被加载时,既可以使用m o u n t命令加上- r属性,也
可以采用不共享资源的方法。
(1) Solaris 2.x
下列S o l a r i s命令用于不共享N F S资源。
u n s h a r e
u n s h a r e命令使共享文件系统不可用。
用法:unshare [-F FSType] [-o specific_options] [pathname | resourcename]
如果命令中未指定-F FSType, unshare命令将以/ e t c / d f s / d f s t a b文件的第一行中的F S Ty p e为
该项参数的缺省值。-o specific options根据F S Ty p e不同而不同。详细信息参见相关文档。
u n s h a r e a l l
u n s h a r e a l l命令不共享所有F S Ty p e类型的共享资源。
用法:unshareall [-F FSType [, FSTy p e⋯] ]
如果命令中未指定F S Ty p e,则停止所有共享资源的共享。
使用s h o w m o u n t进行确认
s h o w m o u n t命令可用于检查文件系统是否仍被客户加载。语法格式参见本章已讲述内容。
(2) 在L i n u x使用e x p o r t s命令停止资源共享
L i n u x缺少正式的命令用于停止资源的共享。完成这一工作的最佳方法是编辑共享文件即
330使用第七部分使用T C P / I P应用
下载
/ e t c / e x p o r t s文件,删去不希望继续共享的文件系统。然后运行e x p o r t s命令使系统重新读取共
享文件。如果系统没有e x p o r t s命令,可创建等价的s h e l l脚本完成相同的功能:
29.3.4 NFS客户命令
本节讲述用于加载及取消加载N F S资源的客户命令。
注意在加载到NFS资源前应首先创建加载点。
1. 加载N F S资源
下述命令用于加载共享资源:
(1) mount (Solaris/Linux)
m o u n t命令用于加载远程N F S文件系统。
用法( s o l a r i s ):
用法( L i n u x ):
mount (-hv] (打印帮助及版本信息)
S o l a r i s和L i n u x的m o u n t命令在功能上相似,但都包含一些特有的属性。详细信息参见有
关文档及帮助文件。
加载到N F S资源最简单的方法是利用v f s t a b或f s t a b文件中指定的加载点或设备。
例如,假设S o l a r i s中v f s t a b文件包含以下行:
则可以使用下述命令加载文件系统:
(2) mountall(solaris)
m o u n t a l l命令加载的v f s t a b文件指定所有资源。
用法:mountall [-F FSType] [-l -r] [file_system_table]
第2 9章使用网络文件系统( N F S )使用331
下载
属性:
-F FSTy p e—文件系统类型,本例为N F S。
- l—加载所有本地文件系统。
- r—加载所有远程文件系统。
f i l e - s y s t e m - t a b l e—缺省值为/ e t c / v f s t a b。
2. 自动加载
用户可以设置一个特殊的N F S守护进程来监视对远程N F S文件系统的需求。这一进程称为
自动加载。当应用或客户需要使用未加载的远程文件系统,自动加载进程自动加载到N F S服
务器的相应文件系统。当远程文件系统不被使用时,自动加载进程停止此加载。使用自动加
载有许多好处,如充分利用网络及便于管理。
自动加载既可用于S o l a r i s平台也可用于L i n u x平台,对于大多数U N I X平台都适用。详细
信息参见用户使用的操作系统的相关文档或U N I X帮助文件。
3. 不加载N F S资源
下列命令用于取消对共享资源的加载。
(1) umount (Solaris/Linux)
u m o u n t命令取消对共享资源的加载。
用法( S o l a r i s ):
用法( L i n u x ):
umount [-hv] (显示帮助及版本信息)
与m o u n t命令相似,L i n u x和S o l a r i s中的u m o u n t命令除了几个特别的属性外几乎完全相同,
详细信息参见相关文档及帮助。
u m o u n t命令也只能使用v f s t a b或f s t a b文件中指定的设备或加载点作为其参数。
例如,假设L i n u x中的f s t a b文件包含以下行:
remotehost:/export/home2 /export/myhomenfs rsize=1024, wsize=1024, hard, intr, 0 0
用户可使用以下命令卸载文件系统:
(2) umountall (Solaris)
u m o u n t a l l命令将卸载所有已加载的文件系统。命令属性可使用户仅卸载远程文件系统或
从特定主机加载的文件系统。
用法:
332使用第七部分使用T C P / I P应用
下载
属性:
- k—杀死所有使用文件系统的进程。
- s—不并行卸载文件系统。
-F FSTy p e—仅卸载指定类型的文件系统(如N F S )。
- l—仅卸载本地文件系统。
- r—仅卸载远程文件系统。
-h host—仅卸载从指定主机上加载的文件系统。
29.4 示例:共享及加载NFS文件系统
用户可在Solaris 2.6系统中共享文件系统,在Linux(Red Hat6.0)系统上加载共享文件系统。
用户首先需要修改/ e t c / d f s / d f s t a b文件,在文件中增加以下行:
此行将共享文件系统/ w w w。
在d f s t a b文件后,用户可以通过执行s h a r e a l l命令使/ w w w文件系统可被远程加载。
运行s h a r e命令检查/ w w w是否已经共享。
下一步用户需要确认守护进程是否正确运行。在S o l a r i s系统中,用户需要运行n f s d和
m o u n t d。可使用p s命令查看已运行的进程。
p s命令显示系统中当前活跃的进程,其中包含N F S守护进程,如下所示:
如果守护进程没有运行( p s命令未显示上面两项),可以使用NFS 初始化过程启动它们。
现在,用户可以在L i n u x客户端加载共享资源。
在L i n u x系统中,使用以下m o u n t命令:
卸载文件系统命令如下:
要使L i n u x系统可持续加载/ w w w文件系统,用户可在/ e t c / f s t a b文件中加入以下行:
此行指定将NFS /www文件系统加载到加载点/ m n t。h a r d及i n t r属性表明加载为硬加载且不
可中断(可靠性高)。
整个过程非常简单,但实际操作过程中总会出现问题。下一节将描述用户常见的问题及解决办法。
第2 9章使用网络文件系统( N F S )使用333
下载
29.5 NFS常见问题及解决方案
本节介绍在U N I X环境中设置和运行N F S的一些技巧,并讲述一些常见的问题及相应的解
决办法。因为需要修改许多文件并启动多个守护进程,正确使用N F S是一项有挑战性的工作。
29.5.1 不能加载
加载问题常由不正确的配置或网络问题引起。
除非用户可以确定问题的根源在何处(例如,在未查阅帮助的情况下配置v f s t a b文件),否
则解决加载问题最好从顶层开始。
用户首先需要检查是否可与N F S服务器通信。可以使用p i n g命令检查网络互连情况。
如果网络连接正常,检查守护进程是否正常运行。详细信息参见本章2 9 . 3 . 1节中的内容。
使用s h a r e命令或类似命令检查资源是否正确共享。如果资源共享不正确,检查服务器配置文
件( d f s t a b或e x p o r t s )。详细信息参见本章2 9 . 3 . 2节中的内容。确认服务器可识别客户。在
/ e t c / h o s t s中的客户主机名应与配置文件中的主机名相同。例如,如果服务器指定名为l o c o的系
统可加载某资源,则l o c o 应包含在h o s t s 文件中。N F S对主机名非常挑剔,即使
l o c o . m y d o m a i n . c o m存在于h o s t文件中,仍需文件中加入l o c o。
如果用户不能访问服务器,则需要请求系统管理员协助。
如果用户可以访问服务器,且服务器配置正确,则需进一步检查客户方配置。与服务器
类似,用户需要检查客户方的守护进程及相关文件( f s t a b或v f s t a b )的配置,检查h o s t s文件和
N F S配置文件中主机名的一致性。
29.5.2 不能卸载
如果发现不能卸载资源,首先需要检查用户是否正在使用资源。如果用户收到“文件系
统忙”此类模凌两可的信息,则需检查所有打开的s h e l l和终端,是否运行了打开文件系统的
文件管理器。同时需要确信没有编辑器正在使用系统中的文件。如果发现,则终止此编辑器
或文件管理器,并重新卸载。最后,不要忘记检查正在使用的s h e l l。
29.5.3 硬加载与软加载
N F S文件系统可使用两种方式加载:硬加载和软加载。如前所述,硬加载的可靠性高,
适用于加载可写资源或访问关键的文件和程序。如果资源被硬加载,一旦服务器崩溃或网络
连接异常,程序(或用户)访问将被挂起,这将导致不可预见的结果。缺省情况下, N F S资源均
采用硬加载。
与硬加载相对应的是软加载,采用软加载,客户与服务器连接异常将导致使用N F S资源
的应用程序中止。并且,在不可信网络上使用软加载也会导致不可预料的结果。
用户可以采用h a r d和i n t r属性加载N F S资源避免上述问题。这些m o u n t命令属性使硬加载可
响应中断。
29.6 相关协议及产品
由于N F S的普及,及对于在不同计算机平台间共享资源的迫切需求,出现了许多基于N F S
334使用第七部分使用T C P / I P应用
下载
的工具及与N F S类似的工具。本节将对这些工具作简单介绍。
29.6.1 WebNFS
Sun 公司最近推出了We b N F S,它是N F S协议的增强版。We b N F S提供更好的扩展性、可
靠性及性能。We b N F S也可与防火墙协同工作—这是基于R P C的N F S的弱点。
详细信息参见h t t p : / / w w w. s u n . c o m / w e b n f s。
29.6.2 基于PC的NFS及其他客户端软件
P C - N F S是S u n公司推出的适用于非U N I X平台的N F S客户端产品。它使用户的非U N I X系
统可充分利用用户所在组织的共享资源。它依赖于守护进程p c n f s d,并与其他S u n产品一起发
售。
用户也可以采用其他N F S客户方产品。表2 9 - 2列出了部分N F S客户方产品及产品信息所在
的We b地址。
表29-2 部分N F S客户方产品
29.6.3 SMB和CIFS
服务信息块简称为S M B,是由I B M、微软和其他几家公司一起开发的公用标准,主要用
于计算机间共享文件系统、打印机和其他资源。Windows NT、O S / 2和L i n u x均对S M B提供本
地支持,其他系统可以通过采用第三方软件对S M B提供支持。
关于S M B的详细信息,参见h t t p : / / w w w. s a m b a . o rg / c i f s / d o c s / w h a t - i s - s m b . h t m l。
通用互联网文件系统(C I F S)简介
通用互联网文件系统( C I F S )由一组厂商(微软、S C O、通用数据等公司)共同开发,
它是S M B的公用版本。它的最初实现与NT LM(Microsoft NT中的LAN Manager)非常
相似,支持在互联网上共享资源。
关于C I F S的详细信息参见h t t p : / / m s d n . m i c r o s o f t . c o m / w o r k s h o p / n e t w o r k i n g / c i f s /。
部分实现S M B的产品:
• samba
• Windows for workgroups 3.x, Windows NT, 95/98/2000
• LAN Manager
s a m b a支持S M B和C I F S协议
s a m b a是源码公开的客户服务器产品,它支持S M B和C I F S协议。用户可在遵守G N U的情
况下使用它。
第2 9章使用网络文件系统( N F S )使用335
下载
产品厂商U R L
s a m b a可使用户非常方便地共享服务器资源,如共享文件系统和打印机给同一网络的客
户。
29.6.4 其他产品
许多其他产品也可以实现在多个计算机间共享资源。与N F S和S M B不同,它们中的大多
数都不支持异构网络,不能在不同计算机平台间共享资源。这些协议包括: A p p l e Ta l k、
D e c n e t、N e t Wa r e等等。
注意相关RFC文档。
29.7 小结
本章讨论了N F S的历史及实现,介绍了与N F S相关的的守护进程、文件和其他程序,并给
出了一个加载和共享N F S文件系统的实例。最后讨论了相关的程序和协议,如客户端N F S程序
和S M B协议等。
使用N F S及其命令需要运行多个守护进程,配置多个文件,因此,本章简单介绍了常见
的问题及解决办法并给出了一些参考文档供用户进一步学习N F S。
336使用第七部分使用T C P / I P应用
下载 
深入理解mount.nfs命令的使用与网络文件系统挂载 本文介绍了mount.nfs命令的基本用法和网络文件系统的挂载过程。通过探索mount.nfs的可用性、名称、功能以及使用语法,读者将能够有效地在Linux系统中挂载NFS类型的网络文件系统。 阅读详情

相关推荐

从零构建:STM32与EC800 4G模块的工业物联网数据透传实战

本文详细介绍了如何从零构建STM32与EC800 4G模块的工业物联网数据透传系统。内容涵盖硬件选型、抗干扰电路设计、AT指令稳定性优化、网络连接管理、可靠数据透传协议以及低功耗策略,为开发者提供了一套可直接应用于工业场景的完整实战方案。

uran的专栏 1014

学习笔记 NFS搭建

搭建nfs 1.用yum搭建nfs 2.关闭防火墙 3.建立传输目录 4.客户机安装nfs服务 5.完成

FKLJ123的博客 296

GMSL Strapping Pins CFG0/CFG1 应用

如果 0x13.bit3 = 0, 则是链路没有 Locked,需要去排查下具体问题(通常是工作模式配置问题)如果遇到 Link 无法建立(Locked),电源没有问题的情况下,多半是加串器和解串器的工作模式不匹配。芯片在上电时,会检测这两个管脚的电压,根据不同的电压值,芯片进入到不同的工作模式。一对加串器和解串器,只要工作模式匹配得当,Link Locked,便能够正常工作。ADI 已经充分考虑了用户的需求,尽可能的降低的芯片的使用和配置复杂度。GMSL 的解串器也是类似的配置,具体请参考对应的规格书。

iStoneWalker的博客 1271

NFS服务

1. nfs简介 1.1 nfs特点 NFS(Network File System)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源 在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样 nfs适用于Linux与Unix之间实现文件共享,不能实现Linux与Windows间的文件共享功能 nfs是运行在应用层的协议,其监听于2049/tcp和2049/udp套接字上 nfs服务只能基

weixin_56129498的博客 892

PYTHON 打印三角形大全

用PYTHON语言打印各种三角形

世上无难事,只要肯攀登 1万+

【项目实战】自动化测试软件VectorCAST介绍

VectorCAST是一款先进的自动化测试软件。VectorCAST是一款功能强大、易于使用的自动化测试软件。VectorCAST适用于各种嵌入式系统的测试。VectorCAST为嵌入式系统的测试提供了一种高效、可靠的解决方案。VectorCAST提供了一整套完整的测试工具,包括测试管理、代码覆盖、缺陷定位、报告生成等,以帮助开发人员提高测试效率,确保软件质量。VectorCAST支持。

奶爸的编程之路,也就一周冷个三天 2012

【NFS】NFS使用汇总

NFS基础原理图解,了解了NFS fsid参数作用,做了一点NFS实际操作验证,记录遇见的问题。

好记性不如烂笔头 5212

Q3D提取PCB走线RLCG参数

介绍一种提取PCB走线寄生电容和寄生电感的方法

sinat_15150363的博客 2921

nfs实现文件共享

服务器端配置 1.安装nfs yum -y install nfs-utils 2.修改nfsf配置 2.1创建共享文件夹(用已存在文件夹也可以,但该文件夹的权限必须为777) cd /home mkdir nfs cd nfs mkdir mnt 将共享文件夹mnt的权限设置为可读可写可执行 chmod 777 mnt 2.2修改nfsf配置 vim /etc/exports 写入以下内容 /home/nfs/mnt 192.168.169.129/24(rw,sync) 保存

qq_42726481的博客 631

智能车图像处理3-入门级分析2 ---直道冲刺

PS :入门级文章适合新手,如果已经有基础可以去看进阶篇文章。

taiyuezyh的博客 4316

【从0到1实战】C# WinForm开发工业级PLC监控系统(完整串口+Modbus RTU/TCP+数据库存储+源码+避坑指南)

做C#工控上位机开发的工程师,尤其是刚入行的新人,最核心的刚需就是开发一套完整的PLC监控系统。这也是工控领域最基础、最核心、应用最广的项目类型——小到单台PLC的设备测控,大到整线的产线监控,本质都是「上位机与PLC通讯,实现数据采集、参数下发、状态监控、数据存储」。碎片化的知识点学了很多,串口会用了、Modbus协议看了、数据库也懂点,但是始终无法把这些知识点串联起来,做出一套能落地的工业级PLC监控系统。

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 1560

Kubernetes 集群使用 NFS 网络文件存储

Kubernetes PersistentVolumes 持久化存储方案中,提供两种 API 资源方式: PersistentVolume 和 PersistentVolumeClaim。PV 可理解为集群资源,PVC 可理解为对集群资源的请求,Kubernetes 支持很多种持久化卷存储类型。NFS 是网络文件存储系统,它允许网络中的计算机之间通过 TCP/IP 网络共享资源。通过 NFS,我们本地 NFS 的客户端应用可以透明地读写位于服务端 NFS 服务器上的文件,就像访问本地文件一样方便。

哎_小羊的博客 1万+

使用 Simulink Real-Time 搭建一个完整的实时信号采集与滤波系统模型

本文详细介绍了基于Simulink Real-Time构建实时信号采集与滤波系统的完整流程。主要内容包括:系统配置(模型创建与参数设置)、信号采集模块搭建(模拟信号源或真实硬件连接)、实时滤波器设计(浮点/定点)、输出可视化(Scope/ToWorkspace等)、模型编译与下载到目标机、外部模式在线调试及数据保存方法。系统可实现微秒级实时信号处理,适用于工业控制、航空航天等对时间确定性要求高的场景。文章还提供了优化建议(多速率建模、优先级调度等)和应用场景说明,帮助读者快速掌握实时系统开发的核心技能。

amy_mhd的博客 304

SylixOS 网络文件系统 nfs 的使用

SylixOS 支持网络文件系统 nfs,在开发阶段,当工程文件相当多并修改频繁时,使用 nfs 可以免去频繁下载这些工程文件的麻烦,从而提高开发效率,下面介绍 nfs 的使用方法。 确保 SylixOS 编译了 nfs 组件 默认情况 SylixOS 开启了 nfs 的支持,但 nfs 可以裁减,查看 sylixos-base/libsylixos/config/fs/fs_cfg.h 文件...

兔兔里个花兔的博客 824

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

Linux下ftp使用及nfs网络文件系统

ftp 是一个文件传输协议 ,是tcp/ip 文件传输协议的一种 ftp可以用与文件的共享也可以用于文件的固定IP的收集 Linux下使用说明: 首先我们需要安装ftp程序 yum -y install vsftpd #ftp在Linux里面的安装程序叫做vsftpd systemctl stop firewalld #关闭防火墙 setenforce 0 #将selinux设置为关闭状态 其共享文件夹为/var/ftp ftp如无特殊设置均可以访问和下载 下载方式说明: y.

weixin_43469486的博客 603

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

NFS 网络文件系统 介绍、安装与使用

快速使用NFS(以centos7为例) 只想快速搭建一套nfs系统以便使用的童鞋,看到这一章就可以啦~ 预设值: 服务端:192.168.100.254 客户端:192.168.100.10 1、安装 服务端与客户端: [root@www ~]# yum install nfs-utils 2、配置与运行 服务器端: [root@www ~]# vi /etc/exports /home/public 192.168.100.0/24(rw) *.ev.ncku.edu.t

糯玉米珍珠奶茶 1156

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

TFTP和NFS网络文件系统的配置使用

TFTP和NFS网络文件系统的配置使用TFTP和NFS网络文件系统的配置使用。

qq_71306973的博客 643

树莓派超全系列教程文档--(55)如何使用网络文件系统NFS

NFS(网络文件系统)是一种在Linux/Unix环境中创建NAS的流行方法,适用于长期挂载目录。文章详细介绍了NFS服务器的设置步骤:1)安装nfs-kernel-server软件包;2)创建并绑定共享目录;3)配置/etc/fstab和/etc/exports文件;4)设置权限映射(可选)。同时也讲解了客户端的配置方法,包括安装nfs-common包和挂载命令。文章还对比了NFS与Samba的适用场景,建议NFS用于永久性共享,Samba更适合临时共享。最后提供了端口映射锁定等安全措施,并指出NFS权限

qq_43566923的博客 1481

zedboard--网络文件系统NFS的使用(二十五)

zedboard--网络文件系统NFS的使用(二十五)                      分类:             zedboard学习              2013-11-13 08:53     1357人阅读     评论(2)     收藏     举报     使用本开发板做开发,NFS 服务并不是必须的,因为 NFS 主要是用于通过网

linuxarmsummary的专栏 791

29. linux中NFS (Network File System网络文件系统)的使用

Lesson29 linux中NFS (Network File System网络文件系统)的使用 文章目录1. 什么是NFS2. 搭建一个基本的nfs服务器,实现在本地可以挂载3. 搭建一个基本的nfs服务器,实现动态挂载1. 什么是NFS1. 什么是NFS1. 什么是NFS1. 什么是NFS 1. 什么是NFS NFS(Network File System)即网络文件系统,是FreeBSD(...

qq_43687755的博客 407

网络文件系统(NFS)的使用

一。简介NFS--Network FileSystem,即网络文件系统,主要功能是让网络上的不同操作系统之间共享数据。远程服务器端共享出文件或目录,然后远羰共享出来的文件或目录就可通过挂 载的方式挂 接到本的不同操作系统上,最后本地系统就可以方便的使用远端提代的文件服务。实现数据共享上图可以看出,NFS由两部分组成:NFS客户端和NFS服务器。二。实现原理NFS服务器启动后,...

weixin_33812433的博客 323

使用网络烧写开发板及nfs网络文件系统搭建

烧录 学习文件系统的构建时,需要烧写自己构建的文件系统来验证是否能被成功挂载,这就需要烧录工具。之前裸机时使用的烧录工具是linux版本的oflash,但该工具只能烧录裸机程序,不适用于kernel,rootfs等烧录,故转而寻找其他代替工具。首先试过使用linux班的dnw,但pc机一直无法检测到开发板usb设备,因此只能选择通过网络来烧录。 开发环境 开发板:s3c2440 烧录工具:tftp...

不太能吃的博客 668

NFS网络文件系统的使用

NFS网络文件系统的使用 1、安装 [root@vm99-lz-65-test-3059 ~]# yum install -y nfs-utils rpcbind 2、配置NFS服务端   NFS服务的默认配置文件路径为:/etc/exports,并且默认是空的。 [root@vm99-lz-65-test-3059 ~]# vim /etc/exports /data ...

qq_37806377的博客 290

NFS(网络文件系统)简述及使用

感谢博主http://www.cnblogs.com/yc_sunniwell/archive/2010/06/30/1768474.html 一、NFS简介 1、NFS就是Network FileSystem的缩写,它的最大功能就是可以通过网络让不同的机器,不同的操作系统彼此共享文件(sharefiles)——可以通过NFS挂载远程主机的目录,访问该目录就像访问本地目录一样,所以也可

xk_snail的专栏 2374

CentOS Linux上配置NFS网络文件系统以及客户端使用

CentOS Linux上配置NFS网络文件系统以及客户端使用 NFS就是Network FileSystem的缩写,是基于RPC(Remote Procedure Call Protocol远程过程调用协议)实现。最早之前是由Sun公司开发出来的。主要功能就是可以通过网络,让不同的主机、不同的操作系统、可以彼此分享指定的文件。所以,也可以简单的将它...

weixin_33966095的博客 175

windows自带的nfs服务_NFS网络文件系统基础配置与使用

0x00 前言简述0x01 NFS安装配置(1) CentOS 系统(2) Ubuntu 系统0x02 NFS配置介绍/etc/exports/var/lib/nfs/etab0x03 NFS安全配置0x04 入坑出坑0x05 参考连接0x00 前言简述描述: 先来学习三大步,任何事物皆可用;Q: 什么是NFS?为什么要NFS?描述:NFS(Network File System)即网络...

weixin_39572442的博客 7228
上一篇: 使用r系列实用工具
下一篇: 在应用中集成TCP/IP
menuconfig
博客等级 码龄19年 713粉丝 6原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值