05-配置文件管理
本章節下載: 05-配置文件管理 (329.88 KB)
目 錄
配置文件管理是設備提供的用於管理配置文件的一項功能。它具有較好的命令行接口,方便用戶對配置文件進行管理。
配置文件是命令行的集合。用戶將當前配置(一條條命令行)保存到配置文件中,以便設備重啟後,這些配置能夠繼續生效。另外,通過配置文件,用戶可以非常方便地查閱配置信息也可以將配置文件上傳/下載到別的設備,來實現設備的批量配置。
軟件版本中所有的軟件功能都被賦了一個初始值(軟件功能缺省值),這些初始值的集合被稱為“空配置”。
· 軟件功能的缺省值可以是具體數值、功能開啟/關閉狀態、也可以為空值(為空值代表用戶使用該功能時,需根據需要進行賦值)。
· 軟件功能缺省值無法通過命令行直接進行查看,用戶可通過查看產品當前軟件版本的命令手冊,了解各軟件功能的缺省值。
· 如果沒有特殊說明,本手冊中缺省情況均為軟件功能的缺省值。
為方便客戶的使用,軟件版本出廠時某些軟件功能會被賦一個與初始值不一樣的取值(軟件功能出廠值),軟件出廠值將被統一保存在一個文件中,該文件稱為“缺省配置文件”。
· 軟件功能出廠值與軟件功能缺省值不同,不同型號的設備可以根據需要定製各自的出廠配置。
· 缺省配置文件被集成到了軟件包*.bin中,用戶可以通過display default-configuration命令查看當前軟件版本中軟件功能的出廠值。
設備中正在運行的軟件功能的取值稱為軟件功能當前值(可以與軟件功能缺省值一致,也可能通過配置後與軟件功能缺省值不一致)。對軟件功能進行配置、並對配置結果進行保存後,所有軟件功能的取值都將被統一保存在一個文件中,該文件稱為“配置文件”。
設備的flash/存儲介質中可以同時存在多個配置文件,用戶可以根據需要選擇下次啟動時采用哪個配置文件。根據配置文件的使用情況,可以分為如下幾類。
· 當前配置文件:設備當前使用的配置文件。
· 下次主用啟動配置文件:設備下次啟動時優先使用的配置文件,
· 下次備用啟動配置文件:設備下次啟動時如果主用配置文件不可用,作為備用的啟動配置文件。
· 其它配置文件:flash中除上述三類外的其它.cfg文件。
用戶可以將設備在多個使用環境下的配置保存成多個配置文件。當設備在網絡中移動時,通過指定下次啟動配置文件並重啟設備,可以使設備以新的配置迅速適應切換後的網絡環境,節省重新配置的工作量。而且多配置文件可以方便用戶的備份、修改、恢複等操作,提高設備的可靠性。
配置文件的後綴為.cfg,用戶可以通過display saved-configuration命令查看設備下次啟動配置文件中的具體軟件功能配置:
· 軟件功能缺省值,不會體現在配置文件中。
· 已進行了配置、但沒有通過save命令進行保存的配置,不會體現在配置文件中。
用戶可以通過display current-configuration命令查看設備中當前運行的配置:
· 軟件功能當前值中,與軟件功能缺省值一致的部分不會顯示,與軟件功能缺省值不一致的部分能夠顯示。
· 即使當前配置未通過save命令保存到配置文件中,也可以顯示。
配置文件為一個文本文件,其保存規則如下:
· 配置文件的內容為命令行的完整形式;
· 配置文件以命令視圖為基本框架,同一命令視圖的命令組織在一起,形成一節,節與節之間通常用空行或注釋行隔開(以#開始的為注釋行,空行或注釋行可以是一行或多行);
· 文件中各節的安排順序通常為:係統配置、接口配置、各種協議配置和用戶界麵配置;
· 以return結束。
配置文件對內容和格式有嚴格定義,為保證配置文件的正確運行,請盡量使用設備自動生成的配置文件,不要隨意手工修改配置文件。(執行save命令,設備會將當前配置自動生成配置文件)
圖1-1 設備啟動過程中配置文件的選擇流程(有主備之分)
設備啟動時,若用戶進入BootRom菜單並選擇了Skip Current System Configuration選項,設備將采用軟件的空配置方式進行啟動。啟動完成後,所有軟件功能都將采用軟件功能缺省值。
設備啟動時,若既沒有選擇采用空配置進行啟動、也沒有指定的配置文件,則設備會采用缺省配置方式進行啟動。啟動完成後,缺省配置文件中賦了值的軟件功能將采用軟件功能出廠值,其它軟件功能都將采用軟件功能缺省值。
缺省配置文件被集成到了軟件包*.bin中,用戶可以通過display default-configuration命令查看當前軟件版本中軟件功能的出廠值。
設備啟動時,若沒有選擇采用空配置進行啟動、且有指定的配置文件,則設備會采用帶配置方式進行啟動。啟動完成後,軟件功能都將采用當前配置文件中的值。
· 如果采用帶配置方式進行啟動時存在主用配置文件,則設備啟動運行時將采用主用配置文件中的值運行。
· 如果采用帶配置方式進行啟動時主用配置文件不可用,則設備啟動運行時將采用備用配置文件中的值運行。
· 如果采用帶配置方式進行啟動時主備用配置文件均不可用,則設備將采用軟件的缺省配置方式進行啟動。
用戶可以通過display current-configuration命令查看設備中當前運行的配置:
· 軟件功能當前值中,與軟件功能缺省值一致的部分不會顯示,與軟件功能缺省值不一致的部分能夠顯示。
· 即使當前配置未通過save命令保存到配置文件中,也可以顯示。
用戶通過命令行可以修改設備的當前配置,而這些配置是暫時的,如果要使當前配置在係統下次重啟時仍然有效,在重啟設備前,需要將當前配置保存到配置文件中。
表1-1 保存當前配置任務簡介
配置任務 |
說明 |
詳細配置 |
使能配置文件同步保存功能 |
可選 |
|
保存當前配置 |
必選 |
· 使能配置文件同步保存功能後,當用戶執行“save [ safely ] [ backup | main ] [ force ]”或者“save filename all”操作保存當前配置時,Master和Slave會同時自動把當前配置保存到指定的配置文件中,並將該文件配置為設備的下次啟動文件,以保證Master和Slave配置文件內容的一致;
· 如果沒有使能配置文件同步保存功能,則當用戶執行“save [ safely ] [ backup | main ] [ force ]”或者“save filename all”操作保存當前配置時,隻有Master自動把當前配置保存到指定的配置文件中,並將該文件配置為Master的下次啟動文件,Slave不會執行保存操作,也不會重新設置Slave的下次啟動文件。
表1-2 使能配置文件同步保存功能
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
使能配置文件同步保存功能 |
slave auto-update config |
可選 缺省情況下,配置文件同步保存功能處於使能狀態 |
配置的保存方式有兩種:
· 快速保存方式,執行不帶safely參數的save命令。這種方式保存速度快,但是保存過程中如果出現設備重啟、斷電等問題,原有配置文件可能會丟失。
· 安全方式,執行帶safely參數的save命令。這種方式保存速度慢,即使保存過程中出現設備重啟、斷電等問題,原有配置文件仍然會保存到設備中,不會丟失。
在電源穩定程度較好的環境中,推薦用戶使用快速保存方式保存配置文件;在電源環境惡劣或者遠程維護等情況,推薦用戶使用安全模式保存配置文件。
表1-3 保存當前配置
操作 |
命令 |
說明 |
將當前配置保存到指定文件,但不會將該文件設置為下次啟動配置文件 |
save file-url [ all | slot slot-number ] |
二者必選其一 該命令可在任意視圖下執行 |
將當前配置保存到所有成員設備存儲介質的根目錄下,並將該文件設置為下次啟動配置文件 |
save [ safely ] [ backup | main ] [ force ] |
· 配置文件名後綴必須為“.cfg”。
· 執行“save [ safely ] [ backup | main ] [ force ]”或者“save filename all”操作,是對所有成員設備同時生效還是隻對Master生效,與配置文件的同步保存功能是否使能有關,詳細介紹請參見“1.2.2 使能配置文件同步保存功能”。
· save [ safely ]和save [ safely ] main命令執行效果相同:都會在保存當前配置的同時,將指定文件設置為主用下次啟動配置文件。
· 執行save [ backup | main ]命令時,如果出現設備重啟、斷電等問題,可能會造成下次啟動配置文件丟失,這時,設備將以出廠配置啟動。設備啟動後,用戶需要重新設置下次啟動配置文件(請參見“1.4 設置下次啟動配置文件”)。
設備采用新軟件版本啟動時,默認會采用升級前的下次啟動配置文件。如果下次啟動配置文件為老軟件版本的配置文件,當用戶使用新軟件版本完成了若幹配置,並對當前版本的最新配置進行首次保存時,若在Master上執行“save [ safely ] [ backup | main ] [ force ]”命令,此時設備會檢查新配置信息與當前配置文件的兼容性。若二者不兼容,新配置信息無法寫入當前使用的老配置文件中,此時設備上會提示如下信息:
The configuration file flash:/config.cfg will be automatically backed up as flash:/_config_bak.cfg for a future version downgrading.
此時設備將進行如下操作:
· 對設備當前正在使用的老配置文件自動進行備份,以備版本降級時恢複設備的原有配置(例如,當前的配置文件名稱為config.cfg,則設備將該文件自動備份為名稱為_config_bak.cfg的文件,並將備份後的文件保存在Master及各Subordinate的Flash中)。
· 采用當前運行的配置生成新的配置文件,並用新配置文件直接覆蓋當前正在使用的配置文件
如果當前配置文件自動備份的過程中,出現IRF中某成員設備備份失敗(其他成員設備備份不受影響)。設備將提示用戶選擇後續的操作方式。
· 放棄保存新版本上的所有配置:選擇此操作方式,則所有成員設備不會保存當前運行的所有配置。
· 采用當前運行的配置生成新的配置文件,並用新配置文件直接覆蓋當前正在使用的配置文件:選擇此操作方式,升級前的老軟件版本的配置文件將丟失。此時需要手工將Master上備份的老配置文件_XXX_bak.cfg拷貝到該成員設備的flash中,以確保後續該成員設備也能夠順利的降級回老版本。
在保存配置文件時請確保各成員設備Flash有足夠的空間並且自動備份文件名長度小於最大文件名長度(91個字符),否則會導致老版本配置文件備份失敗。
· 如果設備需從當前的新軟件版本降級回老軟件版本時,首先要檢查各成員設備上是否存在老版本的配置文件_XXX_bak.cfg。如果存在,需在降級之前手工指定各成員的下次啟動配置文件采用老版本的配置文件,否則下次啟動配置文件不會采用老版本的配置文件。
· 若執行save filename [ all | slot ]命令保存當前配置時,設備不會備份老版本的配置文件。
配置回滾是將當前的配置回退到指定配置文件中的配置狀態。該配置文件必須是有效的.cfg文件,它可以使用手工/自動備份功能或者save命令生成,也可以是別的設備的可兼容配置文件,推薦使用手工/自動備份功能生成。配置回滾主要應用於:
· 當前配置錯誤,但錯誤配置太多不方便定位或逐條回退,需要將當前配置回滾到某個正確的配置狀態。
· 設備的應用環境變化,需要使用某個配置文件中的配置信息運行,在不重啟設備的情況下將當前配置回滾到指定配置文件的狀態。
配置回滾的基本步驟如下:
(1) 用戶必須先設置備份配置文件的路徑和文件名前綴;
(2) 係統將當前配置以指定的文件名(前綴+序號)備份到指定路徑。這個備份有兩種方式:一種是係統按照一定的時間周期自動備份,另一種是用戶用命令行在必要時手工觸發備份;
(3) 將當前配置回滾到指定配置文件的狀態。配置回滾時,係統會比較、處理當前配置和配置文件中配置的差異:
· 對於當前配置與回滾配置文件中的相同命令,回滾操作將不做處理;
· 對於在當前配置但不在回滾配置文件的命令,回滾操作將取消當前配置中的配置命令,即執行相應的undo命令;
· 對於存在於回滾配置文件但不存在於當前配置的命令,回滾操作將執行這些命令;
· 對於當前配置和回滾配置文件中不同的命令,配置回滾將先取消這些配置,再執行回滾配置文件中的相應命令。
當前配置隻會備份到Master。
表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 |
可選 缺省情況下,係統最多允許保存10個備份配置文件 |
· 為了Master變更後,配置回滾功能能在新Master上繼續生效,請確保archive configuration location命令中指定的路徑必須在Master和Slave上均存在,且路徑參數中不能包含成員編號。
· 執行undo archive configuration location命令後,用戶將不能進行手工備份當前配置,係統也不再自動備份當前配置,archive configuration interval和archive configuration max的配置也會恢複到缺省情況,已保存的備份配置文件記錄也會被清除。
· file-number的具體數值應根據係統的空餘存儲空間大小來決定。對於存儲空間較小的設備,建議將該參數設為較小值。
用戶可以使用本特性按照一定的時間間隔自動備份當前配置,使用display archive configuration命令可以查看到備份配置文件的名稱和備份時間,以便用戶可以將當前配置回退到某一曆史時刻。
使用本特性時應根據設備存儲介質的性能和修改配置的頻繁程度來設置自動備份的時間間隔:
· 對於不會頻繁修改配置的設備,建議按需手動備份當前配置;
· 建議不進行自動備份配置,或設置備份時間間隔大於1440分鍾(24小時);
表1-6 自動備份當前配置
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
使能自動備份當前配置功能,並設置自動備份的時間間隔 |
archive configuration interval minutes |
可選 缺省情況下,係統不會自動備份當前配置 |
設置自動備份配置時間間隔前必須指定備份配置文件的保存路徑和文件名前綴。
因為自動備份當前配置需要占用一定的係統資源,如果備份頻率較高,對係統性能的影響也較大。因此,在設備維護過程中配置比較穩定(即不會頻繁修改配置)的情況下,建議關閉自動備份功能,使用手工備份。
另外,自動備份是按照一定的時間周期進行的,手工備份能立即備份當前配置。當需要對設備進行步驟複雜的配置時,可以在修改配置前手工備份當前配置。以便配置過程中出現失敗時,可以使用已備份的配置直接將當前配置回滾至配置改變前的狀態。
表1-7 手工備份當前配置
操作 |
命令 |
說明 |
手工備份當前配置 |
archive configuration |
必選 該命令在用戶視圖下執行 |
手工保存備份配置前必須指定備份配置的保存路徑和文件名前綴,否則備份失敗。
表1-8 配置回滾
操作 |
命令 |
說明 |
進入係統視圖 |
system-view |
- |
配置回滾 |
configuration replace file filename |
必選 |
配置回滾期間(即係統在執行configuration replace file命令時)不能重啟成員設備,否則可能會造成配置回滾失敗。另外,命令能否回滾成功還由命令的具體處理決定,存在以下情況時,回滾可能失敗(若某條命令回滾失敗,則會跳過該命令,直接處理下一條命令):
· 配置命令不支持完整undo命令,即直接在配置命令前添加undo關鍵字構成的命令不存在,設備不識別。比如命令A [ B ] C,對應的undo命令為undo A C,但是配置回滾的時候,係統會去自動執行undo A B C,此時係統會認為不支持undo A B C而造成配置A B C回滾失敗。
· 配置不能取消(如硬件相關的命令)。
· 若不同視圖下的各配置命令存在依賴關係,命令可能執行失敗。
· 若使用的配置文件不是由save命令或archive configuration命令生成的完整文件,或是不同類型設備的配置文件,配置回滾可能不能完全恢複至配置文件中的配置狀態。因此,需要用戶確保回滾配置文件中配置的正確性和與當前設備的兼容性。
· configuration replace file filename命令中指定的配置文件隻能是明文配置文件,不能是被加密的配置文件。否則,會導致配置回滾出錯。
下次啟動配置文件是指設備下次啟動時使用的配置文件。設置下次啟動配置文件有兩種方式:
· 使用save命令。將當前配置保存到指定配置文件時,使用交互方式,係統會自動把該文件設置為設備的主用下次啟動配置文件。
· 使用專用命令,請參見下表。
表1-9 設置下次啟動配置文件
操作 |
命令 |
說明 |
配置所有成員設備的下次啟動配置文件 |
startup saved-configuration cfgfile [ backup | main ] |
必選 該命令在用戶視圖下執行 |
配置文件必須以“.cfg”作為擴展名,啟動配置文件必須存放在存儲設備的根目錄下。
備份下次啟動配置文件特性用於將設備下次啟動配置文件備份至TFTP服務器上。
備份操作的對象是主用下次啟動配置文件。
表1-10 備份下次啟動配置文件
操作 |
命令 |
說明 |
將設備的下次啟動配置文件備份到指定的TFTP服務器 |
backup startup-configuration to dest-addr [ dest-filename ] |
必選 該命令在用戶視圖下執行 |
在執行配置文件的備份操作前,請:
· 保證設備與服務器之間的路由可達,服務器端開啟了TFTP服務,執行備份操作的客戶端設備已獲得了相應的讀寫權限。
· 在用戶視圖下使用display startup命令查看一下設備是否已經設置了下次啟動配置文件。若下次啟動配置文件設置為NULL,或者所設置的配置文件不存在,備份操作將會失敗。
· FIPS模式下不支持該命令。
用戶通過命令可以刪除設備中的下次啟動配置文件。用戶可以隻刪除主用下次啟動配置文件,或者隻刪除備用下次啟動配置文件,但如果當前設備的主備用下次啟動配置文件相同,僅執行一次刪除操作,係統隻會將相應的下次啟動配置文件設置為NULL,不會刪除該文件。
出現以下情況時,用戶可能需要刪除設備中的下次啟動配置文件:
· 在設備軟件升級之後,係統軟件和配置文件不匹配。
· 設備中的配置文件被破壞(常見原因是加載了錯誤的配置文件)。
下次啟動配置文件被刪除後,設備下次上電時,係統將采用出廠配置進行初始化。
表1-11 刪除設備中的下次啟動配置文件
操作 |
命令 |
說明 |
刪除設備中的下次啟動配置文件 |
reset saved-configuration [ backup | main ] |
必選 該命令在用戶視圖下執行 |
本特性會將下次啟動配置文件從所有成員設備上徹底刪除,所以請慎用該命令。
恢複下次啟動配置文件特性用於將TFTP服務器上保存的指定配置文件下載到所有成員設備存儲介質的根目錄下,並設置為所有成員設備的下次啟動配置文件。
表1-12 恢複下次啟動配置文件
操作 |
命令 |
說明 |
恢複主用下次啟動配置文件 |
restore startup-configuration from src-addr src-filename |
必選 該命令在用戶視圖下執行 |
· 在執行配置文件的恢複操作前,請保證設備與服務器之間的路由可達,服務器端開啟了TFTP服務,執行恢複操作的客戶端設備已獲得了相應的讀寫權限。
· 該命令執行成功後,用戶可以在用戶視圖下使用display startup命令查看設備下次啟動配置文件名是否與filename參數保持一致。
· FIPS模式下不支持該命令。
在完成上述配置後,在任意視圖下執行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 default-configuration [ | { 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保留在沒有任何通知或提示的情況下對資料內容進行修改的權利!