閱讀668 返回首頁    go 阿裏雲 go 技術社區[雲棲]


Centos7.x係統,網卡啟動報錯的案例分析

介紹了Centos7係統,網卡啟動失敗的兩種情況,和對應的分析解決方法。

情景一:ifconfig 查看不到網卡ip配置,網卡沒有正常啟動。

處理過程:
1、啟動網卡

systemctl start network

嚐試啟動網卡,不能正常啟動,提示需要執行 "systemctl status network"

2、執行

systemctl status network

提示錯誤信息 Failed to start LSB: Bring up/down networking.
報錯提示的不夠明確,不能直接判定是什麼問題。Google 了一圈這個報錯,發現大多都是網卡配置文件配置錯誤,或者MAC地址不對。
查看ECS的網卡配置文件內容都正確,網卡配置文件中原先也是沒有配置MAC地址,所以排除了網卡配置文件的問題。

3、繼續尋找更詳細一些的錯誤,查看了/var/log/messages 係統日誌,在服務器啟動的message信息中,發現網卡啟動失敗的錯誤,找到了真實的報錯。
image

錯誤顯示是 ifup 這個命令沒有權限執行。

4、ifup 這個命令,是在 /etc/sysconfig/network-scripts/

目錄中,是一個軟連接,實際的文件是 /usr/sbin/ifup
查看這個文件的權限,果然沒有執行權限,

chmod +x  /usr/sbin/ifup

image

加上權限後,重啟網卡恢複正常。


情景二: 啟動網卡報錯: Device eth1 does not seem to be present,delaying initialization

image

處理過程:
1、Device eth1 does not seem to be present,delaying initialization 這個報錯,是缺少網卡驅動 virtio_net 導致。
lsmod 查看係統加載的驅動中,沒有virtio_net
modprobe virtio_net 嚐試添加網卡驅動,重啟網卡 systemctl restart network
還是報錯,網卡驅動沒有加載成功。

2、驅動文件都是在 /lib/modules/ 目錄下對應內核版本中存放的, 查看服務器中竟然沒有 /lib/modules/ 這個目錄, /lib 目錄中沒有係統的庫文件,而是一些腳本文件, 肯定是被改過了。

image

3、把原目錄 /lib 備份一下,然後ln -s /usr/lib /lib 重新軟鏈/lib 目錄。

image

4、執行 modprobe virtio_net 添加網卡驅動,這次正常加載了。
最後重啟網卡恢複正常。

image

最後更新:2017-06-24 21:01:50

  上一篇:go  【機器學習】人工神經網絡(ANN)淺講
  下一篇:go  數據管理-實時監控- 操作列表顯示查看線程棧功能(linux係統)