fastboot简介

fastboot是Android快速升级的一种方法,fastboot的协议fastboot_protocol.txt在源码目录./bootable/bootloader/legacy下可以找到。

fastboot 是作为 Android 系统编译器的客户端,编译后位于 ./out/host/ Linux -x86/bin/fastboot 目录下。

fastboot实例命令:sudo fastboot flash kernel path-to-kernel/uImage

烧写rootfs 类似:sudo fastboot flash system path-to-system/system.img

3.Android手机分裂

  分区都可以被烧写,并有相应的img文件:

  • 引导启动画面区(splash1)
  • 数据恢复区(recovery)
  • 内核区(boot)
  • 系统区(system)
  • 数据缓存区(cache)
  • 用户数据区(userdata)

4.fastboot命令

4.1 查看fastboot命令的帮助

  输入fastboot,显示如下信息:

  update <filename> 从 update.zip 刷新设备flashall flash boot + recovery + system flash <partition> [ <filename> ] 将文件写入 flash 分区erase <partition> 擦除 flash 分区getvar <variable> 显示引导加载程序变量boot <kernel> [ <ramdisk> ] 下载并启动内核flash:raw boot <kernel> [ <ramdisk> ] 创建 bootimage 并刷新设备 列出所有连接的设备正常重启重启设备reboot-bootloader 将设备重启到引导加载程序选项:-w 擦除用户数据和缓存-s <serial number> 指定设备序列号-p <product> 指定产品名称-c <cmdline> 覆盖内核命令行-i <vendor id> 指定自定义 USB 供应商 id -b <base_addr > 指定自定义内核基地址-n <page size> 指定nand 页面大小。默认值:2048</span></span></span></span>

4.2 分区:fastboot erase <partition>

sudo fastboot 擦除引导 xx/boot.img $ sudo fastboot 擦除系统 xx/system.img $ sudo fastboot 擦除用户数据 xx/userdata.img $ sudo fastboot 擦除缓存 xx/cache.img</span></span></span></span>

4.3 烧写指定分区:fastboot flash <partition> [*.img]

$ sudo fastboot flash boot path-to-kernel/boot.img $ sudo fastboot flash zimage path-to-kernel/arch/arm/boot/zImage $ sudo fastboot flash system path-to-system/system.img
$ sudo fastboot flash splash1引导画面</span></span></span></span>

4.4 烧写所有分区:fastboot flashall

  注意:此命令会在当前中查找所有img文件,将这些img烧写到所有目录的文件中,然后重新启动手机。

 sudo fastboot flashall

4.5 一次烧写boot,system,recovery分区:fastboot update <*.zip>

  创建包含boot.img,system.img,recovery.img文件的update.zip。

sudo fastboot update update.zip

4.6重启手机

 sudo 快速启动重启

4.7 以指定的img或bin启动系统,通常用于调试

  除了刷入 eMMC,Fastboot 还可以用来从已经刷入 eMMC 的文件启动。为此,请在目标上启动 Fastboot,然后在主机 PC 上运行命令,例如启动 u-boot:

 sudo fastboot 引导 u-boot.bin

4.8 更新eMMC分区

  eMMC 中的区域被命名。它们的偏移量和大小在您正在使用的板目录的 mmc.c 文件中的 u-boot 中设置。例如,对于 Blaze,此文件为 u-boot/board/omap4430sdp/mmc.c:

static struct partition partitions[] = { { "-", }, { "xloader", }, { "bootloader", }, /* "misc" partitions is required for recovery */ { "misc", }, { " -", }, { "efs", }, { "recovery", * }, { "boot", * }, { "system", * }, { "cache", * }, { "userdata", } , { , }, };

  修改上面的内容,然后执行:

sudo fastboot oem 格式

4.9 退出fastboot

  • 拔usb
  • Ctrl+C
  • 辞职命令 
    #fastboot 100或#fastboot </span></span>

4.10 获取信息客户端(手机端)

sudo fastboot getvar version:version-bootloader:version-baseband:product:serialno:secure

  getvar 后和参数使用:单独使用,它们的含义如下:

版本 客户端支持的fastboot协议版本
版本引导加载程序 Bootloader的版本号
版本基带 基带版本
产品 产品名称
序列号 产品序列号
安全的 返回yes 表示在刷机时需要获取签名

4.11 如何查看fastboot是否成功

  fastboot通常支持环境nand flash时,fastboot为变量写入中,命名量和大小和写入环境变量

  • <分区名称>_nand_offset
  • <分区名称>_nand_size

  例如,内核烧写完成后printenv可以看到:

  • kernel_nand_offset=0x140000
  • kernel_nand_size=0x1f70000

4.12 u-boot中定义的偏移和地址

姓名 抵消 尺寸 文件类型 普通文件
加载器 0x00000000 0x00080000 xloader 二进制文件 MLO
引导加载程序 0x00080000 0x00180000 uboot 二进制 u-boot.bin
环境 0x001C0000 0x00040000 文本文件 要设置的变量列表
核心 0x00200000 0x01D00000 内核或内核+ ramdisk uImage、uMulti
系统 0x02000000 0x0A000000 yaffs2 系统.img
用户数据 0x0C000000 0x02000000 yaffs2 用户数据.img
缓存 0x0E000000 0x02000000 yaffs2 ?

  fastboot重用内核的nand地址分配,并且对象是可以变化的方式,但是xloader、bootloader、环境地址是不变的。

