在设备上刷写 Fuchsia 映像

ffx target flash 命令可以刷写设备上的 Fuchsia 映像。

概念

Fuchsia 使用基于 Fastboot 的刷写机制在硬件设备上安装 Fuchsia 产品。Fastboot 协议(最初是属于 Android 的一部分)是一种通过 USB 或以太网与引导加载程序进行通信的机制。此机制允许您在设备的非易失性内存上刷写 Fuchsia 预构建映像。

为了能够在设备上刷写 Fuchsia 映像,设备的引导加载程序必须支持 Fastboot 模式 (Fastboot mode)。设备启动进入 Fastboot 模式后,您随后可以使用 ffx target flash 刷写设备上的 Fuchsia 映像。不过,如果设备的引导加载程序不支持 Fastboot,您需要先更新引导加载程序。更新设备的引导加载程序(以支持 Fastboot)通常需要特定于设备的类型和制造商的说明(本指南未涵盖)。

您可以从各种来源(例如 Google Cloud Storage 和项目代码库)获取 Fuchsia 预构建映像。此外,自定义预构建映像可以通过 Fuchsia 源代码检出生成。无论是哪种情况,用于刷写的预构建映像都必须与目标设备匹配。

刷写设备

如需在设备上刷写 Fuchsia 映像,请执行以下操作:

  1. 通过 USB 或以太网将设备连接到主机。
  2. 将设备启动到 Fastboot 模式

  3. 检查设备的状态:

    ffx target list
    

    此命令会输出类似于以下内容的输出:

    $ ffx target list
    NAME         SERIAL            TYPE       STATE       ADDRS/IP    RCS
    <unknown>    01234ABCD012YZ    Unknown    Fastboot    []          N
    

    验证设备的状态是否为 Fastboot

  4. 刷写设备:

    ffx target flash <FUCHSIA_IMAGE>
    

    FUCHSIA_IMAGE 替换为包含 Fuchsia 预构建映像及其 Flash 清单文件的归档文件,例如:

    $ ffx target flash ~/Downloads/fuchsia-image-example.zip
    

    刷写完成后,设备会重新启动并开始运行 Fuchsia。

启动设备进入 Fastboot 模式 (Fastboot mode)

如需触发 Fuchsia 设备启动进入 Fastboot 模式,请运行以下命令:

ffx target reboot -b

重新启动后,设备将启动到 Fastboot 模式 (Fastboot mode)。