在Ubuntu中,使用Sublime修改文件,webpack-dev-server不自动编译热替换

一、问题可能出现的原因

Linux中Inotify监控文件最大数量过少,导致程序不知道修改了文件。

注: Inotify 是一个 Linux 内核特性,它监控文件系统,并且及时向专门的应用程序发出相关的事件警告,比如删除、读、写和卸载操作等

二、查看Inotify监控文件的最大数量

我们可以通过下面的shell命令来查看Inotify监控文件的最大数量:

sysctl -a | grep inotify

显示的结果:
图片描述
fs.inotify.max_queued_events: 表示调用inotify_init时分配给inotify instance中可排队的event的数目的最大值,超出这个值的事件被丢弃,但会触发IN_Q_OVERFLOW事件。
fs.inotify.max_user_instances: 表示每一个real user ID可创建的inotify instatnces的数量上限,默认128.
fs.inotify.max_user_watches: 表示同一用户同时可以添加的watch数目(watch一般是针对目录,决定了同时同一用户可以监控的目录数量)

可能是fs.inotify.max_user_watches太少,导致文件修改后不能监控到

三、解决办法

修改系统的fs.inotify.max_user_watches的值,可以使用下列两种办法来修改

方法一: 使用Shell命令直接修改
sudo sysctl fs.inotify.max_user_watches=524288
方法二: 修改sysctl.conf配置文件
sudo vim /etc/sysctl.conf 

在文件的末尾加上

fs.inotify.max_user_watches=524288

重新从配置文件“/etc/sysctl.conf”加载内核参数设置

sudo sysctl -p /etc/sysctl.conf
查看修改后的结果

使用上述查看命令来查看是否修改成功,执行结果为:
图片描述
发现fs.inotify.max_user_watches的数量已经变成我们设置的值。

注:想要了解更多sysctl知识,可以点击下面链接: sysctl

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值