磁盘数据传送系统的制作方法

文档序号:10663567阅读:559来源:国知局
磁盘数据传送系统的制作方法
【专利摘要】本发明提供一种使用本地启动作为前提,并可以高效进行OS映像数据的更新作业或者版本管理的新型磁盘数据传送系统。其中,至少一台主服务器和多个用户端通过网络连接在一起;将含有主服务器管理的用户端用操作系统的映像数据作为主数据,将其复制或者被变更为规定磁盘格式的数据的复制作为上述用户端的引导映像进行配备;上述主数据被更新时,在上述用户端工作的状态下,上述用户端通过上述网络从上述主服务器获取相对于更新前的主数据的差分,通过再启动上述用户端的方法更新上述用户端的上述引导映像。
【专利说明】
磁盘数据传送系统
[0001]【技术领域】
本发明涉及一种可以给多个用户端高效地配备操作系统的磁盘数据传送系统。
[0002]【【背景技术】】
作为给多个用户端(下称「用户端」)配备操作系统(下称「OS」)的方法,近年广泛地使用网络引导系统(专利文献I)。网络引导系统具有如下特征:将包含用户端用OS的数据,在网络引导服务器上作为磁盘映像保存为「OS映像数据」,并通过LAN(局域网)等高速网络直接加载到各用户端并共有该「OS映像数据」。网络引导系统的最大的优点是:网络引导服务器侧的OS映像数据被更新时,可以立即(正确的说是各用户端再次启动后)反映出该更新。且,因网络引导服务器管理的用户端的数据可以统一用一份,故比较容易实现多个版本的版本管理。
[0003]采用网络引导系统的前提是使用向一台网络引导服务器连接多个用户端且被称为『1:N连接』的连接方法。因此,作为基础技术,其前提是用户端从启动时即连接在高速网络上。例如,对于用户端的数量超过50台的大规模网络引导系统,如果没有用千兆级别的超高速网络连接的LAN环境,无法期待适于实用的舒适操作。近年网络引导系统可以迅速普及的一大原因就在于超高速网络的广泛普及。
[0004]将共用OS映像数据作为主数据,将该复制传送到用户端进行启动的技术(在说明书中将其称为「磁盘数据传送系统」)(专利文献2)已为公众所知。磁盘数据传送技术如其名称的来源一样,之前通过DVD或者CD等盘状记录媒体进行引导图像的分配(送信),但是近年有人想出通过网络从服务器向用户使用的用户端配信的方法。如磁盘数据传送技术一样,对用户端不使用网络仅用本地环境进行启动的启动方法,在本说明书中,将其有别于网络引导而称为「本地启动」。
[0005]【现有技术文献】
【专利文献】
【专利文献l】W02009/069326 【专利文献2】美国专利第6,108,697号 【
【发明内容】

