Redhat

udev 可以在不重新啟動的情況下“重新啟動”嗎?

  • June 14, 2016

對於一般情況,假設 eth0 的虛擬適配器已被移除並替換為另一個。要麼是由於複製,要麼是最近出現的一連串 MAC 地址衝突。[是的,他們的皮疹。]

通常我只是簡單地rm /etc/udev/rules.d/70-persistent-net-rules檢查 /etc/sysconfig/network* 中的任何內容是否包含對 MAC 地址和reboot的引用,但這是 Linux,必須有一種方法來避免重新啟動。

我可以執行一個命令來獲取新的 NIC 嗎?

編輯

除了下面@dawud 的回答之外,我在測試虛擬機上遇到了一個問題,它已經使用新設備啟動並命名eth1,在這種情況下udevadm似乎沒有“釋放”設備。在這種情況下,我做了以下事情:

  1. 從 VSphere 獲取設備的 MAC 地址。
  2. 使用替換 MAC 地址/etc/iftab的行創建/編輯。當此文件不存在/包含目標介面的名稱時,似乎不喜歡它。eth0 mac ##:##:##:##:##:##``ifrename
  3. ifrename -i eth1 -n eth0
  4. service network restart和 eth0 正常啟動。
  5. $$ Optional $$ rm /etc/iftab因此,MAC 的生存空間就少了一個。

您可以使用udevadm trigger

您仍然需要刪除持久規則並重新啟動網路服務。

對我來說,以下命令序列按預期工作。

我已經進行了修改/etc/udev/rules.d/70-persistent-net.rules以更改eth數字並在不重新啟動的情況下重新載入它們。

/etc/init.d/networking stop

/etc/init.d/udev stop

udevadm control --reload-rules

/etc/init.d/udev start

/etc/init.d/networking start

在此之後,它成功載入而無需重新啟動機器。

歡迎對此提出任何建議或建議,我通過閱讀 MAN 頁面自己發現了上述內容。

引用自:https://serverfault.com/questions/497436