操作系统:CentOS release 5.5 (Final)

故障现象:网卡无故自动down掉,使用service  network restart 重启后没多久又会自动down , 连接数大概在200个左右,没有arp攻击;

网卡信息:
[root@qs-wg-web2 ~]# cat /var/log/dmesg  |grep eth0
eth0: Broadcom NetXtreme II BCM5709 1000Base-T (C0) PCI Express found at mem d6000000, IRQ 90, node addr 842b2bfac367

当前网卡驱动:
[root@qs-wg-web2 ~]# ethtool  -i eth0
driver: bnx2
version: 2.0.2
firmware-version: 5.2.3 NCSI 2.0.10
bus-info: 0000:01:00.0

下载最新网卡驱动:
http://www.broadcom.com/support/ethernet_nic/netxtremeii.php

安装更新驱动:

[root@qs-wg-web2 ~]# unzip linux-7.4.27.zip
Archive:  linux-7.4.27.zip
   creating: Server/Linux/Driver/
  inflating: Server/Linux/Driver/INSTALL.TXT 
  inflating: Server/Linux/Driver/netxtreme2-7.4.27-1.src.rpm 
  inflating: Server/Linux/Driver/netxtreme2-7.4.27.tar.gz 
  inflating: Server/Linux/Driver/netxtreme2_sup-7.4.27-1.ISO.tar.gz 
  inflating: Server/Linux/Driver/README.bnx2.TXT 
  inflating: Server/Linux/Driver/README.bnx2fc.TXT 
  inflating: Server/Linux/Driver/README.bnx2i.TXT 
  inflating: Server/Linux/Driver/README.bnx2x.TXT 
  inflating: Server/Linux/Driver/RELEASE.bnx2.TXT 
  inflating: Server/Linux/Driver/RELEASE.bnx2fc.TXT 
  inflating: Server/Linux/Driver/RELEASE.bnx2i.TXT 
  inflating: Server/Linux/Driver/RELEASE.bnx2x.TXT 
  inflating: Server/Linux/Driver/RELEASE.fclibs.TXT 
 
 [root@qs-wg-web2 ~]# cd Server/Linux/Driver/
 [root@qs-wg-web2 Driver]# rpm -ivh netxtreme2-7.4.27-1.src.rpm

  重建对应系统的rpm包:
 
[root@qs-wg-web2 Driver]#  cd /usr/src/redhat/SPECS/
[root@qs-wg-web2 SPECS]# rpmbuild -bb netxtreme2.spec

安装新的rmp包: 
[root@qs-wg-web2 SPECS]# cd /usr/src/redhat/RPMS/x86_64
[root@qs-wg-web2 x86_64]# rpm  -ivh  netxtreme2-7.4.27-1.x86_64.rpm
 
 
  切换网卡驱动:
  [root@qs-wg-web2  ~]# cat change_driver.sh
 rmmod bnx2 
 rmmod bnx2x  
 modprobe bnx2

modprobe bnx2x   
     
[root@qs-wg-web2  ~]#  chmod u+x change_driver.sh
 
 
后台执行脚本:

[root@qs-wg-web2  ~]# ./change_driver.sh &
 
 注意:有时候可能需要重启服务器使服务器系统重新完全加载新的驱动:

查看新的网卡驱动信息:

[root@qs-wg-web2 ~]# ethtool  -i eth0

driver: bnx2
version: 2.2.3f
firmware-version: 6.2.12 bc 5.2.3 NCSI 2.0.11
bus-info: 0000:01:00.0

目前已没有出现自动down的情况。
 
  
  
 
注意:安装前请仔细看INSTALL.TXT

 如下:
 [root@qs-wg-web2 Driver]# cat INSTALL.TXT
                           Installation Notes
                     Broadcom NetXtremeII Linux Drivers
                                09/26/2011

Broadcom Corporation
                         5300 California Avenue,
                            Irvine, CA 92617

Copyright (c) 2004 - 2011 Broadcom Corporation
                           All rights reserved

Table of Contents
=================

Introduction
  Limitations
  Packaging
  Installing Source RPM Package
  Building Driver From TAR File
  Unloading and Removing Driver

Introduction
============

This file describes the installation procedures for the following
Broadcom Linux drivers:

