Inotify监视限值不足问题

使用Android Studio导入AOSP源码遇到inotify大小不足的问题,原文即ide推荐的解决方法。Android Studio就是基于IntelliJ平台修改的。

对于一个”聪明”的ide,它应该能知道与它协同工作的外部组件,如VCS、编译工具、代码生成器等,对它管控的文件产生了修改。举例来说,IntelliJ有专门的后台线程去监视这些变化。这个方法根据不同的平台可能实现会有不同,在Linux平台我们用的Inotify工具。

Inotify会对工程内的所有文件夹设置”watch handle”。不幸的是,Linux默认的watch handle的限值不能满足实际工程大小的需要,超过限值将强制IntelliJ重新扫描项目目录的递归树(这将非常耗时)。

为了避免这种问题,我们推荐修改提高watches的限值(一般521k就可以了)。你可以通过修改/etc/sysctl.conf, 在文件末尾添加一行:

fs.inotify.max_user_watches = 524288

然后使用下面命令使修改生效:

sudo sysctl -p

不要忘记重启你的ide.

注意: watches的限值是根据当前ide的需要设置的。如果有其他程序也在是inotify,你应该适当增加限值已满足需要。

原文地址: https://confluence.jetbrains.com/display/IDEADEV/Inotify+Watches+Limit

时间: 2024-08-26 00:39:44

Inotify监视限值不足问题的相关文章

Python Inotify 监视LINUX文件系统事件

Inotify 可以监视的LINUX文件系统事件包括: --IN_ACCESS,即文件被访问 --IN_MODIFY,文件被write --IN_ATTRIB,文件属性被修改,如chmod.chown.touch等 --IN_CLOSE_WRITE,可写文件被close --IN_CLOSE_NOWRITE,不可写文件被close --IN_OPEN,文件被open --IN_MOVED_FROM,文件被移走,如mv --IN_MOVED_TO,文件被移来,如mv.cp --IN_CREATE,

rsync结合inotify实现实时同步

背景介绍 中小企业的web应用场景中,web服务器可能是由2台服务器组成,通过DNS的轮询作为负载均衡,此时就需要对2台服务器之间同步的实时性有较高的要求,上一篇文章所介绍的rsync+crontab就不能满足此需求,本章就来介绍使用rsync+inotify完成服务器之间的实时同步 实验说明 操作系统:CentOS6.8,inotify要求内核版本必须为2.6.13以上 源服务器:172.16.10.10/24 目标服务器:172.16.10.20/24 实验目的:将源服务器上的/rsync目

通过rsync+inotify实现文件的实时备份同步

原文参考:http://ixdba.blog.51cto.com/2895551/580280/ http://www.bamaol.com/Psy/Showposts-010000108-5048.html 一,rsync安装 目前rsync的最新版本是3.0.9 wget http://rsync.samba.org/ftp/rsync/rsync-3.0.9.tar.gz tar-xvzfrsync-3.0.9.tar.gz;cdrsync-3.0.9; ./configure;make;

通过rsync+inotify实现数据的实时备份

我讲到过利用rsync实现数据的镜像和备份,但是要实现数据的实时备份,单独靠rsync还不能实现,本文就讲述下如何实现数据的实时备份. 一.rsync的优点与不足 与传统的cp.tar备份方式相比,rsync具有安全性高.备份迅速.支持增量备份等优点,通过rsync可以解决对实时性要求不高的数据备份需求,例如定期的备份文件服务器数据到远端服务器,对本地磁盘定期做数据镜像等. 随着应用系统规模的不断扩大,对数据的安全性和可靠性也提出的更好的要求,rsync在高端业务系统中也逐渐暴露出了很多不足,首

通过rsync+inotify实现数据的实时备份 【转载】

   在前面的博文中,我讲到过利用rsync实现数据的镜像和备份,但是要实现数据的实时备份,单独靠rsync还不能实现,本文就讲述下如何实现数据的实时备份. 一.rsync的优点与不足  与传统的cp.tar备份方式相比,rsync具有安全性高.备份迅速.支持增量备份等优点,通过rsync可以解决对实时性要求不高的数据备份需求,例如定期的备份文件服务器数据到远端服务器,对本地磁盘定期做数据镜像等.  随着应用系统规模的不断扩大,对数据的安全性和可靠性也提出的更好的要求,rsync在高端业务系统中

rsync使用(三)

一.rsync的不足 随着应用系统规模的不断扩大,对数据的安全性和可靠性也提出的更好的要求,rsync在高端业务系统中也逐渐暴露出了很多不足,首先,rsync同步数据时,需要扫描所有文件后进行比对,进行差量传输.如果文件数量达到了百万甚至千万量级,扫描所有文件将是非常耗时的.而且正在发生变化的往往是其中很少的一部分,这是非常低效的方式.其次,rsync不能实时的去监测.同步数据,虽然它可以通过crontab方式进行触发同步,但是两次触发动作一定会有时间差,这样就导致了服务端和客户端数据可能出现不

rsync+inotify实时同步

一.Rsync简介: rsync是一个远程数据同步工具,可通过lan/wan快速同步多台主机间的文件.它使用所谓的"rsync演算法"来使本地和远程两个主机之间的文件达到同步,这个算法只传送两个文件的不同部分,而不是每次都整份传送,因此速度相当快.所以通常可以作为备份工具来使用. 运行rsync server的机器也叫backup server,一个rsync server可同时备份多个client的数据:也可以多个rsync server备份一个client的数据.rsync可以搭配

inotify+rsync实现实时同步部署

1.1.架构规划 1.1.1架构规划准备 服务器系统 角色 IP Centos6.7 x86_64 NFS服务器端(NFS-server-inotify-tools) 192.168.1.14 Centos6.7 x86_64 rsync服务器端(rsync热备服务器) 192.168.1.17 1.1.2架构图 2.1 部署前检查 2.1.1 检查rsync热备服务器daemon是否起来 1 [[email protected] data]# lsof -i:873 2 COMMAND PID

inotify的原理

简单分享下inotify的原理 形象的说就是如果要监视哪个文件或者目录就在内核中某一个数据结构中添加一个记录,说明我要监视哪个目录或文件,并且标明监视的行为.在linux文件系统进行操作的时候,比如文件创建,修改,等等都会在底层先去查询下正在操作的目录有没有被监视,如果被监视了,并且监视的行为就是现在正在执行的行为,则会在哪个数据结构中留下记录,以此表明事件已经发生. 里面涉及的那些数据结构可以参考这篇博文http://blog.csdn.net/myarrow/article/details/