4.13 文件大小限制

  最大下载文件大小为240M。

fastboot简介(android烧录指令)相关推荐

  1. Fastboot简介

    1.Fastboot简介 Fastboot是Android快速升级的一种方法,Fastboot的协议fastboot_protocol.txt在源码目录./bootable/bootloader/le ...

  2. 重学Android基础系列篇(五):Android虚拟机指令

    前言 本系列文章主要是汇总了一下大佬们的技术文章,属于Android基础部分,作为一名合格的安卓开发工程师,咱们肯定要熟练掌握java和android,本期就来说说这些~ [非商业用途,如有侵权,请告 ...

  3. 【Android 安装包优化】Android 中使用 SVG 图片 ( SVG 矢量图简介 | Android 中生成 Vector 矢量图资源 )

    文章目录 一.SVG 矢量图简介 二.Android 中生成 Vector 矢量图资源 三.参考资料 一.SVG 矢量图简介 Android SVG 参考文档 : https://developer. ...

  4. 单片机搭建环境烧录方法_万物互联-stm32单片机简介、烧录、编程及其项目环境搭建...

    万物互联-stm32单片机简介.烧录.编程 前言:stm32单片机这里给出简单介绍,给不了解的朋友普及下硬件端的基本知识,叙述的较为简单,想深入研究的朋友可以去一些官方网站.论坛.博客汲取知识.最下端 ...

  5. EDA01--Linux简介与基本指令入门

    这里写目录标题 一级目录 二级目录 三级目录 一 .Linux简介与基本指令 1.1 Linux操作系统组成 1.1.1 内核 1.1.2 shell 1.1.3 文件系统 1.2 Linux文件目录 ...

  6. android fastboot命令,Android在Fastboot里添加命令

    fastboot 是android 默认的一种debug 方法,它的好处是在进入linux kernel 之前 即可操作. 默认fastboot 支持的命令:usage: fastboot [ ] c ...

  7. 【Android应用开发】Android Studio 简介 (Android Studio Overview)

    一. Intelij IDEA 环境简介 Android Studio 来源 : Android Studio 是 Intelij IDEA 的免费版本 + Android SDK 集成的; -- I ...

  8. 【参考】Android wm指令用法详解

    我就放些我自己大概率会用到的指令在这儿,详细的看原文地址. 原文地址:Android wm指令用法详解 - 走看看 adb shell SE:/ $ wm size        //查看当前分辨率 ...

  9. Android手机指令操作释疑

    有人问我一个关于Android手机root与否的问题,她说明明iTools显示已取得root权限,但她就是没法在该手机上运行需要root权限的App如钛备份等等.我告诉她最好的确认方式便是以adb指令 ...

  10. GalHttprequest类库简介——android平台上的一个轻量级的http网络请求及缓存框架

    2019独角兽企业重金招聘Python工程师标准>>> GalHttprequest名字的由来 开发过iOS项目的朋友都应该知道 ASIHTTPRequest类库, ASIHTTPR ...

最新文章

  1. Python 连接Sql Server数据库 MSSql
  2. VS.net 2005 试用(1)
  3. 神经网络的核裂变模型
  4. 【Linux系统编程】fork()函数详解
  5. u3d 总是背向相机_纪念光学科学家“肖特”的相机
  6. 久玩玉之魂服务器维护,玉之魂1级到57级挂机心得详情分享
  7. python中int的意思_python中”int(a[::-1])”的含义是什么?
  8. 『设计模式』就因为多收了我2块5,我追着收银员问是不是不懂设计模式--策略模式
  9. 《我也能做CTO之.程序员职业规划》 水准之上,期望以下
  10. 风机桨叶故障诊断(五) 修改隐含层神经元个数的尝试
  11. 刚入门的UI设计师,需要懂的图标设计规范?
  12. linux 下安装gsl
  13. 【ACM】杭电1070:Milk
  14. 实现Canvas2D绘图 使元素绕中心居中旋转
  15. Spring Data + Thymeleaf 3 + Bootstrap 4 实现分页器
  16. 收藏一个Excel甘特图模板
  17. 华为防火墙重启_华为USG6000系列防火墙重置密码
  18. [Place 30-58] IO placement is infeasible. Number of unplaced terminals (1) is greate
  19. 我不想加班,您看我还有机会吗?
  20. 一键QQ聊天与一键加群QQ功能

热门文章

  1. java从文本中提取姓名、身份证、电话、地址
  2. html实现短信验证的功能,怎样实现短信验证功能
  3. 虚拟机内下载速度慢解决方法汇总
  4. 贵州大学计算机学院院长,贵州大学计算机科学与信息学院第七届研究生会干部选举大会...
  5. GPG使用方法总结(密钥管理,加解密文件)
  6. 如何自动生成一本epub电子书
  7. mybatis中的when,then,end的用法
  8. background-color:transparent
  9. 网站banner怎样设计才能提高吸引力?
  10. signature=f81ed620b6d6e6cb4bbe5a4d79d445b8,Lubricating compositions