2.6. ネットワークスクリプトによる NetworkManager の使用


本セクションは、スクリプトの実行方法と、ネットワークスクリプトでカスタムコマンドを使用する方法を説明します。
ネットワークスクリプト という用語は、/etc/init.d/network スクリプトと、それが呼び出すその他のインストール済みスクリプトを指します。NetworkManager はデフォルトのネットワークサービスを提供しますが、スクリプトと NetworkManager は並行して実行され、連携することができます。Red Hat は、それを最初にテストすることを推奨します。

ネットワークスクリプトの実行

systemctl コマンド のみ を使用してネットワークスクリプトを実行します。
systemctl start|stop|restart|status network
systemctl ユーティリティーは既存の環境変数をクリアし、正しい実行を確保します。
Red Hat Enterprise Linux 7 では、 NetworkManager が最初に起動し、/etc/init.d/network が NetworkManager をチェックして、NetworkManager の接続の改ざんを回避します。NetworkManager は、sysconfig 設定ファイルを使用するプライマリーアプリケーションであり、/etc/init.d/network はセカンダリーとなることを目的としています。
/etc/init.d/network スクリプトは、以下を実行します。
  1. 手動で - systemctl コマンド start|stop|restart network のいずれかを使用して、
    または
  2. ネットワークサービスが有効な場合は、起動およびシャットダウン時 - systemctl enable network コマンドの結果として。
これは手動のプロセスで、起動後に発生するイベントに反応しません。また、ユーザーは ifup スクリプトおよび ifdown スクリプトを手動で呼び出すこともできます。
注記
initscripts の技術的制限により、systemctl reload network.service コマンドは機能しません。ネットワークサービスに新しい設定を適用するには、restart コマンドを使用します。
~]# systemctl restart network.service
これにより、新しい設定を読み込むために、ネットワークインターフェイスカード (NIC) をすべて無効にして有効にします。詳細は、Red Hat ナレッジベースソリューション Reload and force-reload options for network serviceを参照してください。

ネットワークスクリプトのカスタムコマンドを使用

/sbin/ifup-local スクリプト、ifdown-pre-local スクリプト、および ifdown-local スクリプトのカスタムコマンドは、これらのデバイスが /etc/init.d/network サービスによって制御されている場合にのみ実行されます。ifup-local ファイルは、デフォルトでは存在しません。必要に応じて、/sbin/ ディレクトリーの下に作成します。
ifup-local スクリプトは initscripts によってのみ読み取りでき、NetworkManager は読み取りできません。NetworkManager を使用してカスタムスクリプトを実行するには、dispatcher.d/ ディレクトリーの下に作成します。「dispatcher スクリプトの実行」を参照してください。
重要
initscripts パッケージに関連する rpms に含まれるファイルの変更は推奨されません。ファイルを変更した場合は、Red Hat サポートの対象外となります。
カスタムタスクは、ネットワーク接続がアップまたはダウンしたときに、古い ネットワークスクリプトNetworkManager の両方を使用して実行できます。NetworkManager が有効な場合は、ifup スクリプトおよび ifdown スクリプトにより、NetworkManager が問題のインターフェイスを管理するかどうかを NetworkManager に尋ねます。これは、ifcfg ファイルの DEVICE= 行にあります。
NetworkManager が管理するデバイス:
ifup の呼び出し
ifup を呼び出して、デバイスが NetworkManager管理 されている場合は、以下の 2 つのオプションがあります。
  • デバイスがまだ接続されてい ない 場合は、NetworkManager に接続を開始するように要求します。
  • デバイスがすでに 接続している 場合は、何もする必要がありません。
ifdown の呼び出し
ifdown を呼び出して、デバイスが NetworkManager により 管理 されます。
  • ifdown により、NetworkManager が接続を終了するように求められます。
NetworkManager が管理していないデバイス:
ifup または ifdown のいずれかを呼び出すと、このスクリプトは、NetworkManager が存在してから使用した、古い NetworkManager 以外のメカニズムを使用して接続を開始します。

dispatcher スクリプトの実行

NetworkManager は、追加のカスタムスクリプトを実行して、接続の状態に基づいてサービスを開始または停止する方法を提供します。デフォルトでは、/etc/NetworkManager/dispatcher.d/ ディレクトリーが存在し、NetworkManager はアルファベット順にそこにあるスクリプトを実行します。各スクリプトは、root が所有する実行可能ファイルであり、ファイル 所有 者に対してのみ 書き込み権限 を持っている必要があります。NetworkManager の dispatcher スクリプト実行の詳細は、Red Hat ナレッジベースソリューションethtool コマンドを適用するように NetworkManager の dispatcher スクリプトを記述するを参照してください。
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.