萬盛學電腦網

您现在的位置: 萬盛學電腦網 >> 作業系統 >  >> Linux 教學

Linux 網卡無法辨識完整排查指南:驅動安裝、網路參數設定與 SSH 部署

Linux 系統無法偵測網卡是常見挫折。本文以 Realtek RTL8168/8111 PCI-E 千兆網卡為例,提供從驅動編譯安裝、手動/設定檔雙模式網路配置、主機名與 SSH 部署到快速排查指令的完整解決方案。

一、確認晶片型號並編譯安裝原廠驅動

  1. 以 lspci | grep -i ethernet 確認網卡晶片型號。
  2. 至 Realtek 官網下載對應 Linux 驅動原始碼(如 r8168-8.005.00.tar.bz2)。
  3. 編譯安裝流程:
tar vjxf r8168-8.005.00.tar.bz2
cd r8168-8.005.00
make clean modules
make install
/sbin/depmod -a
/sbin/insmod ./src/r8168.ko  # Kernel 2.4.x 為 r8168.o

驗證驅動載入:

/sbin/lsmod | grep r8168
/sbin/ifconfig -a  # 應出現 eth0、eth1 等介面

啟用介面:ifconfig ethX up(X 為介面編號)。

二、網路參數設定雙模式

1. 命令列臨時設定(重啟失效)

# 設定 IP
ifconfig ethX "你的IP位址"

# 設定 DNS
echo "nameserver DNS_IP" > /etc/resolv.conf

# 設定預設閘道
route add default gw "閘道IP"

2. 設定檔永久生效(Red Hat/Fedora/CentOS)

編輯 /etc/sysconfig/network-scripts/ifcfg-ethX:

DEVICE=eth0
BOOTPROTO=static
ONBOOT=yes
TYPE=ethernet
NETMASK=255.255.255.0
IPADDR=192.168.1.1
GATEWAY=192.168.1.254
BROADCAST=192.168.1.255

SuSE 系統對應路徑為 /etc/sysconfig/network/ifcfg-ethX。修改後執行 service network restart 或 /etc/init.d/network restart 生效。

三、主機名與 SSH 無密碼登入部署

1. /etc/hosts 設定主機名解析

127.0.0.1   localhost.localdomain localhost
192.168.4.101 node3  # 依實際 IP 與主機名修改

2. /etc/hosts.equiv 允許 rsh/rlogin 信任(可選)

node3

3. SSH 金鑰認證設定

ssh-keygen -t rsa  # 一路 Enter 使用預設值
cd ~/.ssh
cp id_rsa.pub authorized_keys
chmod 600 authorized_keys
ssh node3  # 首次連線驗證,後續免密登入

確保 /etc/ssh/sshd_config 含 PubkeyAuthentication yes 且 AuthorizedKeysFile .ssh/authorized_keys。

四、快速排查指令速查表

  • ifup eth0 — 嘗試啟動 eth0
  • lsmod | grep -i eth — 確認驅動模組載入
  • dmesg | grep -i eth — 查看核心啟動訊息中的網卡偵測錯誤
  • ethtool eth0 — 檢視連結速度、雙工模式、驅動資訊
  • ip link set eth0 up — 現代 iproute2 啟用介面指令

系統化執行上述步驟,絕大多數網卡辨識與配置問題皆可解決。

copyright © 萬盛學電腦網 all rights reserved