补丁应用装置和程序的制作方法

文档序号:6570550阅读:153来源:国知局
专利名称:补丁应用装置和程序的制作方法
技术领域
本发明涉及对系统所包含的多个补丁应用对象文件的至少一部分应用补 丁数据的装置和程序。
背景技术
在将服务器等作为系统的产品送交客户以后,有时会为了改善功能等而 需要对产品应用补丁 (补丁数据)。在这种情况下,通常将补丁数据交给客 户,来将补丁应用于相应的产品。但是,因产品购买人的使用上的情况,导 致很多情况下在产品送交后产品的系统资源文件(系统管理员进行了设定变 更的文件)从默认值发生了变更。如果在系统资源文件被变更了的状态下对 产品应用补丁,则有时会根据补丁数据的种类而导致强制替换/改写系统资源 文件。当在这种状态下重新开始运用产品时,存在如下问题由于系统资源 文件被变更而与补丁应用前的运用不同,从而给购买者带来麻烦。由于不应 用补丁就不清楚补丁应用的影响度,所以作为目前的方法,采用了如专利文 献1所公开的预先另行保存补丁应用前的状态,如果补丁应用发生了问题就 返回原状态这种方法。
专利文献1:日本特开平2-110635号公报

发明内容
但是,如专利文献1所公开的现有的补丁应用方法,将修正对象文件复 制到其他区域来应用补丁,但没有确认由补丁应用造成的文件变更内容。如
图io所示,在现有技术中,首先进行补丁应用对象文件(系统资源文件)的
保存(备份复制),然后对操作系统应用补丁。然后将应用了补丁而被变更 了内容的文件与所保存的文件分别比较来确认变更内容,其结果,在判断为 需要重新设定的情况下,另行需要系统管理员进行重新设定这一系列的操作。
如果疏于该重新设定,则将导致系统进行误操作,因此,产生了以下问题 在补丁应用后需要各系统资源文件的确认/再设定,导致每次应用补丁就必须
进行非常复杂的操作。
鉴于如上述那样的问题,本发明的目的在于,提供这样一种程序对系 统所包含的多个补丁应用对象文件应用补丁数据并能够将不允许基于补丁变 更的文件在补丁应用后还原。
本发明的补丁应用程序,使具有存储单元的计算机执行对系统所包含的 多个补丁应用对象文件中的至少一部分应用补丁数据的处理,其特征在于, 使上述计算机执行包括以下步骤的处理-
从存储在上述存储单元中的上述补丁数据中提取多个上述补丁应用对象 文件的信息的步骤;
根据所提取的多个上述补丁应用对象文件的信息,复制多个上述补丁应 用对象文件,作为补丁模拟应用文件存储在上述存储单元中的步骤;
将上述补丁数据应用于上述补丁模拟应用文件的步骤;
比较多个上述补丁应用对象文件和应用了上述补丁数据的上述补丁模拟 应用文件,从而得出差分的步骤;
根据上述差分,从多个上述补丁应用对象文件中选择并复制不允许基于 上述补丁数据进行变更的文件,作为应用后变更文件存储在上述存储单元中 的步骤;
对多个上述补丁应用对象文件应用上述补丁数据的步骤;
用上述应用后变更文件,在因上述补丁数据的应用而被变更的上述补丁 应用对象文件中置换未被允许变更的文件的步骤。
本发明的补丁应用程序,能够如后述那样,被保存在作为计算机的存储 单元的硬件结构上的外部存储装置(卯8)或可移动存储介质(912)上,然 后被存储在存储器(902)中而由CPU执行。本发明的补丁应用程序可由输 入装置(904)输入,也可经由网络连接装置(914)而存储在存储单元中。
图1示出了表示本发明的概要的原理图。本发明的程序以包含多个文件 的系统(10)为对象。在本发明的程序的动作中,以对系统(10)应用补丁 数据(30)为前提,首先从补丁数据(30)中提取成为补丁应用对象的文件 (补丁应用对象文件(12)),生成要变更的文件名的列表(40) (S100)。 接着,根据该变更文件名列表,将补丁应用对象文件(12)作为补丁模拟应 用文件(22)复制到模拟应用目录(20)中(S102)。接着,对模拟应用目
录(20)中的补丁模拟应用文件(22)应用补丁数据(30) (S104)。
然后,比较补丁应用对象文件(12)和应用了补丁数据(30)的补丁模 拟应用文件(22)而得出差分,通知变更了的文件的信息(S106)。在补丁 应用对象文件(12)是文本文件的情况下,如有需要则通知其差分的内容 (S108)。
根据上述差分,检验是否进行了系统设定的变更,复制补丁应用对象文 件(12)中不允许变更的文件,作为应用后变更文件(50)存储(S110)。 此时,在存在事先确定不允许变更的文件的情况下,也能够预先生成变更禁 止文件列表(60),由此生成应用后变更文件(50)。
最后,在对补丁应用对象文件(12)应用了补丁数据(30)之后,将应 用后变更文件(50)反映在系统(10)上,由此,使补丁应用对象文件(12) 中不允许变更的文件恢复到补丁应用前的状态, 一系列的流程结束。
利用上述那样的本发明的程序能获得以下效果,S卩,在对系统所包含的 多个补丁应用对象文件应用补丁数据时,能够使不允许基于补丁变更的文件 在补丁应用后一并还原,能够消除每次应用补丁都另行进行重新设定系统资 源文件等的操作。


