如何解决“侦听错误:无法监视目录的更改”
Posted
技术标签:
【中文标题】如何解决“侦听错误:无法监视目录的更改”【英文标题】:How else to fix "Listen error: unable to monitor directories for changes" 【发布时间】:2018-05-20 19:44:49 【问题描述】:当我尝试在我的服务器上运行 rails c production
时出现以下错误。
FATAL: Listen error: unable to monitor directories for changes.
Visit https://github.com/guard/listen/wiki/Increasing-the-amount-of-inotify-watchers for info on how to fix this.
我可以在这里使用公认的解决方案来修复它:Listen error: unable to monitor directories for changes
但是,我想知道为什么会这样。什么会导致此错误? inotify 监控哪些文件?可以通过取消监控文件来解决吗?提高可监控文件的限制似乎不是一个很好的解决方案。
来自链接问题中的解决方案:“Listen 在 Linux 上默认使用 inotify 来监控目录的更改。遇到系统限制您可以监控的文件数量的情况并不少见。”
【问题讨论】:
您的 Rails 文件是否位于通过网络安装的文件夹中?当我通过sshfs
在服务器上编辑文件时,RubyMine 给了我类似的警告。
【参考方案1】:
原因是因为Routes函数使用了Linux系统上的Listen和Listen,限制了一个目录下可以监控的文件数量。
当此限制不足以监控目录中的所有文件时,必须增加限制才能使 Listen 正常工作...
欲了解更多信息,请查看inotify linux 如果你想知道,如何工作听,检查这个链接Listen 如何解决问题Increasing the amount of inotify watchers好吧,我会尝试回答你的问题,这个“错误”不是这样的错误,请思考以下,假设你的车可以以 200 英里的速度运行,但你的自动限制为 100 英里每小时,当你达到那个限制时会发生什么?,汽车会在面板上显示一个警报,表明你超过了设定的速度限制。在 Linux 中使用 Routes On Rails 的这种 Listen 场景或多或少会发生什么
希望能帮到你
【讨论】:
以上是关于如何解决“侦听错误:无法监视目录的更改”的主要内容,如果未能解决你的问题,请参考以下文章