スクリプトの代替ソースの場所を使用する
代替の場所からスクリプトを更新する
ステートメントで定義された source
マスターソースからスクリプトを更新するだけでなく、設定モードコマンドまたは運用モードコマンドを使用して set refresh-from
、別の場所からスクリプトを request system scripts refresh-from
更新することもできます。これは、例えば、ネットワークの問題やその他の問題のためにマスターソースにアクセスできない場合に便利です。
更新操作は、設定モード コマンドまたはrequest system scripts refresh-from
動作モード コマンドのいずれかをset refresh-from
発行するとすぐに発生します。コマンドを発行すると、デバイスはすぐに指定されたURLに接続し、ファイルのコピーを取得しようとします。このコピーは、デバイスの scripts ディレクトリに保存されているローカル スクリプトを上書きします。ソースのコピーがリモート URL で利用できない場合、そのスクリプトは更新されず、警告が発行されます。コミット スクリプトの場合、更新されたコミット スクリプトは次に コマンドを発行commit
したときに実行されます。
コマンドを発行しても set refresh-from
、 ステートメントは refresh-from
設定に追加されません。したがって、 コマンドは set refresh-from
、設定にステートメントを追加する代わりに、操作を実行することで動作モードコマンドのように動作します。
デバイスにデュアル ルーティング エンジンがあり、両方のルーティング エンジンでスクリプトを更新する場合は、各ルーティング エンジンで 個別に コマンドをset refresh-from
発行する必要があります。または、要求するルーティングエンジンでスクリプトを更新し、運用モードコマンドをrequest system scripts synchronize
使用してスクリプトを他のルーティングエンジンに同期するかcommit synchronize scripts
、設定モードコマンドを使用して、設定をコミットして同期する際にすべてのスクリプトを他のルーティングエンジンに同期させることができます。運用モードでは、 オプション付きの sync
コマンドをrequest system scripts refresh-from
使用して、両方のルーティングエンジンのスクリプトを更新することもできます。
設定モード コマンドを使用して 1 つ以上のスクリプトを更新するには、set refresh-from
または、運用モードで、代替ソースから単一のスクリプトを更新するには、 コマンドを request system scripts refresh-from
発行し、スクリプトタイプ、ファイル名、およびリモートURLを指定します。
user@host> request system scripts refresh-from (commit | event | extension-service | op | snmp) file filename url url <sync>
どこ
-
filenameスクリプトの名前。
-
urlリモートスクリプトまたはディレクトリのURL。HTTPS URL、HTTP URL、FTP URL、またはセキュアコピー(scp)スタイルのリモートファイル仕様としてソースを指定します。
HTTPS URL を指定した場合は、サポートされるリリースにも オプションを cert-file
含める必要があります。オプションは cert-file
、デバイスがサーバー証明書の検証に使用する証明書(ルート CA または自己署名)へのパスを PEM 形式で指定します。例えば:
user@host> request system scripts refresh-from op file ospf-neighbors.slax url https://example.juniper.net/scripts/ospf-neighbors.slax cert-file /var/tmp/root-ca-cert-example-juniper-net.pem refreshing 'ospf-neighbors.slax' from 'https://example.juniper.net/scripts/ospf-neighbors.slax' /var/home/user/...transferring.file........100% of
リモート サイトに存在しないスクリプトの更新を要求すると、デバイスにエラー メッセージが生成されます。例えば:
user@host> request system scripts refresh-from op file nonexistent.slax url http://host1.juniper.net/nonexistent.slax refreshing 'nonexistent.slax' from 'http://host1.juniper.net/nonexistent.slax' fetch-secure: http://host1.juniper.net/nonexistent.slax: Not Found error: file-fetch failed error: communication error: rpc failed (file-fetch) error: error retrieving file http://host1.juniper.net/nonexistent.slax
コマンドを set refresh-from
発行すると、Junos OSはファイル転送に使用される一時フォルダを作成します。転送および更新操作が完了すると、Junos OSは一時フォルダを削除します。
「」も参照
代替ソースからスクリプトを更新するために使用するルーティング インスタンスの設定
Junos OS リリース 18.1R1 以前は、デフォルトの管理インターフェイスを使用して、代替ソースからスクリプトを更新できました。ただし、Junos OS リリース 17.3R1 以降では、管理トラフィックが他の制御トラフィックやプロトコル トラフィックとルーティング テーブルを共有する必要がないように、管理インターフェイスをデフォルト以外の仮想ルーティングおよび転送(VRF)インスタンスに限定することができます。Junos OS リリース 18.1R1 以降、代替ソースからコミット、イベント、JET、op、SNMP スクリプトを更新またはダウンロードするために使用するルーティング インスタンスを指定できます。このルーティングインスタンスは、非デフォルトの管理インスタンス mgmt_junos
または他のルーティングインスタンスのいずれかです。
階層レベルで スクリプトを更新するには、指定したルーティングインスタンスを設定する [edit system routing-instances]
必要があります。
管理以外のルーティング インスタンスを使用して、代替ソースからスクリプトを更新するには、
設定された管理インターフェイスを使用して代替ソースからスクリプトを更新するには、 に対routing-instance-name
してのみmgmt_junos
を設定できます。非管理インターフェイスを使用するには、 に対routing-instance-name
して何かを設定できます。
「」も参照
例: 代替ソースからスクリプトを更新する
次の例では、代替ソースの場所を使用して、Junos OS を実行しているデバイス上のスクリプトのローカル コピーを更新します。リモート ソースは、HTTP URL として定義されます。
要件
Junos OS を実行するルーティング、スイッチング、またはセキュリティ デバイス。
概要
マスター ソース以外の場所からスクリプトを更新できます。これは、例えば、ネットワークの問題やその他の問題のためにマスターソースにアクセスできない場合に便利です。別の場所から、単一のスクリプトまたは特定のタイプのすべてのスクリプトを更新できます。
この例では、Junos OS を実行するデバイスで op スクリプト iso.xsl を有効にしてから、マスター ソースの場所以外の場所からスクリプトを更新します。 iso.xsl ファイルのリモート ソースは、HTTP URL http://my.example.com/pub/scripts2/iso.xsl。
ローカル スクリプトを更新するには、スクリプトを設定した set refresh-from
階層レベルで 設定モード コマンドを発行します。この例では、 階層レベルで コマンドを[edit system scripts op file iso.xsl]
発行set refresh-from
します。
構成
スクリプトをダウンロードして有効にする
手順
スクリプトをダウンロードして有効にするには、次の手順にしたがっています。
デバイス上の /var/db/scripts/op/ ディレクトリにスクリプトをコピーします。
設定モードで、 ステートメントを
file
設定して 、iso.xsl スクリプトを有効にします。[edit system scripts op] user@R1# set file iso.xsl
コマンドを
commit and-quit
発行して設定をコミットし、動作モードに終了します。[edit] user@R1# commit and-quit
結果
system { scripts { op { file iso.xsl; } } }
スクリプトの検証
目的
スクリプトがデバイス上にあり、設定で有効になっていることを確認します。
アクション
オペレーショナル モード コマンドを file list
発行して、指定されたディレクトリ内のファイルを表示します。このオプションは detail
、パーミッション、ファイルサイズ、変更日などの追加情報を提供します。
user@R1> file list /var/db/scripts/op detail /var/db/scripts/op: total 128 -rw-r--r-- 1 root admin 13897 Feb 10 2011 iso.xsl ...
運用モード コマンドを show configuration system scripts op
発行して、デバイスで現在有効になっている op スクリプトをリストします。
user@R1> show configuration system scripts op file iso.xsl
代替場所からスクリプトを更新する
手順
別の場所からスクリプトのローカル コピーを更新するには、次の手順にしたがっています。
設定モードで、 階層レベルで コマンドを
[edit system scripts op file iso.xsl]
発行set refresh-from
します。[edit system scripts op file iso.xsl] user@R1# set refresh-from http://my.example.com/pub/scripts2/iso.xsl