图1是表示本发明的概要的原理图。
图2是表示本发明的第一实施方式的流程的图。
图3是表示本发明的第二实施方式的流程的图。
图4是本发明的文件信息的比较的表示例。
图5是本发明的文件内容的比较的表示例。
图6是表示本发明的第三实施方式的流程的图。
图7是本发明的第三实施方式的系统资源变更禁止列表的例子。
图8是本发明的第三实施方式的自动更新时的文件内容的差分的表示例。
图9是本发明的硬件结构的概要图。
图IO是表示现有技术的补丁应用方法的问题点的图。
具体实施例方式
以下,根据附图和实施例详细说明本发明,但这并不对本发明做任何限定。
在以下的说明中,方便起见,构成系统(10)的多个文件被保存在单一
的存储介质上,但也能够对被分散保存在多个存储介质上的系统和被分散保 存在网络上的系统应用本发明的程序和装置以及方法。
在以下的说明中,方便起见,作为对象的文件是系统资源文件(系统管 理员进行了设定变更的文件),但本发明不限于此,对一般的文件也能通用。 (第一实施方式)
在本发明的第一实施方式的例子中,模拟应用目录(20)是与当前的系 统(系统目录)(10)在同一存储介质上生成的目录。
图2是表示本发明的第一实施方式的流程的图。在第一实施方式的流程 中,首先,根据补丁数据(30)生成变更文件名列表(40) (S200),与系 统目录(10)在同一存储介质上生成模拟应用目录(20) (S202)。根据变 更文件名列表(40),将补丁应用对象文件(12)作为补丁模拟应用文件(22) 而复制到模拟应用目录(20)中(S204),接着补丁数据(30)被应用于补 丁模拟应用文件(22) (S206)。
比较系统目录(10)和模拟应用目录(20),通知由于补丁应用而被变 更的文件的信息(S208)。此时,如果被变更的文件是文本文件(S210), 则通知文件变更内容(S212),与此相应,复制被判断为在补丁应用后需要 修正(不允许变更)(S214)的文件,将其作为应用后变更文件(50)进行 存储(S216)。在本例中,说明了应用后变更文件(50)为文本文档的情况, 但也能够对二进制文件生成应用后变更文件(50)。
然后,当对当前系统目录(10)应用补丁数据(30) (S218)时,利用 应用后变更文件(50)进行补丁应用后的系统(10)的一部分文件的置换 (S220),流程结束。 (第二实施方式)
图3是表示本发明的第二实施方式的流程的图。在第二实施方式中,进 行包含系统的存储介质(例如在本例中为磁盘)全体的复制,来代替如上述 第一实施方式那样另行生成模拟应用目录。
在第二实施方式的流程中,首先,根据补丁数据(30)生成变更文件名 列表(40) (S300)。然后,将包含系统(10)的磁盘(系统盘)的所有内 容复制到其他存储介质(代替应用盘)(S302),对该代替应用盘应用补丁 数据(30) (S304)。
接着,判断是否比较系统盘的所有文件和代替应用盘的所有文件(S306)。 在进行所有文件的比较的情况下,通知所有文件的文件变更信息(S310)。 在不进行所有文件的比较的情况下,根据以与第一实施方式同样的流程生成 的变更文件名列表(40)进行文件的比较,通知文件变更信息(S308)。此 时,如果被变更的文件是文本文件(S312),则通知文件变更内容(S314), 与此相应,复制被判断为在补丁应用后需要修正(不允许变更)(S316)的 文件,作为应用后变更文件(50)进行存储(S318)。
然后,当对当前系统盘(10)应用补丁数据(30) (S320)时,利用应 用后变更文件(50)进行补丁应用后的系统盘(10)的文件的置换(S322), 流程结束。
图4表示显示通知的文件变更信息的例子。在本例中,作为补丁数据的 信息,显示了 "PATCH_ID (补丁数据的ID) " 、 "PATCH—INSTALL"(补 丁数据的安装日期和时刻)、"PACKAGE"(包的类型)。另外,作为各 个根据补丁数据变更的文件的信息,显示了 "FILE"(文件路径)、"FILE TYPE"(文件类型),此外,分别针对"(system file)"(补丁应用前的 系统文件)和"(new file)"(补丁应用后的文件),显示了权限、用户名、 组名、大小、更新日期及时刻和校验和。
图5表示显示通知的文件的内容的比较(差分)的例子。在此与图4相 同,显示了 "PATCH—ID" 、 "PATCH—INSTALL" 、 "PACKAGE" 、 "FILE"、 "FILETYPE",此外,作为"DIFF"显示了 " (system file)"和"(new file)" 的差分以及不相同的行的行号。 (第三实施方式)
图6是表示本发明的第三实施方式的流程的图。在第三实施方式中,通 过系统管理员等预先生成系统资源文件的变更禁止文件的列表(系统资源变 更禁止列表),从而能事先预约补丁应用时不允许的变更的文件。
首先,生成系统资源变更禁止列表(60) (S600),根据补丁数据(30) 生成变更文件名列表(40) (S602),生成模拟应用目录(20) (S604), 根据变更文件名列表(40),将补丁应用对象文件(12)作为补丁模拟应用 文件(22)而复制到模拟应用目录(20)中(S606)。
接着,补丁数据(30)被应用于补丁模拟应用文件(22) (S608)。
然后,比较系统目录(10)和模拟应用目录(20),通知因补丁应用而 被变更的文件的信息(S610)。此时,如果被变更的文件是文本文件(S612), 则通知文件变更内容(S614)。
接下来,判断因补丁应用而被变更的补丁应用对象文件(12)是否记载 在系统资源变更禁止列表(60)中(S616),复制记载的文件作为应用后变 更文件(50)进行存储(S618)。
然后,当对当前系统目录(10)应用补丁数据(30)时(S620),利用 应用后变更文件(50)自动进行补丁应用后的系统(10)的一部分文件的置 换(S622),流程结束。
上述实施方式也能够进行组合。例如可以这样组合如第三实施方式那 样基于系统资源变更禁止列表(60)生成应用后变更文件(50)及自动更新, 并且如第一实施方式那样的根据文件变更内容的通知来决定是否允许修正, 从而生成应用后变更文件(50)。
图7是系统资源变更禁止列表的例子,记载不允许变更的文件的路径和 不允许变更的文件的路径及设定。
图8表示像第三实施方式那样自动更新的情况下显示通知的文件内容的 比较(差分)的例子。在此也与图5相同,显示了 "PATCH—ID"、 "PATCH—INSTALL " 、 "PACKAGE " 、 "FILE " 、 " FILE TYPE "以及"DIFF ", 此外,将不允许变更的文件及其设定作为"NO CHANGE"进行了列表显示。
上述实施方式能够通过计算机程序实施,也能够通过将该计算机程序存 储在计算机可读的存储介质中之后,使计算机读入存储在该存储介质中的程 序并执行从而实施。
图9是本发明的硬件结构的概要图,CPU (900)、存储器(902)、输 入装置(904)、输出装置(906)、外部存储装置(908)、介质驱动装置(910)、 便携存储介质(912)、网络连接装置(914)由总线(916)连接。本发明的 程序能够存储在外部存储装置(908)或由介质驱动装置(910)驱动的便携
存储介质(912)中。另外,硬件能经由网络连接装置(914)与网络连接, 并能通过输入装置(904)和输出装置(906)输入输出本发明的程序。
通过本发明事先检测出补丁应用中的文件变更内容,对不允许因补丁应 用造成的变更的文件,在补丁应用后能够自动且有选择地还原。
权利要求
1.一种补丁应用程序,使具有存储单元的计算机执行对系统所包含的多个补丁应用对象文件中的至少一部分应用补丁数据的处理,其特征在于,使上述计算机执行包括以下步骤的处理从存储在上述存储单元中的上述补丁数据中提取多个上述补丁应用对象文件的信息的步骤;根据所提取的多个上述补丁应用对象文件的信息,复制多个上述补丁应用对象文件,作为补丁模拟应用文件存储在上述存储单元中的步骤;将上述补丁数据应用于上述补丁模拟应用文件的步骤;比较多个上述补丁应用对象文件和应用了上述补丁数据的上述补丁模拟应用文件,从而得出差分的步骤;根据上述差分,从多个上述补丁应用对象文件中选择并复制不允许基于上述补丁数据进行变更的文件,作为应用后变更文件存储在上述存储单元中的步骤;对多个上述补丁应用对象文件应用上述补丁数据的步骤;用上述应用后变更文件,在因上述补丁数据的应用而被变更的上述补丁应用对象文件中置换未被允许变更的文件的步骤。
2. 根据权利要求1所述的补丁应用程序,其特征在于,多个上述补丁应 用对象文件是多个系统资源文件,上述多个系统资源文件为系统管理员变更 了设定的文件。
3. 根据权利要求1或2所述的补丁应用程序,其特征在于,还使上述计 算机执行通知上述差分的步骤。
4. 根据权利要求3所述的补丁应用程序,其特征在于,在通知上述差分 的步骤中,在多个上述补丁应用对象文件包含文本文件时通知上述差分。
5. 根据权利要求1-4中任一项所述的补丁应用程序,其特征在于,还使 上述计算机执行以下步骤生成变更禁止文件列表的步骤;将记载于上述变更禁止文件列表中的文件从上述补丁数据的应用对象中 排除的步骤。
6. 根据权利要求1-5中任一项所述的补丁应用程序,其特征在于,多个 上述补丁应用对象文件的信息包含文件类型、文件大小、校验和、或更新日 期及时刻。
7. 根据权利要求1-6中任一项所述的补丁应用程序,其特征在于,上述 补丁模拟应用文件被复制生成在包含上述系统的盘的模拟应用目录中。
8. 根据权利要求1-6中任一项所述的补丁应用程序,其特征在于,上述 补丁模拟应用文件被复制生成在替代应用盘中,上述替代应用盘为与包含上 述系统的盘不同的盘。
9. 一种补丁应用装置,对系统所包含的多个补丁应用对象文件中的至少 一部分应用补丁数据,其特征在于,包括存储单元,其存储上述补丁数据,提取单元,其从存储在上述存储单元中的上述补丁数据中提取多个上述 补丁应用对象文件的信息,补丁应用单元,其用于应用上述补丁数据,复制单元,其在将上述补丁数据应用到多个上述补丁应用对象文件之前, 复制多个上述补丁应用对象文件,作为补丁模拟应用文件存储在上述存储单元中,差分取得单元,其比较多个上述补丁应用对象文件和由上述补丁应用单 元应用了上述补丁数据的上述补丁模拟应用文件,从而得出差分,变更允许单元,其根据上述差分取得单元所取得的上述差分,从多个上 述补丁应用对象文件中选择并复制不允许基于上述补丁数据进行变更的文件,作为应用后变更文件存储在上述存储单元中;其中,在由上述补丁应用单元对多个上述补丁应用对象文件应用了上述补丁数 据之后,用上述应用后变更文件,在上述补丁应用对象文件中置换未被上述 变更允许单元允许变更的文件。
10. 根据权利要求9所述的补丁应用装置,其特征在于,多个上述补丁 应用对象文件是多个系统资源文件,上述多个系统资源文件为系统管理员变 更了设定的文件。
11. 根据权利要求9或10所述的补丁应用装置,其特征在于,还包括通 知上述差分的通知单元。
12. 根据权利要求9-11中任一项所述的补丁应用装置,其特征在于,还 包括补丁应用对象限定单元,该补丁应用对象限定单元生成变更禁止文件列 表,将记载于上述变更禁止文件列表中的文件从上述补丁数据的应用对象中 排除。
13. 根据权利要求9-12中任一项所述的补丁应用装置,其特征在于,多 个上述补丁应用对象文件的信息包含文件类型、文件大小、校验和、或更新 日期及时刻。
14. 根据权利要求9-13中任一项所述的补丁应用装置,其特征在于,上 述补丁模拟应用文件被复制生成在包含上述系统的盘的模拟应用目录中。
15. 根据权利要求9-13中任一项所述的补丁应用装置,其特征在于,上 述补丁模拟应用文件被复制生成在替代应用盘中,上述替代应用盘中为与包 含上述系统的盘不同的盘。
16. —种补丁应用方法,用于使具有存储单元的计算机执行对系统所包 含的多个补丁应用对象文件中的至少一部分应用补丁数据的处理,其特征在 于,使上述计算机执行包括以下步骤的处理提取单元从存储在上述存储单元中的上述补丁数据中提取多个上述补丁 应用对象文件的信息的步骤;复制单元根据所提取的多个上述补丁应用对象文件的信息,复制多个上 述补丁应用对象文件,作为补丁模拟应用文件存储在上述存储单元中的步骤;补丁应用单元将上述补丁数据应用于上述补丁模拟应用文件的步骤;差分取得单元比较多个上述补丁应用对象文件和应用了上述补丁数据的 上述补丁模拟应用文件,从而得出差分的步骤,变更允许单元根据上述差分,从多个上述补丁应用对象文件中选择并复 制不允许基于上述补丁数据变更的文件,作为应用后变更文件存储在上述存 储单元中的步骤;上述补丁应用单元对多个上述补丁应用对象文件应用上述补丁数据的步骤;上述变更允许单元用上述应用后变更文件,在因上述补丁数据的应用而 被变更的上述补丁应用对象文件中置换未被允许变更的文件的步骤。
全文摘要
提供对不允许基于补丁应用的变更的文件在补丁应用后进行还原的补丁应用方法。提供一种对系统所包含的补丁应用对象文件的一部分应用补丁的补丁应用程序,从补丁中提取补丁应用对象文件信息,根据所提取的信息复制补丁应用对象文件,作为补丁模拟应用文件存储,将补丁应用于补丁模拟应用文件,比较补丁应用对象文件和应用了补丁的补丁模拟应用文件而得出差分,根据差分从补丁应用对象文件中选择不允许基于补丁变更的文件进行复制,将其作为应用后变更文件进行存储,对补丁应用对象文件应用补丁,用应用后变更文件置换在因补丁应用而被变更了的补丁应用对象文件中置换没有允许变更的文件。
文档编号G06F11/00GK101375252SQ20068005282
公开日2009年2月25日 申请日期2006年2月14日 优先权日2006年2月14日
发明者小泽彰剂 申请人:富士通株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1