`
xitong
  • 浏览: 6198316 次
文章分类
社区版块
存档分类
最新评论

NFS 搭建

 
阅读更多

最近做嵌入式开发的时候,需要NFS加载文件系统,顺便搭建了一个NFS。

NFS:Network File System

功能也就是能把远程网络的文件挂载到NFS Server上,在Server上看来,客户端的挂载的目录就像自己的子目录一样,可以对它操作。所以,对于嵌入式系统的调试是很方便的。

NFS支持的功能很多,所以对应的端口号是不固定的,是随机分配的,但都是小于1024。那么客户机是怎么连接到NFS Server上去的呢?这里有一个RPC的东西来支持。

RPC:(Remote Procedure Call Protocol)

远程过程调用协议,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。RPC协议假定某些传输协议的存在,如TCP或UDP,为通信程序之间携带信息数据。在OSI网络通信模型中,RPC跨越了传输层和应用层。RPC使得开发包括网络分布式多程序在内的应用程序更加容易。RPC采用客户机/服务器模式。请求程序就是一个客户机,而服务提供程序就是一个服务器。首先,客户机调用进程发送一个有进程参数的调用信息到服务进程,然后等待应答信息。在服务器端,进程保持睡眠状态直到调用信息的到达为止。当一个调用信息到达,服务器获得进程参数,计算结果,发送答复信息,然后等待下一个调用信息,最后,客户端调用进程接收答复信息,获得进程结果,然后调用执行继续进行。
RPC在NFS搭建过程钟的功能就是在Server上分配端口号,可以让客户端能从远程连接上Server。RPC固定采用111端口监听。

所以整个NFS实现的过程就是:

  1. Client向服务器的RPC(port 111)发出请求

  2. 服务器注册好端口,把端口信息传回客户端

  3. 客户端知道正确的端口后,可以连接NFS daemon

NFS 安装:nfs-utils(主要NFS功能) portmap(RPC 端口分配)

可以先rpm -qa | grep xxx查看下,若不存在则安装!

NFS 配置文件

# vim /etc/exports在这里可以对客户端各种权限的设置

/tmp *(rw,no_root_squash)# 允许任何IP挂载/tmp目录

NFS 启动

portmap启动

# service portmap start

或者

# /etc/init.d/portmap start

nfs启动

# service nfs start

或者

# /etc/init.d/nfs start

# netstate -tunl | grep “111″#查看portmap有没有启动

# chkconfig –list | grep “nfs”#查看nfs服务是否启动

#showmount -e localhost #查看本地共享文件系统

NFS文件挂载

先在主机上尝试把/tmp挂载到/mnt下

[local]#mount 127.0.0.1:/tmp /mnt #进入/mnt查看

远程网络挂载

[client]#mountServerIP:/tmp /mnt

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics