PVE系统r8125/2.5G驱动安装

2个月前 φ合肥 19

从前几天的组网图一出,基本上就已成定局。这几天的观察,还是很稳的,而且声音很小。小主机的风扇不知道是不是坏了,噪声特别大。不过功率由25W提高到75W左右了。即便如此,我感觉这个功率也还是可以接受的。新主机的功率比较高,如果再加上新主机,整个功率会达到225W左右。

老主机采用PVE虚拟机系统,主要是因为基于Debian系统,我感觉基于此系统的开发的东西都是很不错的。但是不知道为什么默认的PVE采用的是r8169网卡驱动,它只支持千兆网卡。对于我这个2.5G网卡,它也只是显示千兆速率。所以安装完PVE之后,第一件事就是安装r8125网卡驱动,并且切换到此网卡启动。

安装dkms和pve-headers-6.8.12-4-pve

pve-headers-6.8.12-4-pve中的6.8.12-4指的是PVE的内核版本,在pve管理页面——概要可以看到。

root@pve:~# apt install -y dkms pve-headers-6.8.12-4-pve
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
E: Unable to locate package pve-headers-6.8.12-4-pve
E: Couldn't find any package by glob 'pve-headers-6.8.12-4-pve'

出现上述错误的原因,是默认的源没有这个。

解决方法(添加源):

nano /etc/apt/sources.list.d/pve-enterprise.list

# 注释enterprise的源,这是企业版的源
# deb https://enterprise.proxmox.com/debian/pve bookworm pve-enterprise
#添加这个源
deb http://download.proxmox.com/debian/pve bookworm pve-no-subscription

apt update && apt dist-upgrade && apt install -y dkms pve-headers-6.8.12-4-pve

查看网卡驱动

查看PCIE ID:lspci | grep 8125

root@pve:~# lspci | grep 8125
07:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8125 2.5GbE Controller (rev 05)

07:00.0 为PCIE ID

查看使用:lspci -s 07:00.0 -k

root@pve:~# lspci -s 07:00.0 -k
07:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8125 2.5GbE Controller (rev 05)
DeviceName: RTL8125 2.5GbE Controller
Subsystem: ASUSTeK Computer Inc. RTL8125 2.5GbE Controller
Kernel driver in use: r8169
Kernel modules: r8169

安装headers

headers=$(dpkg -l | awk '/^ii.+kernel-[0-9]+\.[0-9]+\.[0-9]/{gsub(/-signed/, ""); gsub(/kernel/, "headers"); print $2}' | tr "\n" " ")
eval apt install -y $headers

安装r8125驱动

下载r8125驱动
https://github.com/devome/realtek-r8125-dkms

安装驱动

apt install ./r8125-dkms_*.deb

或者

dpkg -i realtek-r8125-dkms_*.deb

查看状态

dkms status

建议先重启,再执行lspci -s 07:00.0 -k,看看驱动有没有显示再往下。

root@pve:~# lspci -s 07:00.0 -k
07:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8125 2.5GbE Controller (rev 05)
DeviceName: RTL8125 2.5GbE Controller
Subsystem: ASUSTeK Computer Inc. RTL8125 2.5GbE Controller
Kernel driver in use: r8169
Kernel modules: r8169, r8125

看到没有,Kernel modules: r8169, r8125,那就说明r8125驱动安装成功了。但是Kernel driver in use: r8169显示pve正在用的是r8169驱动。这点一定得确定好,不然屏蔽r8169可能会连不上网。

列出全部内核版本kernel_version,找出那些还没有安装驱动的内核

dpkg -l | awk '/^ii.+kernel-[0-9]+\.[0-9]+\.[0-9]/{gsub(/proxmox-kernel-|pve-kernel-|-signed/, ""); print $2}'

手动指定驱动版本

在deb文件名中有体现和内核版本(从上一句命令的输出中),zsh按tab可自动补全,比如:dkms install r8125/9.014.01 -k 6.8.12-4-pve

dkms install r8125/<driver_version> -k <kernel_version>

卸载不再需要的headers

eval apt-mark auto $headers
apt autopurge

切换r8125驱动

so......下面二选一:

①切换r8125驱动,屏蔽r8169网卡驱动命令如下(如果升级内核,将dkms.conf里的blacklist r8169删掉或者注释掉,否则PVE无法联网):

echo "blacklist r8169" >> /etc/modprobe.d/dkms.conf
## 更新驱动模块并重启
update-grub
update-initramfs -u -k all

②r8125和r8169网卡都使用(经测试,虽然r8125已经安装了,但PVE默认还是用r8169):

echo 'alias r8169 off' >> /etc/modprobe.d/dkms.conf
echo 'r8125' >> /etc/initramfs-tools/modules
## 更新驱动模块并重启
update-grub
update-initramfs -k all -u

OK!如此,重启后pve即可使用r8125网卡了。

查看效果

update-pciids
lspci -knn

参考:

①https://www.geekxw.top/1142/

②https://www.cnblogs.com/klzy/p/18266961

19 条评论

  1. #1

    大佬。

    • @网友小宋 不敢当啊!只是循着大神们的脚印在走而已。记录下来一方面以备不时之需,一方面希望其他人看到也能用得着。

  2. #2

    目前我还没入你们这些坑,以后经济条件好了,时间多了我也玩起来

    • @XIGE 这个服务器是放家里还是放云端,看人吧,有人喜欢放云端,而我喜欢放家里,速度够快,也安全。服务器挂了,我换个服务器,解析一下就好了。不用把数据传来传去的那么麻烦了。

  3. #3

    2.5g 估计我得过几年才能用上,速度太快,我的企业机械硬盘速度全速才200多M 都跑不满2.5G的250M.
    不,想了想我计划的pve主板是千兆网卡,所以就不考虑了。哈。

    • @acevs 是的,对于不经常传输数据文件的来说,千兆足够用了

  4. #4

    收藏,可能我也会用得上。

  5. #5

    速度快了,硬盘性能又成了问题了,所以我还是维持在千兆,哈哈

    • @obaby 是的,我的硬盘还是好多年前的呢。
      不过好像raid组盘可以提高读写速度的,可以试试。

  6. #6

    还是那句话,沐浴在大佬的劳动成果中,幸福!

  7. #7

    教程有了 设备在哪儿领😂 我也来领个来试试看

  8. #8
    OP
    OP -@

    螃蟹卡是不是虚拟化的支持没有intel的好呀?

    • @OP 我觉得都是一样的,速度都能达到满速。

  9. #9

    大佬们玩的都很高级啊