- bnx2 driver for the Broadcom NetXtreme II BCM5706/BCM5708/5709/5716
  10/100/1000/2500/10000 Mbps PCIX/PCIE Ethernet Network Controller.

- bnx2x driver for the Broadcom NetXtremeII BCM57710/BCM57711/BCM57711E/BCM57712
  10/100/1000/2500/10000 Mbps PCIE Ethernet Network Controller.

- cnic driver that supports additional features required by the bnx2i iSCSI
  offload driver, and bnx2fc FCoE offload driver.

Limitations
===========

The current versions of the drivers have been tested on 2.4.x kernels starting
from 2.4.24 and all 2.6.x kernels. The driver may not compile on kernels
older than 2.4.24. Testing is concentrated on i386 and x86_64 architectures.
Only limited testing has been done on some other architectures.

Minor changes to some source files and Makefile may be needed on some
kernels.

Additionally, the Makefile will not compile the cnic driver on kernels
older than 2.6.16. iSCSI offload is only supported on 2.6.16 and newer
kernels. FCoE offload is only supported on 2.6.32 and newer kernels.

Packaging
=========

The driver is released in two packaging formats: source RPM and compressed tar
formats. The file name for the source RPM is:

netxtreme2-<version>.src.rpm

The file name for the tar archive is:
netxtreme2-<version>.tar.gz.

Identical source files to build the drivers are included in both packages.

Following is a list of files included -

a) netxtreme2-<version>.src.rpm - NetXtreme II L2/cnic/bnx2fc/libfc/libfcoe
  driver source RPM
b) netxtreme2-<version>.tar.gz - tar zipped NetXtreme II
  L2/cnic/bnx2fc/libfc/libfcoe driver source
c) INSTALL.TXT - This file
d) README.<driver>.TXT - driver specific readme instructions,
  where driver is bnx2, bnx2x, bnx2i, bnx2fc.
e) RELEASE.<driver>.TXT - release information text providing list of bug fixes
  and enhancement for each driver.

Installing Source RPM Package
=============================

The following are general guidelines for installing the driver.

1. Install the source RPM package:

rpm -ivh netxtreme2-<version>.src.rpm

2. CD to the RPM path and build the binary driver for your kernel:

cd /usr/src/{redhat,OpenLinux,turbo,packages,rpm ..}
 (For RHEL 6.0 and above, cd ~/rpmbuild )

rpm -bb SPECS/netxtreme2.spec

or

rpmbuild -bb SPECS/netxtreme2.spec (for RPM version 4.x.x)

Note that the RPM path is different for different Linux distributions.

The driver will be compiled for the running kernel by default. To build
the driver for a kernel different than the running one, specify the
kernel by defining it in KVER:

rpmbuild -bb SPECS/netxtreme2.spec --define "KVER <kernel version>"

where <kernel version> in the form of 2.x.y-z is the version of another
kernel that is installed on the system.

3. Install the newly built package (driver and man page):

rpm -ivh RPMS/<arch>/netxtreme2-<version>.<arch>.rpm

where <arch> is the machine architecture such as i386:

rpm -ivh RPMS/i386/netxtreme2-<version>.i386.rpm

Note that the --force option may be needed on some Linux distributions
if conflicts are reported.

The drivers will be installed in the following path:

2.4.x kernels:

/lib/modules/<kernel_version>/kernel/drivers/net/bnx2.o
    /lib/modules/<kernel_version>/kernel/drivers/net/bnx2x.o

2.6.0 kernels:

/lib/modules/<kernel_version>/kernel/drivers/net/bnx2.ko
    /lib/modules/<kernel_version>/kernel/drivers/net/bnx2x.ko

2.6.16 and newer kernels:

/lib/modules/<kernel_version>/kernel/drivers/net/bnx2.ko
    /lib/modules/<kernel_version>/kernel/drivers/net/bnx2x.ko
    /lib/modules/<kernel_version>/kernel/drivers/net/cnic.ko

Newer RHEL and SLES distros:

/lib/modules/<kernel_version>/updates/bnx2.ko
    /lib/modules/<kernel_version>/updates/cnic.ko
    /lib/modules/<kernel_version>/updates/bnx2x.ko
    /lib/modules/<kernel_version>/updates/bnx2i.ko
    /lib/modules/<kernel_version>/updates/bnx2fc.ko

