コミット操作中のコミット スクリプトの実行を制御する
コミット スクリプトは、デバイスのハード ディスクの /var/db/scripts/commit ディレクトリまたは /config/scripts/commit ディレクトリのフラッシュ ドライブに保存されます。Junos OS スーパーユーザー ログイン クラスのユーザーのみが、これらのディレクトリ内のファイルにアクセスおよび編集できます。スクリプトの保存場所の設定については、「 Junos 自動化スクリプトの保存と有効化 」および「 フラッシュ メモリでのスクリプトの保存」を参照してください。
ファイル名が 階層レベルに含まれていない限り、コミットスクリプトはコミット操作中に実際に [edit system scripts commit file]
実行されません。スクリプトファイル名を設定する場合、SLAX(.slax)およびPython(.py)スクリプトに適したファイル名拡張子を含める必要があります。XSLT スクリプトはファイル名拡張子を必要としませんが、明確にするために .xsl 拡張子を追加することを強くお勧めします。コミット スクリプトの実行を防止するには、その階層レベルでコミット スクリプトのファイル名を削除します。
デフォルトでは、 階層レベルに [edit system scripts commit file]
含まれるすべてのスクリプトがコミットスクリプトディレクトリに実際に存在しない限り、コミット操作は失敗します。スクリプトが欠落している場合でもコミット操作を成功させるためには、 階層レベルに optional
ステートメントを [edit system scripts commit file filename]
含めます。たとえば、コミットスクリプトディレクトリから削除してすぐに削除する必要があると予想される場合、階層レベルで [edit system scripts commit file]
コミットスクリプトファイル名を削除しない場合、スクリプトをオプションとしてマークすることができます。後でスクリプトの使用を有効にするには、コミットスクリプトディレクトリ内のファイルを置き換えるだけです。
階層レベルに ステートメントをoptional
[edit system scripts commit file filename]
含めると、ファイルが存在しない場合、コミット操作中にエラーメッセージは生成されません。その結果、期待どおりにスクリプトが実行されていないことに気付かないかもしれません。
および 設定モードコマンドを発行することで、コミットスクリプトをdeactivate
activate
無効化および再有効化することもできます。コミット スクリプトを非アクティブにすると、設定で非アクティブとマークされ、コミット操作中は実行されません。コミット スクリプトを再有効化すると、コミット操作中にスクリプトが再度実行されます。
デバイスで現在有効になっているコミット スクリプトを確認するには、 コマンドを show
使用して、 階層レベルで設定されたファイルを [edit system scripts commit]
表示します。有効なファイルがデバイス上にあるようにするには、 運用モードコマンドを使用して /var/run/scripts/commit/ directoryの内容を file list /var/run/scripts/commit
リストします。
コミット操作中にコミット スクリプトを実行できるようにする
コミット操作中に実行するコミットスクリプトを設定するには:
コミット操作中にコミット スクリプトが実行されないようにする
設定の階層から [edit system scripts commit]
スクリプトのファイル名を削除することで、コミット操作中にコミットスクリプトが実行されないようにすることができます。
また、 ステートメントを deactivate
使用して、スクリプトのファイル名を設定から削除する代わりに、スクリプトを無効化することもできます。非アクティブ化されたスクリプトは、後で再有効化できます。
コミット操作中にコミット スクリプトが実行されないようにするには、次の手順に示します。
コミット スクリプトの無効化
コミット スクリプトを無効化すると、そのスクリプトは設定内で と inactive
マークされ、コミット操作中は無視されます。activate ステートメントを使用して、スクリプトを再活性化できます。
コミット操作中にコミットスクリプトが実行されないよう、コミットスクリプトを無効にするには:
コミット スクリプトのアクティブ化
コミット スクリプトを無効化すると、そのスクリプトは設定で非アクティブとマークされるため、コミット操作中は実行されません。
非アクティブなコミットスクリプトをアクティブにするには: