Red Hat Training
A Red Hat training course is available for Red Hat Enterprise Linux
2.7. sysconfig ファイルによる NetworkManager の使用
/etc/sysconfig/ ディレクトリーは、設定ファイルおよびスクリプトの場所です。ほとんどのネットワーク設定情報はここに保存されます。ただし、VPN、モバイルブロードバンド、および PPPoE 設定を除き、/etc/NetworkManager/ サブディレクトリーに保存されます。たとえば、インターフェイス固有の情報は、/etc/sysconfig/network-scripts/ ディレクトリーの ifcfg ファイルに保存されます。
グローバル設定には、
/etc/sysconfig/network ファイルを使用します。VPN、モバイルブロードバンド、および PPPoE 接続の情報は、/etc/NetworkManager/system-connections/ に保存されます。
Red Hat Enterprise Linux 7 では、
ifcfg ファイルを編集しても、NetworkManager は自動的に変更を認識しないため、変更を通知する必要があります。NetworkManager プロファイル設定を更新するツールを使用している場合、NetworkManager は、そのプロファイルを使用して再接続するまで、この変更を実装しません。たとえば、エディターを使用して設定ファイルを変更した場合、NetworkManager は設定ファイルを再度読み込む必要があります。
これを確認するには、
root で を入力し、すべての接続プロファイルを再読み込みします。
~]# nmcli connection reload
または、変更したファイル
ifcfg-ifname を 1 つだけ 再読み込みするには、次のコマンドを実行します。
~]# nmcli con load /etc/sysconfig/network-scripts/ifcfg-ifname
上記のコマンドを使用して複数のファイル名を指定できることに注意してください。
nmcli などのツールを使用して行った変更はリロードを必要としませんが、関連するインターフェイスを停止してから再度稼働する必要があります。
~]# nmcli dev disconnect interface-name ~]# nmcli con up interface-name
nmcli の詳細は、「nmcli を使用する IP ネットワークの設定」 を参照してください。
ifup コマンドの実行中に NetworkManager が実行されている場合、ネットワークスクリプトは NetworkManager を起動しようとしますが、NetworkManager はネットワークスクリプトをトリガーしません。ネットワークスクリプトの詳細は、「ネットワークスクリプトによる NetworkManager の使用」を参照してください。
ifup スクリプトは汎用スクリプトで、いくつかの処理を行い、ifup-device_name、ifup-wireless、ifup-ppp などのインターフェイス固有のスクリプトを呼び出します。ユーザーが ifup enp1s0 を手動で実行すると、以下を行います。
ifupが/etc/sysconfig/network-scripts/ifcfg-enp1s0というファイルを探します。ifcfgファイルが存在する場合、ifupはそのファイル内のTYPEキーを探して、呼び出すタイプ固有のスクリプトを特定します。ifupは、TYPEに基づいてifup-wirelessまたはifup-device_nameを呼び出します。- タイプ固有のスクリプトがタイプ固有のセットアップを実行します。
- タイプ固有のスクリプトを使用すると、共通関数が
DHCPや静的セットアップなどのIP関連のタスクを実行できます。
/etc/init.d/network は起動時にすべての ifcfg ファイルを読み取り、ONBOOT=yes のものごとに、NetworkManager がすでに ifcfg ファイルから DEVICE を起動しているかどうかを確認します。NetworkManager がそのデバイスを起動している、またはすでに起動している場合は、そのファイルではこれ以上行われず、次の ONBOOT=yes ファイルをチェックします。NetworkManager がそのデバイスを起動していない場合は、initscripts は従来の動作を続行し、その ifcfg ファイルの ifup を呼び出します。
その結果、ONBOOT=yes が指定された
ifcfg ファイルは、NetworkManager または initscripts のいずれかで、システムの起動時に起動することが期待されます。これにより、 NetworkManager が処理しない従来のネットワークタイプ(ISDN、アナログダイヤルアップモムなど)と、NetworkManager が対応していない新規アプリケーションは、NetworkManager が処理できない場合でも、initscripts で正しく起動します。
重要
スクリプトは ifcfg-* をそのまま使用するため、バックアップファイルは
/etc ディレクトリー内またはライブファイルと同じ場所に保存しないことが推奨されます。.old、.orig、.rpmnew、.rpmorig、および .rpmsave の拡張機能のみが除外されます。
sysconfig ファイルの使用方法は、「ifcfg ファイルを使用した IP ネットワークの設定」 および 『ifcfg(8)』 の man ページを参照してください。