NFS服务器在/ etc / exports文件中所做的更改需要服务重启吗?


30

我有NFSv4服务器(在RHELv6.4上)和NFS客户端(在CentOSv6.4上)。让我们说/etc/exports

/shares/website1      <ip-client-1>(rw,sync,no_subtree_check,no_root_squash)
/shares/website2      <ip-client-2>(rw,sync,no_subtree_check,no_root_squash)

然后,只要我对此进行了一些更改(例如,仅针对进行更改client-2),例如:

/shares/website1      <ip-client-1>(rw,sync,no_subtree_check,no_root_squash)
/shares/xxxxxxxx      <ip-client-2>(rw,sync,no_subtree_check,no_root_squash)

然后我总是service nfs restart。然后最终..上的安装点client-1没有响应 (无法打开其文件,等等)(为什么?由于重新启动?)

但是如上所述,我仅修改了该行client-2。的所有内容client-1均未更改。

所以我的问题是:

  • 每当我修改时/etc/exportsrestart该服务还是什么?
  • 如果是i service nfs restart,为什么其他客户端上的Mount-Point最终会受到影响?(对于未对其进行任何更改的客户端计算机/etc/exports。)

这意味着,每当我做出改变/etc/exportsrestart服务,我将需要去重新mount上的目录EVERY CLIENTS导出列表中,以具有安装点再次合作。

有什么主意吗?


1
修改后/etc/exports,尝试以root身份运行exportfs -ra。有关man exportfs详细信息,请参见。
John1024

那我就不需要nfs restart了吗?
夏期剧场

Answers:


53

每次对进行更改时,都不需要重新启动NFS /etc/exports。所需要做的就是在编辑/etc/exports文件后发出适当的命令:

$ exportfs -ra

摘录自Red Hat官方文档:21.7。/ etc / exports配置文件

摘抄

手动发出时,/ usr / sbin / exportfs命令允许root用户有选择地导出或取消导出目录,而无需重新启动NFS服务。提供适当的选项后,/ usr / sbin / exportfs命令会将导出的文件系统写入/ var / lib / nfs / xtab。由于rpc.mountd在确定对文件系统的访问特权时会引用xtab文件,因此对导出文件系统列表的更改将立即生效。

另请阅读exportfs手册页以获取更多详细信息,尤其是“ DESCRIPTION”(说明)部分,其中对所有这些内容和更多内容进行了说明。

描述NFS服务器维护一个可供NFS客户端访问的本地物理文件系统表。此表中的每个文件系统都简称为导出文件系统,或简称为export。

  The exportfs command maintains the current table of exports for the NFS 
    server.  The master export table is kept in  a  file  named
    /var/lib/nfs/etab.  This file is read by rpc.mountd when a client sends 
    an NFS MOUNT request.

  Normally  the  master  export  table  is  initialized  with the contents 
    of /etc/exports and files under /etc/exports.d by invoking exportfs -a.  
    However, a system administrator can choose to add or delete exports 
    without modifying  /etc/exports  or  files  under /etc/exports.d by 
    using the exportfs command.

另请注意我们正在使用的选项-ra

   -a     Export or unexport all directories.
   -r     Reexport all directories, synchronizing /var/lib/nfs/etab with 
          /etc/exports and files  under  /etc/exports.d.   This  option
          removes  entries  in  /var/lib/nfs/etab which have been deleted 
          from /etc/exports or files under /etc/exports.d, and removes
          any entries from the kernel export table which are no longer
          valid.

有什么优势-ra而不是唯一的优势-r
Mvorisek '18年

@Mvorisek-很明显。
slm
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.