135 lines
4.0 KiB
Markdown
135 lines
4.0 KiB
Markdown
# Realtek r8125 DKMS
|
|
|
|

|
|
|
|
This provides Realtek r8125 driver in DKMS way so that you can keep the latest driver even after the kernel upgrade.
|
|
|
|
## Before use
|
|
|
|
This DKMS package is for Realtek RTL8125 (r8125 in module name) Ethernet, which is designed for the PCI interface.
|
|
|
|
If you are searching for the Realtek 2.5 Gbits **USB Ethernet**, which may use RTL8156 (r8152 in module name), you are in the wrong place. Please refer to another DKMS project for that Realtek driver.
|
|
|
|
- [Realtek R8152 DKMS](https://github.com/awesometic/realtek-r8152-dkms)
|
|
|
|
## Installation
|
|
|
|
There are 3 ways to install this DKMS module. Choose one as your tastes.
|
|
|
|
Those are not interfering with each other. So you can do all 3 methods but absolutely you don't need to.
|
|
|
|
Installation using the Debian package is recommended for the sake of getting the newer driver.
|
|
|
|
### Debian package
|
|
|
|
#### Released package file
|
|
|
|
Download the latest Debian package from the Release tab on the Github repository.
|
|
|
|
Then enter the following command.
|
|
|
|
```bash
|
|
sudo dpkg -i realtek-r8125-dkms*.deb
|
|
```
|
|
|
|
> If multiple files selected by the wild card, you should type the specific version of the file.
|
|
>
|
|
> ```bash
|
|
> sudo dpkg -i realtek-r8125-dkms_9.016.01-1_amd64.deb
|
|
> ```
|
|
|
|
If dependency error occurs, try to fix that with `apt` command.
|
|
|
|
```bash
|
|
sudo apt install --fix-broken
|
|
```
|
|
|
|
#### Launchpad PPA (Recommended)
|
|
|
|
Add the Launchpad PPA.
|
|
|
|
```bash
|
|
sudo add-apt-repository ppa:awesometic/ppa
|
|
```
|
|
|
|
Then install the package using `apt` tool.
|
|
|
|
```bash
|
|
sudo apt install realtek-r8125-dkms
|
|
```
|
|
|
|
### autorun.sh
|
|
|
|
Using the `autorun.sh` script that Realtek provides on their original driver package. This is **not installed as a DKMS**, only efforts to the current kernel.
|
|
|
|
Download or clone this repository and move to the extracted directory, then run the script.
|
|
|
|
```bash
|
|
sudo ./autorun.sh
|
|
```
|
|
|
|
### dkms-install.sh
|
|
|
|
This script is from aircrack-ng team. You can install the DKMS module by a simple command.
|
|
|
|
Download or clone this repository and move to the extracted directory, then run the script.
|
|
|
|
```bash
|
|
sudo ./dkms-install.sh
|
|
```
|
|
|
|
## Verify the module is loaded successfully
|
|
|
|
After installing the DKMS package, you may not be able to use the new `r8125` module on the fly. This because the existing `r8169` module will be loaded priority to `r8125` so that it prevents working of the `r8125` module.
|
|
|
|
Check if the `r8169` module loaded currently.
|
|
|
|
```bash
|
|
lsmod | grep -i r8169
|
|
```
|
|
|
|
If there is a result, maybe the `r8125` module wasn't loaded properly. You can check out modules currently in use via `lspci -k` or `dmesg` too.
|
|
|
|
To use the `r8125` module explicitly you can add the `r8169` module to not be loaded by adding it to a blacklist file.
|
|
|
|
Enter the following command to configure the blacklist.
|
|
|
|
```bash
|
|
sudo tee -a /etc/modprobe.d/blacklist-r8169.conf > /dev/null <<EOT
|
|
# To use r8125 driver explicitly
|
|
blacklist r8169
|
|
EOT
|
|
```
|
|
|
|
To apply the new blacklist to your kernel, update your initramfs via
|
|
|
|
```bash
|
|
sudo update-initramfs -u
|
|
```
|
|
|
|
Finally, reboot to take effect.
|
|
|
|
> - If you need to load both r8169 and r8125, maybe removing r8125 firmware could make it work. Please enter `sudo rm -f /lib/firmware/rtl_nic/rtl8125*` to remove all the r8125 firmwares on the system. But it is just a workaround, you should have to do this every time installing the new kernel version or new Linux firmware.
|
|
> - In the case of the Debian package, I will update the scripts to make it do this during the installation.
|
|
|
|
## Debian package build
|
|
|
|
You can build yourself this after installing some dependencies including `dkms`.
|
|
|
|
```bash
|
|
sudo apt install devscripts debmake debhelper build-essential dkms dh-dkms
|
|
```
|
|
|
|
```bash
|
|
dpkg-buildpackage -b -rfakeroot -us -uc
|
|
```
|
|
|
|
## LICENSE
|
|
|
|
GPL-2 on Realtek driver and the debian packaing.
|
|
|
|
## References
|
|
|
|
- [Realtek r8125 driver release page](https://www.realtek.com/Download/List?cate_id=584)
|
|
- [ParrotSec's realtek-rtl88xxau-dkms, where got hint from](https://github.com/ParrotSec/realtek-rtl88xxau-dkms)
|