一种Linux系统镜像的构建方法和系统、Linux系统镜像与流程

文档序号:17396765发布日期:2019-04-13 00:52阅读:470来源:国知局
一种Linux系统镜像的构建方法和系统、Linux系统镜像与流程

本发明涉及计算机技术领域,具体涉及一种linux系统镜像的构建方法和系统、linux系统镜像。



背景技术:

linux系统以其开源性和自由性得到广泛的应用,可以通过对linux系统内核和系统进行裁剪,构建全新的linux系统,使其更适合工作需求。

但是传统的linux系统构建时,需要在linux系统中挂载硬盘进行构建,linux系统直接安装在硬盘中,无法进行linux系统镜像的存档。为此,当需要在其他计算机上使用该自定义的linux系统时通常需要再次进行linux系统构建,极为不便。

为解决上述问题,本发明提出一种linux系统镜像的构建方法和系统、linux系统镜像。



技术实现要素:

本发明的目的在于,提出一种linux系统镜像的构建方法和系统、linux系统镜像,以解决上述技术问题。

第一方面,本发明提出一种linux系统镜像的构建方法,包括:

构建linux系统镜像的启动部分,存储根文件系统至启动部分的指定目录下;

构建linux系统镜像的系统运行组件部分,存储系统运行组件至系统运行组件部分的指定目录下;

打包linux系统镜像的启动部分与系统运行组件部分,生成系统镜像文件。

在上述方案中,所述系统运行组件部分包括boot目录、rootfs目录。

在上述方案中,系统运行组件包括自定义linux系统、系统内核、适配层驱动文件;所述系统内核、适配层驱动文件存储在boot目录下;所述自定义linux系统存储在rootfs目录下。

在上述方案中,启动部分包括grub目录、isolinux目录;所述isolinux目录下存储有根文件系统。

在上述方案中,所述根文件系统内包括可执行脚本,所述脚本执行时可实现:

将挂载硬盘分为第一区与第二区;

挂载boot目录至第一区,挂载rootfs目录至第二区;

分别读取第一区、第二区的uuid值;

更改boot目录下启动配置文件中第一区、第二区的uuid值为读取到的第一区、第二区的uuid值;

更改rootfs目录下自动挂载文件中第一区、第二区的uuid值为读取到的第一区、第二区的uuid值;

在第一区内执行系统启动。

在上述方案中,所述脚本执行时还可实现:

将挂载硬盘分为第一区与第二区之后,分别格式化第一区、第二区。

第二方面,本发明提出一种linux系统镜像的构建系统,包括:

启动部分构建模块,用于构建linux系统镜像的启动部分,存储根文件系统至启动部分的指定目录下;

系统运行组件部分构建模块,用于构建linux系统镜像的系统运行组件部分,存储系统运行组件至系统运行组件部分的指定目录下;

镜像文件生成模块,用于打包linux系统镜像的启动部分与系统运行组件部分,生成系统镜像文件。

第三方面,本发明提出一种linux系统镜像,包括启动部分、系统运行组件部分;

所述启动部分包括grub目录、isolinux目录,所述isolinux目录下存储有根文件系统;

所述系统运行组件部分包括boot目录、rootfs目录,所述boot目录下存储有系统内核、适配层驱动文件,所述rootfs目录下存储有自定义linux系统。

在上述方案中,所述根文件系统内包括可执行脚本,所述脚本执行时可实现:

将挂载硬盘分为第一区与第二区;

挂载boot目录至第一区,挂载rootfs目录至第二区;

分别读取第一区、第二区的uuid值;

更改boot目录下启动配置文件中第一区、第二区的uuid值为读取到的第一区、第二区的uuid值;

更改rootfs目录下自动挂载文件中第一区、第二区的uuid值为读取到的第一区、第二区的uuid值;

在第一区内执行系统启动。

在上述方案中,所述脚本执行时还可实现:

将挂载硬盘分为第一区与第二区之后,分别格式化第一区、第二区。

上述第一方面提出的一种linux系统镜像的构建方法,通过分别构建linux系统镜像的启动部分及系统组件部分,再将上述启动部分及系统组件部分打包生成镜像文件,实现了linux系统镜像脱离硬盘存在,能够更适用于linux系统镜像的安装与应用。本发明提出的linux系统镜像的构建方法过程简单,适用范围广泛,具有良好的技术价值及广阔的应用前景。

上述第二方面提出的一种linux系统镜像的构建系统所获得的技术效果与第一方面中对应的技术手段获得的技术效果近似,在这里不再赘述。

上述第三方面提出的一种linux系统镜像包括启动部分及系统组件部分,可通过执行启动部分存储的根文件系统,实现系统运行组件部分的分区及挂载,进而实现linux系统的安装。此外,本发明提出的linux系统镜像,可通过更改系统运行组件部分中rootfs目录下的内容,对linux内核和系统内容进行变更,使得自定义的linux系统更符合工作需求,该镜像不依附于硬盘存在,应用十分便捷。

附图说明

为了更清楚的说明本发明实施例,下面将实施例中所需要使用的附图做简单的介绍,显而易见的,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的一种linux系统镜像的构建方法流程图。

图2为本发明实施例提供的一种linux系统镜像的构建系统结构示意图。

图3为本发明实施例提供的一种linux系统镜像的结构示意图。

具体实施方式

下面结合本发明实施例中的附图,对发明实施例中的技术方案进行清楚完整的描述,显然,所描述的实施例仅仅为本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本发明保护范围。

