本文出处:https://www.cnblogs.com/llxrl/p/14770533.html,转载请说明
1. 问题描述
自己组装了台式机,安装ubuntu20.04后,发现wifi可以连接,但是有线网络无法连接。网络设置中显示【线缆已拔出】
本文出处:https://www.cnblogs.com/llxrl/p/14770533.html,转载请说明
2. 原因分析
2.1 原因一(不符合):未设置千兆网卡速度。
从原理上看牛头不对马嘴,百度误人。事实也证明确实没用
- 顺带附一下大家在这个情况下的解决方法:sudo ethtool -s xxxx(这里填你的网口) autoneg off speed 100 duplex full
- 这里需要注意,一般给的示例在xxxx处都填的eth0。但对于有的电脑网口名不叫这个。可以通过ifconfig查询
2.2 原因二(符合):有线网卡硬件与安装的驱动不匹配。
2.2.1 验证方法一
打开终端,输入lspci -k(
该命令会列出电脑pci接口上接的所有硬件设备。同时-k参数,会列出处理硬件设备的驱动(kernel driver)情况)
> lspci -k 03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8125 2.5GbE Controller (rev 04) Subsystem: Micro-Star International Co., Ltd. [MSI] RTL8125 2.5GbE Controller Kernel modules: r8169
从输出结果可见,有线网卡型号是RTL8125,但kernel modules确是r8169,说明驱动与硬件不匹配。
2.2.2 验证方法二
打开终端,输入ifconfig –a
,如果出现“本地环回”或者“l0"字样,说明网卡驱动未生效。(该方法baidu查的,存疑)
3. 解决方法:安装合适的驱动
本文出处:https://www.cnblogs.com/llxrl/p/14770533.html,转载请说明
3.1 删除错误驱动
- 查看驱动文件所在的位置,其中的
r8169
请自行替换为自己的网卡驱动名称。
modinfo r8169 | grep filename
备份或直接删除驱动文件,下面两个命令执行其中一个即可,其中的
path
请用上一步查找到的文件路径替换,r8169
请用自己的驱动名称替换。
sudo mv path/r8169.ko path/r8169.ko.backup #备份
sudo rm path/r8169.ko #直接删除
-
卸载驱动。其中的
r8169
请自行替换。
sudo rmmod r8169
-
查看是否删除成功,如果无显示或者显示结果没有r8169则表明删除成功。
lsmod | grep r8169
3.2 安装正确驱动
- 确认自己的有线网卡型号,我的是r8125。
lspci |grep "Ethernet controller"
- 确认是否安装成功,其中r8125请自行替换,有返回则表示安装成功。
lsmod |grep r8125
ifconfig