Fastboot使用詳解

2021-07-04 18:30:18 字數 3899 閱讀 9233

文章出處:

1.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

2.命令

2.1 公升級系統

sudo fastboot flash bootloader u-boot.bin

sudo fastboot flash kernel uimage

sudo fastboot flash system system.img

sudo fastboot flash userdata userdata.img

sudo fastboot flash ramdisk ramdisk-uboot.img

sudo fastboot erase cache

fastboot flash    例:fastboot flash boot boot.img或fastboot flash system system.img等。

fastboot flashall   注意:此命令會在當前目錄中查詢所有img檔案,將這些img檔案燒寫到所有對應的分割槽中,並重新啟動手機。

一次燒寫boot,system,recovery分割槽:

(1)建立包含boot.img,system.img,recovery.img檔案的zip包。

(2)執行:fastboot update

燒寫開機畫面:

fastboot flash splash1 開機畫面

2.2 重啟系統

sudo fastboot reboot

2.3 不燒寫flash情況下除錯

sudo fastboot boot uimage 或者u-boot.bin

2.4 檢視版本號

sudo fastboot getver:version

2.5 復位到bootloader

sudo fastboot reboot-bootloader

2.6 命令格式

主機端傳送字串的命令,字串小於等於64個位元組,客戶端首先返回四個位元組的內容,是okay、fail、data、info之一,隨後跟著是資訊或數資料。

2.7 清空分割槽

fastboot erase    例:fastboot erase boot或fastboot erase system等。

fastboot erase boot

fastboot erase system

fastboot erase data

fastboot erase cache

上面的命令也可以簡化成一條命令

fastboot erase system -w

2.8 獲取客戶端(手機端)變數資訊

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

version 客戶端支援的fastboot協議版本

version-bootloader  bootloader的版本號

version-baseband    基帶版本

product             產品名稱

serialno             產品序列號

secure              返回yes 表示在刷機時需要獲取簽名

3.支援的引數

偏移和位址在u-boot中定義,要想使用好fastboot,就必須要知道引數名稱與檔案的對應關係。

name

offset

size

xloader

0x00000000

0x00080000

bootloader

0x00080000

0x00180000

environment

0x001c0000

0x00040000

kernel

0x00200000

0x01d00000

system

0x02000000

0x0a000000

userdata

0x0c000000

0x02000000

cache

0x0e000000

0x02000000

name

type of file

usual file

xloader

xloader binary

mlobootloader

uboot binary

u-boot.bin

environment

text file

list of variables to set

kernel

kernel or kernel + ramdisk

uimage, umulti

system

yaffs2

system.img

userdata

yaffs2

userdata.img

cache

yaffs2?

4.其他功能

4.1環境變數

fastboot支援環境變數檔案,通常在fastboot燒寫nand flash時,會將偏移量和大小寫入環境變數中,命名格式為:

_nand_offset

_nand_size

例如,核心燒寫完成後printenv可以看到:

kernel_nand_offset=0x140000

kernel_nand_size=0x1f70000

4.2檢視usb裝置

檢視連線到otg的usb裝置情況,lsusb:

bus 008 device 030: id 0451:cafe texas instruments, inc. <----- fastboot

更多細節檢視cat /proc/bus/usb/devices

4.3 靜態模組位址

fastboot重用核心的nand位址分配方式,並且大部分是可以變化的,但是下面列出來的這些位址是不變的。

name                 offset                 size

xloader          0x00000000      0x00080000

bootloader     0x00080000      0x00180000

environment  0x001c0000      0x00040000

4.4 檔案大小限制

5 參考文獻

2. fastboot_protocol.txt

fastboot命令詳解

1.檢視fastboot命令的幫助 fastboot 顯示如下資訊 view plain usage fastboot commands update reflash device from update.zip flashall flash boot flash system flash writ...

使用fastboot命令刷機流程詳解

準備工作 首先需要準備好刷機包,可以是自己編譯的,也可以是從別處拷貝的,但一定要確保刷機包適用於你的 android 裝置。然後解壓刷機包,解壓後我們可以得到 boot.img recovery.img system.img bootloader 檔案,正是這些檔案構成了 android 裝置的系統...

fastboot的使用方法

fastboot的使用方法 簡單的fastboot命令 1.重啟g1 fastboot reboot 2.刷所有分割槽 以下命令會在當前目錄尋找各種所有的image檔案,並且在刷完所有分割槽後重啟手機 fastboot flashall 3.刷指定分割槽 fastboot flash 如 fastb...