我从 Xubuntu 12.04 升级到 12.10,现在无法连接到互联网。
当我按下面板上的网络按钮时,我在顶部看到“没有可用的网络设备”(灰显),然后是“VPN 连接”、“启用网络”(旁边有复选标记)、“信息”(灰显)和“编辑”。
以下是一些看似相关的命令的输出:
~ % lspci | grep -i ethernet
03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 07)
~ % lspci | grep -i network
02:00.0 Network controller: Intel Corporation Centrino Wireless-N 1030 (rev 34)
~ % sudo lshw -C network
PCI (sysfs)
*-network UNCLAIMED
description: Network controller
product: Centrino Wireless-N 1030
vendor: Intel Corporation
physical id: 0
bus info: pci@0000:02:00.0
version: 34
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress bus_master cap_list
configuration: latency=0
resources: memory:f7c00000-f7c01fff
*-network UNCLAIMED
description: Ethernet controller
product: RTL8111/8168B PCI Express Gigabit Ethernet controller
vendor: Realtek Semiconductor Co., Ltd.
physical id: 0
bus info: pci@0000:03:00.0
version: 07
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress msix vpd bus_master cap_list
configuration: latency=0
resources: ioport:e000(size=256) memory:f0004000-f0004fff memory:f0000000-f0003fff
~ % uname -a
Linux bleen 3.5.0-030500-generic #201207211835 SMP Sat Jul 21 22:35:55 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux
~ % ifconfig
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:16436 Metric:1
RX packets:472 errors:0 dropped:0 overruns:0 frame:0
TX packets:472 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:35080 (35.0 KB) TX bytes:35080 (35.0 KB)
~ % ifconfig eth0 up
eth0: ERROR while getting interface flags: No such device
我认为未声明意味着我没有以太网控制器的驱动程序。似乎驱动程序的名称应该包括 816 (我不记得在哪里找到的),而且它似乎丢失了:
~ % lsmod | grep 816
~ %
我试过下载并安装驱动程序(从具有连接的计算机移动到 USB 记忆棒后),但我遇到了这个问题:
~/r8168-8.037.00 % sudo ./autorun.sh
Check old driver and unload it.
Build the module and install
make: * /lib/modules/3.5.0-030500-generic/build: No such file or directory. Stop.
make1: [clean] Error 2
make: ** [clean] Error 2
不知道下一步该怎么做。
答案1
这个问题有两个答案,都是@JosephR 在评论中建议的。
1)尝试安装以太网驱动程序时修复/lib/modules/3.5.0-030500-generic/build: No such file or directory
错误只需要sudo ln -sv /usr/src/linux-headers-$(uname -r) /lib/modules/$(uname -r)/build
- 在我这样做之后,从源代码安装的驱动程序工作正常,并且我获得了以太网连接。
(大概使用无线控制器的驱动程序重复该过程也可以使该工作正常进行,但由于解决方案#2,我实际上并没有尝试。)
2)事实证明,如果我只是使用已安装的其他内核(3.5.0-41-generic 而不是 3.5.0-030500-generic - 我实际上不知道有什么区别)启动,以太网和无线工作正常!
它还解决了我升级后遇到的一些其他问题。因此,我将默认启动内核更改为该内核,并且可能会坚持使用它,除非遇到其他问题。
答案2
当 dist 升级后工作的 wifi 连接停止工作时,我遇到了类似的问题。 (我有HP Pavilion g6,驱动程序是ralink3290)。问题是升级修改了模块,因此正在使用的驱动程序与我的系统应该使用的驱动程序不同。
使用此命令查看您正在使用哪个无线控制器硬件
$ lspci | grep Network
我的输出是:
Network controller: Ralink corp. RT3290
我所要做的就是:
检查冲突的无线驱动程序是否仍在黑名单中
$ sudo gedit /etc/modprobe.d/blacklist.conf`
添加这些行(如果尚未存在):
# Conflicting wireless drivers with rt3290sta blacklist rt2800pci
启动时加载正确的模块
$ sudo gedit /etc/modules`
(根据您的驱动程序检查您自己的模块)
在文件末尾添加这一行:
rt3290sta
更新您刚刚所做的修改:
$ sudo update-initramfs -u`
重新启动系统
$ sudo shutdown -r now
您现在应该能够在网络管理器中查看无线连接。
答案3
我需要对这个问题给出一个更新的答案,因为今年这也发生在我身上。就我而言,在上次更新内核后,所有旧的(已停产的)固件都被删除,所以我就没有它了。
首先,是的,未声明意味着:没有找到向操作系统注册来处理设备的驱动程序(或固件接口)。
查看输出:
dmesg
您现在可以转到 GIT 路线,克隆存储库,找到适当的固件并安装它:
sudo cp iwlwifi-*.ucode /lib/firmware
或者查看制造商是否在此处列出并编入索引: 无线维基驱动程序
重启后:
正如我们所看到的,Linux 尝试使用更新的驱动程序,但只发现iwlwifi-6000-4.ucode
问候。