CN112579545B - 一种Linux文件系统挂载方法及存储介质 - Google Patents
一种Linux文件系统挂载方法及存储介质 Download PDFInfo
- Publication number
- CN112579545B CN112579545B CN202011578495.8A CN202011578495A CN112579545B CN 112579545 B CN112579545 B CN 112579545B CN 202011578495 A CN202011578495 A CN 202011578495A CN 112579545 B CN112579545 B CN 112579545B
- Authority
- CN
- China
- Prior art keywords
- file system
- file
- type
- linux
- target
- 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
- 238000000034 method Methods 0.000 title claims abstract description 27
- 230000015654 memory Effects 0.000 claims description 24
- 230000002452 interceptive effect Effects 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 6
- 238000004519 manufacturing process Methods 0.000 abstract description 7
- 230000002035 prolonged effect Effects 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/172—Caching, prefetching or hoarding of files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/11—File system administration, e.g. details of archiving or snapshots
- G06F16/122—File system administration, e.g. details of archiving or snapshots using management policies
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/16—File or folder operations, e.g. details of user interfaces specifically adapted to file systems
-
- 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)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Stored Programmes (AREA)
Abstract
本发明涉及系统挂载技术领域,提供一种Linux文件系统挂载方法及存储介质,预先将多种文件系统类型进程到系统镜像文件中,在Linux系统初始化后,解析系统镜像文件中即可得到对应每一预设文件系统类型对应的格式信息,使得Linux系统(嵌入式设备)可以自动识别不同格式的文件系统;此时根据用户的意图直接确定目标文件系统类型,进而在加载的目标设置上挂载对应的文件系统;在项目要求为采用只读格式的文件系统时,可以量产前采用其它可读写格式的文件系统对目标设备进行调试,待量产的时候再切换回原只读格式,从而大幅度提高工作效率,同时提高Linux系统(嵌入式设备)中flash的使用寿命。
Description
技术领域
本发明涉及Linux操作系统技术领域,尤其涉及一种Linux文件系统挂载方法及存储介质。
背景技术
Linux启动内核后,第一个必须挂载的是根文件系统,之后可以自动或手动挂载其他的文件系统。因此,一个系统中可以同时存在不同的文件系统。内核以VFS(虚拟文件系统)支持各种文件系统,如yaffs、ext3、cramfs等等。在Linux中将一个文件系统与一个存储设备关联起来的过程称为挂载(mount)。
程序源代码编写完成后,既可以通过只读文件系统squashfs(高度压缩的只读文件系统)编译成目标代码,也可以通过可读写文件系统cramfs文件系统编译成目标代码。
常规的系统启动流程是:上电启动U-BOOT(引导加载程序),跳转到内核,然后挂载文件系统。此种启动方法存在如下缺陷:
只能加载某一种特定的文件系统,比如当设定是squashfs时,只能加载squashfs格式的文件系统,而无法识别其它格式的文件系统,如ubifs或jffs2等等。且当设定为squashfs格式时,因为这是只读式文件系统,无法进行调试和更新,只能通过整个分区擦写更新,但是依旧不能单独替换文件或目录,也不能在目标板上直接编辑保存。
因此,现有技术有待进一步改进。
发明内容
本发明提供一种Linux文件系统挂载方法及存储介质,解决了现有的系统启动方法只能够加载唯一特定的文件系统、无法兼容其他格式的文件系统,且无法调试和更新的灵活性较差的技术问题。
为解决以上技术问题,本发明提供一种Linux文件系统挂载方法,包括步骤:
S1、获取预设文件系统类型并进行集成得到系统镜像文件;
S2、解析所述系统镜像文件,获取对应每一所述预设文件系统类型对应的格式信息;
S3、采集用户意图,确定目标文件系统类型;
S4、加载目标设备并根据所述目标文件系统类型挂载对应的文件系统。
本基础方案预先将多种文件系统类型进程到系统镜像文件中,在Linux系统初始化后,解析系统镜像文件中即可得到对应每一所述预设文件系统类型对应的格式信息,使得Linux系统(嵌入式设备)可以自动识别不同格式的文件系统;此时根据用户的意图直接确定目标文件系统类型,进而在加载的目标设置上挂载对应的文件系统;在项目要求为采用只读格式的文件系统时,可以量产前采用其它可读写格式的文件系统对目标设备进行调试,待量产的时候再切换回原只读格式,从而大幅度提高工作效率,同时提高Linux系统(嵌入式设备)中flash的使用寿命。
在进一步的实施方案中,所述步骤S1包括步骤:
S11、预先获取至少2种文件系统类型作为预设文件系统类型,并集成在系统镜像文件中;
S12、将所述系统镜像文件烧录到Nand-flash存储器中。
本方案根据目标设备的加载需求,预先获取至少2种文件系统类型作为预设文件系统类型,并存储在Nand-flash存储器,利用Nand-flash存储器容量大、可读写、效率高的存储特性,可单独替换文件或目录并在目标设备上直接进行编辑保存。
在进一步的实施方案中,所述步骤S2包括步骤:
S21、控制系统初始化,使得目标设备、所述Nand-flash存储器上电并开机;
S22、启动引导加载程序从所述Nand-flash存储器中读取所述系统镜像文件,并解析得到对应每一所述文件系统类型对应的格式信息。
在进一步的实施方案中,所述步骤S22包括步骤:
S221、启动引导加载程序从所述Nand-flash存储器中读取所述系统镜像文件,进而读取到对应的超级块区;
S222、从所述超级块区的头信息中获取幻数;
S223、根据所述幻数确定每一所述文件系统类型对应的格式名称。
本方案在系统初始化后,对引导加载程序从Nand-flash存储器中读取系统镜像文件,进而读取到对应的超级块区,根据从中获取的幻数即直接可确定每一所述文件系统类型对应的格式名称,从而提高对文件系统的类型的识别效率。
在进一步的实施方案中,所述步骤S3包括:
预先设置交互式选择框,采集用户在所述交互式选择框上的操作获取用户意图,进而确定目标文件系统类型;
或者,向串口终端发出询问报文,获取用户手动输入的文件系统类型作为目标文件系统类型。
本方案根据不同的目标设备以及用户使用习惯,分别预备了对应的意图采集方法,可直接设置交互式选择框用户的操作进而确定意图,也可通过串口报文获取用户直接输入的文件系统类型作为目标文件系统类型,可为用户提供多种采集路径。
在进一步的实施方案中,所述步骤S4包括步骤:
S41、根据所述目标文件系统类型,调用所述引导加载程序中的设置命令和保存命令,设置环境变量中的文件系统类型字段,并将所述环境变量保存到所述NAND存储器中;
S42、加载目标设备,并根据所述环境变量中的所述文件系统类型字段,加载对应的文件系统。
本方案根据从用户意图中提取出来的目标文件系统类型,利用引导加载程序中的设置命令和保存命令,对环境变量中的文件系统类型字段进行设置,从而在文件系统的加载时,仅需要配置对应的文件系统类型字段即可,加载方式简单、便捷,当要求量产出货采用squashfs格式时,依旧可以在量产前采用ubifs格式进行调试。
在进一步的实施方案中,所述预设文件系统类型包括jffs2、yaffs2、cramfs、ubifs、squashfs中的一种或多种。
在进一步的实施方案中,所述目标设备包括内核、驱动程序、驱动设备中的一种或多种。
本发明还提供一种存储介质,其上存储有计算机程序,所述计算机程序用于实现上述一种Linux文件系统挂载方法。其中,存储介质可以是磁碟、光盘、只读存储器(ReadOnlyMemory,ROM)或者随机存取器(Random Access Memory,RAM)等。
附图说明
图1是本发明实施例提供的一种Linux文件系统挂载方法的工作流程图;
图2是本发明实施例提供的交互式选择框的示意图。
具体实施方式
下面结合附图具体阐明本发明的实施方式,实施例的给出仅仅是为了说明目的,并不能理解为对本发明的限定,包括附图仅供参考和说明使用,不构成对本发明专利保护范围的限制,因为在不脱离本发明精神和范围基础上,可以对本发明进行许多改变。
实施例1
本发明实施例提供的一种Linux文件系统挂载方法,如图1所示,在本实施例中,包括步骤:
S1、获取预设文件系统类型并进行集成得到系统镜像文件,包括步骤:
S11、预先获取至少2种文件系统类型作为预设文件系统类型,并集成在系统镜像文件中;
S12、将系统镜像文件烧录到Nand-flash存储器中。
在本实施例中,预设文件系统类型包括jffs2、yaffs2、cramfs、ubifs、squashfs等。
本实施例根据目标设备的加载需求,预先获取至少2种文件系统类型作为预设文件系统类型,并存储在Nand-flash存储器,利用Nand-flash存储器容量大、可读写、效率高的存储特性,可单独替换文件或目录并在目标设备上直接进行编辑保存。
S2、解析系统镜像文件,获取对应每一预设文件系统类型对应的格式信息,包括步骤:
S21、控制Linux系统初始化,使得目标设备、Nand-flash存储器、内存等外接设备上电并开机;
S22、启动引导加载程序从Nand-flash存储器中读取系统镜像文件,并解析得到对应每一文件系统类型对应的格式信息。
在进一步的实施方案中,步骤S22包括步骤:
S221、启动引导加载程序从Nand-flash存储器中读取系统镜像文件,进而读取到对应的超级块区;
S222、从超级块区的头信息中获取幻数;
S223、根据幻数确定每一文件系统类型对应的格式名称。
其中,幻数(Magic number)可用于标记文件或者协议的格式。
本实施例在Linux系统初始化后,对引导加载程序从Nand-flash存储器中读取系统镜像文件,进而读取到对应的超级块区,根据从中获取的幻数即直接可确定每一文件系统类型对应的格式名称,从而提高对文件系统的类型的识别效率。
S3、采集用户意图,确定目标文件系统类型,具体为:
预先设置交互式选择框,采集用户在交互式选择框上的操作获取用户意图,进而确定目标文件系统类型;
或者,向串口终端发出询问报文,获取用户手动输入的文件系统类型作为目标文件系统类型。
参见图2,交互式选择框具体为人机交互界面上的选择框。
本实施例根据不同的目标设备以及用户使用习惯,分别预备了对应的意图采集方法,可直接设置交互式选择框用户的操作进而确定意图,也可通过串口报文获取用户直接输入的文件系统类型作为目标文件系统类型,可为用户提供多种采集路径。
S4、加载目标设备并根据目标文件系统类型挂载对应的文件系统,包括步骤:
S41、根据目标文件系统类型,调用引导加载程序中的设置命令setenv和保存命令saveenv,设置环境变量中的文件系统类型字段,并将环境变量保存到NAND存储器中;
S42、加载目标设备,并根据环境变量中的文件系统类型字段,加载对应的文件系统。
其中,setenv:设置环境变量,格式为:setenv name value,表示将name变量设置成value值;如果没有这个参数,则表示删除该变量。
saveenv:表示保存环境变量到NAND中。
本实施例根据从用户意图中提取出来的目标文件系统类型,利用引导加载程序中的设置命令和保存命令,对环境变量中的文件系统类型字段进行设置,从而在文件系统的加载时,仅需要配置对应的文件系统类型字段即可,加载方式简单、便捷。
在本实施例中,目标设备包括Linux内核、驱动程序、驱动设备中的一种或多种。
本发明实施例预先将多种文件系统类型进程到系统镜像文件中,在Linux系统初始化后,解析系统镜像文件中即可得到对应每一预设文件系统类型对应的格式信息,使得Linux系统(嵌入式设备)可以自动识别不同格式的文件系统;此时根据用户的意图直接确定目标文件系统类型,进而在加载的目标设置上挂载对应的文件系统;在项目要求为采用只读格式的文件系统时,可以量产前采用其它可读写格式的文件系统对目标设备进行调试,待量产的时候再切换回原只读格式,从而大幅度提高工作效率,同时提高系统(嵌入式设备)中flash的使用寿命。
实施例2
本发明实施例还提供一种存储介质,其上存储有计算机程序,计算机程序用于实现上述实施例1提供一种Linux文件系统挂载方法。其中,存储介质可以是磁碟、光盘、只读存储器(Read OnlyMemory,ROM)或者随机存取器(Random Access Memory,RAM)等。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。
Claims (6)
1.一种Linux文件系统挂载方法,其特征在于,包括步骤:
S1、获取预设文件系统类型并进行集成得到系统镜像文件;
S2、解析所述系统镜像文件,获取对应每一所述预设文件系统类型对应的格式信息;
S3、采集用户意图,确定目标文件系统类型;
S4、加载目标设备并根据所述目标文件系统类型挂载对应的文件系统;
所述步骤S2包括步骤:
S21、控制系统初始化,使得目标设备、Nand-flash存储器上电并开机;
S22、启动引导加载程序从所述Nand-flash存储器中读取所述系统镜像文件,并解析得到对应每一所述文件系统类型对应的格式信息;
所述步骤S4包括步骤:
S41、根据所述目标文件系统类型,调用所述引导加载程序中的设置命令和保存命令,设置环境变量中的文件系统类型字段,并将所述环境变量保存到所述Nand-flash存储器中;
S42、加载目标设备,并根据所述环境变量中的所述文件系统类型字段,加载对应的文件系统;
所述步骤S22包括步骤:
S221、启动引导加载程序从所述Nand-flash存储器中读取所述系统镜像文件,进而读取到对应的超级块区;
S222、从所述超级块区的头信息中获取幻数;
S223、根据所述幻数确定每一所述文件系统类型对应的格式名称。
2.如权利要求1所述的一种Linux文件系统挂载方法,其特征在于,所述步骤S1包括步骤:
S11、预先获取至少2种文件系统类型作为预设文件系统类型,并集成在系统镜像文件中;
S12、将所述系统镜像文件烧录到Nand-flash存储器中。
3.如权利要求2所述的一种Linux文件系统挂载方法,其特征在于,所述步骤S3包括:
预先设置交互式选择框,采集用户在所述交互式选择框上的操作获取用户意图,进而确定目标文件系统类型;
或者,向串口终端发出询问报文,获取用户手动输入的文件系统类型作为目标文件系统类型。
4.如权利要求1所述的一种Linux文件系统挂载方法,其特征在于:所述预设文件系统类型包括jffs2、yaffs2、cramfs、ubifs、squashfs。
5.如权利要求1所述的一种Linux文件系统挂载方法,其特征在于:所述目标设备包括内核、驱动程序、驱动设备中的一种或多种。
6.一种存储介质,其上存储有计算机程序,其特征在于:所述计算机程序用于实现权利要求1~5中任一项所述的一种Linux文件系统挂载方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011578495.8A CN112579545B (zh) | 2020-12-28 | 2020-12-28 | 一种Linux文件系统挂载方法及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011578495.8A CN112579545B (zh) | 2020-12-28 | 2020-12-28 | 一种Linux文件系统挂载方法及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112579545A CN112579545A (zh) | 2021-03-30 |
CN112579545B true CN112579545B (zh) | 2024-03-29 |
Family
ID=75140183
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011578495.8A Active CN112579545B (zh) | 2020-12-28 | 2020-12-28 | 一种Linux文件系统挂载方法及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112579545B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101226477A (zh) * | 2007-01-16 | 2008-07-23 | 北京共创开源软件有限公司 | 一种适合移动应用的Linux操作系统的实现方法 |
CN101911017A (zh) * | 2007-12-31 | 2010-12-08 | 数据逻辑移动公司 | 用于配置、更新和引导便携式数据读取器上的可替代操作系统的系统和方法 |
CN103218227A (zh) * | 2013-04-10 | 2013-07-24 | 广东欧珀移动通信有限公司 | 一种安卓设备内置硬盘上兼容多种文件系统的方法及装置 |
CN103853587A (zh) * | 2014-03-18 | 2014-06-11 | 浪潮集团有限公司 | 一种基于cramfs和jffs2的烧写flash的方法 |
CN107562483A (zh) * | 2017-07-26 | 2018-01-09 | 博为科技有限公司 | 一种挂载引导文件系统的方法及装置 |
CN108090168A (zh) * | 2017-12-14 | 2018-05-29 | 厦门市美亚柏科信息股份有限公司 | 一种通用f2fs文件系统解析方法、终端设备及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030097431A1 (en) * | 2001-09-29 | 2003-05-22 | Dill Russell J. | Ethernet firewall multi-access appliance |
-
2020
- 2020-12-28 CN CN202011578495.8A patent/CN112579545B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101226477A (zh) * | 2007-01-16 | 2008-07-23 | 北京共创开源软件有限公司 | 一种适合移动应用的Linux操作系统的实现方法 |
CN101911017A (zh) * | 2007-12-31 | 2010-12-08 | 数据逻辑移动公司 | 用于配置、更新和引导便携式数据读取器上的可替代操作系统的系统和方法 |
CN103218227A (zh) * | 2013-04-10 | 2013-07-24 | 广东欧珀移动通信有限公司 | 一种安卓设备内置硬盘上兼容多种文件系统的方法及装置 |
CN103853587A (zh) * | 2014-03-18 | 2014-06-11 | 浪潮集团有限公司 | 一种基于cramfs和jffs2的烧写flash的方法 |
CN107562483A (zh) * | 2017-07-26 | 2018-01-09 | 博为科技有限公司 | 一种挂载引导文件系统的方法及装置 |
CN108090168A (zh) * | 2017-12-14 | 2018-05-29 | 厦门市美亚柏科信息股份有限公司 | 一种通用f2fs文件系统解析方法、终端设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112579545A (zh) | 2021-03-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7472251B2 (en) | Data storage apparatus detachably mounted to a host apparatus | |
JP5162535B2 (ja) | メモリシステムを利用する方法及びメモリシステム | |
US7039754B2 (en) | Detachably mounted removable data storage device | |
CN100458699C (zh) | 一种实现固件更新的方法和系统 | |
WO2015070521A1 (zh) | 将ubi格式的系统文件制作成工厂烧录映像文件方法 | |
US20070083355A1 (en) | Data backup devices and methods for backing up data | |
US8185705B2 (en) | Information recording medium, information recording medium accessing apparatus and accessing method | |
JP2002132600A (ja) | 無線通信ユニット | |
JP2003196142A (ja) | ライトワンス型メモリ装置及びファイル管理方法 | |
US9389998B2 (en) | Memory formatting method, memory controller, and memory storage apparatus | |
US20120185682A1 (en) | Method and system for post-build modification of firmware binaries to support different hardware configurations | |
US20120137063A1 (en) | Auxiliary storage device and processing method thereof | |
US5829014A (en) | Method of supervising storage of data in a memory card having EEPROM and a memory card system using the same | |
JP4586469B2 (ja) | メモリ制御装置、メモリ制御方法、プログラム | |
US20060026415A1 (en) | Method of updating a portion BIOS | |
US20110004719A1 (en) | Memory Element | |
CN103389941B (zh) | 存储器格式化方法、存储器控制器及存储器存储装置 | |
CN112579545B (zh) | 一种Linux文件系统挂载方法及存储介质 | |
US7137037B2 (en) | Data storage system and method for testing the same | |
CN114816491A (zh) | 用于多系统移动终端的系统升级方法、装置及终端 | |
KR20050062638A (ko) | 공통의 논리적 블록과 연관된 물리적 블록들을 결정하기위한 방법 및 장치 | |
EP2031515A1 (en) | Data memory device and method for initializing same | |
CN114020308A (zh) | 一种摄像设备升级方法、装置、设备及介质 | |
CN1331048C (zh) | 更新部分基本输入输出系统的方法 | |
KR100652616B1 (ko) | 이동 통신 단말기의 부팅 시간 단축 방법 |
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 |