RHEL 8 廃止予定のネットワークスクリプト

RHEL 8 廃止予定のネットワークスクリプト

私はRHEL 8について読んでいますが、これは声明が発表されました:

ネットワークスクリプトは Red Hat Enterprise Linux 8 では廃止され、デフォルトでは提供されなくなりました。デフォルトのインストールでは、nmcli ツールを介して NetworkManager サービスを呼び出す ifup スクリプトと ifdown スクリプトの新しいバージョンが提供されます。

さて、私にとってこれはもう使われていないことを意味しますが、何を交換する必要があるか(または同様の項目)を/etc/sysconfig/network-scripts読んだ内容では明確ではありません。ifcfg-eth0

ところで読んでみるこのページは静的IPアドレスについてです。、これは次のように主張します。

RHEL 8で静的IPアドレスを設定する手順:/etc/sysconfig/network-scripts/ifcfg-eth0次の名前のファイルを作成します。

DEVICE=eth0  
BOOTPROTO=none  
ONBOOT=yes  
PREFIX=24  
IPADDR=192.168.2.203  

RHEL 8でネットワークサービスを再起動する:systemctl restart NetworkManagerまたはsudo nmcli connection reload

もしそうなら、ifupそして設定ファイルはもうifdown使われませんが、設定ファイルは残りますか?ワが一枚に集まっているように見えますがscripts違いはありますか?configuration files第12章 RHEL固定ネットワークスクリプトように:

第12章 ネットワークスクリプト
...ネットワークインターフェイスの設定ファイルとそれを有効または無効にするスクリプトがこの/etc/sysconfig/network-scripts/ディレクトリにあります。

それでは、使用されなくなったコンテンツは何で構成されますか?/etc/sysconfig/network-scriptsこれはまだ静的IPを設定する適切な方法なので、スクリプトではないようです。

私はまだRHEL 8システムを実行していないので、誰かが避けるべきことを教えてくれることを願っています。

答え1

最初のリンクから:

/sbin/ifup-localifdown-pre-local、スクリプトのカスタムコマンドは実行されifdown-localません。

これらのスクリプトが必要な場合は、次のコマンドを使用して、使用されなくなったネットワークスクリプトをシステムにインストールできます。

~]# yum install network-scripts

したがって、network-scriptsRHEL 8 RPMファイルに含まれているか、そのRPMの機能に依存するすべてのエントリは現在廃止されました。特に、以前にスクリプトを使用して/sbin/ifup-localいくつかの高度なルーティングやその他の特別なネットワーク構成を設定したことがある場合は、これを行う新しい方法を見つける必要があります。

NetworkManager が RHEL に導入されたときに以前の設定ファイルの場所を使用する設定バックエンドが含まれていましたが、まだ含まれていますが、新しい NetworkManager インフラストラクチャと以前の設定スクリプト構文の拡張バージョンが含まれています。だから/etc/sysconfig/network-scripts/ifcfg-*ファイルまだそこにいるだろうこれでNetworkManagerによって解析され、ソーススクリプトとしては実行されませんが、同じ構文を使用します。

廃止予定のnetwork-scriptsパッケージには、主に以下が含まれます。

  • SysVinitスタイルのサービススクリプト/etc/init.d/network
  • ifup*そしてディレクトリから見たifdown*スクリプトinit.ipv6-globalnetwork-functions*/etc/sysconfig/network-scripts/
  • /usr/sbin/ifupとクラシックバージョン(デフォルトで存在する/usr/sbin/ifdown互換性ラッパーをオーバーライド)nmcli
  • /usr/sbin/usernetctlコマンド
  • 関連文書とサンプルファイル

したがって、廃止されたRPMを使用していない場合はnetwork-scripts/etc/sysconfig/network-scripts/ただifcfg-*ネットワークインターフェイスとカスタムパスのファイルが含まれていますが、route-*他のファイルはまったく含まれていません。このコマンドが必要な場合は廃止予定の機能であるため、代替コマンドとしてusernetctl適切なサブコマンドを使用する必要があります。nmcli

ifupそれでも使用できますが、廃止予定のRPMをインストールしない限り、完了してifdown作業できます。NetworkManagernetwork-scripts

答え2

