系统固件常见问题解答


  1. 什么是固件?
  2. 固件是否需要定期更新?
  3. 我在旧服务器上从来不需要更新 OpenBoot (OBP) 固件。T 系列服务器上的系统固件为何不同?
  4. 系统固件补丁自述文件中提供了什么信息?
  5. 系统固件补丁自述文件中为何列出这么多错误?
  6. 从何处获取固件补丁?
  7. “固件补丁”有何含义?
  8. 如何确定 Oracle 服务器上安装的固件版本?
  9. 客户如何访问 Oracle 服务器固件更新?
  10. 补丁 ID 与系统固件次要版本/微版本有何关系?
  11. 如何确定 Oracle 服务器是否有更新?
  12. Oracle 服务器系统固件能否降级?
  13. 升级固件之后是否需要重新启动 Oracle 服务器?
  14. 自 2013 年 4 月以来固件补丁有何变化?
  15. 什么是 Hardware Programmables?
  16. 什么是回退引导固件?

1.问:什么是固件?

答:固件本质上是嵌入硬件设备并在操作系统(如 Oracle Solaris 操作系统、Linux 或 Microsoft Windows)引导之前直接控制设备(重置、初始化和配置)的软件。实际引导操作系统的是固件,它通常包含在系统板上的某种闪存 PROM 中。

固件与操作系统不同,操作系统设计成在许多不同硬件配置上运行且占用大量磁盘空间(几十或几百 MB),而固件则通常限于几 MB(有时更少)空间,因此通常仅包含该特定硬件配置所需的代码。这正是每台 Oracle 服务器获取自己单独的固件版本的原因。特定于一种类型服务器系统的固件在不同的服务器系统上通常不起作用。


2.问:固件是否需要定期更新?

答:所有 Oracle 服务器都自带固件,出厂时即已安装于其上。但是,与任何软件一样,Oracle 也在不断改进其固件,即使是在系统开始交付之后。因此,有些情况下建议您更新系统上的固件。其中部分原因包括:

  • 支持新版本的硬件(或外围设备)
  • 扩展兼容性和增强功能
  • 提高可靠性和系统可用性
  • 提高系统性能
  • 其他系统特性
  • 安全修复程序
  • 其他错误修复


通常,Oracle 服务器可能每年只开关或重新启动几次,因此您可能会认为如果当前系统工作正常且未更改配置,则无需新固件。如果是这样,可能不必更新固件。


3.问:我在旧服务器上从来不需要更新 OpenBoot (OBP) 固件。T 系列服务器上的系统固件为何不同?

答:目前 SPARC T 系列产品线上的系统固件包括虚拟化引擎(虚拟机管理程序)。Oracle Solaris 操作系统已启动,系统固件仍在运行,这与过去 OBP 的情况不同,OBP 在操作系统启动之后几乎什么也不做。


除了需要 Oracle Solaris 操作系统级的新改进之外,Oracle VM Server for SPARC (LDoms) 虚拟化特性海依赖于系统固件中运行的虚拟机管理程序和 Oracle VM Server for SPARC Manager 软件运行。Oracle Solaris 中的虚拟化特性集与系统固件中对应的虚拟机管理程序应版本紧密结合。除了新特性之外,还有错误修复和性能改进。如果需要更新或修补 Oracle Solaris 操作系统,您还应升级系统固件。


4.问:系统固件补丁自述文件中提供了什么信息?

答:每个 Oracle 服务器系统固件版本均包含一个补丁自述文件,介绍该固件版本中所做更改。该自述文件将包含一个标准的头区域,以及以下说明部分:

  • 此补丁修复的错误 Id:
    该部分包括与基础补丁 ID 相关的所有错误的完整列表,从 -01 版本开始。为了便于浏览,这些错误通常按数字顺序排列。
  • 此版本中引入的更改:
    此部分所列错误是“此补丁修复的错误 ID”的一个子集,仅包括基础补丁 ID 新近子发布中修复的错误。
  • 问题描述:
    此部分还列出了“此补丁修复的错误 ID”部分中的错误,只不过按子发布增量分隔,同时每行列出一个错误,并包含摘要。
  • 特别安装说明:
    此部分将包括一系列说明,其中有些是 Oracle 系统固件的标准内容,例如:
    • 此版本包括的附件组件版本 — 列出发布版本及所有组件版本。
    • 关于与 Oracle VM Server for SPARC (LDOM) 特性的兼容性的建议
    • 到任何开源组件的指针

