05-配置文件管理
本章节下载: 05-配置文件管理 (237.39 KB)
目 录
配置文件管理是设备提供的用于管理配置文件的一项功能。它具有较好的命令行接口,方便用户对配置文件进行管理。
配置文件是命令行的集合。用户将当前配置(一条条命令行)保存到配置文件中,以便设备重启后,这些配置能够继续生效。另外,通过配置文件,用户可以非常方便地查阅配置信息也可以将配置文件上传/下载到别的设备,来实现设备的批量配置。
设备上的配置分为以下三种:
设备在出厂时,通常会被安装一些基本的配置,称为出厂配置,用来保证设备在没有配置文件或者配置文件丢失、损坏的情况下,能够正常启动、运行。
出厂配置与设备型号相关,在设备第一次启动时使用display current-configuration命令显示的就是设备的出厂配置。
当设备启动时,根据读取的配置文件,进行初始化工作,该配置称为起始配置或者启动配置(startup-configuration);如果设备中没有配置文件,则系统使用出厂配置作为起始配置。
可以通过以下方式查看起始配置:
· 使用display startup查看当前使用的启动配置文件,再使用more命令查看该配置文件的内容;
· 设备启动后还没有进行配置前,立即使用display current-configuration命令查看。
与起始配置相对应,系统当前正在使用的配置称为当前配置(current-configuration)。它可能包括起始配置(如果起始配置在设备运行过程中没有被用户修改的话),还包括运行过程中用户追加的配置。当前配置存放在设备的临时存储器中,如果不保存,设备重启之后可能会失效。
可以使用display current-configuration命令查看设备的当前配置。
配置文件为一个文本文件,其保存规则如下:
· 配置文件的内容为命令行,且只保存非缺省配置;
· 配置文件以命令视图为基本框架,同一命令视图的命令组织在一起,形成一节,节与节之间通常用空行或注释行隔开(以#开始的为注释行,空行或注释行可以是一行或多行);
· 文件中各节的安排顺序通常为:系统配置、接口配置、各种协议配置和用户界面配置;
· 以return结束。
存储介质上可以同时存放多个配置文件。用户可以将设备在多个使用环境下的配置保存成多个配置文件,当设备在网络中移动时,通过指定下次启动配置文件并重启设备,可以使设备以新的配置迅速适应切换后的网络环境,节省重新配置的工作量。而且多配置文件可以方便用户的备份、修改、恢复等操作,提高设备的可靠性。
系统启动时,配置文件的选择遵循以下规则:
(1) 如果配置文件存在,则用配置文件初始化配置。
(2) 如果配置文件不存在,则以出厂配置启动。
用户通过命令行可以修改设备的当前配置,而这些配置是暂时的,如果要使当前配置在系统下次重启时仍然有效,在重启设备前,需要将当前配置保存到配置文件中。
表1-1 保存当前配置任务简介
配置任务 |
说明 |
详细配置 |
使能配置文件加密功能 |
可选 |
|
保存当前配置 |
必选 |
配置文件加密功能的支持情况与设备的型号有关,请参见“配置指导导读”中的“特性差异情况”部分的介绍。
配置文件加密功能就是在保存当前配置(即执行save操作)时,先将当前的有效配置加密,再进行保存;如果要读取被加密的配置文件,则必须使用合法的密钥先进行解密,从而达到保护配置文件的效果。设备支持使用两种密钥来对配置文件进行加密,用户可以根据实际应用环境进行选择:
· 私有密钥,使用这种密钥加密的配置文件只能被本设备解密和识别,不能被其它设备解密和识别。
· 公有密钥,使用这种密钥加密的配置文件可以被所有支持配置文件加密功能的设备解密和识别。
表1-2 使能配置文件加密功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
使能配置文件加密功能 |
configuration encrypt { private-key | public-key } |
可选 缺省情况下,配置文件加密功能处于禁用状态,即直接将当前生效的配置保存到配置文件中 |
在支持本特性的设备上,可以使用display saved-configuration查看被加密的配置文件,但不能使用more命令查看(more命令没有解密功能,使用more命令查看配置文件内容时会提示失败或显示乱码)。
配置的保存方式有两种:
· 快速保存方式,执行不带safely参数的save命令。这种方式保存速度快,但是保存过程中如果出现设备重启、断电等问题,原有配置文件可能会丢失。
· 安全方式,执行带safely参数的save命令。这种方式保存速度慢,即使保存过程中出现设备重启、断电等问题,原有配置文件仍然会保存到设备中,不会丢失。
在电源稳定程度较好的环境中,推荐用户使用快速保存方式保存配置文件;在电源环境恶劣或者远程维护等情况,推荐用户使用安全模式保存配置文件。
表1-3 保存当前配置
操作 |
命令 |
说明 |
将当前配置保存到指定文件,但不会将该文件设置为下次启动配置文件 |
save file-url |
二者必选其一 该命令可在任意视图下执行 |
将当前配置保存到存储介质的根目录下,并将该文件设置为下次启动配置文件 |
save [ safely ] [ force ] |
· 配置文件名后缀必须为“.cfg”。
· 执行save命令时,如果出现设备重启、断电等问题,可能会造成下次启动配置文件丢失,这时,设备将以出厂配置启动。设备启动后,用户需要重新设置下次启动配置文件(请参见“1.4 设置下次启动配置文件”)。
配置回滚是将当前的配置回退到指定配置文件中的配置状态。该配置文件必须是有效的.cfg文件,它可以使用手工/自动备份功能或者save命令生成,也可以是别的设备的可兼容配置文件,推荐使用手工/自动备份功能生成。配置回滚主要应用于:
· 当前配置错误,但错误配置太多不方便定位或逐条回退,需要将当前配置回滚到某个正确的配置状态。
· 设备的应用环境变化,需要使用某个配置文件中的配置信息运行,在不重启设备的情况下将当前配置回滚到指定配置文件的状态。
配置回滚的基本步骤如下:
(1) 用户必须先设置备份配置文件的路径和文件名前缀;
(2) 系统将当前配置以指定的文件名(前缀+序号)备份到指定路径。这个备份有两种方式:一种是系统按照一定的时间周期自动备份,另一种是用户用命令行在必要时手工触发备份;
(3) 将当前配置回滚到指定配置文件的状态。配置回滚时,系统会比较、处理当前配置和配置文件中配置的差异:
· 对于当前配置与回滚配置文件中的相同命令,回滚操作将不做处理;
· 对于在当前配置但不在回滚配置文件的命令,回滚操作将取消当前配置中的配置命令,即执行相应的undo命令;
· 对于存在于回滚配置文件但不存在于当前配置的命令,回滚操作将执行这些命令;
· 对于当前配置和回滚配置文件中不同的命令,配置回滚将先取消这些配置,再执行回滚配置文件中的相应命令。
表1-4 配置回滚配置任务简介
配置任务 |
说明 |
详细配置 |
设置备份参数 |
必选 |
|
自动备份当前配置 |
二者至少选其一 |
|
手工备份当前配置 |
||
配置回滚 |
必选 |
自动或手动备份当前配置前必须设置备份配置文件的保存路径和文件名前缀。设置这些参数后,备份当前配置时,系统会将当前的配置以指定的文件名(格式为前缀_序号.cfg)保存到指定的路径。备份配置文件名形如20080620archive_1.cfg、20080620archive_2.cfg,备份序号由设备自动生成,从1开始编号,依次加1,累加至1000后又重新从1开始。修改备份配置的保存路径、文件名前缀,或设备重启后,备份序号也会从1开始重新自动编号,备份配置文件将重新计数,原路径下的备份配置文件将被视为普通配置文件,不再作为备份配置文件处理,查看备份配置文件时将不会显示此类文件的信息。
系统内能够保存的备份配置文件的数目有一定限制。当备份配置文件数目到达上限,又需要保存新的备份配置文件时,系统会删除保存时间最早的备份文件,以保存新的备份配置文件。
表1-5 设置备份参数
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
设置备份配置文件的保存路径和文件名前缀 |
archive configuration location directory filename-prefix filename-prefix |
必选 缺省情况下,系统没有配置备份配置文件的保存路径和文件名,也不会定时备份配置 |
系统允许保存的备份配置文件的最大数 |
archive configuration max file-number |
可选 缺省情况下,系统最多允许保存5个备份配置文件 |
· 执行undo archive configuration location命令后,用户将不能进行手工备份当前配置,系统也不再自动备份当前配置,archive configuration interval和archive configuration max的配置也会恢复到缺省情况,已保存的备份配置文件记录也会被清除。
· file-number的具体数值应根据系统的空余存储空间大小来决定。对于存储空间较小的设备,建议将该参数设为较小值。
用户可以使用本特性按照一定的时间间隔自动备份当前配置,使用display archive configuration命令可以查看到备份配置文件的名称和备份时间,以便用户可以将当前配置回退到某一历史时刻。
使用本特性时应根据设备存储介质的性能和修改配置的频繁程度来设置自动备份的时间间隔:
· 对于不会频繁修改配置的设备,建议按需手动备份当前配置;
· 对于使用低速存储介质(如Flash)的设备,建议不进行自动备份配置,或设置备份时间间隔大于1440分钟(24小时);
· 对于使用高速存储介质(如CF卡),且配置经常修改的设备,可以设置较小的备份时间间隔。
表1-6 自动备份当前配置
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
使能自动备份当前配置功能,并设置自动备份的时间间隔 |
archive configuration interval minutes |
可选 缺省情况下,系统不会自动备份当前配置 |
设置自动备份配置时间间隔前必须指定备份配置文件的保存路径和文件名前缀。
因为自动备份当前配置需要占用一定的系统资源,如果备份频率较高,对系统性能的影响也较大。因此,在设备维护过程中配置比较稳定(即不会频繁修改配置)的情况下,建议关闭自动备份功能,使用手工备份。
另外,自动备份是按照一定的时间周期进行的,手工备份能立即备份当前配置。当需要对设备进行步骤复杂的配置时,可以在修改配置前手工备份当前配置。以便配置过程中出现失败时,可以使用已备份的配置直接将当前配置回滚至配置改变前的状态。
表1-7 手工备份当前配置
操作 |
命令 |
说明 |
手工备份当前配置 |
archive configuration |
必选 该命令在用户视图下执行 |
手工保存备份配置前必须指定备份配置的保存路径和文件名前缀,否则备份失败。
表1-8 配置回滚
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置回滚 |
configuration replace file filename |
必选 |
命令能否回滚成功还由命令的具体处理决定,存在以下情况时,回滚可能失败(若某条命令回滚失败,则会跳过该命令,直接处理下一条命令):
· 配置命令不支持完整undo命令,即直接在配置命令前添加undo关键字构成的命令与配置命令对应的原undo命令形式不一致,设备不识别。
· 配置不能取消(如硬件相关的命令)。
· 若不同视图下的各配置命令存在依赖关系,命令可能执行失败。
· 若使用的配置文件不是由save命令或archive configuration命令生成的完整文件,或是不同类型设备的配置文件,配置回滚可能不能完全恢复至配置文件中的配置状态。因此,需要用户确保回滚配置文件中配置的正确性和与当前设备的兼容性。
· configuration replace file filename命令中指定的配置文件只能是明文配置文件,不能是被加密的配置文件。否则,会导致配置回滚出错。
下次启动配置文件是指设备下次启动时使用的配置文件。设置下次启动配置文件有两种方式:
· 使用save命令。将当前配置保存到指定配置文件时,使用交互方式,系统会自动把该文件设置为设备的下次启动配置文件。
· 使用专用命令,请参见表1-9。
操作 |
命令 |
说明 |
配置下次启动时的配置文件名 |
startup saved-configuration cfgfile |
必选 该命令在用户视图下执行 |
配置文件必须以“.cfg”作为扩展名,启动配置文件必须存放在存储设备的根目录下。
备份下次启动配置文件特性用于将设备下次启动配置文件备份至TFTP服务器上。
表1-10 备份下次启动配置文件
操作 |
命令 |
说明 |
将设备的下次启动配置文件备份到指定的TFTP服务器 |
backup startup-configuration to dest-addr [ dest-filename ] |
必选 该命令在用户视图下执行 |
在执行配置文件的备份操作前,请:
· 保证设备与服务器之间的路由可达,服务器端开启了TFTP服务,执行备份操作的客户端设备已获得了相应的读写权限。
· 在用户视图下使用display startup命令查看一下设备是否已经设置了下次启动配置文件。并使用dir命令查看所设置的下次启动配置文件是否存在。若下次启动配置文件设置为NULL,或者所设置的配置文件不存在,备份操作将会失败。
用户通过命令可以删除设备中的下次启动配置文件。
出现以下情况时,用户可能需要删除设备中的下次启动配置文件:
· 在设备软件升级之后,系统软件和配置文件不匹配。
· 设备中的配置文件被破坏(常见原因是加载了错误的配置文件)。
下次启动配置文件被删除后,设备下次上电时,系统将采用出厂配置进行初始化。
表1-11 删除设备中的下次启动配置文件
操作 |
命令 |
说明 |
删除设备中的下次启动配置文件 |
reset saved-configuration |
必选 该命令在用户视图下执行 |
本特性会将下次启动配置文件从设备上彻底删除,所以请谨慎使用。
恢复下次启动配置文件特性用于将TFTP服务器上保存的配置文件下载到设备并设置为下次启动配置文件。
表1-12 恢复下次启动配置文件
操作 |
命令 |
说明 |
恢复下次启动配置文件 |
restore startup-configuration from src-addr src-filename |
必选 该命令在用户视图下执行 |
· 在执行配置文件的恢复操作前,请保证设备与服务器之间的路由可达,服务器端开启了TFTP服务,执行恢复操作的客户端设备已获得了相应的读写权限。
· 该命令执行成功后,用户可以在用户视图下使用display startup命令查看设备下次启动配置文件名是否与filename参数保持一致,并使用dir命令查看恢复的下次启动配置文件是否存在。
在完成上述配置后,在任意视图下执行display命令可以显示配置文件的使用情况。用户可以通过查看显示信息验证配置的效果。
操作 |
命令 |
显示配置回滚功能的相关信息 |
display archive configuration [ | { begin | exclude | include } regular-expression ] |
显示当前配置 |
display current-configuration [ [ configuration [ configuration ] | interface [ interface-type ] [ interface-number ] | exclude modules ] [ by-linenum ] [ | { begin | exclude | include } regular-expression ] ] |
查看设备存储介质中保存的下次启动配置文件的内容 |
display saved-configuration [ by-linenum ] [ | { begin | exclude | include } regular-expression ] |
显示用于本次及下次启动的配置文件名 |
display startup [ | { begin | exclude | include } regular-expression ] |
显示当前视图下生效的配置 |
display this [ by-linenum ] [ | { begin | exclude | include } regular-expression ] |
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!