【技术实现步骤摘要】
利用inotify监控文件的方法、装置、电子设备和存储介质
[0001]本专利技术实施例涉及计算机文件监控管理
,尤其涉及一种利用 inotify监控文件的方法、装置、电子设备和存储介质。
技术介绍
[0002]inotify是Linux内核2.6.13版本新增的一个子系统(API),它提供了 一种监控文件系统(基于inode的)事件的机制,可以监控文件系统的变化 如文件修改、新增、删除等,并可以将相应的事件通知给应用程序。
[0003]但是inotify对于文件系统监控存在的问题在于,inotify只是监视句柄, 并非文件路径,从而导致一个弊端,如果要监控的文件目前并不存在,则无 法进行监控。或者如果文件被删除,文件对应的inode也不会存在,以后的 监控行为就会失效。
[0004]现有技术中通常的做法是,启动一个线程,定期轮询检查此文件是不是存 在,然后添加对应的监控策略,如对读、写、属性修改等行为进行监控。这 种做法的弊端在于需要开启线程轮询操作,浪费了系统资源。轮询时间设置 过短会耗费CPU,轮 ...
【技术保护点】
【技术特征摘要】
1.一种利用inotify监控文件的方法,其特征在于,该方法在Linux内核下的inotify环境中执行,包括:S102、接收下发的文件监控命令,所述文件监控命令中指示待监控的文件目录;S104、判断待监控的文件目录是否存在;S1042、若存在,则对该待监控的文件目录执行指定的文件监控命令;S1044、若不存在,则寻找该待监控的文件目录的父目录以实现监控。2.根据权利要求1所述的方法,其特征在于,所述步骤S1044中,寻找该待监控的文件目录的父目录以实现监控,包括:S10441、判断待监控的文件路径的父目录是否存在;若存在,则执行下一步骤;若不存在,则继续向上一级判断其父目录是否存在,直至寻找到存在的父目录;S10442、对该父目录执行文件创建监控。3.根据权利要求2所述的方法,其特征在于,所述步骤S10442中,对该父目录执行文件创建监控,包括:S104421、监控该父目录下的文件创建行为,直至所创建的文件目录与待监控的文件目录相一致;S104422、对该文件目录执行指定的文件监控命令。4.根据权利要求3所述的方法,其特征在于,所述监控该父目录下的文件创建行为,直至所创建的文件目录与待监控的文件目录相一致,包括:当该父目录下发生文件创建行为时,判断所创建的文件目录是否与待监控的文件目录的相一致;若与待监控的文件目录的前缀一致,则返回步骤S104421继续监控;若与待监控的文件目录完全一致,则执行步骤S104422,对该文件目录执行指定的文件监控命令;若与待监控的文件目录不一致,则该方法结束。5.一种利用inotify监控文件的装置,其特征在于,该装置设置于Linux内核下的inotify环境中,包括:命令接收模块,用于接收下发的文件监控命令,所述文件监控命令中指示待监控...
【专利技术属性】
技术研发人员:张吉祥,
申请(专利权)人:安芯网盾北京科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。