一种linux系统安装过程中大磁盘全量格式化方法与系统与流程

文档序号:11949591阅读:350来源:国知局
一种linux系统安装过程中大磁盘全量格式化方法与系统与流程

技术领域

本发明涉及linux操作系统安装领域,具体涉及一种linux系统安装过程中大磁盘全量格式化方法与系统。



背景技术:

Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

通常在安装Linux操作系统的时候,在分区方面的配置如下:

#ignoredisk --drives=sdc

part /boot --fstype ext4 --size=200 --ondisk=sdb

part / --fstype ext4 --size=15000 --ondisk=sdb

part swap --size=4096 --ondisk=sdb

part /opt --fstype ext4 --size=1 --grow --ondisk=sdb。上述配置的含义为Linux操作系统将剩余的容量分配给opt分区。

但是对于容量大于16TB的磁盘,由于ext4文件系统要兼容ext3文件系统的特性,同时受限于物理内存只有32bit的限制以及linux相关镜像文件initrd.img兼容性设计的缺陷,导致Linux操作系统安装过程中,并不能对16TB以上大磁盘在安装系统的过程中进行全量格式化,在linux系统安装管理程序(anacoda)运行阶段,对ext3格盘报错提示如图1所示,ext4格盘报错提示如图2所示。

面对这种情况,普遍的解决方案有两种:

1. 安装完系统,单独对大磁盘重新格式化;

2. 换成xfs或者其他的可以识别的文件系统。

然而,上述解决方案并不能在常规的Linux安装过程中自动实现大容量磁盘的全量格式化,而第二种解决方案更是不能应用于性能优良的ext文件系统。



技术实现要素:

为了解决上述技术问题,本发明提供了一种linux系统安装过程中大磁盘全量格式化方法以及应用于linux系统安装过程中大磁盘全量格式化的系统。本发明通过自定义安装配置文件,并在linux系统安装过程中加载能够进行大磁盘全量格式化的磁盘格式化文件,并且控制所述磁盘格式化文件自动运行的方式,实现在安装过程中的大容量磁盘的自动全量格式化,本发明能够在linux操作系统安装阶段就实现磁盘的格式化,磁盘格式化随着linux系统的安装完毕而完成,从而显著提升linux系统的安装的完成度和安装效率,避免了对linux系统中的文件系统的二次处理。

本发明是以如下技术方案实现的,一种linux系统安装过程中大磁盘全量格式化方法,包括:

计算机系统进行开机自检;

加载预启动执行环境;

在所述预启动执行环境下,获得linux系统内核;

设置安装配置文件,并根据所述安装配置文件进行linux系统安装;

所述安装配置文件中设置有磁盘格式化文件获取命令,所述磁盘格式化文件对大磁盘进行全量格式化。

优选的,所述大磁盘为容量大于16TB的磁盘。

优选的,所述在所述预启动执行环境下,获得linux系统内核包括:

在所述预启动执行环境下,联网获取可引导的、压缩的linux系统内核;

启动所述可引导的、压缩的linux系统内核;

在所述预启动执行环境下,联网获取预设的linux相关的镜像文件。

优选的,还包括:

根据所述镜像文件挂载与所述linux系统相关的模块;

获取root分区,挂载并执行/sbin/init。

优选的,所述在所述预启动执行环境下,获得linux系统内核包括:

在所述预启动执行环境下,联网获取linux系统内核;

启动所述linux系统内核;

由所述linux系统内核直接挂载linux系统相关的模块;

由所述linux系统内核直接挂载root分区。

优选的,所述安装配置文件中包括所述磁盘格式化文件的地址和访问所述地址的命令。

优选的,所述安装配置文件中还包括下载所述磁盘格式化文件的命令和自动运行磁盘格式化文件的命令。

一种用于在linux系统安装过程中进行大磁盘全量格式化的系统,包括:

自检模块,用于计算机系统进行开机自检;

执行环境加载模块,用于加载预启动执行环境;

内核获得模块,用于在所述预启动执行环境下,获得linux系统内核;

安装模块,用于设置安装配置文件,并根据所述安装配置文件进行linux系统安装;

所述安装配置文件中设置有磁盘格式化文件获取命令,所述磁盘格式化文件对大磁盘进行全量格式化。

优选的,所述大磁盘为容量大于16TB的磁盘。

优选的,所述内核获得模块包括:

内核获取子模块,用于在所述预启动执行环境下,联网获取可引导的、压缩的linux系统内核;

