openSUSE 无法正常识别使用网卡

windows 10 下 网络完全正常,安装openSUSE无法使用wifi,连任务栏wifi标志也没有,用本地连接可以进入校园网登陆面。
看了网上的垃圾方法,居然在etc/sysconfig/network下没有ifcfg-eth0文件,但是有ifcfg-lo文件...
可是在终端里 ifconfig, 居然有eth0;
请问linux高人。这个到底是怎么回事。。
图片描述

图片描述

阅读 9.2k
3 个回答

下面的任务栏你仔细找找,应该有一个wifi图标,未连接的时候是白色的,非常不容易认识到。找到之后点击它就会出现连接wifi的选项了。连接成功之后那个白色图标才会变成wifi图标。

我以前用arch的时候一直不知道KDE桌面的这个玩意,后来偶尔看包信息的时候发现KDE居然有wifi连接,这才发现这个东西的。

按照以前的网络接口命名规则,eth0是有线网卡的接口。根本没有无线网卡的话,很有可能系统没有适合你网卡的驱动,你可以看看你无线网卡的型号,然后到suse社区看看该型号的网卡使用什么驱动

无线网卡的命名一般是 wlan 开始,你仔细查看 /sys/class/net/ 目录下有哪些网卡,然后查看驱动用的是什么驱动,像这样:

# ls -l /sys/class/net/eth1/device/driver
lrwxrwxrwx. 1 root root 0 Apr 16 02:00 /sys/class/net/eth1/device/driver -> ../../../bus/pci/drivers/e1000e

如果找不到那就是无线网卡的驱动没有装,根本就无法使用。

下面查看网卡的制造商和芯片信息,然后安装正确的驱动。

运行 lspci -vv 打印PCI设备的详细信息,如果是USB网卡,用 lsusb -vv 以及 lsusb -t,我手上没有无线网卡,有线的是这样的:

01:00.0 Ethernet controller: Intel Corporation I211 Gigabit Network Connection (rev 03)
    Subsystem: Gigabyte Technology Co., Ltd Device e000
...
...
...
    Kernel driver in use: igb

记住开头的 01:00.0 部分,然后运行 lspci -nn -s 01:00.0 来查看制造商和产品代号,请注意这些信息依赖于系统里的PCI信息数据库,如果你用的是非常前沿的设备,可能要先更新数据库,用 update-pciids

# lspci -nn -s 01:00.0
01:00.0 Ethernet controller [0200]: Intel Corporation I211 Gigabit Network Connection [8086:1539] (rev 03)

制造商是8086,产品是1539。

刚才运行 lspci -vv 结果的最后一行告诉我现在我的系统里使用的内核模组是igb,现在来看一下内核里的驱动是否有给1539使用的驱动,用 modinfo igb

filename:       /lib/modules/4.4.0/kernel/drivers/net/ethernet/intel/igb/igb.ko
version:        5.3.0-k
license:        GPL
description:    Intel(R) Gigabit Ethernet Network Driver
author:         Intel Corporation, <e1000-devel@lists.sourceforge.net>
srcversion:     EF18639744CF4F7AB332D84
alias:          pci:v00008086d000010D6sv*sd*bc*sc*i*
alias:          pci:v00008086d000010A9sv*sd*bc*sc*i*
...
...
alias:          pci:v00008086d00001539sv*sd*bc*sc*i*
...
...

注意这行 pci:v00008086d00001539sv*sd*bc*sc*i*,简单来说,这行里包括了 8086 和 1539 这两个数字,表明igb内核模组里有正确的驱动。

如果你的内核里没有正确的驱动,或者版本不对(参考modinfo打印出的版本),那么你的网卡就无法正常工作。

拿到了制造商和产品代码后,就可以开始寻找驱动,一般来说,常用的网卡驱动都可以通过开源软件源安装到。最糟糕的情况就是,问制造商要驱动源码,然后自己编译安装。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