CN116149799A - 一种虚拟镜像制作方法、***、电子设备及介质 - Google Patents
一种虚拟镜像制作方法、***、电子设备及介质 Download PDFInfo
- Publication number
- CN116149799A CN116149799A CN202310402598.6A CN202310402598A CN116149799A CN 116149799 A CN116149799 A CN 116149799A CN 202310402598 A CN202310402598 A CN 202310402598A CN 116149799 A CN116149799 A CN 116149799A
- Authority
- CN
- China
- Prior art keywords
- windows
- mirror image
- virtual
- image
- physical machine
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000004519 manufacturing process Methods 0.000 title claims abstract description 105
- 238000000034 method Methods 0.000 claims abstract description 89
- 238000009434 installation Methods 0.000 claims abstract description 63
- 230000008569 process Effects 0.000 claims description 55
- 230000004044 response Effects 0.000 claims description 45
- 238000004590 computer program Methods 0.000 claims description 8
- 230000009286 beneficial effect Effects 0.000 abstract description 4
- 230000006854 communication Effects 0.000 description 25
- 238000004891 communication Methods 0.000 description 24
- 230000005540 biological transmission Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 8
- 238000012545 processing Methods 0.000 description 7
- 241000109539 Conchita Species 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 5
- 238000013507 mapping Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 241001362551 Samba Species 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000013497 data interchange Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000011900 installation process Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45562—Creating, deleting, cloning virtual machine instances
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45575—Starting, stopping, suspending or resuming virtual machine instances
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45595—Network integration; Enabling network access in virtual machine instances
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种虚拟镜像制作方法,涉及计算机领域,虚拟机可以借助预先装载的Windows预安装环境完成必须在Windows***下进行的虚拟镜像制作过程,Windows预安装环境无需付费,且占用的磁盘空间很小,启动速度快,同时Windows预安装环境装载在虚拟机上,在虚拟机中运行,如果Windows预安装环境出现安全问题,也与物理机相互隔绝,不会影响到物理机自身***的正常运行。利用装载了Windows预安装环境的虚拟机完成虚拟镜像制作过程,不需要用户具备很高的技术水平,简单快捷,提高了工作效率。本发明还公开了一种虚拟镜像制作方法、***、电子设备及介质,具有与上述虚拟镜像制作方法相同的有益效果。
Description
技术领域
本发明涉及计算机领域,特别是涉及一种虚拟镜像制作方法、***、电子设备及介质。
背景技术
现有技术中,通常制作VHDX(Virtual Hard Disk V2,虚拟硬盘V2) 虚拟镜像会选择一台具有Windows操作***的电脑,然后登录到Windows***,启动命令行窗口,手动输入指令完成虚拟镜像的制作。但是目前市场上流行的Windows操作***安装到电脑上占用磁盘至少几千兆或十几千兆,占用内存大,安装过程也需要花费一定的时间;同时用户在制作虚拟镜像时,需要花时间去学习Windows的相关知识,存在一定的技术要求;并且如果存在同一公司内只有少数电脑使用Windows操作***,或者Windows操作***作为服务器部署等资源较少的情况下时,通常只有管理员有权限登录并进行操作,普通用户无法登录也不能制作虚拟镜像,或者需要申请权限,等管理员审批通过之后才能正常使用,中间可能要等几天或一周,耗费时间长,影响工作效率。
发明内容
本发明的目的是提供一种虚拟镜像制作方法、***、电子设备及介质,虚拟机可以借助Windows预安装环境完成必须在Windows***下进行的虚拟镜像制作过程,并且Windows预安装环境无需付费,且占用的磁盘空间很小,启动速度快,只需要制作一次,就可以一直使用,同时Windows预安装环境装载在虚拟机上,在虚拟机中运行,如果Windows预安装环境出现安全问题,也与物理机相互隔绝,不会影响到物理机自身***的正常运行。利用装载了Windows预安装环境的虚拟机完成虚拟镜像制作过程,不需要用户具备很高的技术水平,只需简单的控制命令就可以完成整个过程,简单快捷,提高了工作效率。
为解决上述技术问题,本发明提供了一种虚拟镜像制作方法,应用于预先在物理机上安装的虚拟机,所述物理机的操作***为非Windows***;所述方法包括:
在所述物理机发送的虚拟机启动命令的控制下进行启动;
接收所述物理机发送的镜像制作请求,并启动本地预先装载的Windows预安装环境;
利用所述Windows预安装环境对所述镜像制作请求进行响应,以利用所述Windows预安装环境制作与所述镜像制作请求对应的目标镜像,并将所述目标镜像返回至所述物理机。
优选地,所述接收所述物理机发送的镜像制作请求,包括:
通过本地的预设服务端接收所述物理机中相应的预设客户端发送的所述镜像制作请求;
所述将所述目标镜像返回至所述物理机,包括:
通过所述预设服务端将所述目标镜像返回至所述预设客户端。
优选地,所述预设客户端为基于TCP协议进行通讯的客户端,所述预设服务端为基于TCP协议进行通讯的服务端。
优选地,所述利用所述Windows预安装环境制作与所述镜像制作请求对应的目标镜像,包括:
利用所述预设服务端中的Windows应用程序对所述镜像制作请求进行解析后得到解析后信息;
基于所述解析后信息和所述Windows预安装环境制作与所述镜像制作请求对应的目标镜像。
优选地,所述利用所述Windows预安装环境对所述镜像制作请求进行响应之后,还包括:
生成相应的响应信息,并将所述响应信息返回至所述物理机,以便所述物理机基于所述响应信息判断所述虚拟机在制作所述目标镜像的过程中是否存在错误。
为解决上述技术问题,本发明还提供了一种虚拟镜像制作方法,应用于物理机,所述物理机的操作***为非Windows操作***,该方法包括:
在所述操作***中启动位于本地的已装载Windows预安装环境的虚拟机,并控制所述虚拟机启动所述Windows预安装环境;
生成镜像制作请求,并向所述虚拟机发送所述镜像制作请求;
获取所述虚拟机对所述镜像制作请求进行响应后返回的目标镜像;所述对所述镜像制作请求进行响应的过程为利用所述Windows预安装环境制作所述目标镜像的过程。
优选地,还包括:
获取所述虚拟机在对所述镜像制作请求进行响应后返回的响应信息;
基于所述响应信息判断所述虚拟机在制作所述目标镜像的过程是否存在错误,若是,则基于所述响应信息确定相应的错误原因。
为解决上述技术问题,本发明还提供了一种电子设备,包括:
存储器,用于存储计算机程序;
处理器,用于实现如前述所述的虚拟镜像制作方法的步骤。
为解决上述技术问题,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如前述所述的虚拟镜像制作方法的步骤。
为解决上述技术问题,本发明还提供了一种虚拟镜像制作***,应用于预先在物理机上安装的虚拟机,所述物理机的操作***为非Windows***;所述***包括:
启动单元,用于在所述物理机发送的虚拟机启动命令的控制下进行启动;
接收单元,用于接收所述物理机发送的镜像制作请求,并启动本地预先装载的Windows预安装环境;
响应单元,用于利用所述Windows预安装环境对所述镜像制作请求进行响应,以利用所述Windows预安装环境制作与所述镜像制作请求对应的目标镜像,并将所述目标镜像返回至所述物理机。
本发明提供了一种虚拟镜像制作方法,应用于预先在物理机上安装的虚拟机,虚拟机预先装载了Windows预安装环境,物理机所采用的操作***是非Windows操作***。虚拟机中装载了Windows预安装环境,使虚拟机可以借助Windows预安装环境完成必须在Windows***下进行的虚拟镜像制作过程,Windows预安装环境可以替代Windows操作***完成镜像制作,并且无需付费,且占用的磁盘空间很小,启动速度快,只需要制作一次,就可以一直使用,同时Windows预安装环境装载在虚拟机上,在虚拟机中运行,如果Windows预安装环境出现安全问题,也与物理机相互隔绝,不会影响到物理机自身***的正常运行。利用装载了Windows预安装环境的虚拟机完成虚拟镜像制作过程,不需要用户具备很高的技术水平,只需简单的控制命令就可以完成整个过程,简单快捷,提高了工作效率。
本发明还提供了一种虚拟镜像制作方法、***、电子设备及计算机可读存储介质,具有与上述虚拟镜像制作方法相同的有益效果。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对现有技术和实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的一种虚拟镜像制作方法的流程示意图;
图2为本发明提供的另一种虚拟镜像制作方法的流程示意图;
图3为本发明提供的一种支持虚拟镜像制作方法的方案结构示意图;
图4为本发明提供的另一种虚拟镜像制作方法的流程示意图;
图5为本发明提供的一种电子设备的结构示意图;
图6为本发明提供的一种虚拟镜像制作***的结构示意图;
图7为本发明提供的另一种虚拟镜像制作***的结构示意图。
具体实施方式
本发明的核心是提供一种虚拟镜像制作方法、***、电子设备及介质,虚拟机可以借助Windows预安装环境完成必须在Windows***下进行的虚拟镜像制作过程,并且Windows预安装环境无需付费,且占用的磁盘空间很小,启动速度快,只需要制作一次,就可以一直使用,同时Windows预安装环境装载在虚拟机上,在虚拟机中运行,如果Windows预安装环境出现安全问题,也与物理机相互隔绝,不会影响到物理机自身***的正常运行。利用装载了Windows预安装环境的虚拟机完成虚拟镜像制作过程,不需要用户具备很高的技术水平,只需简单的控制命令就可以完成整个过程,简单快捷,提高了工作效率。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提供的一种虚拟镜像制作方法可以运用在多种领域,可以运用到透明计算***中,应用程序开发人员只需要调用相关的命令接口就能轻松完成虚拟镜像的制作,加快开发速度的同时也提高了效率。特别应用于对VHDX虚拟镜像的制作过程,VHDX是微软发布的一种虚拟镜像文件格式。具体实施方式详见下文。
请参照图1,图1为本发明提供的一种虚拟镜像制作方法的流程示意图;为解决上述技术问题,本发明提供了一种虚拟镜像制作方法,应用于预先在物理机上安装的虚拟机,物理机的操作***为非Windows***;方法包括:
S11:在物理机发送的虚拟机启动命令的控制下进行启动;
具体地,当物理机需要进行虚拟镜像制作时,会先向虚拟机发送启动命令以控制虚拟机启动,物理机会控制虚拟机在非Windows***的运行环境下启动,以便后续通过虚拟机完成虚拟镜像的制作,当操作人员是在物理机上进行操作时,可以人为向虚拟机发送该启动命令,当操作人员是通过远程控制物理机实现操作时,可以通过远程主机控制物理机发送启动命令,也可以直接调用物理机中与启动命令对应的命令接口,物理机发送的启动命令的来源,类型和具体实现方式等本申请在此不做特别的限定。
S12:接收物理机发送的镜像制作请求,并启动本地预先装载的Windows预安装环境;
可以理解的是,虚拟机会先接收物理机发送镜像制作请求,并且启动Windows PE(Windows Preinstallation Environment,Windows预安装环境) ,以便后续基于接收到的镜像制作请求和Windows PE进行后续的镜像制作;虚拟机对于镜像制作请求的接收过程和启动Windows PE的过程可以同时进行,也可以按预设顺序进行,本申请在此不做特别的限定;在实际应用中,考虑到Windows PE启动后需要一段时间后才能稳定工作,通常在Windows PE启动并稳定大概20秒之后,才会进行后续的镜像制作。不难理解的是,WindowsPE是预先装载在虚拟机中,以便虚拟机在进行虚拟镜像制作时可以直接启动并使用,PE是微软发布的小型操作***,用于安装、部署和修复Windows***,且Windows PE可以根据需要定制,只需要安装评估和部署工具包,且定制Windows PE是免费的,一般情况下WindowsPE占用磁盘空间大小只有几百兆,启动速度快,并且只需要制作一次,可以一直使用。
S13:利用Windows预安装环境对镜像制作请求进行响应,以利用Windows预安装环境制作与镜像制作请求对应的目标镜像,并将目标镜像返回至物理机。
具体地,虚拟机在启动了Windows PE后,会基于Windows PE执行相应的操作,虚拟机内部的操作以Windows PE为操作环境,对镜像制作请求进行响应以及后续对目标镜像的制作都是在Windows PE的操作环境下执行的。一般地,镜像制作请求中可以包括具体的制作要求和制作内容等,对于镜像制作请求的具体内容和实现方式等本申请在此不做特别的限定;虚拟机利用Windows预安装环境制作与镜像制作请求对应的目标镜像的具体实现方式等本申请在此不做特别的限定,具体地,通常是虚拟机基于Windows PE利用与镜像制作对应的Windows应用程序完成的。
可以理解的是,虚拟机将目标镜像返回至物理机的过程可以是在虚拟机在本地生成目标镜像后再将其返回物理机,也可以是虚拟机通过映射机制等方式直接将目标镜像生成到物理机上;当虚拟机和物理机在同一台机器上,物理机是Linux机器时,虚拟机中启动的Windows PE可以通过映射机制,如Samba服务等方式与物理机共享Linux磁盘,此时虚拟机通过Windows PE制作的目标镜像可以直接生成到作为物理机的Linux机器上。对于目标镜像的具体获取方式和生成过程等本申请在此不做特别的限定。
需要说明的是,虚拟机与物理机之间的通讯方式存在多种选择,可以基于多种类型的通讯协议完成,只需物理机与虚拟机采用同一种通讯协议即可,对于虚拟机和物理机之间进行数据通信和文件传输的具体方式和实现过程等本申请在此不做特别的限定,可以通过TCP(Transmission Control Protocol,传输控制协议)协议,UDP(User DatagramProtocol,用户数据报协议)协议,或HTTP(HyperText Transfer Protocol,超文本传输协议)协议等实现物理机与虚拟机之间的通讯过程。
可以理解的是,S11-S13是以虚拟机为执行主体进行的虚拟镜像制作过程,本发明提供的虚拟镜像制作方法可以用于当物理机为非Windows操作***但是需要进行虚拟镜像制作,特别是需要实现基于Windows操作***的虚拟镜像制作的过程,Windows是微软开发的操作***,不公开源代码,所以需要在虚拟机上安装Windows PE来作为对Windows操作***的替代。以VHDX虚拟镜像的制作为例,VHDX虚拟镜像的制作必须基于Windows操作***实现,此时需要借助在物理机上安装的虚拟机完成该过程,虚拟机上装载的Windows PE可以一定程度上替代Windows操作***,模拟Windows操作***的相应功能以实现虚拟镜像制作过程。
具体地,物理机的非Windows操作***可以为Linux***或Mac***等;虚拟机可以为Qemu虚拟机,或其他类型的虚拟机,对于物理机的非Windows操作***和虚拟机的具体类型和实现方式等本申请在此不做特别的限定,但是物理机的操作***需要支持所选择的虚拟机的类型,如当物理机采用Linux操作***中的Centos***时,就可以支持Qemu虚拟机,Qemu虚拟机是开源的虚拟机,能模拟日常使用的电脑,对应的,Linux***为开源的操作***,具有应用领域广并且安全性高等特点,而Centos***为一种Linux操作***发行版。
本发明提供了一种虚拟镜像制作方法,应用于预先在物理机上安装的虚拟机,虚拟机预先装载了Windows预安装环境,物理机所采用的操作***是非Windows操作***。虚拟机中装载了Windows预安装环境,使虚拟机可以借助Windows预安装环境完成必须在Windows***下进行的虚拟镜像制作过程,Windows预安装环境可以替代Windows操作***完成镜像制作,并且无需付费,且占用的磁盘空间很小,启动速度快,只需要制作一次,就可以一直使用,同时Windows预安装环境装载在虚拟机上,在虚拟机中运行,如果Windows预安装环境出现安全问题,也与物理机相互隔绝,不会影响到物理机自身***的正常运行。利用装载了Windows预安装环境的虚拟机完成虚拟镜像制作过程,不需要用户具备很高的技术水平,只需简单的控制命令就可以完成整个过程,简单快捷,提高了工作效率。
在上述实施例的基础上,
作为一种优选地实施例,接收物理机发送的镜像制作请求,包括:
通过本地的预设服务端接收物理机中相应的预设客户端发送的镜像制作请求;
将目标镜像返回至物理机,包括:
通过预设服务端将目标镜像返回至预设客户端。
具体地,虚拟机和物理机之间的数据通讯可以通过建立预设服务端和对应的预设客户端实现,在虚拟机和物理机进行请求发送或文件传输的过程中,都利用预设服务端和预设客户端来实现,当物理机需要虚拟镜像制作的服务时,通过镜像制作请求向预设服务端请求服务,预设服务端在接收到镜像制作请求后,为物理机提供镜像制作的服务。对于预设服务端和预设客户端的具体类型和实现方式等本申请在此不做特别的限定,具体取决于物理机与虚拟机之间所采用的通讯协议。
作为一种具体地实施例,物理机与虚拟机之间通过建立客户端和服务端进行数据通讯和文件传输,这种通讯方式可以充分发挥客户端的处理能力,很多工作可以在客户端处理后再提交给服务器。使得客户端响应速度快,能够减轻服务器的压力,而且有更高的安全性和稳定性,有利于提高镜像制作过程的效率,节约时间。
作为一种优选地实施例,预设客户端为基于TCP协议进行通讯的客户端,预设服务端为基于TCP协议进行通讯的服务端。
可以理解的是,当物理机与虚拟机之间选择TCP协议进行数据通讯时,相应的,预设客户端就为基于TCP协议进行通讯的客户端,预设服务端为基于TCP协议进行通讯的服务端。TCP传输控制协议是位于传输层端到端可靠性数据传输,提高数据传输的稳定性和可靠性。
采用TCP协议作为物理机与虚拟机之间进行数据通讯的通讯方式,TCP在传递数据之前,会有三次握手来建立连接,而且在数据传递时,有确认、窗口、重传、拥塞控制等机制,在数据传完后,还会断开连接用来节约***资源,通过TCP协议进行数据通讯,保证了数据传输过程的可靠性和稳定性,提高了整个虚拟镜像制作过程的可靠性和稳定性。
作为一种优选地实施例,利用Windows预安装环境制作与镜像制作请求对应的目标镜像,包括:
利用预设服务端中的Windows应用程序对镜像制作请求进行解析后得到解析后信息;
基于解析后信息和Windows预安装环境制作与镜像制作请求对应的目标镜像。
可以理解的是,由于虚拟机中装载了Windows PE,预设服务端可以支持虚拟镜像制作的服务,与Windows操作***类似的,虚拟机通过Windows PE利用具备相关功能的Windows应用程序实现虚拟镜像制作。Windows应用程序会在接收到镜像制作请求后对该请求进行解析,Windows PE利用解析后信息进行与该信息对应的镜像制作过程,制作出对应的目标镜像。对于Windows应用程序的具体类型和实现方式等本申请在此不做特别的限定,对于镜像制作请求的具体解析过程和方式等本申请在此不做特别的限定,可以根据实际应用中的不同应用情况进行选择。
具体地,利用Windows应用程序实现对于镜像制作请求的解析,以便Windows PE完成后续的虚拟镜像制作,虚拟机通过Windows PE和Windows应用程序实现对Windows操作***的替代,使虚拟机可以利用Windows PE和Windows应用程序实现虚拟镜像制作的功能,确保了整个制作过程的可靠进行。
作为一种优选地实施例,利用Windows预安装环境对镜像制作请求进行响应之后,还包括:
生成相应的响应信息,并将响应信息返回至物理机,以便物理机基于响应信息判断虚拟机在制作目标镜像的过程中是否存在错误。
不难理解的是,虚拟机利用Windows PE对镜像制作请求进行响应之后,虚拟机还会生成相应的与镜像制作请求对应的响应信息,响应信息中可以包括制作结果,返回的制作过程信息等,以便虚拟机将该响应信息返回至物理机之后,物理机可以根据响应信息中的相关内容实现对整个虚拟镜像制作过程的监测,判断制作过程是否正确完整的实现,是否存在某些错误信息导致制作过程没有正确完成,同时物理机会进一步判断相关的错误原因,以便后续操作人员可以基于错误信息对制作过程进行修正或其他操作。对于响应信息的具体内容和数据形式等本申请在此不做特别的限定,物理机对制作目标镜像过程的具体判断方式等本申请在此不做特别的限定,可以根据实际应用进行设置。
考虑到需要确保制作目标镜像过程的完整以及正确实现,虚拟机在对镜像制作请求进行响应后,还会生成对应的响应信息,以便物理机基于响应信息判断制作目标镜像过程是否存在错误情况,进一步确保了整个镜像制作过程的完整以及正确运行,物理机还可以进一步判断错误原因,以便操作人员及时修正,提高了镜像制作过程的准确性和可靠性。
请参照图2,图2为本发明提供的另一种虚拟镜像制作方法的流程示意图;为解决上述技术问题,本发明还提供了一种虚拟镜像制作方法,应用于物理机,物理机的操作***为非Windows操作***,该方法包括:
S21:在操作***中启动位于本地的已装载Windows预安装环境的虚拟机,并控制虚拟机启动Windows预安装环境;
S22:生成镜像制作请求,并向虚拟机发送镜像制作请求;
S23:获取虚拟机对镜像制作请求进行响应后返回的目标镜像;对镜像制作请求进行响应的过程为利用Windows预安装环境制作目标镜像的过程。
可以理解的是,S21-S23是以物理机为执行主体进行的虚拟镜像制作过程,是从物理机的角度对整个虚拟镜像制作过程进行叙述,物理机需要在操作***中启动虚拟机之后,控制虚拟机启动Windows PE,之后生成镜像制作请求并将该请求发送到虚拟机,并在虚拟机完成对目标镜像的制作之后获取虚拟机返回的目标镜像。
可以理解的是,物理机对目标镜像的获取过程可以是在虚拟机在本地生成目标镜像后再从虚拟机获取的,也可以是虚拟机通过映射机制等方式直接将目标镜像生成到物理机上;当虚拟机和物理机在同一台机器上,物理机是Linux机器时,虚拟机中启动的WindowsPE可以通过映射机制,如Samba服务等方式与物理机共享Linux磁盘,此时虚拟机通过Windows PE制作的目标镜像可以直接生成到作为物理机的Linux机器上。对于目标镜像的具体获取方式和生成过程等本申请在此不做特别的限定。
具体地,生成镜像制作请求可以是物理机基于预设程序或人为控制等操作自己生成的,也可以是基于其他远端设备的远程控制所生成的,可以是从远端设备获取的,对于镜像制作请求的具体来源和类型等本申请在此不做特别的限定;物理机对于虚拟机的启动过程可以提前设置为在开机的预设时间后自启动,Windows PE在虚拟机中的启动也可以设置为物理机启动虚拟机后的预设时间后自启动;对于虚拟机的Windows PE具体启动方式和启动过程等本申请在此不做特别的限定。镜像制作请求可以采用JSON(JavaScript ObjectNotation)数据格式或XML(Extensible Markup Language,可扩展的标记语言)数据格式等,对于物理机与虚拟机之间进行数据通讯的数据格式等本申请在此不做特别的限定。
考虑到在镜像制作过程中,物理机和虚拟机均执行了相关操作,本实施例从物理机作为执行主体的角度对整个镜像制作过程进行了进一步描述,从多角度实现对虚拟镜像制作过程的详细描述,有利于整个虚拟镜像制作过程的准确进行,提高了虚拟镜像制作在应用时的可靠性和准确性。
作为一种优选地实施例,还包括:
获取虚拟机在对镜像制作请求进行响应后返回的响应信息;
基于响应信息判断虚拟机在制作目标镜像的过程是否存在错误,若是,则基于响应信息确定相应的错误原因。
具体地,物理机还可以获取虚拟机在对镜像制作请求进行响应后返回的响应信息,并根据响应信息中的相关内容确定制作目标镜像的过程是否存在错误,以及详细的具体的错误原因,以便于后续操作人员对于相关错误进行迅速修正,物理机对于制作目标镜像的过程的具体判断依据以及判断过程等本申请在此不做特别的限定,对于错误原因的具体确定过程等本申请在此不做特别的限定,可以根据实际应用过程中物理机的具体类型以及其他情况等进行选择。响应信息可以采用JSON数据格式或XML数据格式等,本申请在此不做特别的限定。
考虑到需要确保制作目标镜像过程的完整以及正确实现,虚拟机在对镜像制作请求进行响应后,还会生成对应的响应信息,以便物理机基于响应信息判断制作目标镜像过程是否存在错误情况,进一步确保了整个镜像制作过程的完整以及正确运行,物理机还可以进一步判断错误原因,以便操作人员及时修正,提高了镜像制作过程的准确性和可靠性。
作为一种具体的实施例,请参照图3,图3为本发明提供的一种支持虚拟镜像制作方法的方案结构示意图;
物理机中采用Centos***,制作Windows VHDX虚拟镜像的方案采用Qemu 虚拟机技术、Windows PE技术和TCP通信技术三者结合的方式。具体应用的结构组成描述如下:首先需要一台安装Centos操作***的电脑,也即上述实施例中的物理机;还有在Centos***中运行的Qemu虚拟机软件,建立Qemu虚拟机;然后是在Centos***中运行的TCP客户端应用程序;可以在Qemu虚拟机中运行的Windows PE 光盘镜像文件和能在其下运行的TCP服务端应用程序,其中的TCP服务端和TCP客户端通过自定义协议通信。
对应地,请参照图4,图4为本发明提供的另一种虚拟镜像制作方法的流程示意图;具体的方案流程描述如下:电脑开机后运行Centos操作***,启动Qemu虚拟机加载WindowsPE,TCP服务端程序随Windows PE自启动。在Centos操作***上运行TCP客户端。TCP客户端发出镜像制作请求,TCP服务端收到请求,解析出对应的命令,再通知Windows PE完成镜像制作,执行结果返回给TCP客户端。该方案不仅仅能在Centos***中运行,也可以移植到其它Linux 发行版,应用程序只需遵守预设的自定义通讯协议格式即可。在Centos***中制作虚拟镜像,用户无需知道制作镜像的具体细节,不需要具备Windows相关知识 ,甚至根本不需要知道Windows PE的存在。
作为一种具体地实施例,客户端和服务器采用自定义通信协议JSON 格式如下,表1是当采用JSON数据格式时,TCP客户端发出的请求数据的具体内容和相关格式;表2是当采用JSON数据格式时,TCP服务端响应的返回数据的具体内容和相关格式。JSON是一种轻量级数据交换格式,具有简洁和清晰的层次结构。
表1 TCP客户端请求
表2 TCP服务端响应
请参照图5,图5为本发明提供的一种电子设备的结构示意图;为解决上述技术问题,本发明还提供了一种电子设备,包括:
存储器1,用于存储计算机程序;
处理器2,用于实现如前述的虚拟镜像制作方法的步骤。
其中,处理器2可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器2可以采用DSP(Digital Signal Processor,数字信号处理器)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器2也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称中央处理器;协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器2可以集成GPU(graphics processing unit,图形处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器2还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器1可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。本实施例中,存储器1至少用于存储以下计算机程序,其中,该计算机程序被处理器2加载并执行之后,能够实现前述任意一个实施例公开的虚拟镜像制作方法的相关步骤。另外,存储器1所存储的资源还可以包括操作***和数据等,存储方式可以是短暂存储或者永久存储。其中,操作***可以包括Windows、Unix、Linux等。数据可以包括但不限于虚拟镜像制作方法的数据等。
在一些实施例中,电子设备还可包括有显示屏、输入输出接口、通信接口、电源以及通信总线。
本领域技术人员可以理解的是,图5中示出的结构并不构成对电子设备的限定,可以包括比图示更多或更少的组件。
对于本发明提供的一种电子设备的介绍请参照上述虚拟镜像制作方法的实施例,本发明在此不再赘述。
为解决上述技术问题,本发明还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如前述的虚拟镜像制作方法的步骤。
可以理解的是,如果上述实施例中的方法以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,执行本申请各个实施例所述方法的全部或部分步骤。具体地,计算机可读存储介质可以包括但不限于任何类型的盘,包括软盘、光盘及移动硬盘等,或适合于存储指令、数据的任何类型的媒介或设备等等,本申请在此不做特别的限定。
对于本发明提供的一种计算机可读存储介质的介绍请参照上述虚拟镜像制作方法的实施例,本发明在此不再赘述。
请参照图6,图6为本发明提供的一种虚拟镜像制作***的结构示意图;为解决上述技术问题,本发明还提供了一种虚拟镜像制作***,应用于预先在物理机上安装的虚拟机,物理机的操作***为非Windows***;***包括:
启动单元21,用于在物理机发送的虚拟机启动命令的控制下进行启动;
接收单元22,用于接收物理机发送的镜像制作请求,并启动本地预先装载的Windows预安装环境;
响应单元23,用于利用Windows预安装环境对镜像制作请求进行响应,以利用Windows预安装环境制作与镜像制作请求对应的目标镜像,并将目标镜像返回至物理机。
其中,响应单元23包括制作单元和返回单元,制作单元用于利用Windows预安装环境对镜像制作请求进行响应,以利用Windows预安装环境制作与镜像制作请求对应的目标镜像,返回单元用于将目标镜像返回至物理机。
作为一种优选地实施例,接收单元22包括:
接收子单元,用于通过本地的预设服务端接收物理机中相应的预设客户端发送的镜像制作请求;
返回单元包括:
返回子单元,用于通过预设服务端将目标镜像返回至预设客户端。
作为一种优选地实施例,制作单元包括:
解析单元,用于利用预设服务端中的Windows应用程序对镜像制作请求进行解析后得到解析后信息;
制作子单元,用于基于解析后信息和Windows预安装环境制作与镜像制作请求对应的目标镜像。
作为一种优选地实施例,还包括:
生成响应信息单元,用于生成相应的响应信息,并将响应信息返回至物理机,以便物理机基于响应信息判断虚拟机在制作目标镜像的过程中是否存在错误。
对于本发明提供的一种虚拟镜像制作***的介绍请参照上述虚拟镜像制作方法的实施例,本发明在此不再赘述。
请参照图7,图7为本发明提供的另一种虚拟镜像制作***的结构示意图;为解决上述技术问题,本发明还提供了一种虚拟镜像制作***,应用于物理机,物理机的操作***为非Windows操作***,该***包括:
控制虚拟机单元31,用于在操作***中启动位于本地的已装载Windows预安装环境的虚拟机,并控制虚拟机启动Windows预安装环境;
生成请求单元32,用于生成镜像制作请求,并向虚拟机发送镜像制作请求;
获取目标镜像单元33,用于获取虚拟机对镜像制作请求进行响应后返回的目标镜像;对镜像制作请求进行响应的过程为利用Windows预安装环境制作目标镜像的过程。
作为一种优选地实施例,还包括:
获取响应信息单元,用于获取虚拟机在对镜像制作请求进行响应后返回的响应信息;
判断单元,用于基于响应信息判断虚拟机在制作目标镜像的过程是否存在错误,若是,则触发错误确定单元。
错误确定单元,用于基于响应信息确定相应的错误原因。
对于本发明提供的一种虚拟镜像制作***的介绍请参照上述虚拟镜像制作方法的实施例,本发明在此不再赘述。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其他形式的存储介质中。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其他实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种虚拟镜像制作方法,其特征在于,应用于预先在物理机上安装的虚拟机,所述物理机的操作***为非Windows***;所述方法包括:
在所述物理机发送的虚拟机启动命令的控制下进行启动;
接收所述物理机发送的镜像制作请求,并启动本地预先装载的Windows预安装环境;
利用所述Windows预安装环境对所述镜像制作请求进行响应,以利用所述Windows预安装环境制作与所述镜像制作请求对应的目标镜像,并将所述目标镜像返回至所述物理机。
2.如权利要求1所述的虚拟镜像制作方法,其特征在于,所述接收所述物理机发送的镜像制作请求,包括:
通过本地的预设服务端接收所述物理机中相应的预设客户端发送的所述镜像制作请求;
所述将所述目标镜像返回至所述物理机,包括:
通过所述预设服务端将所述目标镜像返回至所述预设客户端。
3.如权利要求2所述的虚拟镜像制作方法,其特征在于,所述预设客户端为基于TCP协议进行通讯的客户端,所述预设服务端为基于TCP协议进行通讯的服务端。
4.如权利要求2所述的虚拟镜像制作方法,其特征在于,所述利用所述Windows预安装环境制作与所述镜像制作请求对应的目标镜像,包括:
利用所述预设服务端中的Windows应用程序对所述镜像制作请求进行解析后得到解析后信息;
基于所述解析后信息和所述Windows预安装环境制作与所述镜像制作请求对应的目标镜像。
5.如权利要求1至4任一项所述的虚拟镜像制作方法,其特征在于,所述利用所述Windows预安装环境对所述镜像制作请求进行响应之后,还包括:
生成相应的响应信息,并将所述响应信息返回至所述物理机,以便所述物理机基于所述响应信息判断所述虚拟机在制作所述目标镜像的过程中是否存在错误。
6.一种虚拟镜像制作方法,其特征在于,应用于物理机,所述物理机的操作***为非Windows操作***,该方法包括:
在所述操作***中启动位于本地的已装载Windows预安装环境的虚拟机,并控制所述虚拟机启动所述Windows预安装环境;
生成镜像制作请求,并向所述虚拟机发送所述镜像制作请求;
获取所述虚拟机对所述镜像制作请求进行响应后返回的目标镜像;所述对所述镜像制作请求进行响应的过程为利用所述Windows预安装环境制作所述目标镜像的过程。
7.如权利要求6所述的虚拟镜像制作方法,其特征在于,还包括:
获取所述虚拟机在对所述镜像制作请求进行响应后返回的响应信息;
基于所述响应信息判断所述虚拟机在制作所述目标镜像的过程是否存在错误,若是,则基于所述响应信息确定相应的错误原因。
8.一种电子设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于实现如权利要求1至7任一项所述的虚拟镜像制作方法的步骤。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的虚拟镜像制作方法的步骤。
10.一种虚拟镜像制作***,其特征在于,应用于预先在物理机上安装的虚拟机,所述物理机的操作***为非Windows***;所述***包括:
启动单元,用于在所述物理机发送的虚拟机启动命令的控制下进行启动;
接收单元,用于接收所述物理机发送的镜像制作请求,并启动本地预先装载的Windows预安装环境;
响应单元,用于利用所述Windows预安装环境对所述镜像制作请求进行响应,以利用所述Windows预安装环境制作与所述镜像制作请求对应的目标镜像,并将所述目标镜像返回至所述物理机。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310402598.6A CN116149799A (zh) | 2023-04-17 | 2023-04-17 | 一种虚拟镜像制作方法、***、电子设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310402598.6A CN116149799A (zh) | 2023-04-17 | 2023-04-17 | 一种虚拟镜像制作方法、***、电子设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116149799A true CN116149799A (zh) | 2023-05-23 |
Family
ID=86373906
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310402598.6A Pending CN116149799A (zh) | 2023-04-17 | 2023-04-17 | 一种虚拟镜像制作方法、***、电子设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116149799A (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060265701A1 (en) * | 2005-05-19 | 2006-11-23 | Dell Products L.P. | Method and system for migrating information between information handling systems |
US20110264776A1 (en) * | 2010-04-27 | 2011-10-27 | International Business Machines Corporation | Deploying an operating system |
CN102567042A (zh) * | 2010-12-14 | 2012-07-11 | 国际商业机器公司 | 利用引导块重定位来管理多个软件镜像的方法和*** |
US20130103812A1 (en) * | 2011-10-25 | 2013-04-25 | Holger Goetz | Installation of server-stored disk image on client |
CN103365667A (zh) * | 2012-03-26 | 2013-10-23 | 国际商业机器公司 | 一种在主机***中安装操作***的方法和装置 |
CN108664313A (zh) * | 2018-05-18 | 2018-10-16 | 广州杰赛科技股份有限公司 | 镜像文件在线制作方法、装置、服务器、***及存储介质 |
-
2023
- 2023-04-17 CN CN202310402598.6A patent/CN116149799A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060265701A1 (en) * | 2005-05-19 | 2006-11-23 | Dell Products L.P. | Method and system for migrating information between information handling systems |
US20110264776A1 (en) * | 2010-04-27 | 2011-10-27 | International Business Machines Corporation | Deploying an operating system |
CN102567042A (zh) * | 2010-12-14 | 2012-07-11 | 国际商业机器公司 | 利用引导块重定位来管理多个软件镜像的方法和*** |
US20130103812A1 (en) * | 2011-10-25 | 2013-04-25 | Holger Goetz | Installation of server-stored disk image on client |
CN103365667A (zh) * | 2012-03-26 | 2013-10-23 | 国际商业机器公司 | 一种在主机***中安装操作***的方法和装置 |
CN108664313A (zh) * | 2018-05-18 | 2018-10-16 | 广州杰赛科技股份有限公司 | 镜像文件在线制作方法、装置、服务器、***及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3011444B1 (en) | Method and apparatus for code virtualization and remote process call generation | |
EP3992800A1 (en) | Program test method and apparatus, computer device, and storage medium | |
CN108509333A (zh) | 调试方法及装置 | |
CN110647332A (zh) | 基于容器云的软件部署方法和装置 | |
EP4095678A1 (en) | Method and apparatus of deploying a cluster, device and storage medium | |
US11245601B2 (en) | Automated integrated test system and method thereof | |
CN113467980B (zh) | 日志输出方法、装置及***和嵌入式设备 | |
CN104572227A (zh) | 一种基于安腾平台通过bmc刷新cpld fw方法 | |
CN109783355A (zh) | 页面元素获取方法、***、计算机设备及可读存储介质 | |
EP4209894A1 (en) | Cloud code development system, method, and apparatus, device, and storage medium | |
US20150199185A1 (en) | System and Method for Providing Online Software Development Services | |
CN111475175B (zh) | 基于arm服务器的操作***安装引导方法、装置及介质 | |
Furukawa | Web-based control application using WebSocket | |
CN111459506B (zh) | 深度学习平台集群的部署方法、装置、介质及电子设备 | |
CN109299124B (zh) | 用于更新模型的方法和装置 | |
CN113127009A (zh) | 大数据管理平台的自动化部署方法和装置 | |
CN104487935A (zh) | 记录外部过程 | |
Williams et al. | Utilizing ROS 1 and the turtlebot3 in a multi-robot system | |
CN113709243A (zh) | 设备远程控制方法及装置、电子设备和存储介质 | |
CN113485927A (zh) | 一种测试数据生成方法、装置、设备及存储介质 | |
CN112491940B (zh) | 代理服务器的请求转发方法及装置、存储介质及电子设备 | |
CN116149799A (zh) | 一种虚拟镜像制作方法、***、电子设备及介质 | |
CN111181953B (zh) | 一种鲲鹏虚拟化支持spice协议的方法及装置 | |
CN114741294A (zh) | 一种页面的调试方法、装置、设备及存储介质 | |
CN113504916A (zh) | 一种代码更新方法和装置、计算机设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20230523 |