已有 JFFs2文件系统的修改
项目应用中,对于前人留下的JFFS2的文件,有时候我们需要修改,但是苦于没有源文件,实际操作很多时候无所适从。每次支持生产之后再进行人为的升级。这样费时费力,也给生产人员增加了负担。
为了解决这个问题,参考了一些资料,总算解决了这个问题!
基本的原理就是:
linux支持mount JFFS2到本地目录
这是一个完整的文件目录,我们可以修改mount后的文件目录,修改完成之后,重新使用mkfs.jffs2工具打包即可。
Ubuntu下对jffs2的修改:
0. 在线安装工具: apt-getinstall mtd-tools
apt-getinstall mtd-tools
1. 挂载文件系统
mount一个jffs2文件系统过程:
#创建MTD设备:
modprobe -v mtd modprobe -v jffs2 modprobe -v mtdram total_size= erase_size= (单位:K) modprobe -v mtdchar modprobe -v mtdblock
#擦除mtd0:
flash_eraseall /dev/mtd0
#用dd命令装入mtd0分区:
dd if=rootfs.jffs2 of=/dev/mtd0
#新建一个挂载点:
mkdir fsmount
#用mount挂载jffs2文件系统:
mount -t jffs2 /dev/mtdblock0 fsmount
#用umount卸载:
umount fsmount
2. 修改文件系统
成功挂在jffs2之后便可以对立面的内容进行修改,如添加和删除文件、修改文件等。比如我们要增加一个helloworld的文件,操作如下:
cp helloword fsmount sync
3. 重新生成jffs2文件系统
mkfs.jffs2 -r fsmount -o rootfs_new.jffs2 -e 0x20000 --pad=0x800000 -n
这里指定的块大小是:128K
4. 用mtdinfo命令可以查看文件系统的信息
mtdinfo /dev/mtd0 mtd0 Name: mtdram test device Type: ram Eraseblocksize: bytes, .0KiB Amount oferaseblocks: ( bytes,9.8 MiB) Minimuminput/output unit size: byte Sub-pagesize: byte Characterdevice major/minor: : Bad blocksare allowed: false Device iswritable: true
5. 附记
挂载文件之后如果要重新挂载,可以先umount,之后擦除
umount fsmount flash_eraseall /dev/mtd0
Ubuntu下对jffs2的修改:
0. 在线安装工具:
apt-getinstall mtd-tools
1. 挂载文件系统
mount一个jffs2文件系统过程:
#创建MTD设备:
modprobe-v mtd
modprobe-v jffs2
modprobe-v mtdram total_size= erase_size= (单位:K)
modprobe-v mtdchar
modprobe-v mtdblock
#擦除mtd0:
flash_eraseall /dev/mtd0
#用dd命令装入mtd0分区:
dd if=rootfs.jffs2 of=/dev/mtd0
#新建一个挂载点:
mkdir fsmount
#用mount挂载jffs2文件系统:
mount -t jffs2 /dev/mtdblock0fsmount
#用umount卸载:
umount fsmount
#可以删除MTD模块:
modprobe –r xx(xx)
2. 修改文件系统
成功挂在jffs2之后便可以对立面的内容进行修改,如添加和删除文件、修改文件等。比如我们要增加一个helloworld的文件,操作如下:
cp hellowordfsmount sync
3. 重新生成jffs2文件系统
mkfs.jffs2 -r fsmount -o rootfs_new.jffs2 -e 0x20000 --pad=0x800000 -n
4. 用mtdinfo命令可以查看文件系统的信息
mtdinfo /dev/mtd0 mtd0 Name: mtdram test device Type: ram Eraseblocksize: bytes, .0KiB Amount oferaseblocks: ( bytes,9.8 MiB) Minimuminput/output unit size: byte Sub-pagesize: byte Characterdevice major/minor: : Bad blocksare allowed: false Device iswritable: true
已有 JFFs2文件系统的修改的更多相关文章
- hi3531 SDK已编译文件系统制作jffs2文件系统镜像并解决问题 .
一, 安装SDK 1.Hi3531 SDK包位置 在"Hi3531_V100R001***/01.software/board"目录下,您可以看到一个 Hi3531_SDK_Vx. ...
- 从零开始制作jffs2文件系统
JFFS2 是一个开放源码的项目(www.infradead.org). 它是在闪存上使用非常广泛的读/写文件系统,在嵌入式系统中被普遍的应用. 1. 安装mkfs工具 MTD主页:htt ...
- hi3531 SDK已编译文件系统制作jffs2文件系统镜像并解决这个问题 .
一, 安装SDK 1.Hi3531 SDK包位置 在"Hi3531_V100R001***/01.software/board"文件夹下,您能够看到一个 Hi3531_SDK_Vx ...
- 1.移植3.4内核-分析内核启动过程,重新分区,烧写jffs2文件系统
1.在上章-移植uboot里.我们来分析下uboot是如何进入到内核的 首先,uboot启动内核是通过bootcmd命令行实现的,在我们之前移植的bootcmd命令行如下所示: bootcmd=nan ...
- jffs2文件系统制作
内核: linux-3.0 uboot: 2010.09 开发板: fl2440 交叉编译器: 2011. ...
- JFFS2文件系统的移植
Linux文件系统的移植-JFFS2 JFFS2是JFFS的后继者,由Red Hat重新改写而成.JFFS2的全名为JournallingFlash File System Version 2(闪存日 ...
- JFFS2 文件系统及新特性介绍
简介: JFFS2 是一个开放源码的项目(www.infradead.org). 它是在闪存上使用非常广泛的读/写文件系统,在嵌入式系统中被普遍的应用.这篇文章首先分析了在闪存上使用 JFFS2 的必 ...
- 齐博x1更新了 提供一个部分用户期待已久的功能,修改主题后变为待审
如下图所示,你可以设置哪些用户组修改主题后,就会把原来已审核通过的主题,变为未审核.适合所有频道.
- mysql 已有数据字符集的修改
mysql 字符集的修改 可以使用set names utf8 通过修改配置文件 可修改参数 default_character_set=utf8 但是以上修改方法只对数据库中新增的记录生效,如果数据 ...
随机推荐
- Linux中使用京东代码库JDCode创建私有Git仓库
国外Git经常被墙,所以目光转向国内.目前,云存储真的是很热,有很多公司在做. 看了一下,CSDN,开源中国,淘宝,京东,Gitcafe都在搞.淘宝只支持SVN. JD号称提供1G免费空间,而且支持私 ...
- SequoiaDB版本在线升级介绍说明
1.前言 在SequoiaDB数据库发展过程中,基本保持每半年对外发行一个正式的Release版本.并且每个新发布的Release版本相对老版本而言,性能方面都有很大的提高,并且数据库也会在新版本中加 ...
- 关于Ext 修复源代码 bug的方法
Ext修复源代码出现的问题 1.使用override属性,重写组件 定义一个新的组件,override属性设为要重写的源组件 例子: Extjs4.2.3遇到的一个bug,Datefield 选择不了 ...
- 【hibernate初探】之接口说明,session使用
hibernate作为一个完整的ORM映射框架,通过配置即可以让我们从复杂的JDBC操作中脱离出来.hibernate封装了 JDBC,JTA(java transaction API) 和JNDI. ...
- vue的增删改查
我们把这些用户信息保存到list的数组中,然后增删改查就在这个数组上进行: list: [ { username: 'aaaaa', email: '123@qq.com', sex: '男', pr ...
- 简单的线性回归问题-TensorFlow+MATLAB·
首先我们要试验的是 人体脂肪fat和年龄age以及体重weight之间的关系,我们的目标就是得到一个最优化的平面来表示三者之间的关系: TensorFlow的程序如下: import tensorfl ...
- 51nod_1298:圆与三角形(计算几何)
题目链接 判断圆和三角形是否相交 可以转化为 判断三条线段是否和圆相交 #include<iostream> #include<cstdio> #include< ...
- Sqoop将mysql数据导入hbase的血与泪
Sqoop将mysql数据导入hbase的血与泪(整整搞了大半天) 版权声明:本文为yunshuxueyuan原创文章.如需转载请标明出处: https://my.oschina.net/yunsh ...
- Linux日志分析ELK环境搭建
场景:ELK作为一个日志收集和检索系统,感觉功能还是相当的强大的. ELK是啥, 其实是是三个组件的缩写, 分别是elasticsearch, logstash, kibana. ELK平台可以用于实 ...
- VMware workstation批量创建虚拟机和自动化安装操作系统(二)
一. 简述 在上一篇<VMware workstation批量创建虚拟机和自动化安装操作系统(一)>中,主要介绍了VMware workstation自定义创建虚拟机的过程,和一些其他的有 ...