CN115098118A - 一种镜像灌装方法、装置、设备及存储介质 - Google Patents
一种镜像灌装方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN115098118A CN115098118A CN202210751003.3A CN202210751003A CN115098118A CN 115098118 A CN115098118 A CN 115098118A CN 202210751003 A CN202210751003 A CN 202210751003A CN 115098118 A CN115098118 A CN 115098118A
- Authority
- CN
- China
- Prior art keywords
- target
- network card
- server
- image
- directory
- 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
- 238000000034 method Methods 0.000 title claims abstract description 53
- 238000003860 storage Methods 0.000 title claims abstract description 14
- 238000013507 mapping Methods 0.000 claims abstract description 14
- 238000004590 computer program Methods 0.000 claims description 16
- 238000010276 construction Methods 0.000 claims description 4
- 238000012360 testing method Methods 0.000 abstract description 21
- 238000009434 installation Methods 0.000 abstract description 10
- 238000004519 manufacturing process Methods 0.000 abstract description 8
- 238000004891 communication Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 230000006837 decompression Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 241000109539 Conchita Species 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
- G06F8/63—Image based installation; Cloning; Build to order
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Facsimiles In General (AREA)
Abstract
本申请公开了一种镜像灌装方法、装置、设备及存储介质,涉及计算机技术领域,包括:将启动映像包复制到新建目录中,并解压新建目录下的启动映像包;新建目录为在目标服务器上新建的目录,并且目标服务器为已配置目标网卡的服务器;基于解压后的启动映像包构建包含目标网卡对应的网卡驱动的目标启动映像包;复制目标启动映像包至预先搭建好的PXE服务器中;通过PXE服务器利用目标镜像文件安装目标镜像文件对应的操作系统。本申请通过将定制的目标启动映像包添加至网卡驱动中,实现网卡驱动的定制化,通过网络PXE方式进行镜像灌装,从而提升服务器测试以及生产中镜像安装的效率,并降低人力和物力的成本。
Description
技术领域
本发明涉及计算机技术领域,特别涉及一种镜像灌装方法、装置、设备及存储介质。
背景技术
当前,Linux系统是服务器平台使用最频繁的操作系统,关于服务器linux系统镜像的灌装方法市面上有很多种,常用的包括:KVM远程挂载镜像、U盘镜像以及PXE(PrebootExecute Environment,预执行环境)网络灌装,而服务器测试中最为方便、最适合大批量进行灌装镜像的方法,也是产线上批量导入操作系统的方法,当属PXE网络灌装操作系统。PXE网络灌装离不开网卡的支持,但当今计算机通信行业快速发展,网卡种类和厂家繁多,常用的标准操作系统镜像,例如:CentOS(Community Enterprise Operating System,社区企业操作系统)、RHEL(Red Hat Enterprise Linux,即Red Hat公司发布的面向企业用户的Linux操作系统)、Ubantu(即以桌面应用为主的Linux操作系统)等不可能全部涵盖所有网卡的驱动。
因此,如何提供一种解决Linux镜像无法正常通过网络进行PXE灌装问题的方案是本领域技术人员目前需要解决的问题。
发明内容
有鉴于此,本发明的目的在于提供一种镜像灌装方法、装置、设备及存储介质,能够解决版本较新的网卡设备驱动无法在版本较低的Linux镜像中被识别导致该Linux镜像无法正常通过网络进行PXE灌装的问题,从而实现以PXE方式的镜像灌装。其具体方案可以为:
第一方面,本申请公开了一种镜像灌装方法,包括:
将启动映像包复制到新建目录中,并解压所述新建目录下的所述启动映像包;所述新建目录为在所述目标服务器上新建的目录,并且所述目标服务器为已配置目标网卡的服务器;
基于解压后的所述启动映像包构建包含所述目标网卡对应的网卡驱动的目标启动映像包;
复制所述目标启动映像包至预先搭建好的PXE服务器中;
通过所述PXE服务器利用目标镜像文件安装所述目标镜像文件对应的操作系统。
可选的,所述将启动映像包复制到新建目录中之前,还包括:
将所述目标网卡对应的所述网卡驱动复制到所述目标服务器上,并在所述目标服务器上安装所述网卡驱动。
可选的,所述将所述目标网卡对应的所述网卡驱动复制到所述目标服务器上,包括:
将所述目标网卡对应的所述网卡驱动复制到所述目标服务器上的第一目标目录中。
可选的,所述在所述目标服务器上安装所述网卡驱动,包括:
将所述网卡驱动安装至所述目标服务器上的第二目标目录中。
可选的,所述基于解压后的所述启动映像包构建包含所述目标网卡对应的网卡驱动的目标启动映像包,包括:
利用解压后的所述启动映像包中的modules.*对所述网卡驱动中的modules.*进行替换得到替换后文件;
基于所述替换后文件和所述新建目录下的解压后的所述启动映像包构建包含所述目标网卡对应的网卡驱动的目标启动映像包。
可选的,所述利用解压后的所述启动映像包中的modules.*对所述网卡驱动中的modules.*进行替换得到替换后文件之前,还包括:
将所述网卡驱动对应的驱动文件夹复制至第三目标目录,并将所述目标网卡对应的目标固件版本复制至第四目标目录。
可选的,所述通过所述PXE服务器利用目标镜像文件安装所述目标镜像文件对应的操作系统之前,还包括:
将所述目标网卡设置为第一启动项;
利用所述目标网卡重启所述目标服务器。
第二方面,本申请公开了一种镜像灌装装置,包括:
第一复制模块,用于将启动映像包复制到新建目录中,并解压所述新建目录下的所述启动映像包;所述新建目录为在所述目标服务器上新建的目录,并且所述目标服务器为已配置目标网卡的服务器;
映像包构建模块,用于基于解压后的所述启动映像包构建包含所述目标网卡对应的网卡驱动的目标启动映像包;
第二复制模块,用于复制所述目标启动映像包至预先搭建好的PXE服务器中;
镜像灌装模块,用于通过所述PXE服务器利用目标镜像文件安装所述目标镜像文件对应的操作系统。
第三方面,本申请公开了一种电子设备,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序,以实现前述公开的镜像灌装方法的步骤。
第四方面,本申请公开了一种计算机可读存储介质,用于存储计算机程序;其中,所述计算机程序被处理器执行时实现前述公开的镜像灌装方法的步骤。
可见,本申请提供了一种镜像灌装方法,包括:将启动映像包复制到新建目录中,并解压所述新建目录下的所述启动映像包;所述新建目录为在所述目标服务器上新建的目录,并且所述目标服务器为已配置目标网卡的服务器;基于解压后的所述启动映像包构建包含所述目标网卡对应的网卡驱动的目标启动映像包;复制所述目标启动映像包至预先搭建好的PXE服务器中;通过所述PXE服务器利用目标镜像文件安装所述目标镜像文件对应的操作系统。由此可知,本申请将启动映像包复制到新建目录中,然后解压所述新建目录下的启动映像包,进而构建出包含目标网卡对应的网卡驱动的目标启动映像包,从而将目标启动映像包复制至PXE服务器中,通过PXE服务器安装相应的操作系统。也即,本申请通过将定制的启动映像包添加至网卡驱动中,实现网卡驱动的定制化,通过网络PXE方式进行镜像灌装,从而提升了服务器测试以及生产中镜像安装的效率,并能够极大地降低人力和物力的成本,而且在网卡测试中PXE功能还能够提高网卡测试的覆盖度,提高产品质量。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请公开的一种镜像灌装方法流程图;
图2为本申请公开的一种具体的镜像灌装方法流程图;
图3为本申请公开的一种具体的镜像灌装方法流程图;
图4为本申请公开的一种具体的镜像灌装方法流程图;
图5为本申请公开的一种镜像灌装装置结构示意图;
图6为本申请公开的一种电子设备结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
当前,PXE网络灌装离不开网卡的支持,但当今计算机通信行业快速发展,网卡种类和厂家繁多,常用的标准操作系统镜像等不可能全部涵盖所有网卡的驱动。为此,本申请提供了一种镜像灌装方案,能够解决版本较新的网卡设备驱动无法在版本较低的Linux镜像中被识别导致该Linux镜像无法正常通过网络进行PXE灌装的问题,从而实现以PXE方式的镜像灌装。
本发明实施例公开了一种镜像灌装方法,参见图1所示,该方法包括:
步骤S11:将启动映像包复制到新建目录中,并解压所述新建目录下的所述启动映像包;所述新建目录为在所述目标服务器上新建的目录,并且所述目标服务器为已配置目标网卡的服务器。
本实施例中,在已配置目标网卡的目标服务器中创建一个新目录,即新建目录,所述新建目录可以设置为initrd-new,所述目标网卡可以为Cavium CN2350 10G万兆网卡,所述目标服务器可以为一台配备PCIE(Peripheral Component Interconnect Express,高速串行计算机扩展总线)插槽的服务器,也就是说,在已配置Cavium CN2350 10G万兆网卡的目标服务器上创建一个新目录。其中,所述创建一个新目录的命令可以为:
#mkdir/root/Desktop/initrd-new;
其中,所述mkdir命令表示建立一个子目录,/root/Desktop/initrd-new即为新建目录,initrd即initial ramdisk,表示在系统引导过程中挂载的一个临时根文件系统,可以将其作为Linux启动过程的一部分。
本实施例中,完成新建目录的创建之后,则将启动映像包复制到所述新建目录中,并且所述将启动映像包复制到所述新建目录的操作的命令可以为:
#cp/mnt/cdrom/images/pxeboot/initrd.img/root/Desktop/initrd-new;
其中,所述initrd.img即为启动映像包,所述cp命令表示将一个或多个源文件或者目录复制到指定的目的文件或目录,也就是说,复制/mnt/cdrom/images/pxeboot/initd.img到新建目录initrd-new中。将所述启动映像包initrd.img复制到新建目录/root/Desktop/initrd-new之后,解压所述新建目录下的所述启动映像包,其中,所述解压所述新建目录下的所述启动映像包的操作对应的命令可以为:
#cd/root/Desktop/initrd-new;
#xz-dc initrd.img|cpio–id;
#rm–r initrd.img;
其中,所述cd表示指定要进入的目录,所述xz命令表示以.xz格式压缩或解压缩文件,xz–dc表示解压文件,所述rm表示用于删除一个文件或者目录,rm–r表示将目录及以下之档案亦逐一删除。
本实施例中,在创建新建目录之前,还需要将目标镜像文件复制到所述目标服务器中,并挂载所述目标镜像文件,例如,将Redhat 7.2ISO镜像文件复制到SUT服务器中,挂载ISO镜像文件,其中所述挂载ISO镜像文件操作对应的命令可以为:
#mount–o loop xx.iso/mnt/cdrom;
其中,所述mount命令表示用于挂载Linux系统外的文件。
步骤S12:基于解压后的所述启动映像包构建包含所述目标网卡对应的网卡驱动的目标启动映像包。
本实施例中,在完成所述启动映像包的复制,解压之后,则可以基于解压后的所述启动映像包构建包含所述目标网卡对应的网卡驱动的目标启动映像包。也就会说,构建包含目标网卡对应的网卡驱动的目标启动映像包,其中相关的命令可以为:
#cd/root/Desktop/initrd-new;
#find.-print|cpio-o-H newc|xz--format=lzma>../initrd-new.img;
其中,所述find命令表示在指定目录下查找文件,所述initrd-new.img表示所述目标启动映像包。
步骤S13:复制所述目标启动映像包至预先搭建好的PXE服务器中。
本实施例中,完成包含所述目标网卡对应的网卡驱动的目标启动映像包的构建之后,可以将所述目标启动映像包复制至预先搭建好的PXE服务器中。也就是说,将新制作的initrd-new.img文件复制到预先搭建好的PXE服务器中。
步骤S14:通过所述PXE服务器利用目标镜像文件安装所述目标镜像文件对应的操作系统。
本实施例中,将所述目标启动映像包复制至预先搭建好的PXE服务器之后,通过所述PXE服务器利用目标镜像文件安装所述目标镜像文件对应的操作系统。
可见,本申请实施例将启动映像包复制到新建目录中,然后解压所述新建目录下的启动映像包,进而构建出包含目标网卡对应的网卡驱动的目标启动映像包,从而将目标启动映像包复制至PXE服务器中,通过PXE服务器安装相应的操作系统。也即,本申请通过将定制的启动映像包添加至网卡驱动中,实现网卡驱动的定制化,通过网络PXE方式进行镜像灌装,从而提升了服务器测试以及生产中镜像安装的效率,并能够极大地降低人力和物力的成本。也就是说,本申请实施例中,添加目标网卡对应的网卡驱动到linux启动映像中的方法,使得linux系统可以通过PXE网络安装到服务器上。而且在网卡测试中PXE功能还能够提高网卡测试的覆盖度,即通过PXE网络,对任何型号的网卡进行任何版本Linux系统的灌装,从而提高产品质量。也就是说,本申请实施例中的技术方案使得将网卡驱动映像添加到Linux镜像中,具有可执行性、扩展性和通用性,更具备参考价值。
参见图2所示,本发明实施例公开了一种具体的镜像灌装方法,相较于上一实施例,本实施例对技术方案作了进一步的说明和优化。
步骤S21:将目标网卡对应的网卡驱动复制到目标服务器上,并在所述目标服务器上安装所述网卡驱动。
本实施例中,配置目标网卡到目标服务器上,并为所述目标服务器灌装全量软件包的目标镜像文件,例如,配置Cavium CN2350 10G万兆网卡到服务器SUT上,并给该服务器SUT灌装全量软件包的Redhat 7.2镜像文件,进而将预先下载的所述目标网卡对应的最新的网卡驱动复制到所述目标服务器上,例如,下载最新的Cavium CN2350 10G网卡驱动,所述网卡驱动对应的驱动包为:liquidio-linux-driver-fwbin-1.6.0,将所述驱动包复制到所述目标服务器上,从而在所述目标服务器上安装所述网卡驱动。可以理解的是,当监控到用户登录所述目标服务器,则安装目标网卡对应的网卡驱动,例如,当监控到root用户登录所述服务器SUT,则安装Cavium网卡设备对应的网卡驱动,相关的命令可以为:
#unzip liquidio-linux-driver-fwbin-1.6.0.zip;
#./configure;
#make;
#make install;
其中,所述unzip命令表示解压缩由zip命令压缩的“.zip”压缩包。需要说明的是,在Linux下安装一个应用程序时,一般先运行脚本configure,然后用make来编译源程序,再运行make install。
步骤S22:将启动映像包复制到新建目录中,并解压所述新建目录下的所述启动映像包;所述新建目录为在所述目标服务器上新建的目录,并且所述目标服务器为已配置目标网卡的服务器。
步骤S23:基于解压后的所述启动映像包构建包含所述目标网卡对应的网卡驱动的目标启动映像包。
步骤S24:复制所述目标启动映像包至预先搭建好的PXE服务器中。
步骤S25:通过所述PXE服务器利用目标镜像文件安装所述目标镜像文件对应的操作系统。
关于上述步骤S22至步骤S25的具体内容可以参考前述实施例中公开的相应内容,在此不再进行赘述。
可见,本申请实施例将启动映像包复制到新建目录中,然后解压所述新建目录下的启动映像包,进而构建出包含目标网卡对应的网卡驱动的目标启动映像包,从而将目标启动映像包复制至PXE服务器中,通过PXE服务器安装相应的操作系统。也即,本申请通过将定制的启动映像包添加至网卡驱动中,实现网卡驱动的定制化,通过网络PXE方式进行镜像灌装,从而提升了服务器测试以及生产中镜像安装的效率,并能够极大地降低人力和物力的成本,而且在网卡测试中PXE功能还能够提高网卡测试的覆盖度,提高产品质量。
参见图3所示,本发明实施例公开了一种具体的镜像灌装方法,相较于上一实施例,本实施例对技术方案作了进一步的说明和优化。
步骤S31:将目标网卡对应的网卡驱动复制到目标服务器上的第一目标目录中。
本实施例中,配置目标网卡到目标服务器上,并为所述目标服务器灌装全量软件包的目标镜像文件,例如,配置Cavium CN2350 10G万兆网卡到服务器SUT上,并给该服务器SUT灌装全量软件包的Redhat 7.2镜像文件,进而将预先下载的所述目标网卡对应的最新的网卡驱动复制到所述目标服务器上的第一目录中,例如,下载最新的Cavium CN2350 10G网卡驱动,所述网卡驱动对应的驱动包为:liquidio-linux-driver-fwbin-1.6.0,将所述驱动包复制到所述服务器SUT的/root/Desktop目录中。
步骤S32:将所述网卡驱动安装至所述目标服务器上的第二目标目录中。
本实施例中,将所述目标网卡对应的所述网卡驱动复制到所述目标服务器上的第一目标目录中之后,将所述网卡驱动安装至所述目标服务器上的第二目标目录中。例如,在所述目标服务器上安装所述网卡驱动。可以理解的是,当监控到用户登录所述目标服务器,则安装目标网卡对应的网卡驱动,例如,当监控到root用户登录所述服务器SUT,则安装Cavium网卡设备对应的网卡驱动,相关的命令可以为:
#unzip liquidio-linux-driver-fwbin-1.6.0.zip
#./configure
#make
#make install
其中,所述网卡驱动将会被安装到可以为目录:
/lib/modules/<KERNELVERSION>/kernel/drivers/net/ethernet/cavium
/liquidio/liquidio.ko
由于liquidio驱动程序依赖于主机内核中的ptp模块。如果尚未在系统上安装所述网卡驱动,则生成相关的警示命令:
#modprobe ptp;
#cd$LIQUIDIO_ROOT/bin;
#insmod liquidio.ko;
其中,所述modprobe命令和所述insmod命令都表示用于加载内核驱动模块。
步骤S33:将启动映像包复制到新建目录中,并解压所述新建目录下的所述启动映像包;所述新建目录为在所述目标服务器上新建的目录,并且所述目标服务器为已配置目标网卡的服务器。
步骤S34:将所述网卡驱动对应的驱动文件夹复制至第三目标目录,并将所述目标网卡对应的目标固件版本复制到第四目标目录。
本实施例中,将启动映像包复制到新建目录中,并解压所述新建目录下的所述启动映像包之后,可以将所述网卡驱动对应的驱动文件夹复制至第三目标目录,例如,将Cavium CN2350 10G万兆网卡的网卡驱动对应的liquidio文件夹复制到第三目标目录中,所述第三目标目录包含liquidio.ko文件,所述将所述网卡驱动对应的驱动文件夹复制至第三目标目录的操作对应的命令可以为:
#cd/root/Desktop/initrdnew;
/lib/modules/3.10.0327.el7.x86_64/kernel/drivers/net/ethernet;
#mkdir cavium;
#cp–r/lib/modules/3.10.0-327.el7.x86_64/kernel/drivers/net/Ethernet;
/cavium/liquidio.;
其中,字符“.”表示当前目录。
本实施例中,完成将所述网卡驱动对应的驱动文件夹复制至第三目标目录的操作后,并将所述目标网卡对应的目标固件版本复制到第四目标目录。例如,将目标网卡对应的最新的固件版本复制到第四目标目录中,所述将目标网卡对应的最新的固件版本复制到第四目标目录中的操作对应的命令可以为:
#cd/root/Desktop/initrd-new;
#mkdir–p/lib/fireware/liquidio;
#cp/root/Desktop/liquidio-linux-driver-fwbin-1.6.0/bin/octeon
/lio_23xx_nic.bin/root/Desktop/initrd-new/lib/fireware/liquidio/;
其中,所述mkdir–p表示递归创建目录,即使上级目录不存在,会按目录层级自动创建目录。
步骤S35:利用解压后的所述启动映像包中的modules.*对所述网卡驱动中的modules.*进行替换得到替换后文件。
本实施例中,利用解压后的所述启动映像包中的modules.*对所述网卡驱动中的modules.*进行替换得到替换后文件。例如,把网卡驱动信息中的modules.*替换为initrd.img中的modules.*,得到最新的modules.*.bin文件,所述利用解压后的所述启动映像包中的modules.*对所述网卡驱动中的modules.*进行替换得到替换后文件的操作对应的命令可以为:
#cd/lib/modules/3.10.0-327.el7.x86_64;
#egrep'liquidio'
modules.symbols>>/root/Desktop/initrd-new/lib/modules/3.10.0-327.el7.x86_64/modules.symbols;
#egrep'liquidio'
modules.alias>>/root/Desktop/initrd-new/lib/modules/3.10.0-327.el7.x86_64/modules.alias;
#egrep'liquidio'
modules.dep>>/root/Desktop/initrd-new/lib/modules/3.10.0-327.el7.x86_64/modules.dep;
其中,所述egrep命令表示在文件内查找指定的字符串。
步骤S36:基于所述替换后文件和所述新建目录下的解压后的所述启动映像包构建包含所述目标网卡对应的网卡驱动的目标启动映像包。
本实施例中,利用解压后的所述启动映像包中的modules.*对所述网卡驱动中的modules.*进行替换得到替换后文件,并完成将启动映像包复制到新建目录中,并解压所述新建目录下的所述启动映像包的操作之后,可以基于所述替换后文件和所述新建目录下的解压后的所述启动映像包构建包含所述目标网卡对应的网卡驱动的目标启动映像包,也就是说,将把网卡驱动信息中的modules.*替换为initrd.img中的modules.*得到的最新的modules.*.bin文件添加到启动映像包initrd.img中,得到包含所述目标网卡对应的网卡驱动的目标启动映像包,即得到包含所述Cavium CN2350 10G万兆网卡对应的网卡驱动的目标启动映像包。相关的命令可以为:
#chroot/root/Desktop/initrd-new;
#depmod-a–v;
#exit;
其中,所述chroot命令表示改变程序执行时所参考的根目录位置,所述depmod命令表示用于分析可载入模块的相依性。
步骤S37:复制所述目标启动映像包至预先搭建好的PXE服务器中。
步骤S38:通过所述PXE服务器利用目标镜像文件安装所述目标镜像文件对应的操作系统。
关于上述步骤S33、步骤S37至步骤S38的具体内容可以参考前述实施例中公开的相应内容,在此不再进行赘述。
可见,本申请实施例将启动映像包复制到新建目录中,然后解压所述新建目录下的启动映像包,进而构建出包含目标网卡对应的网卡驱动的目标启动映像包,从而将目标启动映像包复制至PXE服务器中,通过PXE服务器安装相应的操作系统。也即,本申请通过将定制的启动映像包添加至网卡驱动中,实现网卡驱动的定制化,通过网络PXE方式进行镜像灌装,从而提升了服务器测试以及生产中镜像安装的效率,并能够极大地降低人力和物力的成本,而且在网卡测试中PXE功能还能够提高网卡测试的覆盖度,提高产品质量。
参见图4所示,本发明实施例公开了一种具体的镜像灌装方法,相较于上一实施例,本实施例对技术方案作了进一步的说明和优化。
步骤S41:将启动映像包复制到新建目录中,并解压所述新建目录下的所述启动映像包;所述新建目录为在所述目标服务器上新建的目录,并且所述目标服务器为已配置目标网卡的服务器。
步骤S42:基于解压后的所述启动映像包构建包含所述目标网卡对应的网卡驱动的目标启动映像包。
步骤S43:复制所述目标启动映像包至预先搭建好的PXE服务器中。
步骤S44:将所述目标网卡设置为第一启动项,并利用所述目标网卡重启所述目标服务器。
本实施例中,将所述目标网卡设置为第一启动项,并利用所述目标网卡重启所述目标服务器。例如,设置Cavium CN2350 10G万兆网卡作为为第一启动项,重启服务器时,从所述Cavium CN2350 10G万兆网卡启动。
步骤S45:通过所述PXE服务器利用目标镜像文件安装所述目标镜像文件对应的操作系统。
关于上述步骤S41至步骤S43、步骤S45的具体内容可以参考前述实施例中公开的相应内容,在此不再进行赘述。
可见,本申请实施例将启动映像包复制到新建目录中,然后解压所述新建目录下的启动映像包,进而构建出包含目标网卡对应的网卡驱动的目标启动映像包,从而将目标启动映像包复制至PXE服务器中,通过PXE服务器安装相应的操作系统。也即,本申请通过将定制的启动映像包添加至网卡驱动中,实现网卡驱动的定制化,通过网络PXE方式进行镜像灌装,从而提升了服务器测试以及生产中镜像安装的效率,并能够极大地降低人力和物力的成本,而且在网卡测试中PXE功能还能够提高网卡测试的覆盖度,提高产品质量。
例如,针对市场上较少使用的Cavium CN2350 10G万兆网卡添加到RedHat 7.2镜像进行详细阐述。
首先,在硬件准备时,需要准备一台配备PCIe插槽的服务器,一张Cavium CN235010G万兆网卡。在软件准备时,需要准备RedHat 7.2镜像文件、Cavium CN2350 10G万兆网卡最新的驱动版本、Cavium CN2350 10G万兆网卡最新固件版本。
然后,开始做测试环境的准备,例如,配置Cavium CN2350 10G万兆网卡到服务器SUT上,并给该服务器SUT灌装全量软件包的RedHat 7.2镜像文件;下载最新的CaviumCN2350 10G网卡驱动得到相应的网卡驱动包为:liquidio-linux-driver-fwbin-1.6.0,并复制该驱动包到服务器SUT的/root/Desktop目录里,当root用户登录该服务器SUT时,安装Cavium CN2350 10G网卡对应的网卡驱动,其中,所述网卡驱动将会被安装到如下目录:/lib/modules/<KERNELVERSION>/kernel/drivers/net/ethernet/cavium/liquidio/liquidio.ko,其中liquidio驱动程序依赖于主机内核中的ptp模块。如果尚未在系统上安装,则发出相应的警示命令。接着,将Redhat 7.2ISO镜像文件复制到SUT服务器中,并挂载ISO镜像文件,然后创建一个新目录initrd-new,复制/mnt/cdrom/images/pxeboot/initd.img到新建的目录initrd-new,并解压initrd-new目录下的initrd.img,将CN235010G万兆网卡驱动对应的liquidio文件夹复制到指定的目录,该目录包含liquidio.ko文件,并复制CN2350 10G万兆网卡对应的最新的固件版本到指定目录,进而把网卡驱动信息中的modules.*替换为initrd.img中的modules.*,完成替换后,把最新的modules.*.bin文件制作到initrd.img,得到包含CN2350 10G万兆网卡驱动的目标启动映像包initrd-new.img,最后,复制所述目标启动映像包initrd-new.img文件到搭建好的PXE服务器中,将CN2350 10G万兆网卡设置为第一启动项,重启服务器,从该网卡启动,通过PXE网络安装Redhat 7.2镜像。
相应的,本申请实施例还公开了一种镜像灌装装置,参见图5所示,该装置包括:
第一复制模块11,用于将启动映像包复制到新建目录中,并解压所述新建目录下的所述启动映像包;所述新建目录为在所述目标服务器上新建的目录,并且所述目标服务器为已配置目标网卡的服务器;
映像包构建模块12,用于基于解压后的所述启动映像包构建包含所述目标网卡对应的网卡驱动的目标启动映像包;
第二复制模块13,用于复制所述目标启动映像包至预先搭建好的PXE服务器中;
镜像灌装模块14,用于通过所述PXE服务器利用目标镜像文件安装所述目标镜像文件对应的操作系统。
本实施例中,在已配置目标网卡的目标服务器中创建一个新目录,即新建目录,所述新建目录可以设置为initrd-new,所述目标网卡可以为Cavium CN2350 10G万兆网卡,所述目标服务器可以为一台配备PCIE(Peripheral Component Interconnect Express,高速串行计算机扩展总线)插槽的服务器,也就是说,在已配置Cavium CN2350 10G万兆网卡的目标服务器上创建一个新目录。其中,所述创建一个新目录的命令可以为:
#mkdir/root/Desktop/initrd-new;
其中,所述mkdir命令表示建立一个子目录,/root/Desktop/initrd-new即为新建目录,
本实施例中,完成新建目录的创建之后,则通过第一复制模块11将启动映像包复制到所述新建目录中,并且通过所述第一复制模块11执行所述将启动映像包复制到所述新建目录的操作的命令可以为:
#cp/mnt/cdrom/images/pxeboot/initrd.img/root/Desktop/initrd-new;
其中,所述initrd.img即为启动映像包,所述cp命令表示将一个或多个源文件或者目录复制到指定的目的文件或目录,也就是说,复制/mnt/cdrom/images/pxeboot/initd.img到新建目录initrd-new中。通过所述第一复制模块11将所述启动映像包initrd.img复制到新建目录/root/Desktop/initrd-new之后,解压所述新建目录下的所述启动映像包,其中,所述第一复制模块11执行所述解压所述新建目录下的所述启动映像包的操作对应的命令可以为:
#cd/root/Desktop/initrd-new;
#xz-dc initrd.img|cpio–id;
#rm–r initrd.img;
其中,所述cd表示指定要进入的目录,所述xz命令表示以.xz格式压缩或解压缩文件,xz–dc表示解压文件,所述rm表示用于删除一个文件或者目录,rm–r表示将目录及以下之档案亦逐一删除。
在完成所述启动映像包的复制,解压之后,则可以通过映像包构建模块12基于解压后的所述启动映像包构建包含所述目标网卡对应的网卡驱动的目标启动映像包。也就会说,构建包含目标网卡对应的网卡驱动的目标启动映像包,其中所述映像包构建模块12执行的相关命令可以为:
#cd/root/Desktop/initrd-new;
#find.-print|cpio-o-H newc|xz--format=lzma>../initrd-new.img;
其中,所述find命令表示在指定目录下查找文件,所述initrd-new.img表示所述目标启动映像包。
本实施例中,完成包含所述目标网卡对应的网卡驱动的目标启动映像包的构建之后,可以通过第二复制模块13将所述目标启动映像包复制至预先搭建好的PXE服务器中。也就是说,第二复制模块13能够将新制作的initrd-new.img文件复制到预先搭建好的PXE服务器中。
本实施例中,通过第二复制模块13将所述目标启动映像包复制至预先搭建好的PXE服务器之后,通过镜像灌装模块14执行通过所述PXE服务器利用目标镜像文件安装所述目标镜像文件对应的操作系统的操作。
由上可见,本申请实施例将启动映像包复制到新建目录中,然后解压所述新建目录下的启动映像包,进而构建出包含目标网卡对应的网卡驱动的目标启动映像包,从而将目标启动映像包复制至PXE服务器中,通过PXE服务器安装相应的操作系统。也即,本申请通过将定制的启动映像包添加至网卡驱动中,实现网卡驱动的定制化,通过网络PXE方式进行镜像灌装,从而提升了服务器测试以及生产中镜像安装的效率,并能够极大地降低了人力和物力的成本,而且在网卡测试中PXE功能还能够提高网卡测试的覆盖度,提高产品质量。
在一些具体的实施例中,所述镜像灌装装置,具体还可以包括:
驱动复制模块,用于将所述目标网卡对应的所述网卡驱动复制到所述目标服务器上;
驱动安装模块,用于在所述目标服务器上安装所述网卡驱动。
在一些具体的实施例中,所述驱动复制模块,具体可以包括:
驱动复制单元,用于将所述目标网卡对应的所述网卡驱动复制到所述目标服务器上的第一目标目录中。
在一些具体的实施例中,所述驱动安装模块,具体可以包括:
驱动安装单元,用于将所述网卡驱动安装至所述目标服务器上的第二目标目录中。
在一些具体的实施例中,所述映像包构建模块12,具体可以包括:
替换单元,用于利用解压后的所述启动映像包中的modules.*对所述网卡驱动中的modules.*进行替换得到替换后文件;
基于所述替换后文件和所述新建目录下的解压后的所述启动映像包构建包含所述目标网卡对应的网卡驱动的目标启动映像包。
在一些具体的实施例中,所述利用解压后的所述启动映像包中的modules.*对所述网卡驱动中的modules.*进行替换得到替换后文件之前,具体还可以包括:
文件夹复制单元,用于将所述网卡驱动对应的驱动文件夹复制至第三目标目录;
固件版本复制单元,用于将所述目标网卡对应的目标固件版本复制到第四目标目录。
在一些具体的实施例中,所述镜像灌装装置,具体还可以包括:
启动项设置模块,用于将所述目标网卡设置为第一启动项;
重启模块,用于利用所述目标网卡重启所述目标服务器。
进一步的,本申请实施例还提供了一种电子设备。图6是根据一示例性实施例示出的电子设备20结构图,图中的内容不能认为是对本申请的使用范围的任何限制。
图6为本申请实施例提供的一种电子设备20的结构示意图。该电子设备20,具体可以包括:至少一个处理器21、至少一个存储器22、电源23、通信接口24、输入输出接口25和通信总线26。其中,所述存储器22用于存储计算机程序,所述计算机程序由所述处理器21加载并执行,以实现前述任一实施例公开的镜像灌装方法中的相关步骤。另外,本实施例中的电子设备20具体可以为电子计算机。
本实施例中,电源23用于为电子设备20上的各硬件设备提供工作电压;通信接口24能够为电子设备20创建与外界设备之间的数据传输通道,其所遵循的通信协议是能够适用于本申请技术方案的任意通信协议,在此不对其进行具体限定;输入输出接口25,用于获取外界输入数据或向外界输出数据,其具体的接口类型可以根据具体应用需要进行选取,在此不进行具体限定。
另外,存储器22作为资源存储的载体,可以是只读存储器、随机存储器、磁盘或者光盘等,其上所存储的资源可以包括操作系统221、计算机程序222等,存储方式可以是短暂存储或者永久存储。
其中,操作系统221用于管理与控制电子设备20上的各硬件设备以及计算机程序222,其可以是Windows Server、Netware、Unix、Linux等。计算机程序222除了包括能够用于完成前述任一实施例公开的由电子设备20执行的镜像灌装方法的计算机程序之外,还可以进一步包括能够用于完成其他特定工作的计算机程序。
进一步的,本申请实施例还公开了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器加载并执行时,实现前述任一实施例公开的镜像灌装方法步骤。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本发明所提供的一种镜像灌装方法、装置、设备及存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种镜像灌装方法,其特征在于,包括:
将启动映像包复制到新建目录中,并解压所述新建目录下的所述启动映像包;所述新建目录为在所述目标服务器上新建的目录,并且所述目标服务器为已配置目标网卡的服务器;
基于解压后的所述启动映像包构建包含所述目标网卡对应的网卡驱动的目标启动映像包;
复制所述目标启动映像包至预先搭建好的PXE服务器中;
通过所述PXE服务器利用目标镜像文件安装所述目标镜像文件对应的操作系统。
2.根据权利要求1所述的镜像灌装方法,其特征在于,所述将启动映像包复制到新建目录中之前,还包括:
将所述目标网卡对应的所述网卡驱动复制到所述目标服务器上,并在所述目标服务器上安装所述网卡驱动。
3.根据权利要求2所述的镜像灌装方法,其特征在于,所述将所述目标网卡对应的所述网卡驱动复制到所述目标服务器上,包括:
将所述目标网卡对应的所述网卡驱动复制到所述目标服务器上的第一目标目录中。
4.根据权利要求2所述的镜像灌装方法,其特征在于,所述在所述目标服务器上安装所述网卡驱动,包括:
将所述网卡驱动安装至所述目标服务器上的第二目标目录中。
5.根据权利要求1所述的镜像灌装方法,其特征在于,所述基于解压后的所述启动映像包构建包含所述目标网卡对应的网卡驱动的目标启动映像包,包括:
利用解压后的所述启动映像包中的modules.*对所述网卡驱动中的modules.*进行替换得到替换后文件;
基于所述替换后文件和所述新建目录下的解压后的所述启动映像包构建包含所述目标网卡对应的网卡驱动的目标启动映像包。
6.根据权利要求5所述的镜像灌装方法,其特征在于,所述利用解压后的所述启动映像包中的modules.*对所述网卡驱动中的modules.*进行替换得到替换后文件之前,还包括:
将所述网卡驱动对应的驱动文件夹复制至第三目标目录,并将所述目标网卡对应的目标固件版本复制到第四目标目录。
7.根据权利要求1至6任一项所述的镜像灌装方法,其特征在于,所述通过所述PXE服务器利用目标镜像文件安装所述目标镜像文件对应的操作系统之前,还包括:
将所述目标网卡设置为第一启动项;
利用所述目标网卡重启所述目标服务器。
8.一种镜像灌装装置,其特征在于,包括:
第一复制模块,用于将启动映像包复制到新建目录中,并解压所述新建目录下的所述启动映像包;所述新建目录为在所述目标服务器上新建的目录,并且所述目标服务器为已配置目标网卡的服务器;
映像包构建模块,用于基于解压后的所述启动映像包构建包含所述目标网卡对应的网卡驱动的目标启动映像包;
第二复制模块,用于复制所述目标启动映像包至预先搭建好的PXE服务器中;
镜像灌装模块,用于通过所述PXE服务器利用目标镜像文件安装所述目标镜像文件对应的操作系统。
9.一种电子设备,其特征在于,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序,以实现如权利要求1至7任一项所述的镜像灌装方法的步骤。
10.一种计算机可读存储介质,其特征在于,用于存储计算机程序;其中,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的镜像灌装方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210751003.3A CN115098118A (zh) | 2022-06-29 | 2022-06-29 | 一种镜像灌装方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210751003.3A CN115098118A (zh) | 2022-06-29 | 2022-06-29 | 一种镜像灌装方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115098118A true CN115098118A (zh) | 2022-09-23 |
Family
ID=83295688
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210751003.3A Pending CN115098118A (zh) | 2022-06-29 | 2022-06-29 | 一种镜像灌装方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115098118A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024103840A1 (zh) * | 2022-11-15 | 2024-05-23 | 济南浪潮数据技术有限公司 | 镜像文件制作方法、装置、设备及非易失性可读存储介质 |
-
2022
- 2022-06-29 CN CN202210751003.3A patent/CN115098118A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024103840A1 (zh) * | 2022-11-15 | 2024-05-23 | 济南浪潮数据技术有限公司 | 镜像文件制作方法、装置、设备及非易失性可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11567755B2 (en) | Integration of containers with external elements | |
US7530079B2 (en) | Managing application customization | |
RU2495481C2 (ru) | Размещение программного обеспечения в больших сетевых системах | |
US8185891B2 (en) | Methods and systems for provisioning software | |
EP1635257A2 (en) | System method and medium for configuring client computers to operate disconnected from a server computer while using a master instance of the operating system | |
US20030046682A1 (en) | System and method for the automatic installation and configuration of an operating system | |
US20040088397A1 (en) | System and method for management of software applications | |
US20100306337A1 (en) | Systems and methods for cloning target machines in a software provisioning environment | |
EP2430529A1 (en) | System and method for building and updating a runtime environment | |
CN115421740A (zh) | 云原生应用的部署方法和装置 | |
CN114024951A (zh) | 一种基于云边协同的电力边缘异构部署方法 | |
CN115098118A (zh) | 一种镜像灌装方法、装置、设备及存储介质 | |
CN114840226A (zh) | 基于sa进行微服务升级版本的管理系统及方法 | |
CN115344273B (zh) | 一种基于货架系统来运行应用软件的方法及系统 | |
GB2403303A (en) | Software patch registry | |
CN110795113B (zh) | 一种Redis集群服务的安装方法、服务器和介质 | |
CN114115920A (zh) | 操作系统部署方法、系统、设备及计算机可读存储介质 | |
Cisco | CiscoView 4.0(1) on AIX CD Installation Instructions | |
Cisco | CiscoView 4.0(1) on AIX CD Installation Instructions | |
Cisco | CiscoView CD Installation Instructions for AIX | |
Cisco | CiscoView CD Installation Instructions for AIX | |
Cisco | CiscoView CD Installation Instructions for AIX | |
Cisco | CiscoView CD Installation Instructions for AIX | |
Cisco | CiscoView 4.1 CD Installation Instructions for AIX | |
Cisco | CiscoView 4.1 CD Installation Instructions for AIX |
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 |