RHEL 7のPXEインストール中に、NetworkManagerを使用してkickstartを使用してネットワークを設定したときに環境が少し不安定であることがわかりました。これがネットワークインタフェースを手動で設定する必要がある理由です。また、設定NetworkManagerで無効にすることにしました。今回のお知らせでNetworkManagerに移転しました。

現在、RHELはinitscriptの代わりにネットワークスクリプトrpmを使用してレガシー動作をサポートしています。

https://access.redhat.com/solutions/3777201

それでも設定ファイルでNM_ControlLED = noを使用してNMを無効にしたい場合は、次の記事でこのトピックについて詳しく説明します。

https://www.golinuxcloud.com/unit-network-service-not-found-rhel-8-linux/

しかし、賢明な選択は、NetworkManagerにゆっくりと適応し、NM問題に対するRed Hatサポートのフォローアップを取ることです。なぜなら、Red HatがいつユーザーにNMを完全に強制し始めるのか分からないからです。

答え3

RHEL 8は依然としてネットワークスクリプトをサポートしており、デフォルトでは最小構成で使用できます。

確認するネットワーク構成と管理の章RHELドキュメントにあります。

次のチュートリアルもご覧ください。RHEL 8で静的IPアドレスを設定する方法そしてRHEL 8とCentos 8で静的IPアドレスを設定する方法

答え4

廃止されたネットワークスクリプトを引き続きサポートする必要がある非常に妥当な理由はまだありますが(RHEL8はループバックインターフェイスでエイリアスエニーキャストIPをサポートしていません)、一部のものは制御できません。

ほとんどの場合、これは次の方法で行われます。

  1. 「キーファイル」を読み取るようにNetworkManagerを設定します。
  2. キーファイル形式でネットワークスクリプトのNetworkManagersバージョンを作成/編集する
  3. NMキーファイルがルート所有であり、権限が600であることを確認してください。
  4. 再起動するかnmcli con reloadsystemctl restart NetworkManager動作しますが保証されていません)。

  1. 「キーファイル」を読み取るようにNetworkManagerを設定します。

    /etc/NetworkManager/NetworkManager.conf
    

    または順番に読む

    /etc/NetworkManager/conf.d/50-whatevername.conf
    

    「main」セクションの下のプラグインに「keyfile」を設定/追加します。

    [main]
    plugins=keyfile
    

    リモートで管理し、接続が以前のネットワークスクリプトに基づいている場合は、次の点を確認する必要があります。両方ロードされたプラグイン:

    [main] 
    plugins=keyfile,ifcfg-rh
    
  2. NetworkManagerキーファイルを作成/編集します(ファイル名は重要ではないようです)。

    これで/etc/NetworkManager/system-connections、新しい(しかし古いMS Windowsに似ている)「キーファイル」形式でNetworkManagerネットワークスクリプトファイルを編集できるようになりました。

    インターフェイスの実際のMACアドレスを取得し、uuidを無視するか(自動生成)、cliツールを使用して直接作成しますuuidgen

    キーファイルの例:

    # Translate REF - https://people.freedesktop.org/~lkundrak/nm-docs/nm-settings-ifcfg-rh.html
    [connection]
    type=ethernet
    uuid=969fc159-a48f-4930-8de1-e3e5b952769
    interface-name=ens34
    id=ens34
    autoconnect=true
    
    [ethernet]
    #cloned-mac-address=da:d0:ed:00:06:86
    mac-address=00:50:00:00:00:02
    
    [dummy]
    #cloned-mac-address=da:d0:ed:00:06:86
    #mac-address=da:d0:ed:00:06:86
    
    [ipv4]
    method=manual
    address=10.1.1.2/20
    gateway=10.1.0.1/20
    #never-default=true
    #dns=8.8.8.8;8.8.4.4
    
    #[ipv6]
    #method=manual
    #address=2001:db8::2/64
    #gateway=2001:db8::1
    
    [proxy]
    
  3. NMキーファイルがルート所有であり、権限が600であることを確認してください。

    chown root.root ${nm-whatever.conf} && chmod 600 ${nm-whatever.conf}
    
  4. ただ再起動してください。systemctl restart NetworkManager通常は動作しますが、再起動を意味するわけではありませんが、nmcli次のツールを使用することが示されています。

    nmcli con reload
    

関連情報