openwrt - squashfs-sysupgrade.bin 的生成过程
squashfs-sysupgrade.bin 生成过程图
路径变量
$(KERNEL_BUILD_DIR)=”/home/sam/Projects/openwrt-mt7620n/build_dir/target-mipsel_24kec+dsp_uClibc-0.9.33.2/linux-ramips_mt7620n/linux-3.14.18“
$(KDIR)=“/home/sam/Projects/openwrt-mt7620n/build_dir/target-mipsel_24kec+dsp_uClibc-0.9.33.2/linux-ramips_mt7620n”
$(STAGING_DIR_HOST)=“/home/sam/Projects/openwrt-mt7620n/staging_dir/host”
图中标有序号的步骤,执行命令如下:
mipsel-openwrt-linux-uclibc-objcopy -O binary -R .reginfo -R .notes -R .note -R .comment -R .mdebug -R .note.gnu.build-id -S $(KERNEL_BUILD_DIR)/vmlinux $(KDIR)/vmlinux
mipsel-openwrt-linux-uclibc-objcopy -R .reginfo -R .notes -R .note -R .comment -R .mdebug -R .note.gnu.build-id -S $(KERNEL_BUILD_DIR)/vmlinux $(KDIR)/vmlinux.elf
$(STAGING_DIR_HOST)/bin/lzma e $(KDIR)/vmlinux -lc1 -lp2 -pb2 $(KDIR)/vmlinux.bin.lzma
mkimage -A mips -O linux -T kernel -C lzma -a 0x80000000 -e 0x80000000 -n "MIPS OpenWrt Linux-3.14.18" -d $(KDIR)/vmlinux.bin.lzma $(KDIR)/uImage.lzma
Image Name: MIPS OpenWrt Linux-3.14.18
Created: Sat Sep 20 16:28:05 2014
Image Type: MIPS Linux Kernel Image (lzma compressed)
Data Size: 1051164 Bytes = 1026.53 kB = 1.00 MB
Load Address: 80000000
Entry Point: 80000000
$(STAGING_DIR_HOST)/bin/mksquashfs4 /home/sam/Projects/openwrt-mt7620n/build_dir/target-mipsel_24kec+dsp_uClibc-0.9.33.2/root-ramips $(KDIR)/root.squashfs -nopad -noappend -root-owned -comp xz -Xpreset 9 -Xe -Xlc 0 -Xlp 2 -Xpb 2 -b 256k -p '/dev d 755 0 0' -p '/dev/console c 600 0 0 5 1' -processors 1
dd if=$(KDIR)/root.squashfs of=/home/sam/Projects/openwrt-mt7620n/bin/ramips/openwrt-ramips-mt7620n-root.squashfs bs=128k conv=sync
$(KERNEL_BUILD_DIR)/scripts/dtc/dtc -O dtb -o $(KDIR)/WRTNODE.dtb ../dts/WRTNODE.dts
$(STAGING_DIR_HOST)/bin/patch-dtb $(KDIR)/vmlinux-wrtnode $(KDIR)/WRTNODE.dtb
$(STAGING_DIR_HOST)/bin/lzma e $(KDIR)/vmlinux-wrtnode -lc1 -lp2 -pb2 $(KDIR)/vmlinux-wrtnode.bin.lzma
mkimage -A mips -O linux -T kernel -C lzma -a 0x80000000 -e 0x80000000 -n "MIPS OpenWrt Linux-3.14.18" -d $(KDIR)/vmlinux-wrtnode.bin.lzma $(KDIR)/vmlinux-wrtnode.uImage
cat $(KDIR)/vmlinux-wrtnode.uImage $(KDIR)/root.squashfs > $(KDIR)/openwrt-ramips-mt7620n-wrtnode-squashfs-sysupgrade.bin
$(STAGING_DIR_HOST)/bin/padjffs2 $(KDIR)/openwrt-ramips-mt7620n-wrtnode-squashfs-sysupgrade.bin 4 8 16 64 128 256
Image Name: MIPS OpenWrt Linux-3.14.18
Created: Sat Sep 20 16:28:15 2014
Image Type: MIPS Linux Kernel Image (lzma compressed)
Data Size: 1052354 Bytes = 1027.69 kB = 1.00 MB
Load Address: 80000000
Entry Point: 80000000
openwrt - squashfs-sysupgrade.bin 的生成过程的更多相关文章
- openwrt的sysupgrade和factory固件的区别
openwrt的固件一般分两种类型:factory原厂固件.sysupgrade固件 factory多了一些验证的东西,用于在原厂固件的基础上进行升级. 普通家用路由一般不是openwrt固件,如果要 ...
- openwrt环境中某个运行在host端的软件如何安装到openwrt的$(STAGING_DIR_HOST)/bin下
可参考示例:见'git grep host-build.mk package/{system,utils}'
- openwrt的编译系统是如何生成squashfs文件系统的
答:请看include/image.mk中的以下定义: define Image/mkfs/squashfs $(STAGING_DIR_HOST)/bin/mksquashfs4 $(call mk ...
- 【转载】OpenWrt sysupgrade 命令行更新固件到最新版
OpenWrt sysupgrade 命令行更新固件到最新版 下面我们要使用 sysupgrade 更新固件到trunk最新版. 要注意的是,trunk包含试验的功能,可能不稳定,刷机风险自己承担. ...
- openwrt: Makefile 框架分析
openwrt: Makefile 框架分析 原文链接:blog.chinaunix.net/uid-26675482-id-4704952.html 本篇的主要目的是想通过分析Makefile,了解 ...
- 转:openwrt 框架分析
本文是本人对OpenWrt的Makefile的理解,并非转载.OpenWrt是一个典型的嵌入式Linux工程,了解OpenWrt的Makefile的工作过程对提高嵌入式Linux工程的开发能力有极其重 ...
- openwrt固件编译过程
主Makefile分析 注:1)make -n可打印makefile执行的命令,而不执行. 2)可以在规则的命令中增加echo跟踪执行进度. 顶层目录的Makefile是openert的总Makefi ...
- 制作Cubie版OpenWRT(功能齐全,大小仅有11M)
Allwinner Sun4i/5i/6i/7i (sunxi) Various vendors are offering development boards / single-board comp ...
- OpenWRT mt7620n 系统升级引起的问题
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/qianguozheng/article/details/27237175 OpenWRT系统升级採用 ...
随机推荐
- luogu2604 [ZJOI2010]网络扩容
先做一遍普通的dinic 然后再更改源点为超级源,超级源向原源加一条capacity=k && cost=0的边,再加上有费用的边跑最小费用最大流 #include <iostr ...
- Centos 6.5升级openssh到7.5p1版本
centos6自带的ssh版本较低,存在高危漏洞,目前部分服务器需要升级到最新版本(目前是7.5p1). 注:升级ssh存在一定的危险性,一旦不成功可能无法通过远程连接到系统,因此在升级之前最好有远程 ...
- HackerRank# Red John is Back
原题地址 简单动归+素数判定,没用筛法也能过 代码: #include <cmath> #include <cstdio> #include <vector> #i ...
- BZOJ 2882 工艺 ——后缀自动机 最小表示法
先说后缀自动机的做法. 直接把S串复制一遍成SS,然后建立后缀自动机,go边相当于在当前字符的后面插入,而son边可以看作在字符串前面加一个字符. 所以贪心的走字典序最小的边即可,而且根据后缀自动机的 ...
- gevent 使用踩坑
简单介绍 gevent 基本概念: 调度器: hub 上下文切换管理: switch 主循环: loop 协程: greenlet gevent 特性: ...
- 请问 内网的 dns服务器 为什么和 外网的dns服务器 一样??
公司内的内网使用192.169.X.X的内网地址,但是在DNS段填写的是210.34.X.X,显然这是一个公网固定IP,我不明白的是:为什么内部网客户端使用的DNS服务器是公网上的IP呢?内网客户端能 ...
- Linux(11):期中架构(3)--- SSH远程管理服务 & ansible 批量管理服务
SSH远程管理服务 1. 远程管理服务知识介绍 # 1.1 SSH远程登录服务介绍说明 SSH是Secure Shell Protocol的简写,由 IETF 网络工作小组(Network Worki ...
- Java远程调用BPS流程实现流程运行简单示例
1.简介:略 2.背景:略 3.目的:自我学习笔记 4.实现过程 (1).画出流程图 如下: 路由活动分支下的条件语句为复杂表达式: ((account<200&&divisio ...
- [教程] 【终极开关机加速!!】手把手教你加速Mac的开关机速度。(经验证适用10.10!)
转自:http://bbs.feng.com/read-htm-tid-7811885.html [声明]如果锋友的机器开机速度已经很快了,譬如机械硬盘40秒左右,SSD10秒左右,那么就不要折腾 ...
- android 禁止ViewPager滑动
最近项目中,有个需求就是要禁止ViewPager滑动事件,我们看下360手机助手的界面,风格就类似这样的 大家如果使用过360手机助手就会发现中间内容是不可以滑动的,现在写一个demo,讲下怎么禁止V ...