如何在 Linux 上安装网络驱动程序?

如何在 Linux 上安装网络驱动程序?

我想使用eth0驱动程序,但我的网卡未被认领。

我使用 Killer e2200 千兆以太网控制器。

请告诉我如何安装网络驱动程序以及如何使用eth0

答案1

如果您已经安装了操作系统,并且想要将网卡作为新硬件运行,则必须向供应商索要网络驱动程序。通常,网络驱动程序附带内核模块的源包。您必须为内核编译驱动程序模块。

  1. 安装“构建基本”实用程序

    $ sudo apt-get install build-essential
    
  2. 将源包解压到某个文件夹

  3. 转到此文件夹
  4. 做这个:

    $ ./configure
    $ make
    $ sudo make install
    

安装完成后你就可以通过输入命令来加载刚刚编译的模块:

$ sudo insmod your_module.so
$ ifconfig eth0 up

答案2

最新的网络设备通常需要一段时间才能进入 Linux 内核。所有驱动程序通常都内置在 Debian(或 Ubuntu)和 Centos 等大型发行版中。

这里的其他答案详细介绍了如何编译驱动程序模块并将其插入 - 如果您查看 Linux 源代码,您可以在 /drivers/net 目录中“grep”您的设备名称,例如。

grep -ri e2200 /usr/src/linux*/drivers/net/

或者

grep -ri killer /usr/src/linux*/drivers/net/

它可能产生如下结果:

drivers/net/dsa/Kconfig:    tristate "Qualcomm Atheros QCA8K Ethernet switch family support"
drivers/net/dsa/Kconfig:      This enables support for the Qualcomm Atheros QCA8K Ethernet
drivers/net/ethernet/atheros/Makefile:# Makefile for the Atheros network device drivers.
drivers/net/ethernet/atheros/Kconfig:# Atheros device configuration
drivers/net/ethernet/atheros/Kconfig:config NET_VENDOR_ATHEROS
drivers/net/ethernet/atheros/alx/Makefile:obj-$(CONFIG_ALX) += alx.o
drivers/net/ethernet/atheros/alx/Makefile:alx-objs := main.o ethtool.o hw.o
drivers/net/ethernet/qualcomm/Kconfig:    This enables support for the Qualcomm Atheros QCA7000.
drivers/net/ethernet/qualcomm/Kconfig:  tristate "Qualcomm Atheros QCA7000 SPI support"
drivers/net/wireless/ath/ath9k/Kconfig: bool "Atheros bluetooth coexistence support"
drivers/net/wireless/ath/ath9k/Kconfig: tristate "Atheros 802.11n wireless cards support"
drivers/net/wireless/ath/ath9k/Kconfig:   Atheros IEEE 802.11n AR5008, AR9001 and scan support"
drivers/net/wireless/ath/Kconfig:   bool "Atheros/Qualcomm devices"
drivers/net/wireless/ath/Kconfig:     For information on all Atheros wireless drivers visit:
drivers/net/wireless/ath/ar5523/Kconfig:       tristate "Atheros AR5523 wireless driver support"
drivers/net/wireless/ath/carl9170/Kconfig:    This is the mainline driver for the Atheros "otus" 802.11n USB devices.
drivers/net/wireless/ath/ath10k/Kconfig:        tristate "Atheros 802.11ac wireless cards support"
drivers/net/wireless/ath/ath10k/Kconfig:          Atheros IEEE 802.11ac family of chipsets.
drivers/net/wireless/ath/ath6kl/Makefile:# Copyright (c) 2004-2011 Atheros Communications Inc.
drivers/net/wireless/ath/ath6kl/Makefile:# Copyright (c) 2011-2012 Qualcomm Atheros, Inc.
drivers/net/wireless/ath/wcn36xx/Kconfig:     Qualcomm Atheros WCN3660 and WCN3680 mobile chipsets.
drivers/net/wireless/ath/ath5k/Kconfig: bool "Atheros 5xxx AHB bus support"
drivers/net/wireless/ath/ath5k/Kconfig:   This adds support for WiSoC type chipsets of the 5xxx Atheros
drivers/net/wireless/ath/ath5k/Kconfig: bool "Atheros 5xxx PCI bus support"
drivers/net/wireless/ath/ath5k/Kconfig:   This adds support for PCI type chipsets of the 5xxx Atheros

为了简洁起见,我删减了一些行。但是模块名称与 Kconfig 之前的目录相同,因此您可以使用 lsmod 检查它是否处于活动状态:

lsmod 

有时我的板载 Wi-Fi 的英特尔驱动程序会死机,然后我必须删除并重新添加它:

rmmod iwlmvm
modprobe iwlmvm

然后它又神奇地恢复了。我仍然需要将此修复程序贡献给 NetworkManager 项目...

如果返回“alx”,则驱动程序已加载:

lsmod | grep alx

如果没有,那你就没那么幸运了。你可以使用“ifconfig”或“ip link”命令来管理接口:

ifconfig
ip link 

较新的 Linux 不再使用“eth”作为接口名称。

于是我搜索了内核树中的“killer”和“e2200”,但什么也没找到。然后我进行了网络搜索,发现这是一个 Atheros 设备,与“alx”驱动程序类似。有人更新了驱动程序以与您的卡配合使用,您真幸运。如果世界上有足够多的此类卡,或者他将其上游化,您所要做的就是更新 Linux,它就可以正常工作了。

如果没有,你必须自己编译,按照如何使 Qualcomm Atheros Killer E2200 千兆以太网卡工作?https://ubuntuforums.org/showthread.php?t=2008332&page=7&p=12604916#post12604916

欢迎使用 Linux!不用出去买一些已经有人制作了免费驱动程序的旧硬件了…… :-)

答案3

请运行命令:

lspci -nn | grep 0200

您的设备是 1969:e091 吗?以下是让您的设备工作的说明。首先,我假设您正在运行 Ubuntu 13.04:

lsb_release -d

如果没有,请停止,因为这些说明仅适用于 13.04,在早期 Ubuntu 版本上会产生未知结果。这些说明已经过测试,可以在 13.10 中使用。获取可用的无线连接,打开终端并执行以下操作:

sudo apt-get install linux-headers-generic build-essential

现在将其下载到您的桌面:https://www.kernel.org/pub/linux/kernel/projects/backports/stable/v3.10/backports-3.10-2.tar.bz2右键单击它并选择“在此处提取”。现在返回终端:

cd Desktop/backports-3.10-2
make defconfig-alx
make
sudo make install
sudo modprobe alx

您的以太网现在应该可以正常工作了。

相关内容