CN117008837A - 一种磁盘的分区挂载方法、装置、设备及存储介质 - Google Patents
一种磁盘的分区挂载方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN117008837A CN117008837A CN202310970454.0A CN202310970454A CN117008837A CN 117008837 A CN117008837 A CN 117008837A CN 202310970454 A CN202310970454 A CN 202310970454A CN 117008837 A CN117008837 A CN 117008837A
- Authority
- CN
- China
- Prior art keywords
- partition
- mounting
- disk
- target
- file
- 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
- 238000005192 partition Methods 0.000 title claims abstract description 404
- 238000000034 method Methods 0.000 title claims abstract description 57
- 238000012795 verification Methods 0.000 claims abstract description 28
- 238000004590 computer program Methods 0.000 claims description 16
- 238000004891 communication Methods 0.000 description 8
- 238000012545 processing Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 101100309447 Caenorhabditis elegans sad-1 gene Proteins 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning 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
- 239000007787 solid Substances 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0644—Management of space entities, e.g. partitions, extents, pools
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0674—Disk device
- G06F3/0676—Magnetic disk device
-
- 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)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种磁盘的分区挂载方法、装置、设备及存储介质。该方法包括:通过鸿蒙操作系统中磁盘挂载程序执行对目标硬件设备中的磁盘系统的磁盘挂载操作;其中,磁盘系统中包括至少一个分区;如果成功挂载磁盘系统,则在磁盘系统的各分区内分别查找是否预先写入有分区标识文件,并根据查找结果对符合挂载要求的各目标分区进行分区挂载;如果未成功挂载磁盘系统,则将磁盘系统的各分区依次挂载至临时目录下,并将临时目录内符合挂载要求的各目标分区进行分区挂载。通过本发明的技术方案,能够实现磁盘分区的识别、校验与挂载,简化了磁盘挂载的操作步骤,提高了磁盘分区挂载的正确性与挂载效率。
Description
技术领域
本发明涉及磁盘挂载领域,尤其涉及一种磁盘的分区挂载方法、装置、设备及存储介质。
背景技术
OpenHarmony(开源鸿蒙)是由开放原子开源基金会孵化及运营的开源项目,目标是面向全场景、全连接、全智能时代、基于开源的方式,搭建一个智能终端设备操作系统的框架和平台,促进万物互联产业的繁荣发展。
目前,OpenHarmony系统已经可以在基于x86平台的计算机设备上正常运行,但每次安装都需要根据x86系统使用硬盘的类型及其分区的大小,手动的修改挂载分区表,并进行镜像的编译才能在特定的x86机器上正常的运行,导致硬盘的挂载过程过于繁琐复杂,且手动修改挂载分区表的方法存在磁盘分区在挂载时容易错误挂载其他文件系统的问题,分区挂载的正确性较低。
发明内容
本发明提供了一种磁盘的分区挂载方法、装置、设备及存储介质,可以解决现有技术中磁盘分区挂载的过程繁琐复杂,磁盘分区挂载的正确性与挂载效率均较低的问题。
第一方面,本发明实施例提供了一种磁盘的分区挂载方法,该方法包括:
通过鸿蒙操作系统中磁盘挂载程序执行对目标硬件设备中的磁盘系统的磁盘挂载操作;其中,磁盘系统中包括至少一个分区;
如果成功挂载磁盘系统,则在磁盘系统的各分区内分别查找是否预先写入有分区标识文件,并根据查找结果对符合挂载要求的各目标分区进行分区挂载;
如果未成功挂载磁盘系统,则将磁盘系统的各分区依次挂载至临时目录下,并将临时目录内符合挂载要求的各目标分区进行分区挂载。
第二方面,本发明实施例提供了一种磁盘的分区挂载装置,该装置包括:
磁盘挂载模块,用于通过鸿蒙操作系统中磁盘挂载程序执行对目标硬件设备中的磁盘系统的磁盘挂载操作;其中,磁盘系统中包括至少一个分区;
分区标识查找模块,用于如果成功挂载磁盘系统,则在磁盘系统的各分区内分别查找是否预先写入有分区标识文件,并根据查找结果对符合挂载要求的各目标分区进行分区挂载;
临时挂载模块,用于如果未成功挂载磁盘系统,则将磁盘系统的各分区依次挂载至临时目录下,并将临时目录内符合挂载要求的各目标分区进行分区挂载。
第三方面,本发明实施例提供了一种电子设备,所述电子设备包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明任一实施例所述的磁盘的分区挂载方法。
第四方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现本发明任一实施例所述的磁盘的分区挂载方法。
本发明实施例的技术方案,通过鸿蒙操作系统中磁盘挂载程序执行对目标硬件设备中的磁盘系统的磁盘挂载操作,如果成功挂载磁盘系统,则在磁盘系统的各分区内分别查找是否预先写入有分区标识文件,并根据查找结果对符合挂载要求的各目标分区进行分区挂载,如果未成功挂载磁盘系统,则将磁盘系统的各分区依次挂载至临时目录下,并将临时目录内符合挂载要求的各目标分区进行分区挂载,解决了现有技术中磁盘分区挂载的过程繁琐复杂,磁盘分区挂载的正确性与挂载效率均较低的问题,实现了磁盘分区的识别、校验与挂载,简化了磁盘挂载的操作步骤,提高了磁盘分区挂载的正确性与挂载效率。
应当理解,本部分所描述的内容并非旨在标识本发明的实施例的关键或重要特征,也不用于限制本发明的范围。本发明的其它特征将通过以下的说明书而变得容易理解。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明实施例一提供的一种磁盘的分区挂载方法的流程图;
图2是根据本发明实施例二提供的一种磁盘的分区挂载方法的流程图;
图3是根据本发明实施例三提供的一种磁盘的分区挂载装置的结构示意图;
图4是实现本发明实施例的磁盘的分区挂载方法的电子设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
为了便于理解本发明的各实施例,首先将现有技术中的磁盘的分区挂载方法进行简单介绍。
OpenHarmony系统最初是针对嵌入式移动设备开发,目前已经完成针对x86平台的移植工作,但其启动磁盘识别和启动引导过程都是针对移动嵌入式设备设计,所有配置都是通过配置文件在代码编译时就已经配置完成,不能针对不同类型的磁盘设备进行动态的识别和配置。而市面上x86的笔记本和台式机的类型比较多,它们使用的磁盘类型各不相同,大致分为nvme、普通的SSD/机械磁盘以及DOM电子磁盘三种,并且用户电脑可能多系统共存,比如磁盘上可能同时存在MicrosoftWindows操作系统,此时设备的节点的名字和分区就存在各种不同。普通的SSD/机械磁盘节点名字一般为sdX,固态的nvme节点名字一般为nvmeXnXpX,DOM电子磁盘节点名字一般为mmcblkXpX,因此针对不同类型的磁盘需要先修改OpenHarmony操作系统的磁盘分区文件,然后进行镜像的编译,最后进行镜像的烧写,这样OpenHarmony系统才能在x86上正常的运行。此过程繁琐且复杂,而且只能适应一种特定的设备,为此需要使用一种自适应的挂载磁盘分区的方式去简化这些繁琐的操作。
OpenHarmony在x86平台上使用的是基于ramdisk的二级引导方式。具体的,所述二级引导的流程为:首先启动磁盘挂载的程序,之后在内存文件系统中执行ramdisk中相应的挂载程序,之后通过磁盘的内核参数或者fstab.required挂载指定磁盘文件系统,之后由内存文件系统切换至磁盘文件的根目录系统,最后在根目录系统下使用.<hardware>程序挂载全部的磁盘文件。
其中,挂载必须的磁盘文件系统这一步骤在ramdisk中是通过读取fstab.required配置文件,根据该配置文件的内容来确定挂载磁盘文件系统的分区和相关挂载参数。
Openharmony系统有三个分区,分别是system、vendor和data分区,对应的分别烧录了system.img、vendor.img和userdata.img三个镜像文件。ramdisk中的fstab.required配置文件通过required参数来确定是否要挂载该磁盘分区的文件系统,如果设置了该参数,则需要主动创建该设备节点,并执行挂载操作。system分区存储根文件系统,所有系统的可执行程序、配置文件和动态库都存储在该分区,在ramdisk系统启动阶段会被挂载到的/usr目录。vendor分区存储厂商相关的配置和程序,在ramdisk系统启动阶段会被挂载到的/data目录。data分区存储用户数据,在ramdisk启动阶段并不会挂载该分区,该分区在切换到磁盘系统后会被挂载。
ramdisk通过fstab.required挂载磁盘文件系统并切换到磁盘文件系统只是实现了系统启动的第一步,切换到磁盘文件系统启动后,还会执行一个存储在vendor分区的fstab.<hardware>文件,执行第二次文件系统挂载,此时会挂载其余的非required分区,如data分区。
OpenHarmony项目针对磁盘分区挂载必须在编译前确定的问题,提出了一种可以通过传递内核启动参数的方法进行外部配置的方法,具体就是通过给内核传递ohos.required_mount.xxx参数,如果发现
ohos.required_mount.xxx参数,则使用该参数挂载磁盘,否则使用ramdisk内置的fstab.required文件配置挂载分区。但是这种方式有两个缺陷,1.只能针对ramdisk使用,从ramdisk系统切换到磁盘系统后仍然需要磁盘系统上的配置文件fstab.<hardware>挂载其它磁盘文件系统;2.如果内核启动参数并未传递该配置,则ramdisk中的fstab.required文件配置可能并未适配当前平台,配置错误导致系统启动失败,从而导致磁盘的挂载工作出现错误。
实施例一
图1为本发明实施例一提供的一种磁盘的分区挂载方法的流程图,本实施例可适用于通过鸿蒙操作系统中磁盘挂载程序进行磁盘的分区挂载的情况,该方法可以由磁盘的分区挂载装置来执行,该磁盘的分区挂载装置可以采用硬件和/或软件的形式实现,该磁盘的分区挂载装置可配置于配置有鸿蒙操作系统的具有磁盘分区挂载功能的终端或服务器中。
如图1所示,该方法包括:
S110、通过鸿蒙操作系统中磁盘挂载程序执行对目标硬件设备中的磁盘系统的磁盘挂载操作。
如果成功挂载磁盘系统,执行S120;
如果未成功挂载磁盘系统,执行S130。
其中,所述鸿蒙系统是一款可以面向全场景的创造一个超级虚拟终端互联的世界,将人、设备、场景有机地联系在一起,将消费者在全场景生活中接触的多种智能终端,实现极速发现、极速连接、硬件互助、资源共享,用合适的设备提供场景体验。
进一步的,所述磁盘挂载程序可以使一个磁盘上的计算机文件和目录可供用户通过搭载可鸿蒙操作系统的计算机的文件系统访问;其中,所述目标硬件设备包括:磁盘等利用磁记录技术存储数据的存储器。
在本实施例中,所述磁盘挂载程序可以为适用于鸿蒙操作系统的ramdisk程序;进一步的,所述ramdisk程序是通过软件将一部分内存模拟为硬盘来使用的一种技术,相对于直接的硬盘文件访问来说,这种技术可以极大的提高在其上进行的文件访问的速度;进一步的,使用所述ramdisk程序对目标硬件设备中的磁盘系统的磁盘挂载操作时,可以通过ramdisk程序的实时反馈显示获得挂载磁盘系统的结果,即所述磁盘系统是否挂载成功。
S120、在磁盘系统的各分区内分别查找是否预先写入有分区标识文件,并根据查找结果对符合挂载要求的各目标分区进行分区挂载。
在本实施例中,所述鸿蒙操作系统有三个分区,分别是system、vendor和data分区,对应的分别烧录了system.img、vendor.img和userdata.img三个镜像文件,且三个镜像文件存储在相应的分区中;进一步的,所述分区标识文件可以写入至各分区对应的镜像文件中。
具体的,所述分区标识文件可以是一个固定名称的文件,文件名称为“.”加镜像文件名,且不包括.img后缀,同时文件内容为isoftstone_和镜像名称组成字符串的MD5校验值。文件存储在分区根目录下,文件属性为只读。示例性的,所述分区标识文件表如表1所示:
表1:分区标识文件表
进一步的,所述分区标识文件名称和内容属于固定内容,可提前预生成,与系统配置文件存放在vendor/isoftstone目录内,在系统编译时通过编译系统直接拷贝到镜像文件内,避免了重复编译造成的资源和人力的浪费。
S130、将磁盘系统的各分区依次挂载至临时目录下,并将临时目录内符合挂载要求的各目标分区进行分区挂载。
其中,所述临时目录可以用于:临时挂载当前目标硬件设备的全部分区,使当前目标硬件设备的全部分区具有可读写的能力。
具体的,在本实施例中,将磁盘系统的各分区依次挂载至临时目录下,并将临时目录内符合挂载要求的各目标分区进行分区挂载,包括:依据各分区依次挂载至临时目录的挂载顺序对各分区进行提取;验证当前被提取的分区内是否存在分区标识文件;若存在,则对当前分区的分区标识文件进行校验,并根据校验结果对符合要求的分区进行挂载操作;若不存在,则对当前分区进行卸载操作;返回执行依据各分区依次挂载至临时目录的挂载顺序对各分区进行提取的操作,直至所述临时目录中的全部分区均被遍历。
示例性的,若当前目标硬件设备存在三个分区,分别为sda1、sda2与sda3,则当前三个分区按照顺序被挂载在临时目录中后,依照sda1、sda2、sda3的顺序分别查找各个分区内是否含有表1中所包含的分区标识文件名称为名称的文件中的任一一个,若含有,则说明当前分区内的文件适配于鸿蒙操作系统,则对当前分区进行挂载;相反的,则对当前分区进行卸载;进一步的,所述卸载指从硬盘删除程序文件和文件夹以及从注册表删除相关数据的操作,释放原来占用的磁盘空间并使其软件不再存在于系统中或是从硬盘删除对应的设备驱动程序并删除跟设备驱动有关的注册表信息,然后再从计算机物理设备移除设备。
其中,对当前分区的分区标识文件进行校验,并根据校验结果对符合要求的分区进行挂载操作,包括:对当前分区的分区标识文件进行校验,并获取校验结果;若通过校验,则将当前分区标记为目标分区,并对当前目标分区进行挂载操作;若未通过校验,则对当前分区进行卸载操作。
示例性的,在上述实施例的基础上,若分区sad1中存在文件名为.system的分区标识文件,则对当前分区标识文件的内容进行校验,若所述分区标识文件的内容为md5(isoftstone_system),与表1中的内容相符合,则说明当前分区标识文件未被篡改,通过校验;若所述分区标识文件的内容为md5(isoftstone_userdata)或其他,则说明当前分区标识文件被篡改或存在编译错误,则对当前分区进行卸载操作。
可选的,在本实施例中,在通过鸿蒙操作系统中磁盘挂载程序执行对目标硬件设备中的磁盘系统的磁盘挂载操作之前,还包括:基于所述磁盘系统中各分区的分区属性预生成与各分区分别对应的分区标识文件;将所述各分区标识文件分别写入至匹配的各分区中进行储存。
在本实施例中,所述鸿蒙操作系统有三个分区,分别是system、vendor和data分区,对应的分别烧录了system.img、vendor.img和userdata.img三个镜像文件,且三个镜像文件存储在相应的分区中;进一步的,所述分区标识文件可以写入至各分区对应的镜像文件中。
具体的,所述分区标识文件可以是一个固定名称的文件,文件名称为“.”加镜像文件名,且不包括.img后缀,同时文件内容为isoftstone_和镜像名称组成字符串的MD5校验值。文件存储在分区根目录下,文件属性为只读,文件名与文件内容可以如表1所示。
本发明实施例的技术方案,通过鸿蒙操作系统中磁盘挂载程序执行对目标硬件设备中的磁盘系统的磁盘挂载操作,如果成功挂载磁盘系统,则在磁盘系统的各分区内分别查找是否预先写入有分区标识文件,并根据查找结果对符合挂载要求的各目标分区进行分区挂载,如果未成功挂载磁盘系统,则将磁盘系统的各分区依次挂载至临时目录下,并将临时目录内符合挂载要求的各目标分区进行分区挂载,实现了磁盘分区的识别、校验与挂载,简化了磁盘挂载的操作步骤,提高了磁盘分区挂载的正确性与挂载效率。
实施例二
图2为本发明实施例二提供的一种磁盘的分区挂载方法的流程图,本实施例以上述实施例为基础进行细化,在本实施例中具体是对根据查找结果对符合挂载要求的各目标分区进行分区挂载的方法进行细化。
如图2所示,该方法包括:
S210、通过鸿蒙操作系统中磁盘挂载程序执行对目标硬件设备中的磁盘系统的磁盘挂载操作。
S220、在磁盘系统的各分区内查找分区标识文件,确定全部分区内是否均存在分区标识文件;
若是,则执行S230;
若否,则执行S240。
具体的,所述全部分区内均存在分区标识文件为所述目标硬件设备中的全部分区内均包含相应的分区标识文件;进一步的,所述目标硬件设备中的全部分区内均包含表1内所示的以分区标识文件名称为文件名称的文件。
S230、对各分区标识文件进行校验,并根据校验结果对符合挂载要求的各目标分区进行分区挂载。
具体的,对各分区标识文件进行校验,并根据校验结果对符合挂载要求的各目标分区进行分区挂载,包括:当确定全部分区标识文件均通过校验时,将全部分区均确定为目标分区后,将各目标分区分别进行分区挂载;当确定至少一个分区标识文件未通过校验时,将磁盘系统的各分区依次挂载至临时目录下,并将临时目录内符合挂载要求的各目标分区进行分区挂载。
在本实施例中,对各分区标识文件进行校验,包括:在各所述分区中依次获取当前分区,并获取当前分区内的分区标识文件;将当前分区内的分区标识文件与预设的标准文件进行对比;若对比结果为所述分区标识文件与所述标准文件完全一致,则返回执行在各所述分区中依次获取当前分区的操作;若对比结果为所述分区标识文件与所述标准文件不完全一致,则确定至少一个分区标识文件未通过校验。
其中,所述预设的标准文件可以为如表1所示的预设文件,其中,所述标准文件中包括预先编辑好的分区标识文件名称与分区文件标识内容;进一步的,可以将所述标准文件作为对比标准,以对分区内的分区标识文件的名称与内容进行正确性校对。
示例性的,在上述实施例的基础上,若分区sad1中存在文件名为.system的分区标识文件,则对当前分区标识文件的内容进行校验,若所述分区标识文件的内容为md5(isoftstone_system),与表1中的内容相符合,则说明当前分区标识文件未被篡改,通过校验;若所述分区标识文件的内容为md5(isoftstone_userdata)或其他,则说明当前分区标识文件被篡改或存在编译错误,则确定至少一个分区标识文件未通过校验。
S240、当确定至少一个分区内不存在分区标识文件时,将磁盘系统的各分区依次挂载至临时目录下,并将临时目录内符合挂载要求的各目标分区进行分区挂载。
本发明实施例的技术方案,通过鸿蒙操作系统中磁盘挂载程序执行对目标硬件设备中的磁盘系统的磁盘挂载操作,如果成功挂载磁盘系统,则在磁盘系统的各分区内分别查找是否预先写入有分区标识文件,当查找确定全部分区内均存在分区标识文件时,对各分区标识文件进行校验,并根据校验结果对符合挂载要求的各目标分区进行分区挂载,而当确定至少一个分区内不存在分区标识文件时,将磁盘系统的各分区依次挂载至临时目录下,并将临时目录内符合挂载要求的各目标分区进行分区挂载,实现了磁盘分区的识别、校验与挂载,简化了磁盘挂载的操作步骤,提高了磁盘分区挂载的正确性与挂载效率。
实施例三
图3为本发明实施例三提供的一种磁盘的分区挂载装置的结构示意图。
如图3所示,该装置包括:
磁盘挂载模块310,用于通过鸿蒙操作系统中磁盘挂载程序执行对目标硬件设备中的磁盘系统的磁盘挂载操作;其中,磁盘系统中包括至少一个分区;
分区标识查找模块320,用于如果成功挂载磁盘系统,则在磁盘系统的各分区内分别查找是否预先写入有分区标识文件,并根据查找结果对符合挂载要求的各目标分区进行分区挂载;
临时挂载模块330,用于如果未成功挂载磁盘系统,则将磁盘系统的各分区依次挂载至临时目录下,并将临时目录内符合挂载要求的各目标分区进行分区挂载。
本发明实施例的技术方案,通过鸿蒙操作系统中磁盘挂载程序执行对目标硬件设备中的磁盘系统的磁盘挂载操作,如果成功挂载磁盘系统,则在磁盘系统的各分区内分别查找是否预先写入有分区标识文件,并根据查找结果对符合挂载要求的各目标分区进行分区挂载,如果未成功挂载磁盘系统,则将磁盘系统的各分区依次挂载至临时目录下,并将临时目录内符合挂载要求的各目标分区进行分区挂载,实现了磁盘分区的识别、校验与挂载,简化了磁盘挂载的操作步骤,提高了磁盘分区挂载的正确性与挂载效率。
在上述实施例的基础上,所述分区标识查找模块320,包括:
第一挂载单元,用于当查找确定全部分区内均存在分区标识文件时,对各分区标识文件进行校验,并根据校验结果对符合挂载要求的各目标分区进行分区挂载;
第二挂载单元,用于当确定至少一个分区内不存在分区标识文件时,将磁盘系统的各分区依次挂载至临时目录下,并将临时目录内符合挂载要求的各目标分区进行分区挂载。
在上述实施例的基础上,所述第一挂载单元,进一步包括:
第三挂载单元,用于当确定全部分区标识文件均通过校验时,将全部分区均确定为目标分区后,将各目标分区分别进行分区挂载;
第四挂载单元,用于当确定至少一个分区标识文件未通过校验时,将磁盘系统的各分区依次挂载至临时目录下,并将临时目录内符合挂载要求的各目标分区进行分区挂载。
在上述实施例的基础上,所述第一挂载单元,还包括:
标识文件获取单元,用于在各所述分区中依次获取当前分区,并获取当前分区内的分区标识文件;
文件比对单元,用于将当前分区内的分区标识文件与预设的标准文件进行对比;
分区获取单元,用于若对比结果为所述分区标识文件与所述标准文件完全一致,则返回执行在各所述分区中依次获取当前分区的操作;
校验失败单元,用于若对比结果为所述分区标识文件与所述标准文件不完全一致,则确定至少一个分区标识文件未通过校验。
在上述实施例的基础上,临时挂载模块330,包括:
提取单元,用于依据各分区依次挂载至临时目录的挂载顺序对各分区进行提取;
验证单元,用于验证当前被提取的分区内是否存在分区标识文件;
第五挂载单元,用于若存在,则对当前分区的分区标识文件进行校验,并根据校验结果对符合要求的分区进行挂载操作;若不存在,则对当前分区进行卸载操作;
分区遍历单元,用于返回执行依据各分区依次挂载至临时目录的挂载顺序对各分区进行提取的操作,直至所述临时目录中的全部分区均被遍历。
在上述实施例的基础上,第五挂载单元,进一步包括:
校验结果获取单元,用于对当前分区的分区标识文件进行校验,并获取校验结果;
分区标记单元,用于若通过校验,则将当前分区标记为目标分区,并对当前目标分区进行挂载操作;
分区卸载单元,用于若未通过校验,则对当前分区进行卸载操作。
在上述实施例的基础上,所述磁盘的分区挂载装置,还包括:标识文件写入单元,用于在通过鸿蒙操作系统中磁盘挂载程序执行对目标硬件设备中的磁盘系统的磁盘挂载操作之前,基于所述磁盘系统中各分区的分区属性预生成与各分区分别对应的分区标识文件;将所述各分区标识文件分别写入至匹配的各分区中进行储存。
本发明实施例所提供的磁盘的分区挂载装置可执行本发明任意实施例所提供的磁盘的分区挂载方法,具备执行方法相应的功能模块和有益效果。
实施例四
图4示出了可以用来实施本发明的实施例的电子设备10的结构示意图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备(如头盔、眼镜、手表等)和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本发明的实现。
如图4所示,电子设备10包括至少一个处理器11,以及与至少一个处理器11通信连接的存储器,如只读存储器(ROM)12、随机访问存储器(RAM)13等,其中,存储器存储有可被至少一个处理器执行的计算机程序,处理器11可以根据存储在只读存储器(ROM)12中的计算机程序或者从存储单元18加载到随机访问存储器(RAM)13中的计算机程序,来执行各种适当的动作和处理。在RAM13中,还可存储电子设备10操作所需的各种程序和数据。处理器11、ROM12以及RAM13通过总线14彼此相连。输入/输出(I/O)接口15也连接至总线14。
电子设备10中的多个部件连接至I/O接口15,包括:输入单元16,例如键盘、鼠标等;输出单元17,例如各种类型的显示器、扬声器等;存储单元18,例如磁盘、光盘等;以及通信单元19,例如网卡、调制解调器、无线通信收发机等。通信单元19允许电子设备10通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
处理器11可以是各种具有处理和计算能力的通用和/或专用处理组件。处理器11的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的处理器、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。处理器11执行上文所描述的各个方法和处理,例如磁盘的分区挂载方法。
相应的,该方法包括:
通过鸿蒙操作系统中磁盘挂载程序执行对目标硬件设备中的磁盘系统的磁盘挂载操作;其中,磁盘系统中包括至少一个分区;
如果成功挂载磁盘系统,则在磁盘系统的各分区内分别查找是否预先写入有分区标识文件,并根据查找结果对符合挂载要求的各目标分区进行分区挂载;
如果未成功挂载磁盘系统,则将磁盘系统的各分区依次挂载至临时目录下,并将临时目录内符合挂载要求的各目标分区进行分区挂载。
在一些实施例中,磁盘的分区挂载方法可被实现为计算机程序,其被有形地包含于计算机可读存储介质,例如存储单元18。在一些实施例中,计算机程序的部分或者全部可以经由ROM12和/或通信单元19而被载入和/或安装到电子设备10上。当计算机程序加载到RAM13并由处理器11执行时,可以执行上文描述的磁盘的分区挂载方法的一个或多个步骤。备选地,在其他实施例中,处理器11可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行磁盘的分区挂载方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本发明的方法的计算机程序可以采用一个或多个编程语言的任何组合来编写。这些计算机程序可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,使得计算机程序当由处理器执行时使流程图和/或框图中所规定的功能/操作被实施。计算机程序可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本发明的上下文中,计算机可读存储介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的计算机程序。计算机可读存储介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。备选地,计算机可读存储介质可以是机器可读信号介质。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在电子设备上实施此处描述的系统和技术,该电子设备具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给电子设备。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)、区块链网络和互联网。
计算系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务中,存在的管理难度大,业务扩展性弱的缺陷。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发明中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本发明的技术方案所期望的结果,本文在此不进行限制。
Claims (10)
1.一种磁盘的分区挂载方法,其特征在于,包括:
通过鸿蒙操作系统中磁盘挂载程序执行对目标硬件设备中的磁盘系统的磁盘挂载操作;其中,磁盘系统中包括至少一个分区;
如果成功挂载磁盘系统,则在磁盘系统的各分区内分别查找是否预先写入有分区标识文件,并根据查找结果对符合挂载要求的各目标分区进行分区挂载;
如果未成功挂载磁盘系统,则将磁盘系统的各分区依次挂载至临时目录下,并将临时目录内符合挂载要求的各目标分区进行分区挂载。
2.根据权利要求1所述的方法,其特征在于,根据查找结果对符合挂载要求的各目标分区进行分区挂载,包括:
当查找确定全部分区内均存在分区标识文件时,对各分区标识文件进行校验,并根据校验结果对符合挂载要求的各目标分区进行分区挂载;
当确定至少一个分区内不存在分区标识文件时,将磁盘系统的各分区依次挂载至临时目录下,并将临时目录内符合挂载要求的各目标分区进行分区挂载。
3.根据权利要求2所述的方法,其特征在于,对各分区标识文件进行校验,并根据校验结果对符合挂载要求的各目标分区进行分区挂载,包括:
当确定全部分区标识文件均通过校验时,将全部分区均确定为目标分区后,将各目标分区分别进行分区挂载;
当确定至少一个分区标识文件未通过校验时,将磁盘系统的各分区依次挂载至临时目录下,并将临时目录内符合挂载要求的各目标分区进行分区挂载。
4.根据权利要求2-3任一项所述的方法,其特征在于,对各分区标识文件进行校验,包括:
在各所述分区中依次获取当前分区,并获取当前分区内的分区标识文件;
将当前分区内的分区标识文件与预设的标准文件进行对比;
若对比结果为所述分区标识文件与所述标准文件完全一致,则返回执行在各所述分区中依次获取当前分区的操作;
若对比结果为所述分区标识文件与所述标准文件不完全一致,则确定至少一个分区标识文件未通过校验。
5.根据权利要求1-3任一项所述的方法,其特征在于,将磁盘系统的各分区依次挂载至临时目录下,并将临时目录内符合挂载要求的各目标分区进行分区挂载,包括:
依据各分区依次挂载至临时目录的挂载顺序对各分区进行提取;
验证当前被提取的分区内是否存在分区标识文件;
若存在,则对当前分区的分区标识文件进行校验,并根据校验结果对符合要求的分区进行挂载操作;若不存在,则对当前分区进行卸载操作;
返回执行依据各分区依次挂载至临时目录的挂载顺序对各分区进行提取的操作,直至所述临时目录中的全部分区均被遍历。
6.根据权利要求5所述的方法,其特征在于,对当前分区的分区标识文件进行校验,并根据校验结果对符合要求的分区进行挂载操作,包括:
对当前分区的分区标识文件进行校验,并获取校验结果;
若通过校验,则将当前分区标记为目标分区,并对当前目标分区进行挂载操作;
若未通过校验,则对当前分区进行卸载操作。
7.根据权利要求1所述的方法,其特征在于,在通过鸿蒙操作系统中磁盘挂载程序执行对目标硬件设备中的磁盘系统的磁盘挂载操作之前,还包括:
基于所述磁盘系统中各分区的分区属性预生成与各分区分别对应的分区标识文件;
将所述各分区标识文件分别写入至匹配的各分区中进行储存。
8.一种磁盘的分区挂载装置,其特征在于,包括:
磁盘挂载模块,用于通过鸿蒙操作系统中磁盘挂载程序执行对目标硬件设备中的磁盘系统的磁盘挂载操作;其中,磁盘系统中包括至少一个分区;
分区标识查找模块,用于如果成功挂载磁盘系统,则在磁盘系统的各分区内分别查找是否预先写入有分区标识文件,并根据查找结果对符合挂载要求的各目标分区进行分区挂载;
临时挂载模块,用于如果未成功挂载磁盘系统,则将磁盘系统的各分区依次挂载至临时目录下,并将临时目录内符合挂载要求的各目标分区进行分区挂载。
9.一种电子设备,其特征在于,所述电子设备包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-7中任一项所述的磁盘的分区挂载方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现权利要求1-7中任一项所述的磁盘的分区挂载方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310970454.0A CN117008837A (zh) | 2023-08-02 | 2023-08-02 | 一种磁盘的分区挂载方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310970454.0A CN117008837A (zh) | 2023-08-02 | 2023-08-02 | 一种磁盘的分区挂载方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117008837A true CN117008837A (zh) | 2023-11-07 |
Family
ID=88572230
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310970454.0A Pending CN117008837A (zh) | 2023-08-02 | 2023-08-02 | 一种磁盘的分区挂载方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117008837A (zh) |
-
2023
- 2023-08-02 CN CN202310970454.0A patent/CN117008837A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111639287A (zh) | 一种页面处理方法、装置、终端设备及可读存储介质 | |
CN110673923A (zh) | Xwiki系统配置方法、系统及计算机设备 | |
CN113760306A (zh) | 安装软件的方法、装置、电子设备及存储介质 | |
CN115291946A (zh) | 鸿蒙系统移植方法、装置、电子设备及可读介质 | |
CN115269025A (zh) | 一种内核快速启动方法、装置、电子设备及存储介质 | |
CN116450184B (zh) | 一种系统升级方法、装置、电子设备及存储介质 | |
CN117234582A (zh) | 一种项目代码处理方法、装置、电子设备及存储介质 | |
CN115080114B (zh) | 应用程序的移植处理方法、装置和介质 | |
CN114816772B (zh) | 基于兼容层运行的应用的排错方法、排错系统及计算设备 | |
CN110045966A (zh) | 安装器的处理方法、装置及设备 | |
CN117008837A (zh) | 一种磁盘的分区挂载方法、装置、设备及存储介质 | |
CN112988278B (zh) | 资源文件的meta文件修改方法、装置、电子设备及存储介质 | |
CN113849269A (zh) | 在虚拟机中添加gpu资源的方法及装置 | |
CN114817160A (zh) | 文件解压方法、装置、电子设备及计算机可读存储介质 | |
CN113590225B (zh) | 贴图检测方法、装置、电子设备及存储介质 | |
CN115421785B (zh) | 应用程序的移植处理方法、装置和介质 | |
CN115454827B (zh) | 兼容性检测方法、系统、设备和介质 | |
CN113590224B (zh) | 服务器的检测方法、装置、电子设备及存储介质 | |
CN113076273B (zh) | 组件接入方法、装置、电子设备、存储介质及程序产品 | |
CN116775171B (zh) | 一种架构切换方法、装置、电子设备及存储介质 | |
CN109976765B (zh) | 一种应用群部署方法、装置、设备和存储介质 | |
CN118113410A (zh) | 一种集群运维方法、装置、电子设备及存储介质 | |
CN117742699A (zh) | 应用程序的功能模块生成方法、装置、设备及存储介质 | |
CN116700807A (zh) | 嵌入式系统的优化启动方法、装置、设备及介质 | |
CN117289956A (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 |