AlmaLinuxは「ifcfg-」と「nmconnection」の両方の場所を使用してネットワーク設定を保存しますか?

AlmaLinuxは「ifcfg-」と「nmconnection」の両方の場所を使用してネットワーク設定を保存しますか?

私は、アプリケーション全体の一貫性を確保するために、いくつかのネットワークインタフェースの名前を変更するシステムを開発しています。インストール中にIPアドレスを設定するのが困難でした。いくつかのテストを実行して接続を設定しましたが、nmtui2つのユースケースがあるようです。

自動命名インターフェース: インターフェイス名にオペレーティングシステムで指定された名前(例eno1)がある場合、接続設定は次の場所に保存されます。/etc/NetworkManager/system-connections/eno1.nmconnection

名前が変更されたインターフェイス: インターフェイス名が変更されると(dataファイルとして提供されるなど)、接続設定はファイルに保存されます。DEVICEifcfg-/etc/sysconfig/network-scripts/ifcfg-data

どちらの場合も、ifcfg-ファイルが存在します。の場合はeno1ファイル設定MTUZONEの場合はdataファイル設定NAMEDEVICE

明らかな不一致がある理由とどちらの場合も、インターフェイスを事前設定する方法を説明できる人はいますか?

修正する: いくつかの追加テストを実行し、NAME設定が含まれているかどうかにかかわらず、デフォルト以外のものに設定されている限り、ifcfgNetworkManagerはそのインターフェイスのIP設定を保存します。と元のインターフェイス名を入力すると、IP設定がファイルに保存されます。deviceifcfgNAMEDEVICE.nmconnection

答え1

名前が変更されたインターフェイスを効果的に事前設定する方法が見つからなかったため、今使用するプロセスは次のとおりです。

  1. インターフェイスの設定に ksnetworkコマンドを使用しないでください。これにより、nmconnection 鍵ファイル形式のデフォルトのインターフェース名に基づいてネットワーク構成が構成されます。インストール中にインターフェイスが必要な場合は、これを行うことができます。とにかく後で削除します。
  2. 起動%postスクリプトから:
    1. 新しいファイルシステム(インストールする必要がある場所/mnt/sysimage)からifcfg-名前を変更したいインターフェイスのファイルを作成します。必要なデバイス名と接続名とともに、HWADDRインターフェイスのMACアドレスが含まれています。DEVICENAME
    2. network-config.sh次の操作を行う最初の起動時に実行されるスクリプトを作成します。
      1. 自動的に作成されたすべての接続を削除する/etc/NetworkManager/system-connections
      2. ネットワーク構成の再読み込み(nmcli conn reload
      3. nmcli を使用した新しいデバイス名によるネットワークインターフェイスの設定
      4. インターフェイスの無効化と再有効化
      5. network-config.sh最初の起動時にのみ実行されるように起動スクリプトを変更します。

最終結果は、名前が変更されたインターフェイスにIP設定が保存され、デフォルト名のインターフェイス/etc/sysconfig/network-scripts/ifcfg-*が次の場所に設定されることです。/etc/NetworkManager/system-connections/*.nmconnection

関連情報