4. Unload existing driver if necessary:

rmmod bnx2
   rmmod bnx2x

If the cnic driver is loaded, it should also be unloaded along with dependent
drivers:

rmmod bnx2fc
   rmmod bnx2i
   rmmod cnic

5. Load the bnx2 driver for the BCM5706/BCM5708/5709/5716 devices:

insmod bnx2.o
or
   insmod bnx2.ko (on 2.6.x kernels)
or
   modprobe bnx2

To load the bnx2x driver for the BCM57710/BCM57711/BCM57711E/BCM57712 devices:

insmod bnx2x.o
or
   insmod bnx2x.ko (on 2.6.x kernels)
or
   modprobe bnx2x

To load the cnic driver:

insmod cnic.ko
or
   modprobe cnic

To load the bnx2i driver:

insmod bnx2i.ko
or
   modprobe bnx2i
   service iscsid restart (Please refer REDAME.bnx2i.txt for more details
                          about iSCSI operation)

To load the bnx2fc driver for BCM57712 device:

insmod bnx2fc.ko
or
   modprobe bnx2fc
   service fcoe start (Please refer README.bnx2fc.txt for more details about
                       FCoE operation)
  
Note that the inbox kernel may have an older version of bnx2, bnx2x and cnic
driver.  It is important for FCoE offload user to unload these inbox versions
before attempting to load bnx2fc driver. There are 2 options to reach the
desired goal,
   a) Reboot the server
                OR
   b) If already loaded, unload inbox bnx2, bnx2x, cnic drivers and load newly
      installed version from netxtreme2-foce package using 'modprobe <DRV-NAME>'

NOTE: Driver upgrade (rpm -Uvh) is not supported.
NOTE: On SLES 11, change "allow_unsupported_modules" parameter value of
      /etc/modprobe.d/unsupport-modules' from 0 to 1, until bnx2fc driver
      is inbox. Failing to do so will not load bnx2fc.

6. To configure network protocol and address, refer to various Linux
documentations.

Building Driver From TAR File
=============================

The following are general guidelines for installing the driver.

1. Create a directory and extract the files:

tar xvzf netxtreme2-<version>.tar.gz

2. Build the drivers as a loadable module for the running kernel:

make

The driver will be compiled for the running kernel by default. To build
the driver for a kernel different than the running one, specify the
kernel by defining it in KVER:

make KVER=<kernel version>

where <kernel version> in the form of 2.x.y-z is the version of another
kernel that is installed on the system.

3. Test the driver by loading it (Same procedures as described in the
   Source RPM section above).

4. Install the driver and man page:

make install

See RPM instructions above for the location of the installed driver.

5. To configure network protocol and address, refer to various Linux
documentations.

Unloading and Removing Driver
=============================

If the driver was installed using rpm, do the following to remove it:

rpm -e nextreme2

Note - this will remove libfc2, libfcoe2, bnx2, bnx2x and cnic modules as well

If the driver was installed using make install from the tar file, the drivers
have to be manually deleted from the system. Refer to the section
"Installing Source RPM Package" for the location of the installed driver.

1. rmmod <driver>

2. delete <driver>.ko from location given in section "Installing Source RPM Package"

3. depmod -a
 
**The kernel will now be back to original state prior to instalation from tar file.
  You may now reload previous module versions if necessary.

