Android Boot分区镜像提取

清夏晚风

本文介绍了如何提取Android Boot分区镜像,包括环境准备、完整提取流程和GSI侧载详细步骤。

环境准备

1
2
3
4
5
# 安装必要工具(Ubuntu示例)
sudo apt install android-tools-adb android-tools-fastboot

# 检查设备连接
adb devices

完整提取流程

1. 提取当前boot镜像

1
2
3
4
5
6
adb shell
su
dd if=/dev/block/bootdevice/by-name/boot of=/sdcard/boot.img
exit
exit
adb pull /sdcard/boot.img

2. 备份全部分区(危险操作!)

1
2
3
4
5
6
adb reboot bootloader
fastboot oem unlock # 需先解锁Bootloader(会清除数据!)
fastboot getvar all > partitions.txt
fastboot flash recovery recovery.img # 刷入TWRP
fastboot boot recovery.img
adb pull /dev/block/bootdevice/by-name/ backup/

GSI侧载详细步骤

1. 准备GSI镜像

1
2
3
4
5
# 下载官方GSI镜像
wget https://dl.google.com/developers/android/qsc/gsi/gsi_gms_arm64-exp-UP1A.231005.007-10366268.zip

# 解压获取system.img
unzip gsi_gms_arm64-exp-*.zip

2. 刷入GSI

1
2
3
4
adb reboot fastboot
fastboot flash system system.img
fastboot -w # 清除用户数据
fastboot reboot

高级操作

解包/打包boot镜像

1
2
3
4
5
6
# 使用Android Image Kitchen
git clone https://github.com/AndroidImageKitchen/AIK-Linux.git
cd AIK-Linux
unpackimg.sh ../boot.img # 解包到split_img和ramdisk目录
make changes... # 修改内核或ramdisk
repackimg.sh # 生成image-new.img

签名boot镜像

1
2
3
4
5
6
openssl genrsa -out key.pem 2048
openssl req -new -x509 -key key.pem -out certificate.pem
java -jar avbtool.jar add_hash_footer \
--image boot.img \
--key key.pem \
--algorithm SHA256_RSA2048

注意事项

  1. Bootloader解锁

    • 会清除设备所有数据
    • 部分厂商设备需申请解锁码(如小米、华为)
    • 可能失去保修资格
  2. 安全验证

    1
    2
    fastboot oem device-info  # 查看解锁状态
    fastboot verify boot.img # 验证镜像签名
  3. 恢复模式

    • 推荐使用TWRP最新恢复镜像
    • 保留原厂镜像备份
  4. 法律风险

    • 部分国家/地区禁止修改bootloader
    • 使用GSI需遵守Google许可协议

故障排查

1
2
3
4
5
6
7
8
9
10
# 查看设备分区信息
adb shell ls -l /dev/block/by-name

# 检查fastboot驱动
lsusb | grep -i android

# 恢复原厂镜像
fastboot flash boot stock_boot.img
fastboot flash recovery stock_recovery.img
fastboot oem lock # 重新锁定Bootloader

参考文档:
Android GSI文档
XDA开发者论坛

Windows平台适配指南

环境准备

1
2
3
4
5
6
7
8
# 安装Android Platform Tools
$ProgressPreference = 'SilentlyContinue'
Invoke-WebRequest -Uri "https://dl.google.com/android/repository/platform-tools-latest-windows.zip" -OutFile platform-tools.zip
Expand-Archive -Path platform-tools.zip -DestinationPath "$env:USERPROFILE\Android\"
$env:Path += ";$env:USERPROFILE\Android\platform-tools"

# 安装USB驱动
winget install -e --id Google.USBDriver

提取boot镜像(PowerShell)

1
2
3
4
5
6
7
# 授予ADB调试权限
adb devices
# 弹出授权提示时勾选"始终允许"

# 提取boot镜像
adb shell "su -c 'dd if=/dev/block/bootdevice/by-name/boot of=/sdcard/boot.img'"
adb pull /sdcard/boot.img "$env:USERPROFILE\Desktop\boot.img"

刷入GSI镜像

1
2
3
4
5
6
7
8
9
10
11
12
# 进入fastboot模式
adb reboot bootloader

# 检查设备连接
fastboot devices

# 刷入GSI镜像
fastboot flash system "$env:USERPROFILE\Downloads\system.img"

# 清除数据并重启
fastboot -w
fastboot reboot

Windows专用工具

  1. Android Image Kitchen for Windows
    下载地址:https://forum.xda-developers.com/t/tool-android-image-kitchen-v3-8-1-win-android-linux-macos.2073775/

    1
    2
    3
    4
    5
    # 解包boot镜像
    .\unpackimg.bat boot.img

    # 重新打包
    .\repackimg.bat
  2. HashTag Kernel Toolkit
    可视化工具支持一键提取/刷入boot镜像

驱动问题排查

1
2
3
4
5
6
7
8
# 检查设备状态
adb kill-server
adb start-server
adb devices

# 更新驱动步骤:
1. 设备管理器 → 找到"Android Bootloader Interface"
2. 右键更新驱动 → 浏览计算机查找 → 从可用列表选择"Android Bootloader Interface"

安全启动配置

1
2
3
4
5
6
# 检查Secure Boot状态
Confirm-SecureBootUEFI

# 临时禁用(需管理员权限)
bcdedit /set {current} testsigning on
bcdedit /set {current} nointegritychecks on

多平台命令对照表

操作 Linux/MacOS Windows PowerShell
安装工具 sudo apt install android-tools-adb winget install platform-tools
提取boot镜像 adb pull /sdcard/boot.img adb pull /sdcard/boot.img $env:USERPROFILE\Desktop
解包镜像 ./unpackimg.sh .\unpackimg.bat
查看设备列表 lsusb Get-PnpDevice -Class USB
环境变量设置 export PATH=$PATH:/path/to/tools $env:Path += ";C:\path\to\tools"

Windows专属注意事项

  1. 使用PowerShell 7+ 而非CMD以获得完整功能
  2. 长路径问题:在注册表编辑器中启用长路径支持
    1
    2
    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem]
    "LongPathsEnabled"=dword:00000001
  3. 避免中文路径:所有工具路径建议使用英文命名
  4. 杀毒软件例外:将platform-tools目录添加到杀毒软件白名单

推荐Windows工具包:

  • Title: Android Boot分区镜像提取
  • Author: 清夏晚风
  • Created at : 2026-01-13 16:48:23
  • Updated at : 2026-01-13 16:48:23
  • Link: https://blog.kimikkorow.eu.org/计算机基础/操作系统相关/操作系统使用相关/Android/安卓搞机相关/Android Boot分区镜像提取/
  • License: This work is licensed under CC BY-NC-SA 4.0.