启动模块,用于启动所述可引导的、压缩的linux系统内核;

镜像文件获取模块,用于在所述预启动执行环境下,联网获取预设的linux相关的镜像文件。

优选的,还包括:

相关模块挂载模块,用于根据所述镜像文件挂载与所述linux系统相关的模块;

root相关操作模块,用于获取root分区,挂载并执行/sbin/init。

优选的,所述内核获得模块包括:

内核获取子模块,用于在所述预启动执行环境下,联网获取linux系统内核;

内核启动子模块,用于启动所述linux系统内核;

挂载模块,用于挂载linux系统相关的模块和root分区。

优选的,所述安装配置文件中包括所述磁盘格式化文件的地址和访问所述地址的命令。

优选的,所述安装配置文件中还包括下载所述磁盘格式化文件的命令和自动运行磁盘格式化文件的命令。

本发明的有益效果是:

本发明提供了一种linux系统安装过程中大磁盘全量格式化方法以及应用于linux系统安装过程中大磁盘全量格式化的系统。本发明通过自定义安装配置文件,并在linux系统安装过程中加载能够进行大磁盘全量格式化的磁盘格式化文件,并且控制所述磁盘格式化文件自动运行的方式,实现在安装过程中的大容量磁盘的自动全量格式化,从而克服现有技术中不能够对在linux操作系统安装过程中对于容量大于16TB的大磁盘进行全量格式化的技术问题。本发明能够在linux操作系统安装阶段就实现磁盘的格式化,磁盘格式化随着linux系统的安装完毕而完成,从而显著提升linux系统的安装的完成度和安装效率,避免了对linux系统中的文件系统的二次处理。

附图说明

图1是ext3文件系统格式化磁盘的盘报错提示示意图;

图2是ext4文件系统格式化磁盘的盘报错提示示意图;

图3是实施例1中提供的一种linux系统安装过程中大磁盘全量格式化方法;

图4是实施例2中提供的获得linux系统内核方法流程图;

图5是实施例2中提供的获得linux系统内核方法流程图;

图6是实施例3中提供的一种用于在linux系统安装过程中进行大磁盘全量格式化的系统的示意图;

图7是实施例4中提供的另一种用于在linux系统安装过程中进行大磁盘全量格式化的系统的示意图。

具体实施方法

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

需要说明的是,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

实施例1:

一种linux系统安装过程中大磁盘全量格式化方法,所述大磁盘为容量大于16TB的磁盘,如图3所示,包括:

S101. 计算机系统进行开机自检。

开机自检也称上电自检,指计算机系统接通电源,(BIOS程序)的行为,包括对CPU、系统主板、基本内存、扩展内存、系统ROM BIOS等器件的测试。如发现错误,给操作者提示或警告。简化或加快该过程,可使系统能够快速启动。

完整的开机自检包括对CPU、系统主板、基本的640KB内存、1MB以上的扩展内存、系统ROM BIOS的测试;CMOS中系统配置的校验;初始化视频控制器,测试视频内存、检验视频信号和同步信号,对VGA接口进行测试;对键盘、软驱、硬盘及CDROM子系统作检查;对并行口(打印机)和串行口(RS232)进行检查。开机自检中如发现有错误,将按两种情况处理:对于严重故障(致命性故障)则停机,此时由于各种初始化操作还没完成,不能给出任何提示或信号;对于非严重故障则给出提示或声音报警信号,等待用户处理。

当开机自检完成后,系统进行下一步骤:从硬盘、光盘或网络服务器上寻找操作系统进行启动,电脑的控制权将由操作系统完成。

S102. 加载预启动执行环境。

预启动执行环境PXE(preboot execute environment)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持工作站通过网络从远端服务器下载映像,并由此支持通过网络启动操作系统,在启动过程中,终端要求服务器分配IP地址,再用TFTP(trivial file transfer protocol)或MTFTP(multicast trivial file transfer protocol)协议下载一个启动软件包到本机内存中执行,由这个启动软件包完成终端基本软件设置,从而引导预先安装在服务器中的终端操作系统。PXE可以引导多种操作系统,如:Windows95/98/2000/windows2003/windows2008/winXP/win7/win8,linux等。

S103. 在所述预启动执行环境下,获得linux系统内核。

具体地,S103如图4所示,包括:

S1031. 在所述预启动执行环境下,联网获取可引导的、压缩的linux系统内核。

可引导的、压缩的linux系统内核vmlinuz(Virtual Memory Linuz)的建立有两种方式。

