コンフィグの管理
Standalone Mode本装置のコンフィグ管理について、概念、ライフサイクル、互換性等を説明します。
コンフィグに関するシステム動作の概要
本装置は起動時に内部ストレージからコンフィグを読み込み、メインメモリ上に展開します。
本装置の各機能はメインメモリ上に展開されたコンフィグによって動作が定められます。
設定の変更もメインメモリ上のコンフィグに対して行われますが、変更結果を直接動作に反映するのではなく、編集用に複製された反映候補コンフィグを編集し、エラーチェックを経て動作に反映されます。
変更され動作中のコンフィグは明示的に内部ストレージへ保存しない限り、再起動や電源断によって失われます。
コンフィグのライフサイクル
コンフィグの種類
- startup-config
- 内部ストレージに保存され、起動時に読み込まれるコンフィグです。
- running-config
- システム稼働中にメインメモリに保持し、各機能の動作を定めるコンフィグです。
- candidate-config
- システム稼働中にメインメモリに保持し、running-configに反映する前の編集や正当性チェックの対象となるコンフィグです。
- config File
- 外部システムへ保存された、または外部で作成されたプレーンテキスト形式のコンフィグファイルです。
- 工場出荷時コンフィグ(factory-config)
- システムが初期化された状態(startup-configが空)のとき、起動時に読み込まれるコンフィグです。
コンフィグを参照(表示)するオペレーション
- show config flashrom
- startup-configを参照します。システムが初期化されている場合は空になります。
- show config [running]
- running-configを参照します。runningは省略できます。
- show config candidate
- candidate-configを参照します。
コンフィグを編集するオペレーション
- set / delete / password
- candidate-configに対して、コンフィグパラメータを個別に追加・削除します。
- コマンド実行ごとに文法エラーがチェックされ、エラーがなければrunning-configにも反映されます。
- edit
- editコマンドはスクリーンエディタを起動してcandidate-configを編集します。
- commit
- running-configにcandidate-configを反映します。反映前にエラーチェックが行われます。
コンフィグを操作するオペレーション
- save-to flashrom
- 次回以降の起動時のために内部ストレージのコンフィグを更新する操作にあたります。
- startup-configにrunning-configが反映される
- load-from flashrom
- 動作中の設定変更を破棄して起動時の状態にロールバックする操作にあたります。
- candidate-configにstartup-configが反映されます。ただしstartup-configが空(初期状態)の場合はエラーにります。
- 反映されたcandidate-configをエラーチェックし、エラーがない場合はrunning-configにも反映されます。
- システム起動
- 電源投入やリセットを含む再起動の操作にあたります。
- candidate-configにstartup-configが反映されます。ただしstartup-configが空(初期状態)の場合は、candidate-configにfactory-configが反映されます。
- 反映されたcandidate-configをエラーチェックし、エラーがない場合はrunning-configにも反映されます。
- save-to stdout
- PC等へコンフィグのバックアップコピーを退避するエクスポート操作にあたります。
- シェルの標準出力にrunning-configが出力されます。
- load-from stdin
- PC等へ退避したコンフィグのバックアップコピーからリストアするインポート操作に当たります。
- candidate-configにシェルの標準入力からコンフィグファイルの内容を反映します。
- factory-config
- コンフィグ初期化する操作にあたります。起動時のINITスイッチ押し下げによる初期化も同様です。
- コンフィグの整形
- running-configにcandidate-configが反映されようとするとき、ソートやスペースの調整など整形処理が行われます。
「工場出荷状態」について
factory-config
コマンドの実行やリセットスイッチにより設定内容を初期化した場合、内部ストレージ上にはコンフィグ(startup-config)が保存されていない状態になります。これを「初期状態」または「"factory-config"状態」と呼びます。
本装置が起動時にstartup-configを読み込もうとしたとき、初期状態でコンフィグが存在しないことがわかると、 インストールされているファームウェアにより初期コンフィグをメインメモリ上に展開します。 起動後、何も設定変更をせずにsave-to
flashrom
コマンドで設定を保存した場合、初期コンフィグから反映されたstartup-configの内容がstartup-configとして内部ストレージに保存されます。これは、startup-configが保存されていない「工場出荷状態」とは厳密には異なる状態といえます。
初期コンフィグはファームウェアリリース時に変更される場合があるため、startup-config未保存の場合はインストールされたファームウェアによって起動直後のrunning-configが異なる場合がありますが、 初期コンフィグをstartup-configに保存した状態の場合は起動直後のrunning-configが変化しません。
コンフィグファイルについて
外部保存(バックアップ)したコンフィグファイルは、プレーンテキストファイルになります。 このコンフィグファイルはそのまま元の装置、あるいは、同一機種かつ同一(またはより新しい)ファームウェアの別の装置に読み込ませることができます。
コンフィグファイルはテキストエディタで編集可能ですが、記述ミスのある設定行、及びその設定に依存する設定行は読み込み時にエラーになります。
バージョン間のコンフィグ互換性
SEILシリーズは、同一機種において、より古いバージョンのファームウェアで作成したコンフィグの読み込みをサポートしています。逆に、新しいバージョンのファームウェアで作成したコンフィグを古いバージョンのファームウェアで読み込むことはサポートしていません。古いバージョンのファームウェアで読み込んだ場合、不完全な設定状態となる可能性があります。
新しいファームウェアの仕様変更によりコンフィグの書式が変更されている場合、コンフィグの後方互換性により、動作上は新しい書式に置き換わる場合があります。置き換わったコンフィグをstartup-configに保存した後に古いバージョンのファームウェアに変更すると、古いバージョンのファームウェアにおいては想定外の設定となるため、読み込み時に該当の設定がエラーとなり無視されます。
ファームウェアの更新は、内部ストレージに保存されたstartup-configを変更しません。
ファームウェアのバージョンを更新した後にコンフィグの保存(save-to
flashrom
)を実行するまでは、startup-configは以前のコンフィグが記憶されています。この状態のままファームウェアを元のバージョンに変更した場合には、以前のコンフィグに復帰します。
機種間のコンフィグ互換性
SEIL/X4は他のSEILシリーズとコンフィグの互換性がありません。
SA-Wシリーズのコンフィグは、書式上SEIL/X4の下位互換に当たります。機種ごとに搭載機能(ハードウェア・ソフトウェア)や設定数上限が異なるためコンフィグファイル全体としての互換性はありませんが、機種移行の際にコンフィグを部分的に流用することは可能です。
機種間でコンフィグを引き継ぐ際は、移行前と移行後の設定反映状況を比較し注意深く確認してください。