为了使本技术领域的人员更好的理解本发明方案,下面结合附图和具体实施方式对本发明做进一步的详细说明。

如图1所示的,在一个实施例中,公开一种linux系统镜像的构建方法,包括:

ss1、构建linux系统镜像的启动部分,存储根文件系统至启动部分的指定目录下;

ss2、构建linux系统镜像的系统运行组件部分,存储系统运行组件至系统运行组件部分的指定目录下;

ss3、打包linux系统镜像的启动部分与系统运行组件部分,生成系统镜像文件。

在一个实施例中,上述系统运行组件部分包括boot目录、rootfs目录;上述系统运行组件包括自定义linux系统、系统内核、适配层驱动文件;其中,系统内核、适配层驱动文件存储在boot目录下,自定义linux系统存储在rootfs目录下,上述自定义linux系统通过busybox构建最小系统,在最小系统的基础上增加需要的驱动以及应用程序,使其具备linux的常用功能以及所需要的特殊功能。

进一步的,上述启动部分包括grub目录、isolinux目录,上述isolinux目录下存储有根文件系统。

具体的,上述根文件系统为initrd文件,initrd文件中存储有可执行脚本,上述脚本执行时可实现:

将挂载硬盘分为第一区与第二区;

格式化第一区、第二区;

挂载boot目录至第一区,挂载rootfs目录至第二区;

分别读取第一区、第二区的uuid值;

更改boot目录下启动配置文件中第一区、第二区的uuid值为读取到的第一区、第二区的uuid值,更改rootfs目录下自动挂载文件中第一区、第二区的uuid值为读取到的第一区、第二区的uuid值;

在第一区内执行系统启动。

对上述技术方案,需要说明的是,本发明提出的linux系统镜像的构建方法通过分别构建linux系统镜像的启动部分及系统组件部分,再将上述启动部分及系统组件部分打包生成镜像文件,实现了linux系统镜像脱离硬盘存在,能够更适用于linux系统镜像的安装与应用。

如图2所示的,在一个实施例中,公开一种linux系统镜像的构建系统,包括:

启动部分构建模块,用于构建linux系统镜像的启动部分,存储根文件系统至启动部分的指定目录下;

系统运行组件部分构建模块,用于构建linux系统镜像的系统运行组件部分,存储系统运行组件至系统运行组件部分的指定目录下;

镜像文件生成模块,用于打包linux系统镜像的启动部分与系统运行组件部分,生成系统镜像文件。

在一个实施例中,上述系统运行组件部分包括boot目录、rootfs目录;上述系统运行组件包括自定义linux系统、系统内核、适配层驱动文件;其中,系统内核、适配层驱动文件存储在boot目录下,自定义linux系统存储在rootfs目录下,上述自定义linux系统通过busybox构建最小系统,在最小系统的基础上增加需要的驱动以及应用程序,使其具备linux的常用功能以及所需要的特殊功能。

进一步的,上述启动部分包括grub目录、isolinux目录,上述isolinux目录下存储有根文件系统。

具体的,上述根文件系统为initrd文件,initrd文件中存储有可执行脚本,上述脚本执行时可实现:

将挂载硬盘分为第一区与第二区;

格式化第一区、第二区;

挂载boot目录至第一区,挂载rootfs目录至第二区;

分别读取第一区、第二区的uuid值;

更改boot目录下启动配置文件中第一区、第二区的uuid值为读取到的第一区、第二区的uuid值,更改rootfs目录下自动挂载文件中第一区、第二区的uuid值为读取到的第一区、第二区的uuid值;

在第一区内执行系统启动。

对上述技术方案,需要说明的是,本发明提出的linux系统镜像的构建系统,通过启动部分构建模块、系统运行组件部分构建模块、镜像文件生成模块的配合使用,实现了分别构建linux系统镜像的启动部分及系统组件部分,再将上述启动部分及系统组件部分打包生成镜像文件,进而使得linux系统镜像脱离硬盘存在,能够更适用于linux系统镜像的安装与应用。

如图3所示的,在一个实施例中,公开一种linux系统镜像,包括启动部分、系统运行组件部分;

上述所述启动部分包括grub目录、isolinux目录,isolinux目录下存储有根文件系统;

上述系统运行组件部分包括boot目录、rootfs目录,boot目录下存储有系统内核、适配层驱动文件,rootfs目录下存储有自定义linux系统。

具体的,上述根文件系统内包括可执行脚本,上述脚本执行时可实现:

将挂载硬盘分为第一区与第二区;

格式化第一区、第二区;

挂载boot目录至第一区,挂载rootfs目录至第二区;

分别读取第一区、第二区的uuid值;

更改boot目录下启动配置文件中第一区、第二区的uuid值为读取到的第一区、第二区的uuid值,更改rootfs目录下自动挂载文件中第一区、第二区的uuid值为读取到的第一区、第二区的uuid值;

在第一区内执行系统启动。

对上述技术方案,需要说明的是,本发明提出的linux系统镜像通过执行启动部分存储的根文件系统,实现了系统运行组件部分的分区及挂载,最终实现linux系统的安装。

此外,本发明提出的linux系统镜像,可通过更改系统运行组件部分中rootfs目录下的内容,对linux内核和系统内容进行变更,使得自定义的linux系统更符合工作需求,该镜像不依附于硬盘存在,应用十分便捷。

上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1