CN116661951B - 镜像文件处理方法、装置、电子设备及存储介质 - Google Patents
镜像文件处理方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN116661951B CN116661951B CN202310652829.9A CN202310652829A CN116661951B CN 116661951 B CN116661951 B CN 116661951B CN 202310652829 A CN202310652829 A CN 202310652829A CN 116661951 B CN116661951 B CN 116661951B
- Authority
- CN
- China
- Prior art keywords
- hardware
- operating system
- target physical
- physical machine
- virtual 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.)
- Active
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 12
- 238000000034 method Methods 0.000 claims abstract description 35
- 238000012545 processing Methods 0.000 claims abstract description 14
- 238000004590 computer program Methods 0.000 claims description 12
- 238000005192 partition Methods 0.000 claims description 10
- 238000009434 installation Methods 0.000 claims description 9
- 238000005516 engineering process Methods 0.000 claims description 4
- 238000000638 solvent extraction Methods 0.000 claims description 4
- 238000001514 detection method Methods 0.000 claims description 2
- 238000004519 manufacturing process Methods 0.000 abstract description 5
- 238000004891 communication Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 5
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 2
- 239000003795 chemical substances by application Substances 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 239000002184 metal Substances 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 235000013599 spices Nutrition 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
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
-
- 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
本公开实施例提供一种镜像文件处理方法、装置、电子设备及存储介质。该方法应用于虚拟机,包括:基于目标物理机的操作系统版本信息和硬件配置信息,在所述虚拟机中安装并运行所述目标物理机的操作系统;基于所述虚拟机挂载的硬件,确定所述目标物理机的硬件信息;基于所述目标物理机的硬件信息,在所述虚拟机中运行的操作系统中安装对应的硬件驱动;基于所述虚拟机运行的操作系统,生成所述目标物理机的操作系统镜像文件。本公开实施例,可以在一个物理机上生成满足不同硬件配置的物理机所需要的操作系统镜像文件,提高镜像文件的制作效率,并以较低的代价制作尽可能多种类的操作系统镜像,同时如果需要调整镜像文件的配置,也可以轻易实现。
Description
技术领域
本公开涉及计算机技术领域,尤其涉及一种镜像文件处理方法、装置、电子设备及存储介质。
背景技术
对于物理机上运行的操作系统,在云厂商裸金属服务的场景下,一般是通过预先生成一个镜像文件,然后通过外盘挂载到物理机中,在物理机中安装该镜像文件,从而完成物理机的操作系统的安装。对于不同的物理机,其所需要的镜像文件是不相同的。因此,如何快速地为不同的物理机配置镜像文件,是亟需解决的一个技术问题,尤其是批量地为物理机安装操作系统的情况。
发明内容
本公开实施例提供一种镜像文件处理方法、装置、电子设备及存储介质,以解决或缓解现有技术中的一项或更多项技术问题。
作为本公开实施例的第一个方面,本公开实施例提供一种镜像文件处理方法,应用于虚拟机,包括:
基于目标物理机的操作系统版本信息和硬件配置信息,在所述虚拟机中安装并运行所述目标物理机的操作系统;
基于所述虚拟机挂载的硬件,确定所述目标物理机的硬件信息;
基于所述目标物理机的硬件信息,在所述操作系统中安装对应的硬件驱动;基于所述虚拟机运行的操作系统,生成所述目标物理机的操作系统镜像文件。
作为本公开实施例的第二个方面,本公开实施例提供一种镜像文件处理装置,应用于虚拟机,所述装置包括:
操作系统安装模块,用于基于目标物理机的操作系统版本信息和硬件配置信息,在所述虚拟机中安装并运行所述目标物理机的操作系统;
硬件驱动信息确定模块,用于基于所述虚拟机挂载的硬件,确定所述目标物理机的硬件信息;
硬件驱动安装模块,用于基于所述目标物理机的硬件信息,在所述虚拟机中运行的操作系统中安装硬件驱动;
镜像文件生成模块,用于基于所述虚拟机运行的操作系统,生成所述目标物理机的操作系统镜像文件。
作为本公开实施例的第三个方面,本公开实施例提供一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够本公开任一项实施例所提供的方法。
作为本公开实施例的第四个方面,本公开实施例提供一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使计算机执行本公开实施例提供的方法。
作为本公开实施例的第五个方面,本公开实施例提供一种计算机程序产品,包括计算机程序,该计算机程序在被处理器执行时实现本公开实施例提供的方法。
本公开实施例提供的技术方案,在一台物理机上的虚拟机中,生成各种不同物理机所需要的操作系统镜像文件。
上述概述仅仅是为了说明书的目的,并不意图以任何方式进行限制。除上述描述的示意性的方面、实施方式和特征之外,通过参考附图和以下的详细描述,本公开进一步的方面、实施方式和特征将会是容易明白的。
附图说明
在附图中,除非另外规定,否则贯穿多个附图相同的附图标记表示相同或相似的部件或元素。这些附图不一定是按照比例绘制的。应该理解,这些附图仅描绘了根据本公开的一些实施方式,而不应将其视为是对本公开范围的限制。
图1是传统物理机操作系统镜像文件制作过程示意图;
图2是本公开一实施例提供的镜像文件处理方法的流程图;
图3是本公开另一实施例提供的镜像文件的制作流程的示例图;
图4是本公开一实施例提供的镜像文件处理装置的结构框图;
图5是本公开一实施例的电子设备的示意图。
具体实施方式
在下文中,仅简单地描述了某些示例性实施例。正如本领域技术人员可认识到的那样,在不脱离本公开的精神或范围的情况下,可通过各种不同方式修改所描述的实施例。因此,附图和描述被认为本质上是示例性的而非限制性的。
如图1所示,其示出了传统的物理机的操作系统镜像文件的制作过程。该制作过程包括:
1、将光盘、U盘或带外系统等插入到物理机中,将镜像挂载到物理机中;
2、在物理机中,基于镜像文件安装操作系统;
3、在操作系统中进行软件和驱动的配置;
4、在物理中挂载外部系统,例如u盘系统,pxe小镜象系统,live CD等,然后,针对操作系统硬盘上的文件系统转为镜像文件,并输出到外部系统。
由于在配置驱动时,需要物理机中安装有相应的硬件才能安全。因而,针对不同物理机所需要的操作系统镜像文件,需要都在对应的物理机中制作。这样,按照上述步骤来执行,涉及到物理机插盘、带外管理挂载系统镜像,以及制作完成后镜像的储存和传输等操作,较为不便,制作耗时长,且对外部系统的依赖较大。
为此,本公开提供一种镜像文件处理方法、装置、电子设备以及存储介质,能够解决上述问题。
图2是本公开一实施例的镜像文件处理方法的流程图。如图2所示,该方法包括步骤S210至步骤S240,具体如下:
S210,基于目标物理机的操作系统版本信息和硬件配置信息,在虚拟机中安装并运行目标物理机的操作系统;
S220,基于虚拟机挂载的硬件,确定目标物理机的硬件信息;
S230,基于目标物理机的硬件信息,在虚拟机中运行的操作系统中安装对应的硬件驱动;
S240,基于虚拟机运行的操作系统,生成目标物理机的操作系统镜像文件。
在本示例中,在虚拟机中运行目标物理机的操作系统,通过虚拟机挂载的硬件来确定目标物理机的驱动信息,基于目标物理机的硬件驱动信息在操作系统中安装对应的硬件驱动,这样通过改变虚拟机所挂载的硬件,即可为不同的物理机的操作系统安装不同的硬件驱动,不必在各个物理机中分别安装操作系统并配置硬件驱动,就可以生成不同物理机的操作系统镜像文件,大大提高镜像文件的生成效率。
示例性地,对于目标物理机,根据客户或用户的自身需求为该物理机安装一个对应的操作系统。例如,根据其需求的操作系统版本信息和硬件配置信息,在操作系统集合确定一个操作系统,然后在虚拟机中安装并运行该操作系统。
示例性地,不同的物理机,其操作系统版本和硬件配置可以是相同的,也可以是不相同的。例如物理机A和物理机B的操作系统版本和硬件配置是相同的,但是物理机A和物理机C的操作系统版本和硬件配置是相同的。对于需要相同的操作系统版本和硬件配置的物理机,则其所需要的操作系统是相同的。对于需要不同的操作系统版本或硬件配置的物理机,则其所需要的操作系统是不相同的。
示例性地,虚拟机运行于一个宿主机,该宿主机为物理机,可以通过硬盘存储的方式将操作系统文件共享给虚拟机。
示例性地,该操作系统文件可以提供给不同的物理机使用,并生成对应的操作系统镜像文件。
示例性地,通过对宿主机的硬件的更改,改变虚拟机所挂载的硬件,从而为不同的物理机在其镜像文件中配置不同的硬件驱动。
示例性地,硬件可以包括网卡、显卡、USB控制器、声卡或者打印机等。
在一些实施例中,在上述步骤S210,基于虚拟机挂载的硬件,确定目标物理机的硬件信息,可以包括:
卸载虚拟机的宿主机中的硬件;
将硬件挂载在虚拟机中;
对虚拟机挂载的硬件进行检测,得到目标物理机的硬件信息。
在本示例中,可以通过软件控件的方式使宿主机的硬件弹出,即可卸载虚拟机的宿主机中的硬件。然后,再通过软件控制的方式将弹出来的硬件挂载到虚拟机中,这样虚拟可以对挂载的硬件进行检测,得到硬件驱动信息。从而可以基于硬件驱动信息,在虚拟机所运行的操作系统中安装对应的硬件驱动。
示例性地,上述软件控制的方式为硬件直通技术。
示例性地,还可以通过脚本配置的方式,将虚拟机的宿主机中的硬件卸载,然后挂载到虚拟机中。
示例性,可以基于目标物理机的硬件配置信息,卸载虚拟机的宿主机中的目标硬件,然后将目标硬件挂载到虚拟机中。
示例性地,硬件配置信息可以包括硬件标识、型号、厂家等。
示例性地,硬件驱动信息可以包括硬件驱动的标识、型号等。
在一些实施例中,上述方法还包括:
基于目标物理机的软件配置信息,在操作系统中安装对应的软件。
示例性地,通过软件配置页面,获取用户输入的目标物理机的软件配置信息。或者,可以通过导入的脚本信息,从脚本信息中获取软件配置信息。
示例性地,软件配置信息可以包括软件标识、版本、制造商等。
示例性地,基于软件配置信息从软件库中提取目标软件,然后在操作系统中安装目标软件。
在一些实施例中,上述方法还包括:
基于目标物理机的磁盘分区信息,对操作系统中的磁盘进行分区。
示例性地,通过磁盘配置页面,获取用户输入的磁盘分区信息。磁盘分区信息可以包括磁盘的大小,磁盘分成多少个区域,每个分区的大小,每个分区的存储功能。
在一些实施例中,上述方法还包括:
基于目标物理机的软件配置信息和操作系统版本信息,在操作系统集合中确定目标物理机的操作系统。
示例性地,操作系统可以认为是一种操作系统的镜像文件,可以选择软件配置上跟目标物理机的软件配置最相近的操作系统,进行重新配置,这可以加快镜像文件的生成速度。也可以选择硬件驱动与目标物理机的硬件驱动在配置上最相近的操作系统,这样也可以加快镜像文件的生成速度。
如图3所示,以下本公开的镜像文件的制作流程的一个应用示例:
工作原理:
1.利用KVM虚拟化安装目标操作系统
KVM是最主流的开源的服务器虚拟化技术,是依赖于硬件辅助的全虚拟化,可以模拟真实物理硬件。因此在KVM中按照一定方法制作的操作系统镜像可以直接dd到物理硬盘上使用。
2.配置KVM中的操作系统
在安装好的操作系统中可以自由安装软件,包,插件,并且可以通过KVM调整磁盘大小,CPU数量,内存大小等。
3.利用KVM直通增加系统对特殊硬件的支持
可以利用KVM直通的特性将特殊硬件(例如显卡)直通给操作系统,在系统中打入对应的固件,这样就可以在安装有同型号或兼容型号硬件的服务器上直接使用了。
4.增加镜像存储,传输的便捷性,可进一步定制化
安装好系统的KVM的qcow2文件可以直接作为镜像文件使用。制作好的镜像文件可以直接在宿主机内部存储,或传输到远端服务器上。如果镜像需要改进,可以直接使用KVM启动那个镜像进行修改,方便快捷。
使用方法:
此处以在Ubuntu 20.04系统,Intel X520网卡的宿主机上制作含有网卡驱动的Windows 10系统模板,用于安装装有Intel X520网卡的裸金属物理机上的系统为例。
1、宿主机安装kvm
a)查看cpu是否开启虚拟化:
sudo apt install cpu-checker
sudo kvm-ok
b)安装必要组件:
sudo apt install-y qemu-kvm libvirt-daemon-system libvirt-clientsvirt-manager
2、使用kvm安装目标系统
a)选择系统镜像安装系统;
b)创建系统盘的qcow2文件,大小自定;
c)选择自定义配置,选择引导模式(BIOS或UEFI),将磁盘bus改为SATA。
d)点击“Begin Installation”安装系统。
3.安装显卡驱动
a)宿主机上获取目标网卡pci号,例如,选择pci号为3b:00.0的网卡,直通到虚拟机中。或者直接在xml文件中加入配置,使用命令define虚拟机:
vim<xml文件路径>
virsh define<xml文件路径>
virsh create<xml文件路径>
b)此时虚拟机中可以检测到该网卡,可以在系统中安装对应的网卡驱动。
4.如需增加监控,可以安装virtio-win驱动
a)在xml配置文件中加入如下项:
<channel type='unix'>
<source mode='bind'path='/var/lib/libvirt/qemu/Win10.agent'/>
<target type='virtio'name='org.qemu.guest_agent.0'/>
<address type='virtio-serial'controller='0'bus='0'port='1'/>
</channel>
<channel type='spicevmc'>
<target type='virtio'name='com.redhat.spice.0'/>
<address type='virtio-serial'controller='0'bus='0'port='2'/>
</channel>
……
<memballoon model='virtio'>
<address type='pci'domain='0x0000'bus='0x03'slot='0x00'function='0x0'/>
<stats period='10'/>
</memballoon>
b)在虚拟机光驱中加入virtio-win的iso镜像,打开设备管理器找到
5.关机,将虚拟机的qcow2文件拷贝,它就是系统模板文件。可以用如下命令压缩空间:
qemu-img convert-p-c-O qcow2 original.qcow2 new.qcow2
6.在目标物理机硬盘上安装镜像系统:
a)进入pxe小镜像,或外接U盘系统。(模板文件在小镜像和U盘系统中)
b)确认目标硬盘:
lsblk
看哪块盘上有挂载点,哪块盘上没有。没有的盘就是目标硬盘。
c)格式化目标硬盘:
sgdisk-z/dev/sda
d)将镜像装到硬盘上
qemu-img convert-p-t directsync-O host_device
/var/lib/libvirt/images/win10.qcow2/dev/sda
7.至此,系统已安装完成。
图4是本公开一实施例的镜像文件处理装置的结构图。如图4所示,该镜像文件处理装置,应用于虚拟机,所述装置包括:
操作系统安装模块410,用于基于目标物理机的操作系统版本信息和硬件配置信息,在所述虚拟机中安装并运行所述目标物理机的操作系统;
硬件驱动信息确定模块420,用于基于所述虚拟机挂载的硬件,确定所述目标物理机的硬件信息;
硬件驱动安装模块430,用于基于所述目标物理机的硬件信息,在所述虚拟机中运行的操作系统中安装硬件驱动;
镜像文件生成模块440,用于基于所述虚拟机运行的操作系统,生成所述目标物理机的操作系统镜像文件。
示例性地,所述硬件驱动信息确定模块包括:
硬件卸载单元,用于卸载所述虚拟机的宿主机中的硬件;
硬件挂载单元,用于通过硬件直通技术,将所述硬件挂载在所述虚拟机中;
硬件检测单元,用于对所述虚拟机挂载的硬件进行检测,得到所述目标物理机的硬件驱动信息。
示例性地,还包括:
软件安装模块,用于基于所述目标物理机的软件配置信息,在所述操作系统中安装对应的软件。
示例性地,还包括:
磁盘分区模块,用于基于所述目标物理机的磁盘分区信息,对所述操作系统中的磁盘进行分区。
示例性地,还包括:
目标文件确定模块,用于基于所述目标物理机的软件配置信息和操作系统类型,在操作系统文件集合中确定所述目标物理机的目标操作系统文件。
本公开实施例各装置中的各单元、模块或子模块的功能可以参见上述方法实施例中的对应描述,在此不再赘述。
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
图5示出了可以用来实施本公开的实施例的示例电子设备800的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或要求的本公开的实现。
如图5所示,电子设备800包括计算单元801,其可以根据存储在只读存储器(ROM)802中的计算机程序或者从存储单元808加载到随机访问存储器(RAM)803中的计算机程序来执行各种适当的动作和处理。在RAM 803中,还可存储电子设备800操作所需的各种程序和数据。计算单元801、ROM 802以及RAM 803通过总线804彼此相连。输入输出(I/O)接口805也连接至总线804。
电子设备800中的多个部件连接至I/O接口805,包括:输入单元806,例如键盘、鼠标等;输出单元807,例如各种类型的显示器、扬声器等;存储单元808,例如磁盘、光盘等;以及通信单元809,例如网卡、调制解调器、无线通信收发机等。通信单元809允许电子设备800通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元801可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元801的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元801执行上文所描述的各个方法和处理,例如镜像文件处理方法。例如,在一些实施例中,镜像文件处理方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元808。在一些实施例中,计算机程序的部分或者全部可以经由ROM 802和/或通信单元809而被载入和/或安装到电子设备800上。当计算机程序加载到RAM 803并由计算单元801执行时,可以执行上文描述的镜像文件处理方法的一个或多个步骤。备选地,在其他实施例中,计算单元801可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行镜像文件处理方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、复杂可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程氛围灯调节装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入、或者触觉输入来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,也可以为分布式系统的服务器,或者是结合了区块链的服务器。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
Claims (12)
1.一种镜像文件处理方法,其特征在于,应用于虚拟机,所述方法包括:
基于目标物理机的操作系统版本信息和硬件配置信息,在所述虚拟机中安装并运行所述目标物理机的操作系统;
基于所述虚拟机挂载的硬件,确定所述目标物理机的硬件信息;
基于所述目标物理机的硬件信息,在所述虚拟机中运行的操作系统中安装对应的硬件驱动;
基于所述虚拟机运行的操作系统,生成所述目标物理机的操作系统镜像文件;
其中,所述基于所述虚拟机挂载的硬件,确定所述目标物理机的硬件信息,包括:
卸载所述虚拟机的宿主机中的硬件;
通过硬件直通技术,将所述硬件挂载在所述虚拟机中;
对所述虚拟机挂载的硬件进行检测,得到所述目标物理机的硬件信息。
2.根据权利要求1所述的方法,其特征在于,还包括:
基于所述目标物理机的软件配置信息,在所述操作系统中安装对应的软件。
3.根据权利要求1所述的方法,其特征在于,还包括:
基于所述目标物理机的磁盘分区信息,对所述操作系统中的磁盘进行分区。
4.根据权利要求1至3任一项所述的方法,其特征在于,还包括:
基于所述目标物理机的软件配置信息和操作系统版本,在操作系统集合中确定所述目标物理机的操作系统。
5.根据权利要求1所述的方法,其特征在于,所述硬件包括以下至少一项:网卡、显卡、USB控制器、声卡或者打印机。
6.一种镜像文件处理装置,其特征在于,应用于虚拟机,所述装置包括:
操作系统安装模块,用于基于目标物理机的操作系统版本信息和硬件配置信息,在所述虚拟机中安装并运行所述目标物理机的操作系统;
硬件驱动信息确定模块,用于基于所述虚拟机挂载的硬件,确定所述目标物理机的硬件信息;
硬件驱动安装模块,用于基于所述目标物理机的硬件信息,在所述虚拟机中运行的操作系统中安装硬件驱动;
镜像文件生成模块,用于基于所述虚拟机运行的操作系统,生成所述目标物理机的操作系统镜像文件;
其中,所述硬件驱动信息确定模块包括:
硬件卸载单元,用于卸载所述虚拟机的宿主机中的硬件;
硬件挂载单元,用于通过硬件直通技术,将所述硬件挂载在所述虚拟机中;
硬件检测单元,用于对所述虚拟机挂载的硬件进行检测,得到所述目标物理机的硬件信息。
7.根据权利要求6所述的装置,其特征在于,还包括:
软件安装模块,用于基于所述目标物理机的软件配置信息,在所述操作系统中安装对应的软件。
8.根据权利要求6所述的装置,其特征在于,还包括:
磁盘分区模块,用于基于所述目标物理机的磁盘分区信息,对所述操作系统中的磁盘进行分区。
9.根据权利要求6至8任一项所述的装置,其特征在于,还包括:
目标文件确定模块,用于基于所述目标物理机的软件配置信息和操作系统版本,在操作系统集合中确定所述目标物理机的操作系统。
10.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-5中任一项所述的方法。
11.一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使计算机执行权利要求1-5中任一项所述的方法。
12.一种计算机程序产品,包括计算机程序,该计算机程序在被处理器执行时实现根据权利要求1-5中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310652829.9A CN116661951B (zh) | 2023-06-02 | 2023-06-02 | 镜像文件处理方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310652829.9A CN116661951B (zh) | 2023-06-02 | 2023-06-02 | 镜像文件处理方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116661951A CN116661951A (zh) | 2023-08-29 |
CN116661951B true CN116661951B (zh) | 2024-05-14 |
Family
ID=87709321
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310652829.9A Active CN116661951B (zh) | 2023-06-02 | 2023-06-02 | 镜像文件处理方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116661951B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110955880A (zh) * | 2019-12-12 | 2020-04-03 | 北京中电普华信息技术有限公司 | 一种云环境下的usb安全狗挂载方法 |
CN115344275A (zh) * | 2022-08-15 | 2022-11-15 | 广州鼎甲计算机科技有限公司 | 操作系统的镜像文件生成方法、装置和计算机设备 |
CN115576626A (zh) * | 2022-10-08 | 2023-01-06 | 中电信数智科技有限公司 | 一种usb设备安全挂载和卸载的方法、设备和存储介质 |
CN115794132A (zh) * | 2021-09-10 | 2023-03-14 | 中国联合网络通信集团有限公司 | 操作系统部署方法、装置、设备及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109522088A (zh) * | 2018-09-30 | 2019-03-26 | 华为技术有限公司 | 一种虚拟机迁移方法及装置 |
-
2023
- 2023-06-02 CN CN202310652829.9A patent/CN116661951B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110955880A (zh) * | 2019-12-12 | 2020-04-03 | 北京中电普华信息技术有限公司 | 一种云环境下的usb安全狗挂载方法 |
CN115794132A (zh) * | 2021-09-10 | 2023-03-14 | 中国联合网络通信集团有限公司 | 操作系统部署方法、装置、设备及存储介质 |
CN115344275A (zh) * | 2022-08-15 | 2022-11-15 | 广州鼎甲计算机科技有限公司 | 操作系统的镜像文件生成方法、装置和计算机设备 |
CN115576626A (zh) * | 2022-10-08 | 2023-01-06 | 中电信数智科技有限公司 | 一种usb设备安全挂载和卸载的方法、设备和存储介质 |
Non-Patent Citations (1)
Title |
---|
基于镜像分割技术的虚拟机启动方法研究;易帆 等;《成都工业学院学报》;20131231;第16卷(第4期);第44-47页 * |
Also Published As
Publication number | Publication date |
---|---|
CN116661951A (zh) | 2023-08-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9292312B2 (en) | Simulated network boot environment for bootstrap redirection | |
US11132450B2 (en) | Accessing file systems in a virtual environment | |
US10372639B2 (en) | System and method to avoid SMBus address conflicts via a baseboard management controller | |
US20130086571A1 (en) | Dynamically Updating Firmware In A Computing System | |
CN109240754B (zh) | 一种配置bios启动项的逻辑器件及方法、系统 | |
US8898345B2 (en) | Out-of-band management of third party adapter configuration settings in a computing system | |
US8671171B2 (en) | Wireless configuration for a computing device | |
CN111984476A (zh) | 测试方法和装置 | |
US10282190B2 (en) | System and method for updating a UEFI image in an information handling system | |
CN110515671A (zh) | 初始化方法、初始化装置、终端设备及可读存储介质 | |
US8769404B2 (en) | Rule-based locale definition generation for a new or customized locale support | |
US9003172B2 (en) | Intelligently controlling loading of legacy option ROMs in a computing system | |
CN116661951B (zh) | 镜像文件处理方法、装置、电子设备及存储介质 | |
CN111880822A (zh) | 一种基于BIOS Setup界面信息的动态更新方法及系统 | |
US9983862B2 (en) | Systems and methods for download and installation of drivers for unmanaged information handling resources | |
US11880908B2 (en) | System and method for pre-boot dynamic video rendering and graphics interpretation by a virtual graphics browser | |
US20150269047A1 (en) | Optimizing computer hardware usage in a computing system that includes a plurality of populated central processing unit ('cpu') sockets | |
CN115794132A (zh) | 操作系统部署方法、装置、设备及存储介质 | |
US20150363713A1 (en) | Systems and methods for extending factory manufacturing mode to networking devices | |
US8645600B2 (en) | Configuring expansion component interconnect (‘ECI’) physical functions on an ECI device in a computing system | |
US9704214B2 (en) | Rendering video data in an information handling system by converting the video data to bulk video data | |
CN110532040A (zh) | 固件程序的加载方法及装置、存储介质和电子设备 | |
US10140232B2 (en) | Peripheral component interface (PCI) system and method for expanding PCI nodes in an information handling system | |
US20240012743A1 (en) | Automation test accelerator | |
CN116627682B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |