如何在Ubuntu中禁用8139cpnetworking驱动程序以支持8139cpnetworking驱动程序?

我正在试图禁用8139toonetworking驱动程序,以支持我的Ubuntu 8.04服务器上的8139cp驱动程序。 当网卡超过大约1 MB / s时,当前的驱动程序崩溃。

syslog还build议切换到8139cp:

 8139too: Use the "8139cp" driver for improved performance and stability. 

我将blacklist 8139too添加到/etc/modprobe.d/blacklist但似乎没有任何作用。

有没有其他方式来切换我不知道的networking驱动程序?

我假设你已经在机器上安装了8139too8139cp模块,你只需要将8139too8139cp驱动交换。 请注意,您可以使用此方法轻松地将自己locking在服务器外面,所以要小心。

首先运行lsmod并检查mii模块依赖于哪些模块,例如:

:~# lsmod | grep 8139
8139too 38400 0
8139cp 34944 0
mii 14720 2 8139too,8139cp

正如你所看到的mii模块取决于两个8139模块。 现在我们知道mii依赖于哪个模块,我们可以卸载所有的模块,重新加载我们想要的模块并重新启动我们的networking。 以下是我们要做的事情:

rmmod 8139cp
rmmod 8139too
rmmod mii
modprobe 8139cp
modprobe mii
service networking restart

上面的代码的简短说明。 前三行删除违规的模块,然后用modprobe我们添加我们想要的模块。 在这种情况下,将是8139cpmii模块,重新启动您的networking并使用ethtool检查它是否正常工作。

:~# ethtool -i eth0
driver: 8139cp
version: 1.3
firmware-version:
bus-info: 0000:00:12.0

这是一个小的解决方法,一旦你重新启动服务器,将重置,使其永久创build与上述代码的bash脚本,并将其添加到您的启动脚本。