建议您每次在服务器上安装系统固件之前阅读这些说明。


5.问:系统固件补丁自述文件中为何列出这么多错误?

答:此问题有两个答案。首先,Oracle 服务器系统固件的错误修复数高于一些旧的服务器系统,因为固件本身的功能远比先前的系统多,如上所述。平均来说,各版本中,功能越多,错误修复数就越高。


其次,Oracle 系统固件对所有 SPARC 服务器系统使用一个公共源库。给定系统 README 中的“已修复错误”列表将包含该系统特定的错误修复,以及已知与多个(或所有)系统相关的错误修复,且随着支持的系统数增加,共享错误数也会增长。完整描述每个错误修复与给定系统的相关性不切实际,因此我们依据披露越多越好的原则,列出已知相关或因其他原因而在已知公用代码中的所有错误。也就是说,我们从所有其他类型系统的 README 列表中排除已知特定于给定系统的错误修复。


6.问:从何处获取固件补丁?

答:固件可从 My Oracle Support 的 Patches and Updates 选项卡中下载。使用 Product or Family (Advanced) Search 在 Product 域中输入 Oracle 服务器名称,然后点击 Search 按钮。您需要有一个有效的 Oracle 支持合同或硬件保修,才能有权访问固件更新。Oracle 提供了有关 Oracle 硬件系统支持政策的更多信息。

截至 2015 年 10 月和 Solaris 11.3 版,Oracle Solaris IPS 支持信息库中现已提供选定 SPARC 服务器系统的平台固件更新,此外,My Oracle Support 中还提供了 .zip 文件下载。安装或更新固件 IPS 软件包会将文件传递到 /var/firmware/system/server-type 中,但并不会自动更新服务器的固件。您仍然需要按照自述文件中的说明执行手动步骤。

为确定适合您平台的固件更新软件包,请使用以下命令:

# pkg list -af 'firmware/system/*'

您可以使用 pkg contentspkg info 命令获取有关适合您平台的固件软件包的更多信息。

有关 pkg listpkg contentspkg infopkg installpkg update 命令的更多信息,请参见在 Oracle Solaris 11.3 中添加和更新软件。有关固件更新的更多信息,请参见 Oracle ILOM 特性更新和版本说明固件版本 3.2.x



7.问:“固件补丁”有何含义?

答:这是一个经常被误解的概念!术语“补丁”有双重含义:
 
  • 在 Oracle Solaris 操作系统中,“补丁”是一种更改版本中的少量部分而不替换整个版本的办法。
  • “补丁”也只是一个用于描述通过 My Oracle Support 站点交付的任何更新的术语。


因此,虽然提供的所有 Oracle Solaris 补丁均带有一个补丁 ID 作为标识符,但并非所有补丁提供的内容实际都是 Oracle Solaris 补丁。事实上,补丁可以是一个包含喜爱的蛋糕配方的简单文本文件(打个傻傻的比方)。对于给定补丁 ID 发布内容的类型、数量或目的并无限制。

因此,对于 Oracle 服务器固件,每个版本都是一个完整、独立、功能齐备 的映像,完全取代 进行升级的映像。对于 Oracle 服务器固件,没有部分升级这种说法。因此,对于每个单独的固件版本,Oracle 会打包成一个 zip 文件,包括 README、各种法律及文档支持文件、完整 的二进制替换映像,还经常包括用于将该版本下载到目标系统的 Oracle Solaris 实用程序。Oracle 从未发布任何非完全完整功能的固件映像,因此上列“补丁”的第一个定义对于 Oracle 服务器固件而言并无意义。


8.问:如何确定 Oracle 服务器上安装的固件版本?

答:每个固件版本均包括一个 Install.info 文件,其中提供了有关如何确定您的 Oracle 服务器上安装了哪些固件组件版本的信息。


9.问:客户如何访问 Oracle 服务器固件更新?

答:Oracle 在 My Oracle Support 站点上提供了固件补丁以供下载。您需要有一个有效的 Oracle 支持合同或硬件保修,才能有权访问固件更新。Oracle 提供了有关 Oracle 硬件系统支持政策的更多信息。


10.问:补丁 ID 与系统固件次要版本/微版本有何关系?

答:SunSolve 补丁 ID 由 6 位数字组成,后面接一个连字符加 2 位数字 (XXXXXX-YY)。6 位数字是补丁的基础编号,2 位数字 (-YY) 是该补丁的修订号。每个新的补丁 ID 都是从版本 -01 开始。


