更新后,ubuntu 14.04 中未检测到以太网链接

更新后,ubuntu 14.04 中未检测到以太网链接

自从我在过去一周左右运行了一些更新后,我就无法获得有线连接。具体来说:

  • 最初,在启动期间,以太网链路灯亮起。当 ubuntu 启动时,链路灯将熄灭。Ubuntu 报告电缆已断开连接。如果我启动到 Windows 7,我就可以毫无问题地使用互联网。

我的问题与以下描述类似: 电缆连接且不工作时以太网灯不亮

lspci 条目:

Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 06)

sudo ethtool eth0:

Settings for eth0:
    Supported ports: [ TP MII ]
    Supported link modes:   10baseT/Half 10baseT/Full 
                            100baseT/Half 100baseT/Full 
                            1000baseT/Half 1000baseT/Full 
    Supported pause frame use: No
    Supports auto-negotiation: Yes
    Advertised link modes:  10baseT/Half 10baseT/Full 
                            100baseT/Half 100baseT/Full 
                            1000baseT/Half 1000baseT/Full 
    Advertised pause frame use: Symmetric Receive-only
    Advertised auto-negotiation: Yes
    Speed: 10Mb/s
    Duplex: Half
    Port: MII
    PHYAD: 0
    Transceiver: internal
    Auto-negotiation: on
    Supports Wake-on: pumbg
    Wake-on: g
    Current message level: 0x00000033 (51)
                   drv probe ifdown ifup
    Link detected: no

配置文件

eth0      Link encap:Ethernet  HWaddr d4:3d:7e:26:b2:20
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:300 errors:0 dropped:0 overruns:0 frame:0
          TX packets:300 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:25463 (25.4 KB)  TX bytes:25463 (25.4 KB)

lxcbr0    Link encap:Ethernet  HWaddr 7a:01:dd:5c:17:99  
          inet addr:10.0.3.1  Bcast:10.0.3.255  Mask:255.255.255.0
          inet6 addr: fe80::7801:ddff:fe5c:1799/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:77 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:0 (0.0 B)  TX bytes:11788 (11.7 KB)

系统日志:

Feb  8 18:20:42 newdesk kernel: [    4.048721] r8169 0000:03:00.0 eth0: link down
Feb  8 18:20:42 newdesk kernel: [    4.048751] r8169 0000:03:00.0 eth0: link down
Feb  8 18:20:42 newdesk kernel: [    4.048760] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
Feb  8 18:20:42 newdesk kernel: [    4.048905] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready

由于我没有另一张网卡,所以现在只能使用 Windows。如果能提供修复方法,我将不胜感激。

谢谢!

答案1

我可以确认这个错误。遇到了同样的问题,这不是接线问题,而是最近更新时出现的 r8169 驱动程序问题。我认为他们已经在这个模块中发现了一个错误 https://lkml.org/lkml/2015/2/21/161

临时修复方法是构建原始 realtek 驱动程序 (r8168) 并用它替换当前的 r8169。

https://unixblogger.wordpress.com/2011/10/18/the-pain-of-an-realtek-rtl8111rtl8168-ethernet-card/

  1. 安装要求

    sudo apt-get 安装 build-essential

  2. 获取并提取最新的驱动程序Realtek 网站,进入你解压驱动程序的目录
  3. 构建并安装驱动程序:

    sudo 制作干净的模块

    安装

  4. 确保你的内核驱动程序中存在 r8168.ko:

    sudo 定位-i r8168

    输出中的其中一行应类似如下内容:

    /modules/3.13.0-46-generic/kernel/drivers/net/ethernet/realtek/r8168.ko

  5. 禁止 r8169 并重建内核依赖项

    sudo echo “黑名单 r8169″ >> /etc/modprobe.d/blacklist.conf

    sudo depmod -a

  6. 使其可用于启动

    sudo echo “r8168″ >> /etc/modules

  7. 重启后检查已加载的驱动程序

    lspci -v|grep -A 7 Realtek

    最后一行应该是“正在使用的内核驱动程序:r8168”

我希望这有帮助。

相关内容