一是编译内核时通过“make zImage”创建,然后通过:

“cp /usr/src/linux-2.4/arch/i386/linux/boot/zImage /boot/vmlinuz”产生。zImage适用于小内核的情况,它的存在是为了向后的兼容性。

二是内核编译时通过命令make bzImage创建,然后通过:“cp /usr/src/linux-2.4/arch/i386/linux/boot/bzImage /boot/vmlinuz”产生。bzImage是压缩的内核映像,需要注意,bzImage不是用bzip2压缩的,bzImage中的bz容易引起误解,bz表示“big zImage”。 bzImage中的b是“big”意思。

zImage(vmlinuz)和bzImage(vmlinuz)都是用gzip压缩的。它们不仅是一个压缩文件,而且在这两个文件的开头部分内嵌有gzip解压缩代码。所以不能用gunzip 或 gzip–dc解包vmlinuz。

内核文件中包含一个微型的gzip用于解压缩内核并引导它。两者的不同之处在于,老的zImage解压缩内核到低端内存(第一个640K), bzImage解压缩内核到高端内存(1M以上)。如果内核比较小,那么可以采用zImage 或bzImage之一,两种方式引导的系统运行时是相同的。大的内核采用bzImage,不能采用zImage。

S1032. 启动所述可引导的、压缩的linux系统内核。

S1033. 在所述预启动执行环境下,联网获取预设的linux相关的镜像文件。

linux相关的镜像文件initrd.img是一个小的映象,包含一个最小的linux系统。在启动可引导的、压缩的linux系统内核的前提下,由可引导的、压缩的linux系统内核挂载initrd.img。

通常情况下系统内核vmlinuz被加载到内存后开始提供底层支持,在内核的支持下各种模块,服务等被加载运行。为了提升linux的自适应能力,可以根据需要改变标准的linux内核,然而如果每次都需要编译内核太麻烦,所以本实施例提供了initrd.img。initrd.img文件就是个ram disk的映像文件。ramdisk是用一部分内存模拟成磁盘,让操作系统访问。ram disk是标准内核文件认识的设备(/dev/ram0)文件系统也是标准内核认识的文件系统。内核加载这个ram disk作为根文件系统并开始执行其中的"某个文件"(2.6内核是 init文件)来加载各种模块,服务等。经过一些配置和运行后,就可以去物理磁盘加载真正的root分区了,然后又是一些配置等,最后启动成功。也就是只需要定制适合自己的 initrd.img 文件就可以避免重编内核,并且达到用户的定制化需求。

S104. 设置安装配置文件,并根据所述安装配置文件进行linux系统安装;所述安装配置文件中设置有磁盘格式化文件获取命令,所述磁盘格式化文件对大磁盘进行全量格式化。

具体地,所述安装配置文件中包括所述磁盘格式化文件的地址、访问所述地址的命令、下载所述磁盘格式化文件的命令和自动运行磁盘格式化文件的命令。所述磁盘格式化文件为mkfs.ext4。

此外,本实施例提供的方法还包括:

根据所述镜像文件挂载与所述linux系统相关的模块。

取root分区,挂载并执行/sbin/init。

本实施例提供了一种linux系统安装过程中大磁盘全量格式化方法。过自定义安装配置文件,并在linux系统安装过程中加载能够进行大磁盘全量格式化的磁盘格式化文件,并且控制所述磁盘格式化文件自动运行的方式,实现在安装过程中的大容量磁盘的自动全量格式化,从而克服现有技术中不能够对在linux操作系统安装过程中对于容量大于16TB的大磁盘进行全量格式化的技术问题。本实施例能够在linux操作系统安装阶段就实现磁盘的格式化,磁盘格式化随着linux系统的安装完毕而完成,从而显著提升linux系统的安装的完成度和安装效率,避免了对linux系统中的文件系统的二次处理。

实施例2:

一种linux系统安装过程中大磁盘全量格式化方法,所述大磁盘为容量大于16TB的磁盘,包括:

S201. 计算机系统进行开机自检。

S202. 加载预启动执行环境。

S203. 在所述预启动执行环境下,获得linux系统内核。

具体地,S203如图5所示,包括:

S2031. 在所述预启动执行环境下,联网获取linux系统内核。

S2032. 启动所述linux系统内核。

S2033. 由所述linux系统内核直接挂载linux系统相关的模块和root分区。

S204. 设置安装配置文件,并根据所述安装配置文件进行linux系统安装;所述安装配置文件中设置有磁盘格式化文件获取命令,所述磁盘格式化文件对大磁盘进行全量格式化。

