type
Post
status
Published
date
Mar 4, 2025
slug
2025/03/04/How-to-Manually-Compile-and-Install-AMD-XGBE-10GB-NIC-Driver-on-Debian-11
summary
tags
Linux
category
Linux
created days
new update day
icon
password
Created_time
Mar 4, 2025 02:58 AM
Last edited time
Mar 4, 2025 06:54 AM
背景
在安装Debian 11时,我发现主板自带的AMD XGBE 10GB网卡并没有被Linux内核主线支持。这意味着每次安装系统时,我都需要手动编译和安装网卡驱动。然而,编译驱动所需的构建工具(如
make
、GCC
等)在初始安装时并未预装,这给安装过程带来了不少麻烦。为了简化这一过程,我决定记录下我的配置步骤。这不仅是为了给自己留个备忘,也希望能帮助到遇到类似问题的朋友。
第一步:安装操作系统
安装Debian 11的过程相对简单,但在配置网络时需要注意。尽管Debian 11提供了AMD XGBE网卡驱动的选项,但在我的情况下,选择这个选项后系统仍然提示找不到网卡。因此,我选择在没有网络连接的情况下继续安装,暂时不使用网络镜像源。
第二步:配置本地源
由于没有网卡驱动,我们无法连接到网络,也无法使用
apt
包管理器在线安装软件包。这时,我们可以将Debian的安装ISO镜像作为本地源,暂时用于安装必要的软件包。1. 复制安装镜像到系统内部
首先,将Debian的安装ISO镜像复制到系统的
/root/
目录下:cp debian-11.0.0-amd64-DVD-1.iso /root/
2. 挂载镜像
接下来,创建一个挂载点并挂载ISO镜像:
mkdir /mnt/cdrom && mount /root/debian-11.0.0-amd64-DVD-1.iso /mnt/cdrom
3. 配置APT源
备份原有的APT源列表,并编辑新的源列表文件,将本地镜像路径添加进去。注意,
[trusted=yes]
是必须的,以确保APT信任本地源。cp /etc/apt/sources.list /etc/apt/sources.list.back
在
sources.list
文件中,注释掉所有其他源,并添加以下内容:vim /etc/apt/sources.list # deb cdrom:[Debian GNU/Linux 11.0.0 _Bullseye_ - Official amd64 DVD Binary-1 20210814-10:04]/ bullseye contrib main deb [trusted=yes] file:///mnt/cdrom bullseye contrib main
第三步:安装编译依赖
在编译网卡驱动之前,我们需要安装一些必要的构建工具和依赖项:
sudo apt install build-essential bc flex bison libssl-dev sudo apt install linux-headers-$(uname -r)
这些工具将帮助我们顺利编译和安装网卡驱动。
第四步:编译安装驱动
1. 编译驱动
进入驱动源码目录,设置内核源码路径,并执行编译命令:
export KSRC=/lib/modules/5.10.0-8-amd64/build make clean make
编译过程会生成一系列目标文件,并最终生成
amd-xgbe.ko
内核模块。# make clean make[1]: Entering directory '/usr/src/linux-headers-5.10.0-8-amd64' CLEAN /root/driver/xgbe/Module.symvers make[1]: Leaving directory '/usr/src/linux-headers-5.10.0-8-amd64'
# make make[1]: Entering directory '/usr/src/linux-headers-5.10.0-8-amd64' CC [M] /root/driver/xgbe/xgbe-main.o CC [M] /root/driver/xgbe/xgbe-drv.o CC [M] /root/driver/xgbe/xgbe-dev.o CC [M] /root/driver/xgbe/xgbe-desc.o CC [M] /root/driver/xgbe/xgbe-ethtool.o CC [M] /root/driver/xgbe/xgbe-mdio.o CC [M] /root/driver/xgbe/xgbe-ptp.o CC [M] /root/driver/xgbe/xgbe-i2c.o CC [M] /root/driver/xgbe/xgbe-phy-v1.o CC [M] /root/driver/xgbe/xgbe-phy-v2.o CC [M] /root/driver/xgbe/xgbe-platform.o CC [M] /root/driver/xgbe/xgbe-pci.o CC [M] /root/driver/xgbe/xgbe-dcb.o CC [M] /root/driver/xgbe/xgbe-debugfs.o CC [M] /root/driver/xgbe/kver-compat.o LD [M] /root/driver/xgbe/amd-xgbe.o MODPOST /root/driver/xgbe/Module.symvers CC [M] /root/driver/xgbe/amd-xgbe.mod.o LD [M] /root/driver/xgbe/amd-xgbe.ko make[1]: Leaving directory '/usr/src/linux-headers-5.10.0-8-amd64'
2. 安装驱动内核模块
编译完成后,安装驱动模块并更新模块依赖关系:
make modules_install depmod -a
3. 检查安装结果
使用
lsmod
命令检查驱动是否成功加载:lsmod | grep amd
如果看到
amd-xgbe
模块,说明驱动已成功安装。重启验证
最后,重启系统以应用新的驱动:
sudo reboot now
注意⚠️
重要提示:该驱动的安装位置与内核版本相关。如果后续更换了内核版本,必须重新编译并安装驱动,否则驱动将失效。
通过以上步骤,我成功地在Debian 11上手动编译并安装了AMD XGBE 10GB网卡驱动。希望这篇记录能帮助到有类似需求的朋友。如果你有任何问题或建议,欢迎在评论区留言讨论!
欢迎加入“喵星计算机技术研究院”,原创技术文章第一时间推送。

- 作者:tangcuyu
- 链接:https://expoli.tech/articles/2025/03/04/How-to-Manually-Compile-and-Install-AMD-XGBE-10GB-NIC-Driver-on-Debian-11
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。
相关文章