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信息中,發現網卡啟動失敗的錯誤,找到了真實的報錯。
錯誤顯示是 ifup 這個命令沒有權限執行。
4、ifup
這個命令,是在 /etc/sysconfig/network-scripts/
目錄中,是一個軟連接,實際的文件是 /usr/sbin/ifup
查看這個文件的權限,果然沒有執行權限,
chmod +x /usr/sbin/ifup
加上權限後,重啟網卡恢複正常。
情景二: 啟動網卡報錯: Device eth1 does not seem to be present,delaying initialization
處理過程:
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
目錄中沒有係統的庫文件,而是一些腳本文件, 肯定是被改過了。
3、把原目錄 /lib
備份一下,然後ln -s /usr/lib /lib
重新軟鏈/lib
目錄。
4、執行 modprobe virtio_net
添加網卡驅動,這次正常加載了。
最後重啟網卡恢複正常。
最後更新:2017-06-24 21:01:50