近年因使用桌面环境,OS映像数据的大小有时会达到50GB?100GB或者更大。因此通过磁盘数据传送技术向多个用户端传送OS映像数据,会需要很长的时间。
[0006]例如,使用记录媒体进行送信时,有必要准备多个记录媒体。通过单播传送方法从一台主服务器向多个用户端传送时,因会受到网络带宽的限制,因此针对每一台用户端的传送效率会显著降低,送信所需的时间依然会很长。
[0007]且,使用磁盘数据传送技术时,主数据被更新时,针对各用户端的信息传送工作也要从零开始重新进行。另,因近年使用桌面环境,即使完全没有必要重新安装软件,但也要像OS或者杀毒软件的升级工作一样高频地进行更新,信息传送所需的时间过长会成为磁盘数据传送的致命缺点。
[0008]如上所述,网络引导系统虽然可以解决上述问题,但是具有如下缺点: (1)无法使用网速慢的网络;
(2)在无法和网络引导服务器进行通信的状态下,不仅无法启动,且无法继续进行工作。
[0009]在网络引导系统中,通过在用户端侧设置缓存机构的方法可以解决部分上述问题,但是服务器上的OS映像数据被更新时需要和网络进行连接。即,使用网络引导系统的系统基本条件是“网络引导服务器和用户端需要通过网络设备的有线网络进行连接,且至少用户端的网络设备处于在线状态(即,网卡、交互式集线器等所有的网络设备已经和电源连接,且可以和网络引导服务器进行通信的状态)时和服务器进行连接”。
[0010]有鉴于此,本发明的主要的技术课题是提供一种新型磁盘数据传送系统,其以即使和服务器无法进行通信也可以启动的本地启动为基础,并能实现作为网络引导的优点的、高效进行OS映像数据的更新作业或者版本管理。
[0011 ]本发明的磁盘数据传送系统,其特征在于:
至少一台主服务器和多个用户端通过网络连接在一起;
将上述主服务器管理的OS映像数据或者OS映像数据以及相对于其的一个或者多个差分数据作为主数据,将其复制数据或者被转换为规定的磁盘格式的数据作为上述用户端的引导映像进行配备;
上述主数据被更新时,在上述用户端工作的状态下,上述用户端通过上述网络从上述主服务器获取相对于更新前的主数据的差分数据,通过再启动上述用户端的方法更新上述用户端的上述引导映像。
[0012]其中,「主服务器」是用于保存成为复制源的「主数据」的至少一台电脑。为反应引导映像的更新有必要进行再启动,因为再启动用户端的目的有多种,从主服务器获得差分数据后在何种时刻更新引导映像,可根据需要进行设定。
[0013]在本发明中被传送的OS的磁盘映像不是在用户端上作为虚拟设备进行工作的映像,而是以通过一般引导程序进行本地启动的方式作为前提。其中,「本地启动」可以包括下列情形,即,在网络引导系统中,用户端上保存有缓存数据,在没有和网络引导服务器连接的离线状态下也可以启动的情形。
[0014]其中,主数据被更新后,在用户端工作时,可以通过网络仅获取差分数据。「用户端工作时」是指用户端的启动程序结束,OS处在正常状态的情形。
[0015]上述用户端也可以具有差分管理机构,该差分管理机构将含有上述用户端的主机名以及IP地址等的各用户端的固有数据以及写入各用户端内的数据、设备驱动程序的构成信息等作为相对于上述引导映像的差分数据进行保存。且,上述差分管理机构也可以是虚拟盘系统或者写时复制方式的文件系统。
[0016]上述差分数据也可以是相对于00BE(0ut-0f-Box Experience)状态的OS映像数据的差分数据。更为具体的是,上述用户端通过用户端用操作系统第一次启动时或者启动后,必要时所需的设备驱动程序会被写入上述用户端用操作系统的内核中,同时将相当于设备驱动程序写入结束的状态的最新OS映像数据,作为相对于OOBE状态的差分数据使用。
[0017]采用上述构成时,即使用户端的硬件构成不相同,第一次启动时或者启动后,所需的设备驱动程序会被写入上述用户端用操作系统的内核中。即,不会要求用户端侧的设备构成必须是完全相同的构成,其可以兼容硬盘构成的不同点并启动用户端。
[0018]其中,在用共用的OS映像数据启动多个用户端的网络引导系统中,需要仅将IP地址、主机名、域信息等最小限度的信息发至用户端上,且需要在比较短的时间的完成启动程序,故所有的用户端具有相同的硬件构成是前提条件,硬件构成不相同则无法保证流畅的工作。但是本发明的系统在硬件构成不一定相同的情况下也可以保证流畅的工作。
[0019]但是,如果使用OOBE状态的映像数据,在第一次启动时会进行写入设备驱动程序的工作,因此具有启动较慢的缺点。所有的用户端具有相同的硬件构成时,和使用OOBE状态的OS映像数据的情形相比,实现制作含有设备驱动程序的设定已结束的OS映像的主数据会获得更高的效率。例如,不对硬件构成作任何更改而从网络引导系统构筑的系统转换成本系统时,不一定要使用OOBE状态的OS映像数据。
[0020]其中,「第一次启动」是指映像数据被更新后马上进行的启动,并不意味着之后每次启动时都进行设备驱动程序的读入。
[0021]另,上述用户端也可以具备为处理上述引导映像或者差分数据而使用的管理用
OS。管理用OS是相对于引导用OS而独立启动的其他OS,只要是OS级别且可以认知主数据和差分数据并处理数据即可,可以不管OS的类型。例如,使用预安装于用户端中的OS也可以。用管理用OS启动,可以进行主数据和差分数据的初始化、复制、重命名、合并等操作。
[0022]且,也可以构成一个用户端具备一个或者多个写入缓存的形式。向写入缓存写入内容时,仅通过消除写入缓存的方法即可恢复至写入前的状态。
[0023]上述用户端也可以具备通过网络从主服务器获取主数据以及差分数据的复制,并初始化启动盘的功能。具体的是,例如用户端在用可提前和网络连接的其他OS(在此称为“初始化用OS”)工作的状态下,可以通过网路从主服务器获取主数据的复制,并将该复制替换至引导用OS并启动用户端。初始化用OS只要是可相对于主数据的OS独立启动的其他OS即可,不限种类。例如,可以利用预安装于用户端上的OS,也可以利用Linux(注册商标)或其他OS0
[0024]另,进行用户端的初始化后,不一定要「通过网络」传送主数据的复制,也可以使用用记录媒体等的现有的送信方法。「初始化用OS」和「管理用OS」也可以是同一 OS。
[0025]此时,可以不采用复制,采用基于该复制而转换了格式的磁盘格式的数据。任何一种情形下,用户端获取主数据的复制后,将获取的OS映像数据作为引导用OS进行启动,因此其是本地启动,在和网络引导服务器无法进行通信的状态下也可以启动,且可以继续工作。这是和网络引导系统相比最大的优点。
[0026]上述多个用户端中也可以有一台兼作为主服务器起作用。主服务器不一定要求使用专用的服务器。
[0027]也可以构成为,上述主服务器向具有不同硬件构成的用户端传送用于转换为OOBE状态的OS映像图像的差分数据。
[0028]上述用户端从上述主服务器获取硬件构成不同的其他用户端使用的OS映像数据,同时获取用于将已获取的OS映像数据转换为OOBE状态的OS映像数据的差分数据,用这些数据启动用户端。
[0029]【发明的有益效果】
如果使用本发明,在和网络引导服务器无法进行通信的状态下也可以启动用户端,因此启动时不会产生网络接入,且可以继续工作。又,主数据被更新时,用户端在工作过程中,可以通过网络获取该差分数据,因此也可以使用无线LAN等较慢网络、多路传送或者点对点传送等。
[0030]【【附图说明】】
图1是用于说明第一实施方式的磁盘数据传送系统的基本结构的概念图;
图2是表示第二实施方式的实施例1?3的动作的概念图;
图3是表示在第三实施方式中说明的用户端的个别设定步骤的概念图;
图4是表示第四实施方式中的用户端A以及用户端B的虚拟盘构成的图;
图5是表示用第四实施方式中的用户端A中进行的主数据的更新以及信息传送步骤的图;
图6是表示第四实施方式中的用户端B的虚拟盘状态的图;
图7是表示在第五实施方式中用传送差分数据前的用户端A中的虚拟盘的处理步骤的图;
图8是表示在第五实施方式中用传送差分数据前的用户端A中差分数据的制作步骤的图;
图9是表示在第五实施方式中用户端A的写入缓存的制作步骤的图;
图10是表示在第五实施方式中传送差分数据后的用户端B的虚拟盘的状态的图;
图11是表示在第五实施方式中对传送差分数据后的用户端B的虚拟盘进行初始化的步骤的图;
图12是表示在第五实施方式中传送差分数据后的用户端B中制作写入缓存的步骤的图;
图13(A)是表示在第六实施方式中,将「2.vhd」从用户端A传送到用户端B,刚启动完用户端B后的用户端A
图13(B)是表示在第六实施方式中,将「2.vhd」从用户端A传送到用户端B,刚启动完用户端B时的用户端B的虚拟盘的状态;
图14是表示在第六实施方式中用用户端A虚拟盘的处理步骤的图;
图15是表示第六实施方式中的用户端C的虚拟盘的状态的图;
图16是表示在第六实施方式中传送差分数据后的用户端C的虚拟盘的状态的图;
图17是表示在第六实施方式中对传送差分数据后的用户端C的虚拟盘进行初始化的步骤的图。
[0031]【附图标号说明】
10主服务器 13交换集线器 15接入点
20多个用户端(20a,20b,……)
30 无线LAN 【【具体实施方式】】
下面,参考附图对本实施形态的磁盘数据传送系统进行详细说明。首先,将本发明中作为前提的磁盘数据传送系统的一实施方式作为示例进行说明。可以将各实施方式记载的内容解释为可以代表本发明的技术思想的情形,不应解释为仅限定于实施形态的情形。另,可以将记载于各实施方式的事项进行组合并实施,但是有特别说明的情形除外。
[0032](第一实施方式)-构成例-
图1是表示第一实施形态的磁盘数据传送系统的构成例的图。在该实施方式中,在由交换集线器13等网络设备构成的局域网(LAN)I内,至少一台主服务器10和多个用户端20(20a、20b、…),通过无线LAN接入点15和无线LANl30相互连接。
[0033]然,主服务器10也可以是由一台用户端(20a)兼任的主服务器。另,主服务器10也可以是虚拟设备。虽然在本构成例中采用了无线LAN,但是也可以采用有线LAN。
[0034]本发明中作为前提的「磁盘数据传送系统」和网络引导系统不同,任何一个用户端20均使用引导用OS并通过本地启动方式进行启动。因此可以用有线LAN进行连接是理所当然的事情,也可以用如图1所示的通过无线LAN进行的连接方式或者在没有连接网络的情况下启动用户
[0035]首先,为构筑图1所示的环境,采用初始化用OS。初始化用OS只要是可独立于主数据的OS而自行启动的其他OS,则可以是任意形式的OS。例如,可以采用预安装于用户端的OS,也可以采用Linux(注册商标)及其他OS。
[0036]首先,用初始化用OS启动用户端。初始化用OS在工作时,通过网络可和主服务器10进行通信,从主服务器10获取主数据以及差分数据的复制,将该复制作为「引导用OS」保存至用户端,用保存的复制启动用户端。
[0037]当通过主服务器10进行传送的OS映像数据是例如「虚拟盘映象」时,对于初始化用OS而言可以将该数据视为「文件」,使用「复制文件」这样的简单方法就可以从通过网络连接在服务器上的主服务器10获得数据。另,也可以不用该复制文件,而采用基于复制的数据进行格式转换后的规定磁盘格式的数据。格式转换的目的在于压缩、加密、以及转换为用户端工作时OS可以识别的格式等几种。且,不仅可以将获取的数据直接以文件形式进行保存,还可以将数据用V2P(从虚拟设备转换为物理设备)方法展开后写入磁盘中。
[0038]另,主数据的大小相当于桌面型OS的系统硬盘的大小,其大小例如是50GB?100GB或者是比这个更大的大小,因此及时使用千兆级别的网络,在通过单播传送连接进行传送时需要数十分钟。向多个用户端传送时需要更长的时间。
[0039]因此,可以采用传送效率更高的信息传送方法,例如多路传送、广播传送、P2P传送等传送方法。或者不使用网络,使用采用DVD等记录媒体的传送方法也可以。另,也可以根据需要将数据分割成几个后进行传送。或者传送时确认校验和,如果传送失败时通过再次进行复制的方法提高可靠度。
[0040]在任何一种情形,用户端在获取主数据的复制后,将获取的OS映像数据用作为引导用OS而启动,在此意义上用户端采用的是本地启动方式,其和网络引导系统不同,在和网络引导服务器无法进行通信的状态下也可以启动,且可以继续工作。且,和使用虚拟设备的情形不同,也不产生使用CPU处理或者访问周边设备等而产生的系统开销。
[0041]如上述,需要通过某种手段将数据大小较大的主数据依次复制到用户端的启动盘(用户端的本地磁盘或或者保存有启动OS所需的数据的磁盘)上,用户端配备主数据后,主数据被更新时,仅将和更新前的主数据有差异的差分数据从主服务器10传送给各用户端
20。进行上述步骤的前提是应设有「通过差分管理OS映像数据的机构」。
[0042]某种OS中,上述机构也会包含于OS中,这因传送的操作系统而不同。作为其一可以举例虚拟盘。在用户端的OS中,虚拟盘由通过形成为特定格式的一个乃至多个「文件形式」组成,其被更新时,会产生「差分文件」。将该差分文件传送给各用户端20时,没有必要将较大的更新前的主数据再次复制到用户端。各用户端20可以从主数据或者差分数据开始进行引导。此时的引导程序不是置身于虚拟设备的引导程序,而是置身于含有B1S等写入过程的非虚拟环境中的一般引导程序。
[0043]从上述请求可知,在本发明中,用户端获得主数据的复制后,不是虚拟设备将获得的OS图像数据写入并进行利用,而是必须将其作为引导盘直接用于启动。
[0044]对于本发明中的「虚拟盘技术」的具体且详细的利用步骤,在后续内容中进行说明。虚拟设备中的OS映像数据的利用方法和本发明中的利用方法,有本质的不同。在虚拟设备利用写入的OS映像数据时,(I)在由OS映像数据启动的OS、和成为用于启动虚拟设备的工作环境的基础的其他OS同时工作的状态下使用;且
(2)由OS映像数据启动的OS访问用户端的硬件时,为在虚拟设备的管理下进行工作而产生系统开销;
而按照本实施方式那样,作为引导盘直接用于启动的话,
(i)由OS映像数据启动的OS,作为在该用户端在该时点启动着的唯一的OS启动;
(?)由OS映像数据启动的OS,因能够直接访问用户端的硬件,故不会产生工作时的系统开销。
[0045](第二实施方式)-对于磁盘复原和差分管理- 在本实施形态中,对实际的差分管理进行详细说明。
[0046]-实施例1(磁盘复原、其一)-
在例如为给不特定的多个用户提供短时间的使用而配备多个用户端的场所等,往往要求仅通过再次启动用户端的方法就可以回到管理者预先设定的「初始状态」。将第一实施方式示出的磁盘数据传送系统作为前提使用该差分管理机构,即可满足如上要求。
[0047]在作为桌面型操作系统一例的Windows(注册商标)中,可以使用被称为「VHD格式」扩展名的「.vhd」及「.vhdx」的文件格式。VHD格式的文件和含有OS映像数据等的「记忆装置的某个时点的状态」相关联。且,与主数据不同地,可以在任意时刻制作和主数据相对的差分数据,且也可以制作相对于差分数据的差分数据。且,也可以将多个差分数据合并(merge)成一个文件。
[0048]图2(A)是表示实施例1的动作的概念图。图中的「0.vhd」是表示OS主数据的初始状态的文件。初始状态可以是刚安装OS后的状态,也可以是刚进行所需的程序以及设备驱动程序的安装作业后的状态。即,可以根据需要将任意一状态设定为「初始状态」。
[0049]制作和表示该初始状态的文件「0.vhd」相对的差分数据「writecache0.vhd」,用该差分数据「writecache0.vhd」启动用户端。图中的箭头后方的数据表示和箭头前方的数据相对的差分数据。通过如上述的构成,启动用户端后也可以将差分数据「writecache0.vhd」复原至内容为零的「初始化」状态,即可以立即复原至初始状态。这个相当于使差分数据「writecache0.vhd」作为写入缓存起作用。另外,删除差分数据后用主数据启动时同样也可以复原至初始状态,此时因不存在写入缓存,直接在主数据上写入数据,故若要下次启动时为使写入缓存起作用,保留差分数据的文件自身,仅删除内容(初始化)较好。
[0050]在此重复一下,在本实施形态中,包含于用VHD格式保存的主数据「0.vhd」或者差分数据「writecache0.vhd」中的OS不是在用户端的「虚拟设备」上运行的OS,而是作为用户端的物理性OS直接运行的OS。另,在用差分数据「writecache0.vhd」启动时,应该较难删除自身的「writecache0.vhd」。此时,也可以进一步导入作为相对于引导用OS独立启动的其他OS的「管理用OS」,首先用管理用OS启动后,初始化差分数据「writecache0.vhd」。
[0051 ]-实施例2(磁盘复原、其二 )-
在上述的实施例1中,为初始化差分数据有必要每次都启动管理用OS,因此进行磁盘复原需要等待时间。但是,使用两个差分数据(「writecacheO-1.vhd」以及「writecacheO-
2.vhd」),可以回避上述问题。
[0052]图2(B)是表示实施例2的动作的概念图。
[0053]首先,用第一差分数据「writecacheO-Ι.vhd」启动时(或者是这个之前),制作第二差分数据「《4化(^(^60-2.71!(1」。因第二差分数据的内容为零,故第二差分数据「writecacheO-2.vhd」等同于初始状态。之后,下次启动时用该第二差分数据「writecacheO-2.4(1」启动。在用户端03用第二差分数据工作时初始化第一差分数据「《4化(^(^60-
1.vhd」,下次启动时用该第一差分数据「writecacheO-Ι.vhd」启动。也可以用程序对该过程进行自动化。如上述,相对于主数据「0.vhd」制作两个差分数据「writecacheO-l.vhd」以及「writecacheO-2.vhd」,用一方进行启动时对另一方进行初始化,重复上述过程,即使不使用管理用OS也可以每次都可以复原至初始状态。另,不仅可以交替重复使用「writecacheO-1.vhd」以及「writecache0_2.vhd」,还可以制作更多如「writecache0_3.vhd」、「writecacheO-4.vhd J等新的差分数据。
[0054]之后,作为实施例2的应用例,对不删除用户数据等的运用进行说明。在实施例1中说明的磁盘复原功能,通过在用户端启动时对作为写入缓存的差分映像进行初始化的方法进行。因此,再次启动用户端时,会丢失仅包含在该写入缓存内的文件等所有内容。
[0055]但是,使用两个写入缓存(差分数据)时,再次启动前的另一个差分数据「writecacheO-Ι.vhd」中留有再次启动前的变更信息(例如文书数据等用户数据),因此如果在用另一个差分数据「writecacheO-2.vhd」启动的过程中将该变更信息复制到相同保存区域,再启动后也可以进行保留用户数据的运作。用上述构成进行运作时,对系统进行的变更在每次再启动时均会回到初始状态,但用户数据也不会消失。
[0056]如上述,设置多个写入缓存时,不需要管理OS,也可以将所需的数据转送后进行保存等。
[0057]另,和上述内容不同,为尽量保持用户制作的文件或者用户对系统所做的变更,一般会采用再启动时不进行写入缓存的初始化的构成。该构成通过将写入缓存的初始化处理仅限定于版本更新时的方法而容易实现。但是更新主数据后必须进行写入缓存的初始化,此时同样也可以对照「主数据更新前的写入缓存的信息」将变更信息复制到相同保存区域作为「主数据更新后的写入缓存」,借此构成进行「系统部分的更新」的同时继续保持用户数据的结构。
[0058]-实施例3(制作多个复原点的例)_
图2(C)是表示实施例3的动作的概念图。
[0059]差分数据在维持相互之间的依存关系的状态下制作多个层次。例如,图2(C)所示,相对于初始状态的主数据「0.vhd」制作差分数据「1.vhd」时,该差分数据依存于成为其基础的「0.vhd」。在此状态下,相对于差分数据「1.vhd」制作差分数据「2.vhd」时,第二个差分数据「2.vhd」不仅依存于成为其基础的「1.vhd J,还依存于「0.vhd J。
[0060]利用差分数据「1.vhd」启动用户端方式进行启动时,「1.vhd」会被更新。如果「
1.vhd」被更新,会破坏「2.vhd_^P「1.vhd」之间的依存关系,之后无法用「2.vhd」进行启动。[0061 ] 之后,为「1.Vhd」的启动,制作作为「1.¥11(1」的克隆的|>1';^603(311613.¥11(1」,用其进行启动时,可以使差分数据「1.vhd」不被更新。使用该方法时,可以用和差分数据「1.vhd」相同的内容进行启动,且可以维持「2.vhd」和「1.vhd」之间的依存关系。
[0062](第三实施方式)-多个用户端的初始映像的设定步骤例-
将一个主数据复制到多个用户端的启动盘内时,即使使用「本地启动」,也有必要对每个用户端进行「个别设定」,例如IP地址或者主机名等。使用网络引导系统时,因有必要快速启动用户端,故使用「主机名等的动态设定」的情形较多。主机名等的动态设定在启动时已完成设定,其具有不需要再次启动的优点,但是也具有如下缺点,即前提是所有用户端必须由相同的硬件组成,具有无法兼容硬件构成的相异点。各用户端的硬件组成不一定是相同构成时,启动时应该写入OS的内核中的设备驱动程序,会因用户端不同而不同。
[0063]下面,就对新导入的多个用户端的启动盘的内容进行统一的顺序进行说明。因用户端的硬件有互不相同的可能,故被传送的OS映像数据使用被称为「00BE(0ut Of BoxExperience)状态」的OS映像数据。OOBE状态是指「不依存于用户端的状态」,换言之,是指「含有可以想象的所有设备驱动程序的状态」。将OOBE状态的OS映像数据作为主数据,将其复制保存至各用户端的启动盘内时,在第一次启动时会在各用户端上写入所需的设备驱动程序,且将每个用户端的固定设定保存在各用户端的存储装置内,因此可以兼容硬件构成的相异点。
[0064]首先,用DVD或者USB存储设备等可移动存储媒体的启动方法以及用网络引导的启动方法中的任意一种方法启动,首先启动初始化用OS。之后,将作为OOBE状态的OS映像数据的主数据「0.vhd」复制到用户端的启动盘内。另,同时也导入管理用OS。
[0065]之后,对每个用户端进行个别设定。作为进行个别设定的方法,有再检测硬件的工具。例如,用Windows (注册商标)时,可以使用「min1-Setup」处理。「min1-Setup」处理是在用户端上注册IP地址或者主机名以及有无加入的域等网络连接信息,且为读取虽已连接在用户端上但还没有注册在OS的内核中的设备驱动程序而开始检测硬件信息的处理过程。通过上述处理,可以适当兼容硬件的相异点,进行适合各用户端的硬件构成的再设定,即可以对用户端进行个别设定。
[0066]图3(A)以及图3(B)是表示在第三实施方式中对用户端进行个别设定的步骤的概念图。首先,如图3(A)表示,在用户端的启动盘中配备OOBE状态的主数据「0.vhd」的复制。之后,为防止主数据被更新,准备第一写入缓存。具体为,制作相对于「0.vhd」的差分数据「minisetupOa.vhd」。用该差分数据进行启动后,直接执行min1-Setup (过程SI)。
[0067]min1-Setup结束后,暂时关闭用户端。之后,如图3(B)表示,准备第二写入缓存。具体为,相对于之前的「minisetupOa.vhd」制作差分数据「writecacheOa.vhd」,用该映像启动用户端(过程S2)。也可以设定成通过程序按从过程SI到过程S2的步骤自动执行的方式。
[0068]按上述步骤实施时,以后再次启动时可在min1-Setup结束的状态下进行启动。之后,初始化作为第二写入缓存的差分数据「writecacheOa.vhd」,以后即可在该用户端中由每次刚进行完min 1-Setup的状态开始进行启动。
[0069]且,使用现有的磁盘数据传送机构时,如大家所知,实施的min1-Setup失败的例子较多。其原因在于,实施min1-Setup时,为加入域或者挂载文件服务器经常需要和服务器进行通信,因此会经常发生「没有连接网络」或者「因同时初始化多个用户端,服务器的负担过重连接超时」等问题。例如,同时对100台用户端进行初始化处理时,会碰到至少有2?3台的min1-Setup失败的情形。
[0070]但是,采用上述步骤时,即使实施的m i n 1- S e t u P失败,仅需重新制作「minisetupOa.vhd」,没有再次复制「0.vhd」等的必要,即可从OOBE状态的主数据「0.vhd」的状态开始再次进行min1-Setup,由此即可有效实施完整的min1-Setup。
[0071]通过上述的一系列方法,可以将一个映像传送给多个用户端,且每个用户端的硬件构成不相同的情况下也可以传送和使用统一的映像。
[0072]但是,在该方法中,更新磁盘映像「0.vhd」时,有将磁盘映像的大小通常都较大的「0.vhd」转送至多个用户端的必要。
[0073](第四实施方式)-主数据的更新和传送-
在本实施方式中为简化说明,假设用户端的台数为2台(用户端A、用户端B),其中一台(用户端A)起到主服务器的作用,对主数据的更新以及向其他用户端传送的步骤进行说明。
[0074][主数据的更新]
图4(A)以及图4(B)分别表示第四实施方式中的用户端A以及用户端B的虚拟盘的结构。
[0075]用户端A在存有作为OS映像数据的主数据「0.vhd」和相对于主数据的第一差分数据「1.vhd」的状态下,作为写入缓存制作第一差分数据「1.vhd」的差分数据「writecachela.vhdj,并通过其启动用户端A。
[0076]在用户端A进行应用程序的安装等时,该作业引起的对OS映像数据的变更部分会保存在作为写入缓存的差分数据「writecachela.vhd」中。之后,关闭用户端A时,这个阶段的「writecachela.vhd」的内容会成为应该传送给其他用户端的「更新数据」。其中,通过管理用OS启动用户端的方法等,将「writecachela.vhd」更名为「2.vhd」。之后,制作相对于刚更名的「2.vhd J的差分数据「wr i t ecache2a.vhd」以备启动用户端A时使用。
[0077]图5(A)表示使用在用户端A上作为虚拟盘而另行准备的主数据并借此启动管理用OS的样子,其还表示在管理用OS工作中对用户端A的主数据的更新数据进行更名,并制作作为写入缓存的「writecache2a.vhd」的样子。
[0078][OS映像数据的传送]
在用管理用OS启动的图5(A)的状态下,用写入缓存「writeCaChe2a.Vhd」再启动用户端A。图5(B)表示用写入缓存「writecache2a.vhd」启动用户端A的样子。在此状态下,将「
2.vhd」从用户端A复制到用户端B。如果用户端A上的「1.vhd」和用户端B上的「1.vhd」相同,被复制到用户端B上的「2.vhd」也会成为相对于用户端B上的「1.vhd」的差分。该复制作业可以在用户端B通过「writecache lb.vhd」工作时(参考图4(B))进行。因此,转送复制时使用的设备、媒体或者协议的自由度较高,可以使用已经说明的传送效率较高的各种传送手段。当然,也可以不从用户端A直接传送到用户端B,而是构成一种通过某个服务器或者其他用户端作为中转的结构。
[0079]图6(A)表示向用户端B复制「2.vhd」的过程已结束的状态。在此阶段,用户端抑皮「writecachelb.vhd」启动。在此状态下,如果设定成下次的启动用被更新的主数据的差分数据「2.vhd」进行的形式,虽可以反映更新,但是其会被写入「2.vhd」中。如图6(B)所示,不用「
2.vhdJ进行启动,而是制作相对于「2.vhdJ的差分数据「writecache2b.vhd J。该差分数据「writecache2b.vhd」当然也会起到写入缓存的作用。
[OO8O]之后,对写入缓存「writecache2b.vhd」进行「IP地址、主机名」等的所需的设定信息的变更。如果因为安装的不同情形而在「wr i tecache Ib.vhd」工作时无法变更「writecache2b.vhd」的内容,则也可以采用通过再启动而用管理用OS进行变更的形式。另,构成用户端在启动时动态设定主机名或者IP地址的形式时,可以省略变更该「writecache2b.vhd」的步骤。之后设定用「writecache2b.vhd」启动的形式,用户端再启动时,用户端B通过和差分数据「2.vhd」相当的状态启动。再启动后可以删除「writecachelb.vhd」的文件。
[0081 ][向多个用户端的展开]
有多个用户端时,可以通过重复相同步骤的方式进行展开。对于在何种时刻进行复制工作,或者在何种时刻允许将新版本用于其他用户端的问题,可以进行自由设定。
[0082](第五实施方式)-运用例-[传送用差分数据的制作步骤]
在第三实施方式中,参考图3,对将成为主数据的OS映像数据传送至各用户端的步骤进行了说明。在该步骤的各用户端中进行min1-Setup后,因各用户端的状态不同,无法将之后产生的主数据的变更作为差分数据进行传送。另,在第四实施方式中,参考图4?图6,对将作为主数据起作用且在用户端A中产生的变更复制到其他用户端的步骤进行了说明。在该步骤中,对每个用户端的个别设定只能进行如IP地址或者主机名之类的内容变更,如第三实施方式那样硬件构成不同时则无法使用。
[0083]在本实施方式中,将在起主服务器作用的用户端A中产生的变更,作为差分数据传送到硬件构成不同的其他用户端的步骤进行说明。
[0084]如图7(A)所示,首先将OOBE状态的OS映像数据「0.vhd」作为基础,设为适应用户端A的硬件构成已进行min1-Setup的映像为「minisetupOa.vhd」,并假设用户端A正以相对于「minisetupOa.vhd J 的差分数据「writecacheOa.vhd J 工作的状态。
[0085]在上述状态下,在用户端A进行应用程序的安装等时,该作业引起的相对于映像的变更部分会保存在作为写入缓存起作用的差分数据「writecacheOa.vhdJ中。
[0086]在该状态中,实施将OS映像数据恢复至OOBE状态的处理。在Windows(注册商标)中「sysprep」处理相当于该处理。实施sysprep后,如图7(B)所示,正在启动中的OS映像数据「writecacheOa.vhd」会成为OOBE状态。设定成下次启动时用「管理用OS」启动的方式并再启动用户?而A。
[0087]如图8所不,用管理用OS启动后,合并「writecacheOa.vhd」和「minisetupOa.vhdJ的内容,制作文件名为「1.vhd」的文件。如此获得的「1.vhd」会成为呈「00ΒΕ状态」且「相对于0.vhd的差分数据」。
[0088]之后,如图9(A)所示,作为相对于该「I.vhd」的差分数据制作「minisetupla.vhd」,设定为下次启动时用「111;[111861:即]^.¥11(1」启动的形式后进行再启动。「111;[111861:即13.¥11(1」会成为对「1.vhd」的写入缓存。
[0089]在此状态下,用作为写入缓存的「minisetupla.vhd」启动用户端A时,会直接进行min1-Setup。在min1-Setup结束的阶段,设定成下次启动时再次用「管理用OS」启动的方式并再启动用户端A。
[0090]图9(A)表示用户端A中的现在的主数据和其差分数据之间的关系。因差分数据「
1.vhd J是OOBE状态的磁盘映像,故可以用各种硬件进行启动。
[0091 ] 图9(B)表示从图9(A)的状态进一步制作作为相对于「mini se tup la.vhd」的差分的「writecachela.vhd」的样子。设定为下次用该磁盘启动的形式后再启动用户端。
[0092]构成如上形式时,用户端A可以用相当于新版本「1.vhd」的状态进行启动。
[0093]另,初始化写入缓存「writecachela.vhd」,可以实现将磁盘复原至进行了min1-Setup的状态的功能。
[0094]通过上述步骤,对于有不同硬件构成的用户端,可以获得可以兼容硬件构成的相异点并传送的差分数据。
[0095][向其他用户端的复制]
之后,对将用户端A制作的差分数据「1.vhd」利用在其他用户端B上的顺序进行说明。在下面的例中,用户端A在为使主数据的更新后的差分数据「1.vhd」适用于用户端A而已进行min1-Setup的状态下工作,用户端B在为使更新前的OS映像数据(主数据的复制)「0.vhd J适用于用户端B而已进行min1-Setup的状态下工作。
[0096]首先,从用户端A向用户端B复制差分数据「1.vhd」。该复制工作在用户端B通过「writecacheOb.vhd工作时进行。因此,转送复制时使用的设备、媒体或者协议的自由度非常高,可以使用已经说明的传送效率较高的各种传送手段。且,因「1.vhd」也是相对于主数据「0.vhd」的差分数据,故数据大小比主数据「0.vhd」还要小。因此,和复制整个磁盘映像的情形相比,可大幅缩减传送时间。
[0097]当然,也可以不从用户端A直接传送到用户端B,而是通过某个服务器中转。
[0098]且,因用户端A上的主数据「0.vhd」和复制到用户端B上的「0.vhd」的内容相同,故被传送到用户端B的差分数据「1.vhd」,也会成为相对于用户端B上的「0.vhd」的差分。因此,向用户端B传送「1.vhd」的工作结束后,用户端B的虚拟盘会成为图10(A)所示的状态。
[0099]接下来对传送结束后,在用户端B中利用差分数据「1.vhd」的步骤进行说明。用户端B自发地、或者接受来自服务器的指示、或者接受来自使用用户端B的用户的指示后,开始针对差分数据「1.vhd」的初始化作业。首先,关闭用户端A时,设定成下次启动时用管理用OS启动的形式,然后再启动。图10(B)表不用户端B用官理用OS再启动后的状态。
[0100]用户端B用管理用OS再启动后,首先,作为相对于差分数据「1.vhd」的差分数据,制作「minisetuplb.vhd」(图11(厶))。因在该时点「111;[111861:即113.¥11(1」中没有区别于「1.vhd」的差分数据,故「minisetuplb.vhd」表示和「1.vhd」同等的内容。该「1.vhd」中含有进行min1-Setup时指示设定内容的文件(unattended.xml)。用适当设定该文件的方法,可以进行含有「IP地址」、「主机名」、「域的加入」等的各种设定。也可以和服务器进行通信,获得适当的unattended.xml文件。另,也可以不使用unattended.xml,而是通过变更文件或者注册表内容等磁盘映像内容的方法,对每个用户端进行个别设定。
[Ο?Ο?] 之后,设定用「minisetuplb.vhd」启动用户端的形式后再启动用户端时,会进行min1-Setup(图11(B))。用「minisetuplb.vhd」启动用户端B后,实施预定的设定处理(min1-Setup)。另,在该阶段也可以进一步对每个用户端进行个别设定。之后,制作相对于「minisetuplb.vhd」的差分数据「writecachelb.vhd」(写入缓存),并设定成用该映像启动用户端B的形式后再启动(图12)。
[0102]采取上述步骤时,用户端B也可以将在用户端A中制作的差分数据的复制「1.vhd」作为基础,对用户端进行个别化处理(min1-Setup)并进行启动。且,在该阶段,因也可以参考写入缓存「writecacheOb.vhd」的内容,故也可以设计成将包含于更新前的虚拟盘「writecacheOb.vhd」中的用户数据复制到更新后的虚拟盘「writecachelb.vhd」中的形式。
[0103]在已进行完上述步骤的阶段,因之后不需要「m i n i s e t u P O b」和「writecacheOb.vhd」,故也可以在适当的时刻将其删除。
[0104]另,上述的一系列步骤,在「2.vhd」、「3.vhd」等新映像生成时也可以反复使用。此时,在各用户端之间传送的内容也仅是各版本之间的差分,故传送量较少。
[0105]有多个用户端时,可以通过重复相同步骤的方式进行展开。对于在何种时刻进行复制工作,或者在何种时刻允许将新版本用于其他用户端的问题,可以进行自由设定和控制。
[0106](第六实施方式)-硬件混合存在环境中的应用-
在本实施例中,对硬件构成不同的多个用户端和硬件构成相同的多个用户端混合存在的环境中的应用进行说明。此时,可以采取根据各种环境准备两个磁盘映像的应用。但是采用上述方法时需要两个主磁盘,因此有必要对其分别进行管理。
[0107]在本实施方式中,对即使在「硬件构成不同的多个用户端」和「硬件构成相同的多个用户端」混合存在的环境中也只用一个主磁盘进行运作的步骤进行说明。
[0108]首先,用户端A是主服务器,在用户端A中反复更新主数据。并假设用户端B是和用户端A的硬件构成相同的用户端,用户端C是和用户端A的硬件构成不同的用户端。
[0109]图4表示用户端A以及用户端B的虚拟盘的构成。成为基础的用户端A以及B的数据「0.vhd」和「1.vhd」均相同。各用户端分别通过相对于「1.vhd」的差分数据「writecachela.vhd」以及「writecachelb.vhd」进行启动,使其起到作为写入缓存的作用。
[0110]其中,新制作「2.vhd」的步骤或者从主服务器(用户端A)向用户端B传送数据的步骤,和在第四实施方式中参考图5以及图6进行的说明相同。
[0111]图13(A)以及图13(B),分别表示将「2.vhd」从用户端A传送到用户端B,并启动用户端B后的用户端A以及用户端B的虚拟盘的状态。各个用户端用均作为写入缓存的差分数据「writecache2a.vhd」、「writecache2b.vhd」进行启动。
[ΟΙ12]且,在用户端A中制作依存于「2.vhd」的差分数据「sysprep2.vhd」,用该磁盘启动用户端A(图14(A))。之后,在用户端A中实施sysprep处理后关闭用户端A。此时,设定成下次启动时用「》1";^60&01162&.¥11(1」进行启动的形式并再启动用户端4。图14(8)表示再启动后的用户端A的虚拟盘的状态。在用户端A中制作「2.vhd」时,也可以将该处理作为相关联的处理一同进行。
[0113]图15(A)表示用户端C的虚拟盘的构成。用户端C中配备有适用于用户端A及用户端B的硬件的OS映像数据「0.vhd」及「1.vhd」。因用户端C无法用作为主数据的「0.vhd+1.vhd」进行启动,故实施sysprep处理后用进行min1-Setup处理的方法进行个别化处理,现在用进行过个别化处理的OS映像数据「minisetuplc.vhd」的写入缓存「writecachelc.vhd」进行启动。
[0114]在该状态下,将「2.vhd」以及「sysprep2.vhd」从用户端A传送至用户端C。因「
2.vhd」是相对于「1.vhd」的差分数据,故用户端C会成为如图16所示的虚拟盘构成。
[0115]用户端C在保持有硬件构成不同的用户端A、用户端B的OS映像系列「0.vhd」及其差分数据「1.vhd」的状态下,从主服务器(用户端A)获取相对于「1.vhd」的差分数据。
[0? Ι?] 之后,用用户端C制作「minisetup2c.vhd」作为相对于「sysprep2.vhd」的差分,并设定成用该磁盘进行启动的形式,之后用在第五实施方式中进行说明的步骤进行处理,成为图17所示的状态,且成为可用相当于2.vhd的磁盘启动用户端C的状态。
[0117]重复上述步骤,可以将没有使用sysprep制成的「0.vhd」、「1.vhd」、「2.vhd」、...的列作为基础,在因硬件构成不同而需要sysprep的其他用户端中也可以使用相同的磁盘。
[0118](其他实施方式)
在上述的实施方式中,对作为差分管理机构使用Windows(注册商标)中的虚拟设备用VHD文件形式的情形进行了说明,但是只要是可以提供差分管理机构的系统,采用任何系统均可。例如,也可以使用ZFS文件系统等的写时复制方式的文件系统作为用户端的启动磁盘的情形、或者其他虚拟设备程序的快照功能。
【主权项】
1.一种磁盘数据传送系统,其特征在于: 至少一台主服务器和多个用户端通过网络连接在一起; 将上述主服务器管理的OS映像数据、或者OS映像数据以及相对于其的一个或者多个差分数据作为主数据,将其复制或被转换为规定磁盘格式的数据作为上述用户端的引导映像进行配备; 上述主数据被更新时,在上述用户端工作的状态下,上述用户端通过上述网络从上述主服务器获取相对于更新前的主数据的差分数据,通过再启动上述用户端的方法更新上述用户端的上述引导映像。2.根据权利要求1所述的磁盘数据传送系统,其特征在于,上述用户端具有差分管理机构,该差分管理机构将含有上述用户端的主机名以及IP地址等的各用户端的固有数据以及写入各用户端内的数据、设备驱动程序的构成信息等作为相对于上述引导映像的差分数据进行保存。3.根据权利要求2所述的磁盘数据传送系统,其特征在于,上述差分管理机构是虚拟盘系统或者写时复制方式的文件系统。4.根据权利要求1至3中的任意一项所述的磁盘数据传送系统,其特征在于,上述差分数据是相对于00BE(0ut-0f-Box Experience)状态的OS映像数据的差分数据。5.根据权利要求4所述的磁盘数据传送系统,其特征在于,上述用户端通过用户端用操作系统第一次启动时或者启动后,必要的设备驱动程序被写入上述用户端用操作系统的内核中,同时 将相当于设备驱动程序写入结束的状态的最新OS映像数据,作为相对于OOBE状态的差分数据进行保存。6.根据权利要求1至5中的任意一项所述的磁盘数据传送系统,其特征在于,上述用户端具备一个或者多个写入缓存。7.根据权利要求1至6中的任意一项所述的磁盘数据传送系统,其特征在于,上述用户端具备为处理上述引导映像或者差分数据而使用的管理用OS。8.根据权利要求1至7中的任意一项所述的磁盘数据传送系统,其特征在于,上述用户端具备通过网络从主服务器获取主数据以及相对于上述主数据的差分数据的复制,初始化上述用户端的启动盘的功能。9.根据权利要求1至8中的任意一项所述的磁盘数据传送系统,其特征在于,上述多个用户端中有一台兼作为主服务器起作用。10.根据权利要求1至9中的任意一项所述的磁盘数据传送系统,其特征在于,上述主服务器向具有不同硬件构成的用户端传送用于转换为OOBE状态的OS映像的差分数据。11.根据权利要求10所述的磁盘数据传送系统,其特征在于,上述用户端从上述主服务器获取硬件构成不同的其他用户端使用的OS映像数据,同时获取用于将获取的OS映像数据转换为OOBE状态的OS映像数据的差分数据,用该等数据启动用户端。
【文档编号】G06F11/00GK106030540SQ201580000887
【公开日】2016年10月12日
【申请日】2015年8月25日
【发明人】丸山伸
【申请人】科空软件株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1