在 RedHat/CentOS 系統上使用 Realtek RTL8188CUS 晶片組的 USB 無線網卡,需手動編譯安裝廠商驅動。本文涵蓋硬件確認、驅動下載、內核依賴安裝、編譯安裝、圖形界面配置網絡的全過程。

lsusb
# 輸出示例:
# Bus 001 Device 004: ID 0bda:8176 Realtek Semiconductor Corp. RTL8188CUS 802.11n WLAN Adapter
關鍵信息:ID 0bda:8176(廠商 ID:產品 ID),對應 RTL8188CUS 晶片。
Realtek 官網驅動下載頁面常變動,建議從 GitHub 克隆維護較好的倉庫:
git clone https://github.com/dz0ny/rt8192cu.git
cd rt8192cu
# 或下載壓縮包解壓
# wget https://github.com/dz0ny/rt8192cu/archive/master.zip
# unzip master.zip && cd rt8192cu-master
注意:內核 3.10+(RHEL 7、CentOS 7)已內建 rtl8192cu 模塊,但可能需固件文件。先嘗試 modprobe rtl8192cu 並檢查 dmesg | grep -i firmware,缺固件則安裝 linux-firmware 包。
# 安裝內核頭文件、編譯工具
yum install -y kernel-devel-$(uname -r) kernel-headers-$(uname -r) gcc make
# 若 /usr/src/kernels/ 為空或版本不匹配,執行:
# yum install -y kernel-devel
# 重啟系統確保運行內核與 kernel-devel 版本一致
若報錯 /lib/modules/.../build: No such file or directory,建立軟鏈接:
cd /lib/modules/$(uname -r)
ln -s ../../../usr/src/kernels/$(uname -r) build
make clean
make
make install
# 或運行腳本
# ./install.sh
安裝成功後,加載模塊:
modprobe 8192cu
# 或舊驅動模塊名
# modprobe 8188eu
檢查 lsmod | grep 8192 及 ip link 出現 wlan0 或 wlp2s0 介面。
命令行配置 wpa_supplicant 較繁瑣,建議安裝 GNOME 桌面使用 NetworkManager 圖形化管理:
# 安裝桌面環境
yum groupinstall -y "X Window System" "GNOME Desktop"
# 或最小化
# yum groupinstall -y "X Window System" "Desktop"
# 設置圖形界面為默認啟動
systemctl set-default graphical.target
# 重啟進入桌面
reboot
桌面右上角網絡圖標 → 選擇 Wi-Fi → 輸入密碼連接。
# 查看連接狀態
iwconfig
nmcli dev wifi list
# 設置開機自動連接(NetworkManager 會記憶)
# 查看連接配置文件
ls /etc/NetworkManager/system-connections/
| 現象 | 原因 | 解決 |
|---|---|---|
編譯報錯 implicit declaration of function | 驅動源碼與內核版本不兼容 | 使用內建 rtl8192cu 模塊 + 固件,或尋找適配內核版本的驅動分支 |
| 掃描不到 Wi-Fi | 射頻殺手開關、驅動未加載、固件缺失 | rfkill list 解除阻塞;dmesg | grep firmware 補裝固件 |
| 連接頻繁斷開 | 電源管理、信號弱、驅動 Bug | 關閉電源管理 iwconfig wlan0 power off;換 5GHz/信號更好 AP |
| 內核升級後驅動失效 | DKMS 未配置 | 安裝 dkms 並將驅動加入 DKMS 树,或每次內核升級後重新編譯 |
新版內核(5.x+)對 RTL8188CUS 支持良好,通常無需編譯驅動,僅需:
dnf install -y linux-firmware NetworkManager-wifi
# 重啟或 modprobe rtl8192cu
nmcli dev wifi connect "SSID" password "PASSWORD"
若確需舊驅動,優先尋找已適配當前內核的 GitHub 分支,避免手動修補源碼。