对于大多数 OBP 和 Oracle 服务器系统固件 (SysFW) 版本,Oracle 的一个 SunSolve 基础补丁 ID 专门用于一个服务器系统的一个次要版本系列。例如,Sun Fire T1000 服务器已有跨越 6 个次要版本的发布,如表 1 所示。

表 1:Sun Fire T1000 服务器次要版本

Sun Fire T1000 SysFW 次要版本
SunSolve 补丁基础 ID
SysFW 6.1.x
122431-xx
SysFW 6.2.x
123481-xx
SysFW 6.3.x
124751-xx
SysFW 6.4.x
126400-xx
SysFW 6.5.x
127577-xx
SysFW 6.6.x
136928-xx
SysFW 6.7.x
139435-xx

虽然有其他几个服务器系统发布了 SysFW 6.7 版本,但除 Sun Fire T1000 服务器之外,没有其他服务器使用 139435 基础补丁 ID。

此外,对于一个给定的次要版本系列,一个给定系统可能发布了多个微版本,通常是修复重要错误。发布新的微版本时,Oracle 使用相同的基础补丁 ID,然后就递增补丁版本号(例如,01 递增到 02)。例如,Sun Fire T1000 服务器发布了 3 个 SysFW 6.5 微版本,如表 2 所示。

表 2:Sun Fire T1000 服务器微版本

Sun Fire T1000 SysFW 6.5 微版本
SunSolve 补丁 ID
SysFW 6.5.3
127577-01
SysFW 6.5.5
127577-02
SysFW 6.5.11
127577-03

注意,对于 Sun Fire T1000 服务器而言,微版本号不是连续的(6.5.3、6.5.5、6.5.11)。这是因为 SysFW 版本编号是相对于固件本身而不是系统的,Oracle 并不是在每个系统上发布每个 SysFW 版本。因此,一个给定系统的连续微版本跳过几个微版本编号的情况并不少见。也就是说,一个给定系统的连续微版本的确有连续的 SunSolve 补丁版本号,如表 2 所示。


11.问:如何确定 Oracle 服务器是否有更新?

答:该表汇总了 Oracle SPARC 系统固件的当前版本。


您还可以搜索 My Oracle Support Patches and Updates 选项卡,并在 Patch Search 窗口中使用 Product or Family (Advanced) Search 来搜索 Oracle 系统的产品名称和可用版本。对于一个特定系统,可能有多个不同的固件补丁可用。例如,Sun Fire T2000 服务器已有多个固件次要版本(6.1.x、6.2.x、6.3.x、6.4.x、6.5.x、6.6.x 和 6.7.x)。其中每个 6.x 次要版本都分配了一个唯一的补丁 ID 号,每个 6.x.y 微版本成为该补丁的一个后续修订。

以下是 Sun Fire T2000 系统可用固件补丁的一个示例:

  • Patch 139434-01 System Firmware 6.7.0(6.7.x 次要版本的当前补丁修订版)
  • Patch 136927-03 System Firmware 6.6.7(6.6.x 次要版本的当前补丁修订版)
  • Patch 127576-03 System Firmware 6.5.11(6.5.x 次要版本的当前补丁修订版)
  • Patch 126399-02 System Firmware 6.4.6(6.4.x 次要版本的当前补丁修订版)
  • Patch 124750-08 System Firmware 6.3.12(6.3.x 次要版本的当前补丁修订版)
  • Patch 123482-03 System Firmware 6.2.6(6.2.x 次要版本的当前补丁修订版)
  • Patch 122430-06 System Firmware 6.1.13(6.1.x 次要版本的当前补丁修订版)


Oracle 系统手册Oracle Solaris 操作系统硬件兼容性列表 (HCL) 也提供了一些有关 Oracle 服务器可用固件补丁更新的信息。


12. 问:Oracle 服务器固件能否降级?

答:您始终可以升级到新固件,但不保证能降级。降级是否起作用依赖于系统的硬件配置和软件体系其余部分(Oracle Solaris 操作系统、补丁等)是否依赖于更新的固件。如果存在依赖关系并且您降级了,可能会发现甚至无法启动系统。因此一般来说,除非您确定兼容性对照表已经过验证,否则应避免降级。而且,降级可能导致失去某些特性或功能,这应该是显而易见的。例如,LDoms 1.0.1 需要 System Firmware 版本 6.5.x。降级到 6.4.6 将破坏 LDoms 的功能。


