![按照 Linux 发行版的要求更新固件是否会改变机器以适应不同的操作系统?(例如 Windows)](https://linux22.com/image/1499726/%E6%8C%89%E7%85%A7%20Linux%20%E5%8F%91%E8%A1%8C%E7%89%88%E7%9A%84%E8%A6%81%E6%B1%82%E6%9B%B4%E6%96%B0%E5%9B%BA%E4%BB%B6%E6%98%AF%E5%90%A6%E4%BC%9A%E6%94%B9%E5%8F%98%E6%9C%BA%E5%99%A8%E4%BB%A5%E9%80%82%E5%BA%94%E4%B8%8D%E5%90%8C%E7%9A%84%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F%EF%BC%9F%EF%BC%88%E4%BE%8B%E5%A6%82%20Windows%EF%BC%89.png)
我正在尝试 Lubuntu 并看到与版本 16.04 相同的错误(询问 Ubuntu 问题):
*starting configure network device
[ 110.081458] b43-phy0 ERROR: Firmware file "b43/ucode5.fw" not found
[ 110.081669] b43-phy0 ERROR: Firmware file "b43-open/ucode5.fw" not found
[ 110.081870] b43-phy0 ERROR: You must go to http://wireless.kernel.org/en/users/Drivers/b43#devicefirmware
and download the correct firmware for driver version. Please carefully read all
instructions on the website.
这个修改会给 Windows 7 OEM 带来什么改变吗?
答案1
简短回答:否
在这种情况下,固件更类似于 Windows 所指的驱动程序,更具体地说是 wifi 卡驱动程序。因此,它只会影响使用该设备的 Linux 方面。这是一个令人困惑的根源,因为固件通常是指在硬件上运行的软件,与所使用的操作系统无关。
答案2
另一个答案是正确的,这不会直接影响该设备的 Windows 操作,但原因并非您所怀疑的那样。
有些设备的固件是 EEPROM,因此当您执行更新时,使用它的所有内容都会获得好处,并解决更新可能带来的任何问题。您的系统 BIOS 就是一个典型的例子,您可以升级(有时也可以降级),但一旦您执行更新,它就会保留下来。
其他设备(如无线网卡)基于每个操作系统运行,并进行即时固件加载/初始化。无线网卡通常这样做是因为不同国家/地区的合法频段不同,并且在系统加载固件之前,网卡不确定要使用哪个频段。理论上,您可以在 Windows 和 Linux 之间或多个 Linux 变体之间为一张卡运行两个不同的固件版本,但保持它们同步可以加快初始化速度,因为不必每次都重新加载正确的版本。
在您的特定情况下,有一个名为 linux-firmware 的软件包,其中包含操作无线网卡所需的二进制 blob。这些软件包并不总是默认安装的,因为它们是“非免费的”,因为它们不是开源的。通过sudo apt-get update; sudo apt-get install linux-firmware
有线连接安装此软件包应该可以让您的无线网络正常工作。如果它说找不到软件包,请尝试,sudo apt-get update; sudo apt-get install linux-firmware-nonfree
因为软件包名称偶尔会在不同版本之间发生变化。