09-软件升级配置
本章节下载: 09-软件升级配置 (289.57 KB)
软件升级用于对软件包进行版本升级、增加特定软件特性或是对软件缺陷进行修复。本章简要介绍了软件升级涉及的主要软件包类型、软件升级方式、以及如何从命令行通过Boot-Loader方式对软件进行升级。
软件升级涉及的软件包有:BootWare程序和Comware软件包。
也称为Boot ROM程序,包括基本段和扩展段。基本段用于引导系统启动。扩展段用于硬件初始化并提供系统管理菜单。在设备无法正常启动时,用户可通过这些菜单加载软件和下次启动配置文件,并管理文件。为避免软件适配错误,BootWare程序通常集成到Comware软件的Boot包中。
(1) Boot包:包含Linux内核程序,提供进程管理、内存管理、文件系统管理等功能的.bin文件。
(2) System包:包含Comware内核和基本功能模块的.bin文件,比如设备管理、接口管理、配置管理和路由模块等。
(3) Feature包:包含高级或定制业务的.bin文件。用户可根据需要购买Feature包。
(4) 补丁(Patch)包:用来修复设备软件缺陷的.bin程序文件。补丁包只能修复启动软件包的缺陷,不涉及功能的添加和删除。所以补丁包只有安装而没有升级的说法。补丁包分为叠加补丁包和非叠加补丁包,具体定义如下:
¡ 叠加补丁包:两个版本的叠加补丁包之间所解决的问题可以是包含、不包含或不完全包含的关系。只有当两个版本的叠加补丁包之间所解决的问题为不包含的关系时,设备才可以同时安装这两个补丁包。
¡ 非叠加补丁包:新版本的补丁包包含旧版本的补丁包所解决的所有问题,每个Boot、System和Feature包只能安装一个非叠加补丁。为同一个Boot、System或Feature包安装新版本补丁包的同时,设备会卸载旧版本的补丁包。为Boot、System或Feature包安装的非叠加补丁包可以同时安装在设备上。
叠加补丁包和非叠加补丁包可以同时安装到设备上。
设备必须具有Boot包和System包才能正常运行。
设备上可安装的软件包(包括Boot包、System包、Feature包和补丁包)共为32个,其中Boot包和System包只能安装一个,Feature包和补丁包总共可安装30个。
软件包有如下两种发布形式:
· 以.bin文件的形式独立发布。这种发布形式需要用户关注软件包之间的适配关系。
· 打包为.ipe的IPE(Image Package Envelope,复合软件包套件)文件发布,减少软件包之间的版本适配错误。设备在加载IPE文件时,会自动将它解压缩成多个.bin文件,并使用这些.bin文件来升级设备。
软件包文件的名称采用“设备简称-Comware版本-软件包类型-release号”的形式。在本文档中,Boot包和System包的文件名统一采用boot.bin和system.bin。
表1-1 软件升级方式
升级方式 |
升级对象 |
说明 |
通过命令行的Boot-Loader方式升级 |
· BootWare程序 · Comware软件包(该方式不能升级补丁包) |
该方式需要重启设备,会导致当前业务中断 |
通过命令行的ISSU方式升级 |
Comware软件包 |
ISSU是一种高可靠性升级方式,推荐使用该方式升级 关于该方式的详细描述请参见“基础配置指导”中的“ISSU” |
通过BootWare菜单进行升级 |
· BootWare程序 · Comware软件包 |
该方式用于无法启动Comware系统时进行软件升级和修复 该升级方式需要连接到Console接口,断电重启。启动过程中根据提示按<Ctrl+B>进入BootWare菜单,通过BootWare来重新加载软件包,具体操作请参见产品随软件发布的版本说明书 |
本章仅涉及如何通过命令行的Boot-Loader方式进行软件升级。
在进行软件升级时,用户需要将升级软件包指定为启动软件包,作为设备下次启动时加载的软件包。
在升级时,用户可为设备指定主用启动软件包和备用启动软件包。加载软件包时,系统会优先选择主用软件包。只有当主用软件包不可用时,才会选择备用软件包。
设备加载并初始化BootWare之后,会按如下流程来选择加载的启动软件包,进入Comware系统:
(1) 优先加载主用软件包。
(2) 如果任何指定的主用软件包不存在或不可用,尝试加载备用软件包。
(3) 如果任何指定的备用软件包不可用,查看主用Boot包或者备用Boot包是否可用。
如果主用Boot包或者备用Boot包均不可用,设备加载失败,无法正常启动。
数字签名机制用于保证软件包的合法性和完整性,确保设备安装的软件安全可用。
软件包发布后,在传输、下载、存储、安装这些环节中,存在被替换或组件被篡改的安全隐患。为了解决这个问题,产品在发布软件包时,会对软件进行数字签名,并将生成的数字签名信息打包到软件包中一起发布。以下场景中,设备会对软件包进行数字签名的验证,认证通过之后才认为该软件包是完整的、可信的:
· 设备启动过程中,在加载启动软件包前会对启动软件包进行数字签名校验,如果软件包通过校验则会被加载;如果软件包未通过校验则不会被加载,并返回错误提示信息。
· 通过BootWare菜单进行升级的过程中,系统会在用户指定启动软件包时进行数字签名校验,如果软件包通过校验则指定成功;如果软件包未通过校验则指定失败,并返回错误提示信息。
· 系统将文件系统中的BootWare程序加载到BootWare的Normal区前会对文件系统中包含BootWare程序的文件进行数字签名校验,如果文件通过校验则会被加载;如果文件未通过校验则不会被加载,并返回错误提示信息。
· 通过Boot-Loader方式配置设备下次启动时使用的软件包时,设备在修改启动软件包列表前会对软件包进行数字签名校验,如果软件包通过校验则会替换现有的软件包列表;如果软件包未通过校验则不会替换现有的软件包列表,并返回错误提示信息。
· 配置安全引擎的加载软件包时,系统在将指定软件包备份到所有主控板前会对软件包进行数字签名校验,如果软件包通过校验则会备份到所有主控板;如果软件包未通过校验则不会备份到所有主控板,并返回错误提示信息。
· 配置PEX设备的加载软件包时,系统在备份软件包前会对软件包进行数字签名校验,如果软件包通过校验则会进行备份;如果软件包未通过校验则不会备份,并返回错误提示信息。
· 通过ISSU方式指定设备的启动软件包时,系统在升级设备的启动软件包并将设备的主用下次启动软件包设置为指定的软件包前会对软件包进行数字签名校验,如果软件包通过校验则升级设备的启动软件包并将设备的主用下次启动软件包设置为指定的软件包;如果软件包未通过校验则不会升级设备的启动软件包并将设备的主用下次启动软件包设置为指定的软件包,并返回错误提示信息。关于ISSU的详细介绍,请参见“基础配置指导”中的“ISSU”。
· 激活Feature包或补丁包前,系统会对Feature包或补丁包进行数字签名校验,如果软件包通过校验则激活Feature包或补丁包;如果软件包未通过校验则不激活Feature包或补丁包,并返回错误提示信息。
如果将可插拔存储介质内的软件包指定为设备下次启动时使用的软件包,重启设备时不要将可插拔存储介质从设备上拔出,否则可能导致设备无法正常启动。建议将固定存储介质中的软件包指定为设备下次启动时使用的软件包。
业务板的BootWare程序和启动软件包集成在主控板的BootWare程序和启动软件包中。系统在升级主控板时会自动升级业务板,不需要单独升级业务板。
(1) (可选)加载BootWare程序:
预先加载BootWare程序能缩短后续软件包升级的时间,减小升级过程中断电引起的升级失败。如果未执行本步骤,那么设备在升级Boot包时会自动升级BootWare程序。
(2) 指定下次启动软件包并完成升级
全局备用主控板的软件与全局主用主控板的软件不一致时,可通过本任务将全局主用主控板的启动软件包同步到全局备用主控板。
升级设备软件前,请进行如下操作:
(1) 使用display version命令查看设备当前运行的BootWare程序以及启动软件的版本。
(2) 获取新软件的版本发布说明书,了解新软件的版本号、软件大小以及和当前运行的BootWare程序以及Comware软件的兼容性。
(3) 通过版本发布说明书了解将安装的软件包是否需要License。如果需要,查看设备上是否有对应的有效的License。如果没有,请先安装License。否则,会导致软件包安装失败。
(4) 使用dir命令查看存储介质是否有足够的空间存储新的软件。如果存储空间不足,可使用delete命令删除一些暂时不用的文件。关于dir和delete命令的详细描述请参见“基础配置命令参考”中的“文件系统管理”。
请保证系统中所有的主控板都有足够的存储空间。
(5) 使用FTP、TFTP方式将新软件包下载到任一文件系统的根目录下。FTP、TFTP和文件系统管理的具体配置和介绍请参见“基础配置指导”中的“FTP和TFTP”和“文件系统管理”。
(1) 进入系统视图。
system-view
(2) (可选)开启升级时的合法性检查功能。
bootrom-update security-check enable
缺省情况下,BootWare升级时的合法性检查功能处于开启状态。
该功能用于检查BootWare文件的有效性以及硬件兼容性,保证BootWare正确升级。
(3) 返回用户视图。
quit
(4) (可选)备份当前运行的BootWare程序。请选择其中一项进行配置。
¡ 将BootWare程序从BootWare的Normal区备份到Backup区。
bootrom backup chassis chassis-number slot slot-number-list [ all | part ]
执行本命令后,若在设备运行过程中,Normal区的BootWare程序损坏或者需要版本回退,可以使用bootrom restore命令将BootWare程序从Backup区恢复到Normal区。
¡ 将BootWare程序从BootWare的Normal区备份到缺省文件系统中。
bootrom read chassis chassis-number slot slot-number-list [ all | part ]
成功执行本命令后,系统会自动生成basicbtm.bin(BootWare基本段)和extendbtm.bin(BootWare扩展段)文件并保存到缺省文件系统中。
(5) 加载新的BootWare程序。
bootrom update file file chassis chassis-number slot slot-number-list [ all | part ]
执行本命令后,系统会将文件系统中的BootWare程序加载到BootWare的Normal区。
系统将文件系统中的BootWare程序加载到BootWare的Normal区前会对文件系统中包含BootWare程序的文件进行数字签名校验,如果文件通过校验则会被加载;如果文件未通过校验则不会被加载,并返回错误提示信息。
要使新的BootWare程序生效,需要重启设备。
请在用户视图下执行以下操作。
(1) 为所有主控板指定启动软件包。请选择其中一项进行配置。
¡ boot-loader file ipe-filename all { backup | main [ undecompressed ] }
¡ boot-loader file boot filename system filename [ feature filename&<1-30> ] { all | chassis chassis-number slot slot-number } { backup | main }
成功执行本命令后,系统在用命令中指定的软件包替换现有的软件包列表前会对软件包进行数字签名校验,如果软件包通过校验则会替换现有的软件包列表;如果软件包未通过校验则不会替换现有的软件包列表,并返回错误提示信息。
设备会将指定路径下的软件包拷贝到所有主控板缺省文件系统的根目录下并设置为启动软件包。
建议使用all参数升级软件包,逐一升级slot会导致升级期间slot之间的版本不一致。
(2) 保存当前配置。
save
(3) 重启设备。
reboot
(4) (可选)可选检查升级后的软件版本。
display version
确认当前的软件版本为升级后的版本。
本任务用于全局备用主控板和全局主用主控板软件版本不一致时,刷新全局备用主控板的软件版本,使其软件版本和全局主用主控板当前运行的软件版本保持一致。
在进行软件同步时,系统会进行如下处理:
· 如果全局主用主控板是使用主用启动软件包启动的,则将其主用启动软件列表中的软件包拷贝到全局备用主控板的对应目录下,并设置为全局备用主控板的主用启动软件包。如果这些软件包中有任一软件包不存在或者不可用,则命令执行失败。
· 如果全局主用主控板是使用备用启动软件包启动的,则将其备用启动软件包列表中的软件包拷贝到全局备用主控板的对应目录下,并设置为全局备用主控板的主用启动软件包。如果这些软件包中有任一软件包不存在或者不可用,则命令执行失败。
如果全局主用主控板刚安装了补丁或者进行了ISSU升级,在执行本命令前,请执行install commit命令刷新全局主用主控板的主用启动软件包列表。否则,会导致全局备用主控板的主用启动软件包列表与全局主用主控板当前运行的软件包不一致。
请在用户视图下执行以下操作。
(1) 指定需要同步全局主用主控板的全局备用主控板。
boot-loader update { all | chassis chassis-number slot slot-number }
(2) 重启涉及同步的全局备用主控板。
reboot [ chassis chassis-number [ slot slot-number ] ] [ force ]
如果在设备运行过程中,Normal区的BootWare程序损坏或者需要版本回退,可使用本配置,将BootWare程序从Backup区恢复到Normal区,来修复BootWare。
若Normal区的BootWare程序被损坏或需要版本回退,须保证在此之前使用过bootrom backup命令将可用的BootWare程序从BootWare的Normal区备份到Backup区。
请在用户视图下执行以下操作。
(1) 将BootWare程序从BootWare的Backup区恢复到Normal区。
bootrom restore chassis chassis-number slot slot-number-list [ all | part ]
(2) 重启设备。
reboot
启动时,设备使用修复后的BootWare程序。
在完成上述配置后,可在任意视图下执行display命令,通过查看显示信息验证配置的效果。
在用户视图下执行reset命令可以清除启动软件包配置。
操作 |
命令 |
显示本次启动和下次启动所采用的启动软件包的名称 |
display boot-loader [ chassis chassis-number [ slot slot-number ] ] |
显示安全引擎的启动软件包列表 |
display boot-loader blade [ blade-model ] |
清除安全引擎的启动软件包配置 |
reset boot-loader blade blade-model |
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!