本文描述是基于高通平台,在emmc上增加一块分区,并挂载自己制作的ext4格式的镜像。作者是第一次弄这个,很多都不是很懂,有不对的地方请指教,经过一番某度和某歌之后,我慢慢知道怎么动手。原来只需要简单的增加几句内容就可以轻松挂在上自己的镜像文件。接下来讲解如何增加分区以及如何挂载镜像。
<一>
首先更改partition.xml文件,增加一个属于自己的分区(分区名字:rice),其中分区对应的镜像为temp.img。
<PROJECT>/common/config/partition.xml
参数描述:
<二>
接下来创建一个ext4格式的temp.img镜像,并且希望这个文件在整包烧录的时候能够烧录到对应的rice分区中。
这里我们需要一个制作工具:make_ext4fs
(我已经放在的github上:https://github.com/RiceChen/Embedded_Tools/tree/master/Make_ext4fs)
首先要给镜像制作点东西,简单弄个文本文件:
mkdir ./temp
echo "rice is good" > ./temp/log.txt
制作镜像:
./make_ext4fs -s -l 64M -a rice ./temp.img ./temp/
参数说明:
" -l " : 指明分区的img大小,我们这儿是64M
" -a " : 对应的是镜像的挂载点
" -s " :这是按照生成ext4的sparse模式制作,这个参数是对应的第一步partition.xml中的sparse=“true” ,啥意思呢:sparse中文的意思是稀疏的意思,意味着生成的分区.img会将所有为0的地方压缩,从而节省空间。不妨我们可以看一下,通过工具:simg2img,转换一下。
./simg2img temp.img temp_ext4.img
对比一下两个镜像的大小:清晰看出temp.img小很多。
<三>
接下来就是打包镜像,在高通的平台中,他提供了打包镜像的脚本,只需要执行该脚本就可以。这里我就不详细介绍了。
<四>
烧录程序,然后手动挂在镜像。首相看看我们申请的分区是否存在?
通过查看,存在我们的分区(rice),并对应的设备节点为:mmcblk0p57
手动挂在镜像:首相创建一个文件夹,我们直接挂在到这个文件夹。
mkdir /run/temp
mount -t ext4 /dev/mmcblk0p57 /run/temp/
查看结果:挂在内容即是我们的镜像内容。
本文分享自 Rice 嵌入式开发技术分享 微信公众号,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文参与 腾讯云自媒体同步曝光计划 ,欢迎热爱写作的你一起参与!