具体地,所述安装配置文件中包括所述磁盘格式化文件的地址、访问所述地址的命令、下载所述磁盘格式化文件的命令和自动运行磁盘格式化文件的命令。所述磁盘格式化文件为mkfs.ext4。

本实施例提供了另一种linux系统安装过程中大磁盘全量格式化方法。过自定义安装配置文件,并在linux系统安装过程中加载能够进行大磁盘全量格式化的磁盘格式化文件,并且控制所述磁盘格式化文件自动运行的方式,实现在安装过程中的大容量磁盘的自动全量格式化,从而克服现有技术中不能够对在linux操作系统安装过程中对于容量大于16TB的大磁盘进行全量格式化的技术问题。本实施例能够在linux操作系统安装阶段就实现磁盘的格式化,磁盘格式化随着linux系统的安装完毕而完成,从而显著提升linux系统的安装的完成度和安装效率,从而避免了对linux系统中的文件系统的二次处理。

实施例3:

一种用于在linux系统安装过程中进行大磁盘全量格式化的系统,所述大磁盘为容量大于16TB的磁盘,如图6所示,包括:

自检模块301,用于计算机系统进行开机自检。

执行环境加载模块302,用于加载预启动执行环境。

内核获得模块303,用于在所述预启动执行环境下,获得linux系统内核。

所述内核获得模块303,包括:

内核获取子模块3031,用于在所述预启动执行环境下,联网获取可引导的、压缩的linux系统内核;

启动模块3032,用于启动所述可引导的、压缩的linux系统内核;

镜像文件获取模块3033,用于在所述预启动执行环境下,联网获取预设的linux相关的镜像文件。

安装模块304,用于设置安装配置文件,并根据所述安装配置文件进行linux系统安装。所述安装配置文件中设置有磁盘格式化文件获取命令,所述磁盘格式化文件对大磁盘进行全量格式化。

所述安装配置文件中包括所述磁盘格式化文件的地址、访问所述地址的命令、下载所述磁盘格式化文件的命令和自动运行磁盘格式化文件的命令。

相关模块挂载模块305,用于根据所述镜像文件挂载与所述linux系统相关的模块;

root相关操作模块306,用于获取root分区,挂载并执行/sbin/init。

实施例4:

一种用于在linux系统安装过程中进行大磁盘全量格式化的系统,所述大磁盘为容量大于16TB的磁盘,如图7所示,包括:

自检模块401,用于计算机系统进行开机自检。

执行环境加载模块402,用于加载预启动执行环境。

内核获得模块403,用于在所述预启动执行环境下,获得linux系统内核。

所述内核获得模块403,包括:

内核获取子模块4031,用于在所述预启动执行环境下,联网获取linux系统内核;

内核启动子模块4032,用于启动所述linux系统内核;

挂载模块4033,用于挂载linux系统相关的模块和root分区。

安装模块404,用于设置安装配置文件,并根据所述安装配置文件进行linux系统安装。所述安装配置文件中设置有磁盘格式化文件获取命令,所述磁盘格式化文件对大磁盘进行全量格式化。

所述安装配置文件中包括所述磁盘格式化文件的地址、访问所述地址的命令、下载所述磁盘格式化文件的命令和自动运行磁盘格式化文件的命令。

实施例3和实施例4提供了应用于linux系统安装过程中大磁盘全量格式化的系统。通过自定义安装配置文件,并在linux系统安装过程中加载能够进行大磁盘全量格式化的磁盘格式化文件,并且控制所述磁盘格式化文件自动运行的方式,实现在安装过程中的大容量磁盘的自动全量格式化,从而克服现有技术中不能够对在linux操作系统安装过程中对于容量大于16TB的大磁盘进行全量格式化的技术问题。能够在linux操作系统安装阶段就实现磁盘的格式化,磁盘格式化随着linux系统的安装完毕而完成,从而显著提升linux系统的安装的完成度和安装效率,从而避免了对linux系统中的文件系统的二次处理。

本发明中的技术方案中的各个模块均可通过计算机终端或其它设备实现。所述计算机终端包括处理器和存储器。所述存储器用于存储本发明中的程序指令/模块,所述处理器通过运行存储在存储器内的程序指令/模块,实现本发明相应功能。

本发明中的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。

本发明中所述模块/单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。可以根据实际的需要选择其中的部分或者全部模块/单元来达到实现本发明方案的目的。

另外,在本发明各个实施例中的各模块/单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

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