13.问:升级固件之后是否需要重新启动 Oracle 服务器?

答:补丁 Install.info 文件中包含关于在系统上刷新新固件的说明。刷新更新固件时需要关闭系统。


14.问:自 2013 年 4 月以来固件补丁有何变化?


答:如以上常见问题解答中所述,付诸实践之前需要发布 System Firmware 补丁,其形式与用于 Oracle Solaris 10 内容的形式类似。System Firmware 补丁通过 123456-01 形式的补丁 ID 区分。自 T5 和 M5 服务器系统上的 System Firmware 9.0 发布开始,Oracle 将通过 MyOracle Support 所用的标准 8 位 Oracle 补丁标识符发布此固件。

更改内容:
SPARC T5/M5 固件补丁现在将使用原生 MyOracle Support (MOS) 补丁编号。与以前不同,这些编号对每个增量版本是唯一的,以前对于一个给定系列的次要发布版本,基础补丁 ID(如 123456)将保持相同,而 2 位补丁修订号将随每个新发布而递增。

MOS 版本标识现已改进。可搜索的产品是硬件平台名称,但现在每种类型的版本都可以搜索,而不总是只看到一个 1.0 版,其中包含该平台的所有已发布补丁(这难以搜索和筛选)。例如,以前搜索 Product“SPARC T4-1”将只返回一个版本“SPARC T4-1 1.0”。现在搜索 Product“SPARC T5-2”将显示所有版本类型,包括 System Firmware、HW Programmables 和 LSI Firmware。您将可以按发布的次要版本(如 9.0、9.1 等)筛选搜索。

Platform 名称现为“Generic Platform”,而非冗长且不准确的“Oracle Solaris on SPARC (32-bit)”和“Oracle Solaris on SPARC (64-bit)”。

Oracle System Firmware 发布的 README 文件已经简化,现在是 HTML 格式。

下载的 MOS 补丁的顶级目录略有更改。现在它包含一个新的 Firmware 子目录,其中有实际的固件二进制对象和相关元数据,以及此硬件平台的相关安装说明和工具。内容大部与旧的固件补丁发布内容相同。

Oracle System Firmware .pkg 文件的格式和内容未变,可包含用于将其加载到平台上的 sysfwdownload 实用程序。


15.问:什么是 Hardware Programmables?

答:SPARC T5 和 M5 平台引入了一个更新“硬件可编程设备”(如 FPGA、SEEPROM 等)的新功能,您可以通过 Service Processor 进行访问。以前这些更新在生产中即已完成,服务人员将根据需要现场替换受影响的电路板。但支持现场更新而不更换硬件可以有一个明显的优点,就是响应速度更快,停机时间更短。

为支持此功能,Oracle 创建了一类新的名为“Hardware Programmables”的固件发布,列在 MyOracle Support 中该名称下面。Hardware Programmable 版本将通过与通常的 Oracle System Firmware 更新分开的单独可下载补丁与每个受支持的 SPARC 平台关联。Hardware Programmables 版本本质上不是累计式的。每个可用的 Hardware Programmables 版本可以为独立硬件组件提供更新的功能。客户需要确定哪些 Hardware Programmable 版本可能适用于其平台,然后安装需要更新的版本。

切记,除 Oracle System Firmware 之外还有其他类型的固件,这些固件单独发布,不与这些新 HW Programmables 版本一起。


16.问:什么是回退引导固件?

答:SPARC M7 和 T7 平台引入了一个从 iSCSI 设备上的非本地根存储池启动的新功能。回退引导映像是 Oracle Solaris 操作系统的一个小版本,名为微型根 (miniroot),存储在一个或多个服务处理器上。SPARC M7 和 T7 服务器预先配置了回退引导映像。如果在引导期间非本地根存储池不可用,将使用回退引导过程重新配置根设备位置。

回退引导过程期间,一旦从微型根加载内核,即已配置根设备。此配置包含到 iSCSI 设备上根池位置的指针。接下来,导入根池,并将引导存档加载到保留内存中。然后从引导存档重新引导系统并重复引导过程,开始加载内核。但第二次引导中的内核是来自引导存档,而不是回退映像中的微型根。

回退引导固件映像定期更新,保持与 Oracle Solaris 11.3 的新近受支持版本同步。客户应定期更新回退引导固件映像,以保持与其 M7/T7 系列服务器上运行的 Oracle Solaris 版本同步。


评价

Oracle 服务器和存储系统论坛就该资源进行讨论和评价