我正在运行一台 Ubuntu 服务器计算机(Dell Poweredge R410),该计算机带有 Broadcom NetXtreme II BCM5716 以太网控制器(2 个以太网端口,有线)。我最近决定将计算机从 14.04 升级到 16.04(do-release-uprade
不使用任何附加选项)。这是一个巨大的错误。起初,除非使用恢复模式,否则启动不会成功,但是,通过恢复模式,我可以使用 linux 内核 3.0.0-17 启动而不会出现问题(继续正常启动)。这是来自 ubuntu 11 的内核(Ubuntu 版本与 Linux 内核版本对应的列表)?。无论如何,我可以启动机器,但似乎无法激活网络。由于服务器位于服务器场中,我很难到达,因此我想建立网络并在家中进行进一步的调试。热烈欢迎任何建议,我已将所有(社区)信息和我迄今为止尝试过的内容都包含在内。所有内容都是手工输入的(因为我的服务器上没有网络),因此如果有错别字,请原谅。我愿意尝试其他建议,并将主驱动器复制到外部硬盘驱动器。如果全新安装 ubuntu 16.04 服务器是我最好的解决方案,请也告诉我(尽管我宁愿避免它)。
系统信息
lsb_release -a
Distributor ID: Ubuntu
Description: Ubuntu 16.04.2 LTS
Release: 16.04
Codename: xenial
uname -a
Linux [servername] 3.0.0-17-server #30-Ubuntu [system date and time] x86_64 x86_64 x86_64 GNU/Linux
cat /etc/network/interfaces
#This file describes the network interfaces available on your system
#and how to activate them. For more information, see interfaces (5)
#The loopback network interface
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet dhcp
ip link
并且ifconfig -a
仅列出环回接口。
dmesg | grep eth0
不返回任何内容
我lspci -v
看到我的两个以太网端口:
01:00.0 Ethernet controoler: Broadcom corporation NetXtreme II BCM5716 Gigabit ethernet (rev20)
DeviceName: Embedded NIC 1
Subsystem: Dell PowerEdge R410 BCM5716 Gigabit Ethernet
Flags: fast devsel, IRQ 36
Memory at da000000 (64 bit, non-prefetchable) [size=32M]
Capabilities: [48] Power Management version 3
Capabilities: [50] Vital Product Data
Capabilities: [58] MSI: Enable-Count=1/16 Maskable- 64bit+
Capabilities: [a0] MSI-X: Enable- Count=9 Masked-
Capabilities: [ac] Express Endpoint, MSI 00
Capabilities: [100] Device serial Number [serial number]
Capabilities: [110] Advanced error reporting
Capabilities: [150] Power Budgeting <?>
Capabilities: [160] Virtual Channel
Kernel modules: bnx2
01:00.1 Ethernet controoler: Broadcom corporation NetXtreme II BCM5716 Gigabit ethernet (rev20)
DeviceName: Embedded NIC 2
Subsystem: Dell PowerEdge R410 BCM5716 Gigabit Ethernet
Flags: fast devsel, IRQ 48
Memory at dc000000 (64 bit, non-prefetchable) [size=32M]
Capabilities: [48] Power Management version 3
Capabilities: [50] Vital Product Data
Capabilities: [58] MSI: Enable-Count=1/16 Maskable- 64bit+
Capabilities: [a0] MSI-X: Enable- Count=9 Masked-
Capabilities: [ac] Express Endpoint, MSI 00
Capabilities: [100] Device serial Number [serial number]
Capabilities: [110] Advanced error reporting
Capabilities: [150] Power Budgeting <?>
Capabilities: [160] Virtual Channel
Kernel modules: bnx2
journalctcl -b
指出获取“eth0”硬件地址时出错:没有这样的设备,以及为“eth0”创建套接字时出现权限被拒绝错误,最终无法提升网络接口。
lshw -C network
显示该设备无人认领:
*-network:0 UNCLAIMED
description: Ethernet controller
product: NetXtreme II BCM5716 Gigabit controller
vendor: Broadcom Corporation
physcial id: 0
bus info: pci@0000:01:00.0
version: 20
width: 64 bits
clock: 33 MHz
capabilities: pm vpd msi msix pciexpress cap_list
configuration: latency=0
resources: memory: [memory adress]
另一个网络端口也有类似的东西
到目前为止我尝试过
rmmod bnx2
随后modprobe bxn2
导致 中的错误dmesg
:Can't load firmware file bnx2/bnx2-mips-09-6.2.1a.fw
这导致禁用 PCI INT(两者)。实际上,即使在 中也没有这样的目录/lib/firmware
,只有一个bxn2x
没有此类文件的文件夹- 添加没有
bce
效果/etc/modules
查看其他帖子以寻找解决方案
答案1
这是一个 Ubuntu 错误,应通过运行报告给 Launchpad ubuntu-bug linux-firmware
。
问题在于 3.3+ 内核需要新的固件文件。这些文件在上游linux-firmware
git 中可用,但未反向移植到 Ubuntulinux-firmware
软件包。
一种解决方法是下载上游 git 并从那里获取固件。
通过以下方式克隆 git 仓库
git clone git://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git
并将bnx2
目录复制到/lib/firmware
您的服务器。
已经有一个错误报告在这个问题上。
它被标记为“已修复”,但实际上不再是了。我没有在任何受支持的软件包中看到 bnx2 固件linux-firmware
。所以我建议提交一份新的错误报告。
答案2
我们也遇到了同样的问题。唯一能解决这个问题的方法是将内核更新到 4.9.0 以上。我们选择了 4.9.73。步骤:
- 去Ubuntu 内核网站
下载 3 个 deb 到某个文件夹(根据系统类型调整)
linux-headers-4.9.73-040973_4.9.73-040973.201712291730_all.deb
linux-image-4.9.73-040973-generic_4.9.73-040973.201712291730_amd64.deb
linux-headers-4.9.73-040973-generic_4.9.73-040973.201712291730_amd64.deb
安装 debs 并运行
update-grub
:cd /path/to/folder/where/you/put/the/debs sudo dpkg -i *.deb sudo update-grub reboot
- 喝啤酒庆祝你的伟大
情况解决起点: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1643558