zoukankan      html  css  js  c++  java
  • (X)Ubuntu12.04 安装网卡驱动

    最近一直在给小朋友们装系统装驱动,来总结以下最近给ubuntu12.04安装过的网卡驱动,以及一些未解决的问题(有许多没有记录下来,很遗憾,没有有那么多电脑实验的机会了¯(°_o)/¯)。

    第一步:查看网卡驱动是否存在或无线是否启用

    有以下几种方法:

    1. 右上角网络图标:若只显示“没有可用的设备”,点击右键查看是否启用联网(对于有线网必选),若已选择但仍显示该信息,说明缺少有线网卡驱动,若有有线驱动在启用联网后会显示“有线网络”;对于无线网,右键点击查看是否未启用无线。这两个选项都查看并确定之后再开始查找安装驱动,省的做无用功。

    2. 命令:ifconfig

    sophia@DIU:~$ ifconfig
    eth0      Link encap:Ethernet  HWaddr 88:ae:1d:31:1e:19  
              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:706 errors:0 dropped:0 overruns:0 frame:0
              TX packets:706 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:0 
              RX bytes:104873 (104.8 KB)  TX bytes:104873 (104.8 KB)
    
    wlan0     Link encap:Ethernet  HWaddr 78:e4:00:cf:77:42  
              inet addr:192.168.1.3  Bcast:192.168.1.255  Mask:255.255.255.0
              inet6 addr: fe80::7ae4:ff:fecf:7742/64 Scope:Link
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
              RX packets:9711 errors:0 dropped:0 overruns:0 frame:0
              TX packets:8756 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000 
              RX bytes:5068789 (5.0 MB)  TX bytes:1549108 (1.5 MB)

    其中eth0为有线网,wlan0为无线网,而lo的解释可以参考该问题:What is the loopback device and how do I use it?

    若没有eth0或wlan0需要判断是否启用联网与启用无线,使用rfkill list命令:

    sophia@DIU:~$ rfkill list
    0: ideapad_wlan: Wireless LAN
        Soft blocked: no
        Hard blocked: no
    1: phy0: Wireless LAN
        Soft blocked: no
        Hard blocked: no

    若未启用,相应的网络名称下的soft blocked为yes,则需要使用命令rfkill unblock 1启用。

    第二步:查看网卡类型

    在确保网卡驱动未安装之后,首先要先查看网卡类型以便下载相应的驱动。这里有几个命令可以查看:

    1. lspci | grep -i net(可以参照lspci的用法)

    sophia@DIU:~$ lspci | grep -i net
    06:00.0 Network controller: Qualcomm Atheros AR9285 Wireless Network Adapter (PCI-Express) (rev 01)
    07:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8101E/RTL8102E PCI Express Fast Ethernet controller (rev 02)

    其中Network controller为无线网卡类型,Ethernet controller为有线网卡类型,可以按照网卡类型找到对应的驱动进行安装。

    2. sudo lshw -C network 

    sophia@DIU:~$ sudo lshw -C network
    [sudo] password for sophia: 
      *-network               
           description: Wireless interface
           product: AR9285 Wireless Network Adapter (PCI-Express)
           vendor: Qualcomm Atheros
           physical id: 0
           bus info: pci@0000:06:00.0
           logical name: wlan0
           version: 01
           serial: 78:e4:00:cf:77:42
            64 bits
           clock: 33MHz
           capabilities: pm msi pciexpress bus_master cap_list ethernet physical wireless
           configuration: broadcast=yes driver=ath9k driverversion=3.13.0-24-generic firmware=N/A ip=192.168.1.3 latency=0 link=yes multicast=yes wireless=IEEE 802.11bgn
           resources: irq:17 memory:99100000-9910ffff
      *-network
           description: Ethernet interface
           product: RTL8101E/RTL8102E PCI Express Fast Ethernet controller
           vendor: Realtek Semiconductor Co., Ltd.
           physical id: 0
           bus info: pci@0000:07:00.0
           logical name: eth0
           version: 02
           serial: 88:ae:1d:31:1e:19
           size: 10Mbit/s
           capacity: 100Mbit/s
            64 bits
           clock: 33MHz
           capabilities: pm msi pciexpress msix vpd bus_master cap_list rom ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd autonegotiation
           configuration: autonegotiation=on broadcast=yes driver=r8169 driverversion=2.3LK-NAPI duplex=half latency=0 link=no multicast=yes port=MII speed=10Mbit/s
           resources: irq:41 ioport:2000(size=256) memory:95110000-95110fff memory:95100000-9510ffff memory:95120000-9513ffff

    该命令可以显示网卡的详细信息。

    第三步:下载相应驱动并安装

    首先要做好找不到驱动的心理准备,这是很重要的一步+_+

    1. 有的孩子的无线网卡类型为:Atheros AR9285 wireless network adapter

    参考了以下内容:为Atheros AR9285 wireless network adapter装ubuntu 12.04 LTS linux驱动

    过程如下:

    首先下载通用驱动包:compat-wireless-3.6.8-1.tar.bz2
    解压后进入解压目录,执行以下命令:
    make
    sudo make install
    sudo make unload all
    sudo modprobe ath9k
    然后进入etc:cd /etc 
    编辑modules:
    sudo vi modules 
    加入ath9k
    保存重启电脑即可。
    

    出现问题:安装成功后,无线网可连接。但重启之后就不能上网,是没有加开机启动。后来同样的型号,用该方法安装成功的还未遇到。。。

    2.ThinkPad-T440p的网卡驱动安装

    ThinkPad-T440p:~$ lspci |grep -i net

    00:19.0 Ethernet controller: Intel Corporation Device 153a (rev 04)
    04:00.0 Network controller: Realtek Semiconductor Co., Ltd. Device 818b

    1)有线网Intel Corporation Device 153a (rev 04)驱动:

    其实有效的驱动可以从Intel官方网站找到,当然搜出来的过程和安装的驱动的名称等等都不是那么直观,导致许多像我这种菜鸟得找半天。

    首先在ubuntu论坛上看到这样一个问题:Intel I217LM ethernet controller not detected by Ubuntu 12.04LTS发现作者贴出来的网卡型号就是这个,在下面的答案中发现了一个说是起作用的链接:Using the e1000e Base Driver for Gigabit Intel® Network Connections 经实验证明对该小孩的电脑是有用的,她的电脑终于可以上有线网了。。。

    过程如下:

    1. 点击下载e1000e
    2. 安装:
    # tar
    -zxvf e1000e-3.0.4.tar.gz //(写这篇文章时的版本) # cd e1000e-3.0.4/src

    # make install //这将文件安装到/lib/modules/'uname -r'/kernel/drivers/net/e1000e/e1000e.[k]o不同版本的linux安装的位置可能不同
    # modprobe e1000e
    # insmod /lib/modules/'uname -r'/kernel/drivers/net/e1000e/e1000e.ko其中uname -r 为内核版本,命令中可以直接这样打,也可以事先查看,用实际的版本号代替
    然后运行到这里就可以了。
    重启,关机后开机等,还都能连上,说明成功了---------受了好多次教训之后的“遗留症”=_=

    2)无线网卡驱动Realtek Semiconductor Co., Ltd. Device 818b

    找到一个不是该电脑型号且不知是否为该网卡型号的网卡驱动但是起作用了๏_๏,请参照Thread: Thinkpad L540, Ubuntu 13.10, ThinkPad Wireless 2 x 2 BGN+BT 4.0: No Wi-Fi

    过程如下:

    下载驱动程序:oem-wireless-rtl-92ce-92se-92de-8723ae-88ee-8723be-92ee-dkms_0017.1016.2013~sutton1.tar.gz
    首先执行 sudo apt-get install build-essential linux-headers-generic 命令(之前装的未成功的可能是丢了这一步),在install之前别忘了apt-get update一下
    # tar -zxvf oem-wireless-rtl-92ce-92se-92de-8723ae-88ee-8723be-92ee-dkms_0017.1016.2013~sutton1.tar.gz
    # cd oem-wireless-rtl-92ce-92se-92de-8723ae-88ee-8723be-92ee-dkms_0017.1016.2013~sutton1/driver
    # sudo make
    # sudo make install
    # sudo modprobe rtl8192ee
    EDIT
    # insmod home/sophia(你的驱动所放位置)/oem-wireless-rtl-92ce-92se-92de-8723ae-88ee-8723be-92ee-dkms_0017.1016.2013~sutton1/driver/rtl8723be/rtl8723be.ko
    【为了保险起见都有执行最后一句,要不然关机之后可能又连不上了,
    insmod后面的文件只要是编译后的rtl8723be.ko就可以了,之前以为一定会安装在lib里呢,害的我找lib中的文件找了半天,
    有的电脑是直接安装到lib/modules下的有的不会,所以直接把编译好的ko文件insert就好了】
    重启之后,关机打开之后都可以找到并连接无线网,安装成功(•‿•)

    3. 有许多电脑的网卡类型为Broadcom Corporation Device 4365 (rev 01)

    参照了Ubuntu 12.04 安装无线网卡驱动 Dell E6400成功安装 Broadcom 802.11 Linux STA driver 无线网卡驱动两篇文章,发现两者结合后有效,过程如下:

    下载驱动程序:802.11 linux_sta (网页变了,选前两个Linux® STA 32-bit driverLinux® STA 64-bit driver)分32位和64位,这里用的是32位(有的网卡型号显示为802.11 linux_sta好像也可以使用该方法)

    首先执行一下 sudo apt-get install build-essential linux-headers-generic命令
    # tar -zxvf hybrid-v35-nodebug-pcoem-6_30_223_141.tar.gz
    # cd hybrid-v35-nodebug-pcoem-6_30_223_14
    # sudo make
    # sudo make install
    # sudo rmmod bcm43xx b43 b43legacy ssb wl //移除有冲突的驱动
    # modprobe lib80211
    # modprobe cfg80211
    # insmod wl.ko //测试一下,一般这时候无线网就可以使用了,但为了能够重启之后仍能使用需要做以下操作
    # sudo rmmod wl
    # insmod /lib/modules/'uname -r'/kernel/drivers/net/wireless/wl.ko //这是make install时安装的目录(或者也可以像第二篇文章中写的一样,新建一个文件夹将wl.ko复制过去,然后再安装)
    # sudo depmod -a // 这一步很重要,能够使驱动开启启动

    如果电脑中有以下驱动,可以运行以下命令屏蔽,省得冲突:
    sudo echo "blacklist bcm43xx" >> /etc/modprobe.d/blacklist
    sudo echo "blacklist b43" >> /etc/modprobe.d/blacklist
    sudo echo "blacklist b43legacy" >> /etc/modprobe.d/blacklist
    sudo echo "blacklist ssb" >> /etc/modprobe.d/blacklist

    结果成功﴾͡๏̯͡๏﴿

    遇到的问题:有一个小孩的电脑在运行insmod  wl.ko时显示insmod inserting error:-1 invalid parameters后来没有解决,至今未知原因,有可能是没有运行第一步的build内核的命令,可以注意一下。 

    4. Realtek 8723A 好像是这个型号)

    这里有个问题:Wireless card Realtek RTL8723AE-BT is not recognized其中有个答案是有效的: Realtek is making the official Linux driver available unofficially (via Dropbox)

    可以点击题目答案中的定位链接:

    最下面的答案The askubuntu.com/a/165002/74671 is work, thanks ! –  Chu-Saing Lai Jan 19 '13 at 16:44 

    过程如下:

    下载驱动程序:rtl_92ce_92se_92de_8723ae_linux_mac80211_0006.0514.2012.tar.gz
    首先运行 sudo
    apt-get install build-essential linux-headers-generic linux-headers-`uname -r`

    # tar -zxvf rtl_92ce_92se_92de_8723ae_linux_mac80211_0006.0514.2012.tar.gz
    # cd rtl_92ce_92se_92de_8723ae_linux_mac80211_0006.0514.2012
    # sudo make
    # sudo make install
    # sudo modprobe rtl8723e
    测试后安装成功(ノ^_^)ノ

    先写到这,以后还会有人来装的,让我们继续~~

    -------------------------------- |原来看似困难的事情是那么的简单ᶘ ᵒᴥᵒᶅ| --------------------------------
  • 相关阅读:
    scrapy Request方法
    from lxml import etree报错
    python文件管道 下载图集
    scrapy基本爬虫,采集多页
    python操作excel xlwt (转)
    matplotlib 设置标题 xy标题等
    matplotlib 饼状图
    acwing 600. 仰视奶牛
    LeetCode 684. 冗余连接
    LeetCode 200. 岛屿数量
  • 原文地址:https://www.cnblogs.com/Sophiawow/p/3654120.html
Copyright © 2011-2022 走看看