> ## Documentation Index
> Fetch the complete documentation index at: https://dragonwingdocs.qualcomm.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 基础和高级变体的 capsule 更新

## **基础变体**

基础变体的 RPMB 可以处于已预配或未预配状态。但是，`OsIndications` 和 `OsTrialBootStatus` 等 UEFI 变量保持禁用状态。在此配置下，只有当系统在 EFI 分区的 `/EFI/UpdateCapsule/` 中检测到 capsule 文件时，才会触发 capsule 更新。系统启动 capsule 更新过程后，会更新 ESRT 表，用户可以通过内核 shell 使用 `/sys/firmware/efi/esrt/entries/entry0/` 路径访问该表。

## **高级变体**

高级变体的 RPMB 可以在两种模式下运行：已预配或未预配。

* 未预配 RPMB：即使未配置 RPMB，您也可以启动 capsule 更新。如果 UEFI 检测到 capsule，您可以通过内核 shell 查看 ESRT 表来检查更新状态。只有当系统设置了 RPMB 时，试启动和回滚功能才可用。
* 已预配 RPMB：相反，当您预配了 RPMB 后，您可以使用 UEFI 变量来确定是否触发 capsule 更新，并启用试启动和回滚功能。

下表根据 capsule 的可用性（在 EFI 中）、RPMB 预配状态和 UEFI 变量，展示了基础或高级变体的 capsule 更新和试启动回滚的可用性。

| **找到 capsule** | **RPMB 预配** | **存在 OsIndications 变量** | **存在 OsTrialBootStatus 变量** | **capsule 更新功能可用性** | **试启动回滚功能可用性** | **适用变体**        | **备注**                                                                                                                                                    |
| -------------- | ----------- | ----------------------- | --------------------------- | ------------------- | -------------- | --------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 是              | 是           | 否                       | 否                           | 是                   | 否              | （标准）基础 + 上游发行版  |                                                                                                                                                           |
| 是              | 是           | 否                       | 是                           | 否                   | 否              | 高级              | 在同一设备上从高级变体切换到基础变体时，操作系统需要擦除 RPMB 分区。要擦除 RPMB 分区，请运行以下命令。<br />`fastboot oem rpmb_erase`                                                                  |
| 是              | 是           | 是                       | 否                           | 是                   | 否              | 高级              |                                                                                                                                                           |
| 是              | 是           | 是                       | 是                           | 是                   | 是              | 高级              | <ol><li>使用 uefi\_sec Linux 应用程序将 UEFI 变量显式同步到 RPMB。</li><li>在同一设备上从高级变体切换到基础变体时，操作系统需要擦除 RPMB 分区。要擦除 RPMB 分区，请运行以下命令。</li></ol> `fastboot oem rpmb_erase` |
| 是              | 否           | 否                       | 否                           | 是                   | 否              | 基础 + 高级 + 上游发行版 |                                                                                                                                                           |

<Note>
  * 无论 RPMB 预配状态如何，都无法从 Linux 在基础变体上启用 UEFI 变量。
  * 在基础变体中，如果系统在 EFI 分区中找到 capsule，则会触发 capsule 更新。它会忽略 OsIndications 变量，并禁用试启动和回滚功能。
  * 在高级变体中，只有当 OsIndications 和 OsTrialBootStatus 变量存在时才会触发 capsule 更新。
</Note>

<div style={{ textAlign: 'center', width: '100%' }}>
  <img src="https://mintcdn.com/qualcomm-prod/eYaEBFH0xlFq53OY/System/Boot/media/k2c-qli-boot/old/advance_base_variants.png?fit=max&auto=format&n=eYaEBFH0xlFq53OY&q=85&s=f9fc6f3f7c4cb66c3776dda9ebd13f89" alt="高级和基础变体" style={{ display: 'block', margin: '0 auto' }} width="3840" height="2161" data-path="System/Boot/media/k2c-qli-boot/old/advance_base_variants.png" />
</div>

## **触发 capsule 更新**

请参阅[触发 capsule 更新](./how-to)。
