OpenWrt编译后会生成多个bin文件,比如

openwrt-ar71xx-generic-tl-wr841nd-jffs2-factory.bin      8126464
openwrt-ar71xx-generic-tl-wr841nd-jffs2-sysupgrade.bin     4980740
openwrt-ar71xx-generic-tl-wr841nd-squashfs-factory.bin   8126464
openwrt-ar71xx-generic-tl-wr841nd-squashfs-sysupgrade.bin  3538948

bin文件名称中有两种不同的格式,jffs2与 squashfs。这两种格式的固件区别在于,squashfs格式的bin文件安装后,会占用一定的空间来存放系统的一些必要文件,这些文件都只是可读的,其作用是帮助恢复系统。当OpenWrt崩溃时,可以基于这些文件,使用firstboot脚本重建初始系统,而jffs2则不会存储这样的文件,好处是节省了空间。一般使用squashfs格式的固件,方便恢复系统到初始状态。

每种格式都有两个文件,factory与sysupgrade,这两者的区别是,factory多了一些验证的东西,用于在原厂固件的基础上进行升级,如果已经是OpenWrt,直接使用sysupgrade文件即可。并且,在原厂固件的基础上进行升级时,首先使用factory文件,然后需要再次使用 sysupgrade文件,选择不保留原来配置进行升级。

参考文献:

http://blog.csdn.net/qinpeng_zbdx/article/details/8570488

http://wiki.openwrt.org/zh-cn/doc/howto/obtain.firmware.download

OpenWrt编译后生成的bin文件:jffs2与squashfs、factory与sysupgrade的更多相关文章

  1. keil编译后生成的M51文件解析

    通过*.m51文件我们能够清楚的看到单片机存储器的使用情况,以及能够看到每一个变量包含局部变量的位置. 之前碰到一个问题,相同的程序,在small模式下编译后执行没问题,但在large模式下能够编译. ...

  2. winform代码反编译后图片等资源文件恢复解决方案

    用Reflector工具反编译的winform代码,图片等资源文件不能很好的反编译成功. 这里有一个笨的解决方案.首先我们要了解图片资源当初加入到工程的几种方式,及他们所在的位置. 一般winform ...

  3. Visual Studio Installer打包后生成的安装文件每次执行都需要重新安装C++ 2010运行库(x86)的解决方案

    原文:Visual Studio Installer打包后生成的安装文件每次执行都需要重新安装C++ 2010运行库(x86)的解决方案 如果你是用Visual Studio自带的打包项目打包了一个I ...

  4. vc++ 6.0编译后生成的文件

    程序在编译后,在目标路径下会生成多个文件    Debug文件夹(*.exe,*.ilk,*.obj,*.pch,*.pdb,*.idb,*,pdb),*.cpp,*.dsp,*.ncb,*.plg  ...

  5. c#:Reflector+Reflexil 修改编译后的dll/exe文件

    不知道大家有没有这样的经历:现场实施时测试出一个bug,明明知道某个dll/exe文件只要修改一二行代码即可,但手头没有开发环境,紧急情况下,可以用reflector + reflexil 临时直接修 ...

  6. 关于有些.aidl源码的eclipse编译后生成.java文件的错

    最近下载了一个aidl源码.导入到eclipse.一直报错.无法运行到. (我是1号图) 2. .然后怎么想都不知道怎么解决.百度和谷歌了n遍. 还是找不到.后来在一个不起眼的地方看到说: aidl不 ...

  7. 编译Speex生成so库文件(android-speex)

    项目中需要用音频格式转换,之前使用VoAacEncoder,部分手机总是莫名崩溃,所以决定不再使用VoAacEncoder,换做Speex来完成格式转换,但是没有找到Speex的库文件,网上介绍的都是 ...

  8. SpringBoot项目编译后没有xxxmapper.xml文件解决方法

    在pom.xml文件中添加如下代码 <build> <plugins> <plugin> <groupId>org.springframework.bo ...

  9. Idea 编译jsp生成的class文件路径

    找到work\Catalina\localhost\ 然后访问响应的JSP地址才会动态生成到这个路径下面,不访问不会生成,在org\apache\jsp 下面

随机推荐

  1. 计蒜客 蒜头君回家(有条件的BFS)

    蒜头君要回家,但是他家的钥匙在他的朋友花椰妹手里,他要先从花椰妹手里取得钥匙才能回到家.花椰妹告诉他:“你家的钥匙被我复制了很多个,分别放在不同的地方.” 蒜头君希望能尽快回到家中,他需要首先取得任意 ...

  2. Wallet file not specified (must request wallet RPC through /wallet/<filename> uri-path). BitcoinJSONRPCClient异常、及其他异常

    1.异常信息 Wallet file not specified (must request wallet RPC through /wallet/<filename> uri-path) ...

  3. LeetCode No.163,164,165

    No.163 FindMissingRanges 缺失的区间 题目 给定一个排序的整数数组 nums ,其中元素的范围在闭区间 [lower, upper] 当中,返回不包含在数组中的缺失区间. 示例 ...

  4. python中的倒序遍历

    1.在列表本身倒序 a = [1, 3, 7, 5, 2, 6] a.reverse() # 在列表本身进行倒序,不返回新的值 print(a) # 输出a: # [6, 2, 5, 7, 3, 1] ...

  5. 漫谈设计模式(三):桥接(Bridge)模式 —— 将类功能、结构两层次分离

    1.前言 类主要有两个层次,一个是功能层次,另一个是实现层次. 功能层次,一般应用于当前类不能满足多样化的业务需求,让子类去继承(具体)父类,添加加一些父类中没有的功能(一般是增加新的方法),这就属于 ...

  6. NWERC 2015

    2015-2016 Northwestern European Regional Contest (NWERC 2015) F H没做 似乎只有 B 题有点意思 D:数论分块枚举所有上取整区间,只需要 ...

  7. Django的View(视图层)

    目录 Django的View(视图层) 一.JsonResponse 二.后端接收前端的文件 三. FBV和CBV(源码分析) 四.settings.py配置文件源码分析 五. 请求对象(HttpRe ...

  8. InsertionSort(插入排序)原理及C++代码实现

    插入排序是最常用的排序之一. 在输入规模较小的时候,插入排序的性能较好. 最好情况下插入排序的时间复杂度是O(n),平均情况则为O(n2). 插入排序是稳定的排序算法之一. 基本思路为从第二个元素开始 ...

  9. java合并一个文件夹下所有txt文件,输出到另一个txt

    最近写了个单元测试,递归调用方法,把同一个文件夹里所有的txt合并输出到一个txt文件.参考了两个博客,分别是已有的方法,还有个就是检测txt文件所用编码的技术贴.如果不检测txt文件的编码,那么转换 ...

  10. tensorflow(四)

    tensorflow数据处理方法, 1.输入数据集 小数据集,可一次性加载到内存处理. 大数据集,一般由大量数据文件组成,因为数据集的规模太大,无法一次性加载到内存,只能每一步训练时加载数据,可以采用 ...