两个linux / unix虚拟机之间的NFS问题

描述:我用我的虚拟机遇到了一个奇怪的问题。 我的两台虚拟机都使用linux。 服务器端使用RHEL,客户端使用CentOS 7.我的主机运行Windows 7。

我的客户端虚拟机正在使用nodejs启动或初始化一个网站。 我做了一个文件夹目录,服务器端和客户端都可以使用NFS共享文件。

问题:当我从客户端的共享目录创build文件/文件夹时,网站能够检测到共享目录中的更改并在网站中发布更改。

但是,在服务器端,当我在共享目录中创build文件/文件夹时,在网站中未检测到更改。 尽pipe创build的文件/文件夹在客户端的共享目录中是可见的。

NFSconfiguration:我将粘贴我为服务器和客户端所做的configuration:

/ etc / exports上的服务器端NFSconfiguration:

/home/awsim2/config 192.168.56.101(rw,sync,no_root_squash,no_all_squash,no_subtree_check) /home/awsim2/scenarios 192.168.56.101(rw,sync,no_root_squash,no_all_squash,no_subtree_check) #/home/awsim2/config 192.168.56.101(rw,sync,all_squash,anonuid=503,anongid=502) #/home/awsim2/scenarios 192.168.56.101(rw,sync,all_squash,anonuid=503,anongid=502) 

注:我试过其他方法来解决这个问题…

/ etc / fstab上的客户端NFSconfiguration:

  192.168.56.102:/home/awsim2/config /var/nfs_awsim_share/ nfs rw,sync,user,auto,bg,hard,intr,nolock 0 0 192.168.56.102:/home/awsim2/scenarios /var/nfs_awsim_scenarios_share/ nfs rw,sync,user,auto,bg,hard,intr,nolock 0 0 

我希望这是足够的信息来解释我的问题。

感谢您的时间!

我做了足够的研究,发现NFS和共享目录方法不是一个可行的解决scheme,因为在Linux内核子系统inotify之间存在一个问题。 inotify的作用是扩展文件系统以注意文件系统的变化,并将这些变化报告给应用程序。 可悲的是,nodejs无法检测到这些变化,因为在Linux内核子系统涉及的虚拟盒子中的错误,inotify。

来源: https //www.virtualbox.org/ticket/10660