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