新客网WWW.XKER.COM:致力做中国最专业的网络学院!
学院: 操作系统 - 网络应用 - 服务器 - 网络安全 - 工具软件 - 办公软件 - Web开发 - 数据库 - 网页设计 - 图形图像 - 媒体动画 - 硬件学堂 - 存储频道 - QQ专区
您的位置:首页 > 网络学院 > 操作系统 > Unix系统 > Solaris教程 > 正文:NFS的使用详细方法

NFS的使用详细方法

新客网 XKER.COM 2008-03-29 来源: 收藏本文
1、理解nfs服务器和客户端功能。

  nfs是sun公司来建立来使用tcp/ip协议以及sun的远程调用和外部数据表示规范的产品。nfs的使用非常方便,也比较可靠。他具有在不同操作系统之间共享文件的能力。

  nfs服务器可以使用nfs来让其他远程机器共享它的本地资源。nfs客户机是访问nfs服务器的共享资源的机器。其实在实际工作中,一台主机即可以是nfs服务器,也可以是nfs客户机。他们可以互相共享和访问。

  只要你能理解nfs服务器和nfs客户机之间的不同。剩下的就很easy了。

  2、 nfs服务器和nfs客户机区别。

  2.1   solaris使用分布式文件系统或dfs命令公享资源。公享资源可以手动和自动设置。

   nfs服务器运行两个守侯进程:mountd 和 nfsd。

   用到的文件是:

   /etc/rc3.d/S15nfs.server

   /etc/dfs/dfstab

   /etc/dfs/sharetab

   /etc/rmtab

   nfs服务器使用命令是:share unshare shareall unshareall

  nfs客户机上运行的守侯进程是:statd 和 lockd。

  用到的文件是:

  /etc/vfstab

  /etc/mnttab

  nfs客户机使用命令是:mount umount mountall umountall

  2.2  nfs服务器设置

  nfs服务器需要运行两个守侯进程mountd和nfsd来工作。当nfs客户机试图访问一个远程的nfs服务器资源。nfs客户机通过mount命令请求与 nfs服务器的mountd守侯进程进行连接。当nfs服务器响应客户机时候,返回给可户机一个信息。客户机把这个信息写到本地的/etc/mnttab文件中。这个信息是服务器中共享文件和目录的信息。它是资源信息的编码:磁盘设备号、节点生成号、节点号等。这个是唯一的。

  一旦可户机得到请求信息,nfs服务器上的mountd进程就会在服务器本地的/etc/rmtab文件中添加一条信息。这是为了保持对当前加载可户机上文件的跟踪。这个文件为每一个被加载资源添加一个条目,格式是:

  remote hostname:  local filename name

  注意:mountd每一次重新启动和可户机发一个卸载请求,都会更新服务器的/etc/rmtab文件中的旧条目。

  2.3 共享设置命令。

  明白了以上的道理,下面说具体的操作了。nfs服务器使用/usr/sbin/share命令为客户机共享资源。

  命令详解:

  # share  ---显示所有可以安装的资源,不管它是否已经被安装。  

  # share [ -F filesystem ] [ -o options ] [-d description ]  pathname-to-resource

  ---指定共享文件。

  * -F  file system type 指定被公享的文件系统类型。

  * -o  options  指定客户对资源访问的类型。

  * -d  description  功享资源的简单描述。当你share命令不带任何参数运行,他就会被显示。

  * pathname-to-resource  在服务器上共享的资源名字。  

  ------------------------------------------------------

  *-o  指定了允许客户访问共享资源的用户也权限。具体如下:

  rw  表示用户可读/写,是默认植。

  rw=client1:client2  指定用户可以有读/写权限。可以有很多用户,用冒号分隔。

  ro  表示只读。

  ro=client1:client2  指定用户client1和client2只读。client1可以是用户名,也可以是ip地址,或者一个网段。例如:ro=@202.99.88.0/24

  root=client:client2 指定client1和client2上的root用户对共享资源有超级用户的权限。但是,他的优先级小于nfs服务器的本地权限。

  例如:用户peng有个目录/exprot/home/games要共享。

  # share -F nfs -o rw=lnx3000:race , ro=@202.88.99.0/24:sune450 ,root=mmmmn -d "i love MM !" /export/home/peng/games  

  运行结果:共享/exprot/home/peng/games目录,名字是lnx3000和race的两台主机有读/写权限;202.88.99.0这个c类网的机器和sun450这个主机只有读的权限;mmmmn这台主机的root用户可以对共享资源有超级用户访问权限。但是声名一点,要是我给共享目录/exprot/home/peng/games目录只读,mmmmn的root权限也没有用,只能只读。因为服务器本地权限大于任何share的权限。。

  取消share资源。

  # unshare [ -F nfs ] path-to-resource

  *  -F nfs 指定系统类型,默认。

  *  path-to-resource 指定共享路径。

  例如:

  # unshare /export/home/peng/games  

  取消这个共享资源了。

  2.4 开机自动共享资源。

   以上的命令方法,在机器重新启动的时候,设置消失。如何保留和开机自动启动nfs共享。我们可以用/etc/dfs/dfstab文件来实现自动共享文件。只要主机启动进入运行级别3,nfs资源共享自动启动。

  1)编辑/etc/dfs/dfstab文件,添加:

  share [ -F filesystem ] [ -o options ] [-d description ]  pathname-to-resource

  -----这个和命令行是一样的。。。

  2)# /etc/init.d/nfs.server start  

  这样就ok了。

  3)手工快速命令。

  # shareall   --共享所有列在/etc/dfs/dfstab中的共享资源。

  # unshareall  --取消所有列在/etc/dfs/dfstab中的共享资源。

  2.5 资源查看。

  # dfshares  

  用以查看服务器的共享资源 。输入格式如下:

  resource  server access  transprot

  * resource  可被远程调用的资源的主机和路径名。

  * server   指定资源的系统名称。  

  *  access  服务器指定的权限,默认是rw,显示为“-”。

  * transport  指定共享资源的端口。

  # dfmounts命令    

  显示服务器上查看共享资源被利用的状况,输出格式如下:  

  RESOURCE     SERVER PATHNAME                  CLIENTS

  *  resource  共享资料名称。

  *  server pathname  共享资料目录。

  *  client  连接的客户端。

  # nfsstat  

  看nfs的全部状态

共2页: 上一页 [1] [2] 下一页
收藏】 【评论】 【推荐】 【投稿】 【打印】 【关闭
发表评论
要记得去论坛讨论,点击注册新会员匿名评论
评论内容:不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
阅读排行
随机推荐
实用信息推荐