Networking

RHEL 8 已棄用的網路腳本

  • December 24, 2021

我正在閱讀有關 RHEL 8 的資訊,並發表了以下聲明

Red Hat Enterprise Linux 8 不推薦使用網路腳本,並且預設情況下不再提供它們。基本安裝提供了新版本的 ifup 和 ifdown 腳本,它們通過 nmcli 工具呼叫 NetworkManager 服務。

好的,所以對我來說,這意味著/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 NetworkManagersudo nmcli connection reload

那麼,是否只有ifupandifdown已被棄用,但配置文件仍然存在?scripts和之間的區別是configuration files什麼,即使它們似乎集中在一個章節中?RHEL 第 12 章將網路腳本定義為:

第 12 章網路腳本

…網路介面的配置文件以及啟動和停用它們的腳本位於/etc/sysconfig/network-scripts/目錄中。

那麼,什麼構成了已棄用的內容?它似乎不是其中的腳本,/etc/sysconfig/network-scripts因為這顯然仍然是配置靜態 IP 的合適方法。

我還沒有執行 RHEL 8 機器,所以我希望有人能闡明應該避免什麼。

從您的第一個連結:

請注意,不執行/sbin/ifup-local,ifdown-pre-local和腳本中的自定義命令。ifdown-local

如果需要這些腳本中的任何一個,仍然可以使用以下命令在系統中安裝已棄用的網路腳本:

~]# yum install network-scripts

因此,RHEL 8 network-scriptsRPM 文件中包含的任何內容或依賴於該 RPM 功能的任何內容現在都已棄用。特別是,如果您以前使用腳本/sbin/ifup-local來設置一些高級路由或其他專門的網路配置,那麼現在是時候找到一種新的方法來做到這一點了。

請注意,當 NetworkManager 被引入 RHEL 時,它包括 - 並且仍然是 - 一個使用舊配置文件位置的配置後端,但具有新的 NetworkManager 基礎結構和舊配置腳本語法的擴展版本。因此,這些/etc/sysconfig/network-scripts/ifcfg-*文件仍然存在並使用相同的語法,儘管它們現在將由 NetworkManager 解析並且不會作為源腳本執行。

已棄用的network-scripts軟體包主要包含:

  • SysVinit 風格的服務腳本/etc/init.d/network
  • 您曾經在目錄中看到的ifup*ifdown*和腳本init.ipv6-global``network-functions*``/etc/sysconfig/network-scripts/
  • /usr/sbin/ifupand的經典版本/usr/sbin/ifdown(將覆蓋nmcli預設存在的兼容性包裝器)
  • /usr/sbin/usernetctl命令_
  • 以及相關的文件和範例文件

因此,當您不使用已棄用的network-scriptsRPM 時,您現在希望該/etc/sysconfig/network-scripts/目錄包含ifcfg-*網路介面的文件,可能還有route-*自定義路由的文件,但根本不包含其他文件。如果您需要該usernetctl命令,它屬於已棄用的功能,您應該開始使用適當的nmcli子命令作為其替代品。

ifup並且ifdown仍然可用,但現在通過 完成他們的工作NetworkManager,除非您安裝已棄用的network-scriptsRPM。

引用自:https://unix.stackexchange.com/questions/483354