对象实时监控方法和装置制造方法及图纸

技术编号:12097761 阅读:60 留言:0更新日期:2015-09-23 15:25
本发明专利技术公开了一种对象实时监控方法和装置,其中,方法包括:通过监控进程监控对象的变化,对象包括文件和/或目录;在监控进程监控到对象变化时,判断该对象是否为目标对象;如果该对象是目标对象,则判断该对象的变化方式是否属于预定义的变化方式;如果其变化方式属于预定义的变化方式,利用预先备份的对象恢复发生变化的对象。根据该方案,能够实时得知系统中文件、目录等对象的变化,并对其进行及时的修复,从而保证了相关程序、设备连续的正常工作;并且需监控的文件、目录可由用户、管理员自定义,更加灵活,高效。

【技术实现步骤摘要】

本专利技术涉及计算机
,具体涉及一种对象实时监控方法。
技术介绍
操作系统中的一些文件或目录,如果受到更改,可能导致操作系统无法正常工作。例如,Linux系统中的/etc/resolv.conf文件,该文件是DNS域名解析的配置文件,其中包含了主机的域名搜索顺序和DNS服务器的地址等配置参数。各个机房对应有不同的配置。如果由于用户的误操作或其他程序的篡改配置参数而导致了其中的配置参数发生变化,则机房中的计算机可能会由于错误的配置文件而无法解析域名,返回错误。现有技术中解决此问题的一种方法是人工维护,当发现有计算机出现问题,如无法正常访问DNS服务器时,由管理员人工登录服务器,手动地将该文件中的配置参数修复至正常参数。显然,这种方式繁琐费时,无法批量修复并且具有滞后性。另一种处理方法是,在服务器上配置crontab文件,定时执行配置文件的检查和修复,例如,每隔5分钟扫描一次配置文件,如果发现被更改,就恢复成正确的配置。该方式需要预先设定一个扫描间隔,在间隔之内还是存在配置文件被修改的可能。因此,需要一种方法,实时地监控系统中关键文件或目录的变化,并实时地将其恢复为正确配置。
技术实现思路
鉴于上述问题,提出了本专利技术以便提供一种克服上述问题或者至少部分地解决上述问题的对象实时监控的方法和装置。根据本专利技术的一个方面,提供了一种对象实时监控方法,包括:通过监控进程监控对象的变化,对象包括文件和/或目录;在监控进程监控到对象变化时,判断该对象是否为目标对象;如果该对象是目标对象,则判断该对象的变化方式是否属于预定义的变化方式;如果其变化方式属于预定义的变化方式,利用预先备份的对象恢复发生变化的对象。根据本专利技术的另一方面,提供了一种对象实时监控装置,包括:监控模块,用于通过监控进程监控对象的变化,对象包括文件和/或目录;第一判断模块,用于在监控模块监控到对象的变化时,判断该对象是否为目标对象;第二判断模块,用于在第一判断模块判断变化的对象是目标对象时,判断该对象的变化方式是否属于预定义的变化方式;恢复模块,用于在第二判断模块判断出对象的变化方式属于预定义的变化方式时,利用预先备份的对象恢复发生变化的对象。根据本专利技术的对象监控方法和装置,当监控到对象发生变化时,如果该对象属于待监控的对象,并且该对象的变化方式也属于为其预定义的变化方式,则利用预先备份的正常对象恢复变化后的对象。根据该方案,能够实时得知系统中文件、目录等对象的变化,并对其进行及时的修复,从而保证了相关程序、设备连续的正常工作;并且需监控的文件、目录可由用户、管理员自定义,更加灵活和高效。上述说明仅是本专利技术技术方案的概述,为了能够更清楚了解本专利技术的技术手段,而可依照说明书的内容予以实施,并且为了让本专利技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本专利技术的【具体实施方式】。【附图说明】通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本专利技术的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:图1示出了根据本专利技术一个实施例的对象监控方法的流程图;图2示出了根据本专利技术另一个实施例的对象监控方法的流程图;图3示出了根据本专利技术一个实施例的对象监控装置的结构框图。【具体实施方式】下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。图1示出了根据本专利技术一个实施例的对象监控方法的流程图,如图1所示,该方法包括如下步骤:步骤SI 10,通过监控进程监控对象的变化。监控对象包括文件和/或目录。对文件变化的监控主要包括对文件内容编辑的监控;对目录变化的监控包括对目录复制、目录移动、删除等动作的监控以及目录属性的变化,还包括目录下的文件或子目录的新建、删除、复制、文件名修改、属性变化等的监控。步骤S120,在监控进程监控到所述对象变化时,判断该对象是否为目标对象。目标对象是由用户或管理员自定义的待监控对象,通常即是用户需要关注的目标文件和/或目标目录。目标目录可以包括系统中包含关键配置文件的目录,例如:系统配置目录/etc,用户家目录/home,应用程序目录等;相应地,目标文件可以是存在于上述目录下的配置文件。例如,如果用户想要保证计算机能够正常访问指定的域名,则目标文件就是DNS域名解析的配置文件,在Iinux系统中,即是/etc/resolv.conf文件,若监控到的变化对象不属于目标对象,方法结束。步骤S110,S120所述的监控进程是本领域人员将本专利技术方法具体实现为应用程序时,用于监控的基本执行单元,可以是独立开发的,或是利用已有的工具实现,例如Inotify-tools等。步骤S130,如果该对象是目标对象,判断对象的变化方式是否属于预定义的变化方式。用户或管理员在定义目标对象时,也为每个对象定义了特定的变化方式。待监控的目标对象的变化方式包括以下方式的一项或多项:文件和/或目录的新增、编辑、移动、删除事件,以及文件和/或目录的属性变化。若目标对象的变化方式不属于预定义的变化方式,方法结束。步骤S140,如果对象的变化方式属于预定义的变化方式,利用预先备份的对象恢复发生变化的对象。在本实施例中的方法执行之前,将用户定义的目标对象备份,创建文件或目录对象的副本,当监控到该目标对象发生预定方式的变化时,利用预先创建的对象副本替换变化后的对象副本。根据本专利技术上述实施例提供的方法,当监控到系统中的对象发生变化时,如果还判断出该对象属于用户关注的目标对象,并且该对象的变化方式也属于为其预定义的变化方式,则利用预先备份的正常对象恢复变化后的对象。根据该方案,能够实时得知系统中文件、目录等对象的变化,并对其进行及时的修复,从而保证了相关程序、活动连续的正常工作;并且需监控的文件、目录可由用户、管理员自定义,更加灵活和高效。图2示出了根据本专利技术另一个实施例的对象监控方法的流程图,如图2所示,该方法包括如下步骤:步骤S210,通过监控进程监控对象的变化。该步骤可通过系统提供的接口函数实现。例如,Windows等常见的计算机操作系统为开发人员提供有多种应用程序开发接口(API),各种应用程序都是通过调用相应的API来实现的,则在Windows系统中,该步骤可通过监控操作系统提供的API来实现,例如,Windows系统通过WriteFile函数向指定路径的文件写数据,监控该函数即可实现对文件内容编辑事件的监控,当监控到该函数被调用时,可以从其参数中获取该函数的作用对象。对文件删除,创建等变化的监控也以类似方式实现,此处不再赘述。在Linux系统中,可通过Inotify-tools来监控系统中的对象的变化。Inotify-tools是为Linux下Inotify文件监控工具提供的一套c的开发接口库函数,同时还提供了一系列的命令行工具,这些工具可以用来监控文件系统的事件。Inotify是一种文件变化通知机制,允许监控进程打开一个独立文件描述符,并针对本文档来自技高网...

【技术保护点】
一种对象实时监控方法,其包括:通过监控进程监控对象的变化,所述对象包括文件和/或目录;在所述监控进程监控到所述对象变化时,判断所述对象是否为目标对象;如果所述对象是目标对象,判断所述对象的变化方式是否属于预定义的变化方式;如果所述对象的变化方式属于预定义的变化方式,利用预先备份的对象恢复发生变化的对象。

【技术特征摘要】

【专利技术属性】
技术研发人员:魏冬
申请(专利权)人:北京奇虎科技有限公司奇智软件北京有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1