嵌入式爱好者

linux-3568-buildroot增删修改文件

2022-12-21 16:45| 发布者: PaperLove| 查看: 279| 评论: 0|来自: 原创

类目: RK3568系列产品  >  Linux     文档编号: 846

注意:修改文件之前请先拍摄虚拟机快照将源码文件进行备份
方式1:原理:直接在buildroot源码上进行修改(注意:不支持增删同名文件)

批量修改文件,打包镜像(S99matrix-brower为例)

/OK3568-linux-source/buildroot/output/OK3568/目录下搜索S99matrix-brower文件

修改这两个文件后保存。

/buildroot/output/OK3568/build/目录下是原文件。

/buildroot/output/OK3568/target目录下是拷贝后文件。

切换到/OK3568-linux-source/目录下执行./build.sh buildroot命令打包文件系统

单独烧写/OK3568-linux-source/buildroot/output/OK3568/images/rootfs.ext2文件

方式2:原理:在文件系统内直接对文件进行增删修改

源码/OK3568-linux-source/IMAGE/OK3568-C-LINUX_20221217.0500_RELEASE_TEST/IMAGES目录下有rootfs.img文件。

使用如下命令挂载文件系统,添加文件或者修改:

forlinx@ubuntu:~/OK3568-linux-source/IMAGE/OK3568-C-LINUX_20221217.0500_RELEASE_TEST/IMAGES$ mkdir target

forlinx@ubuntu:~/OK3568-linux-source/IMAGE/OK3568-C-LINUX_20221217.0500_RELEASE_TEST/IMAGES$ sudo mount rootfs.img ./target/

forlinx@ubuntu:~/OK3568-linux-source/IMAGE/OK3568-C-LINUX_20221217.0500_RELEASE_TEST/IMAGES$ cd target/

然后就在target文件夹内增删修改文件,如果是可执行文件,执行chmod +x 客户应用,添加可执行权限。最后退出target目录,执行

forlinx@ubuntu:~/OK3568-linux-source/IMAGE/OK3568-C-LINUX_20221217.0500_RELEASE_TEST/IMAGES$ sudo umount ./target

注意:可能存在客户app文件过大导致target目录无法存放。

以上方式有一点不足是如果自己所做的更改较大,在将根目录文件替换到挂载镜像的文件夹时,挂载镜像的大小不足以容纳所更改的项目,下边提供一个给镜像扩容的方法。(以下操作在虚拟机中完成,扩容后再将镜像copy到开发板中挂载)

镜像文件的扩容用到两个命令

sudo fsck.ext3 -f IMAGE

sudo resize2fs IMAGE SIZE

第一个命令为检测IMAGE文件现在的大小和目录结构等,完成检测后才可以对IMAGE文件大小进行操作。操作时SIZE为块的数量、一个块的大小为4K(即当SIZE为783770时,783770*4=3135080,大概为3.2G,1250000时为5G)

镜像文件的扩容需要在挂载之前进行操作,此时验证的rootfs.img最大为5.1G,超过此容量在进行编译等操作时不会出现报错,但是最终在开发板上运行时会导致无法正常启动的情况,所以目前情况下,请不要将其容量设置为5G以上。


 


已解决

未解决

只是看看

最新评论

QQ|小黑屋| 飞凌嵌入式 ( 冀ICP备12004394号-1 )

GMT+8, 2024-11-22 15:54

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

返回顶部