Ubuntu安装 Realtek R8125/R8168 驱动

如今网卡更新的速度已经超过操作系统的更新速度了,特别是开源操作系统,默认的网卡驱动动不动就跟不上新的主板,导致新的电脑无法识别到网卡,特别闹心。比如最近配置的Z390 Phantom Gaming SLI/ac这个主板,在ubuntu 18.04上,就是安装了ubuntu-18.04-hwe-generic,也没有找到对应的驱动程序,这个时候就需要手动安装了。在官网上下载好对应的驱动,注意我们是2.5G Ethernet LINUX driver r8125 for kernel up to 4.15的版本,不要下错了。如果是1G网卡,则对应GBE Ethernet LINUX driver r8168 for kernel up to 4.15版本。

下载好之后,当前版本是r8125-9.003.02.tar.bz2。里面有README文件,如果按照README安装,当时能够使用,但是重启或者升级内核版本之后,就失效了。所以还需要手动处理下。

  • 准备编译环境

    1
    sudo apt-get install --reinstall linux-headers-$(uname -r) linux-headers-generic build-essential dkms
  • 解压对应的源码到/usr/src

    1
    sudo tar xvf r8125-9.003.02.tar.bz2 -C /usr/src
  • 添加一个dkms.conf/usr/src/8125-9.003.02/dkms.conf,内容如下

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    PACKAGE_NAME=Realtek_r8125
    PACKAGE_VERSION=9.003.02

    DEST_MODULE_LOCATION=/updates/dkms
    BUILT_MODULE_NAME=r8125
    BUILT_MODULE_LOCATION=src/

    MAKE="'make' -C src/ all"
    CLEAN="'make' -C src/ clean"
    AUTOINSTALL="yes"
  • 编译DKMS

    1
    2
    3
    4
    5
    sudo dkms add -m r8125 -v 9.003.02
    sudo dkms build -m r8125 -v 9.003.02
    sudo dkms install -m r8125 -v 9.003.02
    sudo depmod -a
    sudo modprobe r8125
  • 验证安装结果, 运行如下命令即可看到enxxx的有线网接口

    1
    ifconfig -a