Centos 5.5 更新网卡驱动 bnx2 version: 2.0.2的更多相关文章

  1. LINUX内核升级-更新网卡驱动

    因项目需要,将当前内核(2.6.32-220.el6.x86_64)升级到目标内核(2.6.33-110.el6.x86_64),但是编译的目标 内核(2.6.33-110.el6.x86_64)的对 ...

  2. 3g自己主动更新网卡驱动web完架构文档

    几年前写. 看它是否是用得上 1  简单介绍 本文档具体描写叙述了基于ASP.NET平台和IIS服务的T-Mobile自己主动更新系统的实现框架. 本文档主要从技术架构和业务架构两个方面来着手来描写叙 ...

  3. 【Vbox】centos虚拟机安装usb网卡驱动

    前面安装增强pack之后 usb设备是可以识别了,但是无法正常使用,应该是无线网卡驱动没有的原因. 查看usb设备 os:centos6.6 内核:2.6.32-504.el6.x86_64 [roo ...

  4. Centos6.5更新e1000网卡驱动

    导读 在工作过程中经常遇到linux的操作系统网络不正常的情况,以前没有注意到,今天查看系统日志发现原来是网络驱动的问题.索性直接更新系统,更新网卡 问题:linux系统经常出现断网的情况,重启之后系 ...

  5. 更新新网卡驱动,修复win7雷凌网卡Ralink RT3290在电脑睡眠时和启动网卡时出现蓝屏netr28x.sys驱动文件错误

    更新新网卡驱动,修复win7雷凌网卡Ralink RT3290在电脑睡眠时和启动网卡时出现蓝屏netr28x.sys驱动文件错误 我的本本是win7,雷凌网卡Ralink RT3290   802.1 ...

  6. CentOS7内置Realtek网卡驱动r8169降级r8168

    前几天装了几台服务器测试,在使用的过程中发现,每次重启系统,登录界面会弹出网卡提示  "r8169 0000:02:00 eth0 Invalid ocp reg 17758!" ...

  7. linux网卡驱动更新方法

    kernel: eth0: igb_reset_task: Reset adapter解决方法 1. LVS集群web项目,运行大概一个月左右出现访问慢的情况,查询mysql服务器时/var/log/ ...

  8. 基于CentOS的IB网卡驱动安装

    一.准备步骤 1.查看centos版本 cat /etc/issue或者cat /etc/redhat-release  2.查看linux版本 cat /proc/version或uname -a或 ...

  9. Dell R410 broadcom网卡驱动更新失败

    问题描述: 最近遇到一个Dell R410 broadcom网卡驱动更新失败的问题.从官网上下载的驱动在安装的过程中都会自己回滚回来,很是困惑. 尝试解决: Dell官网现在提供的驱动一般最少有两种格 ...

随机推荐

  1. sqlserver bak还原

    一.查看: restore filelistonly from disk='F:\Db\A_backup.bak' 二.还原:RESTORE DATABASE AFROM DISK = 'F:\Db\ ...

  2. C#中System.Globalization.DateTimeFormatInfo.InvariantInfo怎么用

    原文  C#中System.Globalization.DateTimeFormatInfo.InvariantInfo怎么用 在开发的时候,碰到下面这样一个问题: 在程序中显示当前系统时间,但是有一 ...

  3. 基于visual Studio2013解决面试题之0504单链表逆序

     题目

  4. Dropbox + Farbox高速创建免费博客小站

    创建自己的Dropbox账号(已有账号的略过) 注冊地址:Dropbox 点击链接注冊就好了,so easy: 账号注冊成功后,能够选择下载同步client(windows.Mac.ios.andro ...

  5. Servlet的学习之Session(5)

    在上一篇中我们介绍了如果使用Session来做一个简单的用户登录案例,在本篇中我们继续使用Session技术来做一个防止表单重复提交的案例. 这是一个很重要的知识点,在很多框架中都有防止表单重复提交的 ...

  6. python 在 eclipse 上的编码配置问题

    Eclipse的设置 window->preferences->general->editors->text editors->spelling->encoding ...

  7. C#中Base64之编码,解码方法

    原文:C#中Base64之编码,解码方法 1.base64  to  string string strPath =  "aHR0cDovLzIwMy44MS4yOS40Njo1NTU3L1 ...

  8. 14.1.2 Checking InnoDB Availability 检查InnoDB 可用性:

    14.1.2 Checking InnoDB Availability 检查InnoDB 可用性: 确认你的server 是否支持InnoDB,使用 SHOW ENGINES 语句.(默认MySQL的 ...

  9. iOS两个强制旋转屏幕的方法

    第一个: // 状态栏动画持续时间 CGFloat duration = [UIApplication sharedApplication].statusBarOrientationAnimation ...

  10. 【Cocos2d-X游戏实战开发】捕鱼达人之开发前准备工作(一)

    本系列学习教程使用的是cocos2d-x-2.1.4(最新版为cocos2d-x-2.1.5) 博主发现前两个系列的学习教程被严重抄袭,在这里呼吁大家请尊重开发者的劳动成果, 转载的时候请务必注明出处 ...