可能缺少的固件 /lib/firmware/rtl_nic/rtl8105e-1.fw 适用于带有2.6.39内核的r8169模块。

自从我从Kernel-PPA仓库升级到Natty的2.6.39版本以来,我一直遇到一个问题。
当我运行sudo update-initramfs -u命令时,我会收到以下错误信息。
update-initramfs: Generating /boot/initrd.img-2.6.39-0-generic-pae
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8105e-1.fw for module r8169

我注意到固件不在分配的目录中。有人知道在哪里获取这个固件文件吗?
9个回答

执行sudo apt-get install firmware-realtek,问题应该就解决了


这是一个真实的软件包吗?在我的11.04系统上,apt-cache show firmware-realtek返回了一个消息,说该软件包不存在。 - djeikyb
9这个软件包在Debian的软件仓库中,而不在Ubuntu的软件仓库中。因此,这个答案只适用于Debian,而不适用于Ubuntu。 - fossfreedom
2您还需要添加对非免费软件库的访问权限。Debian 9指南:http://blog.programster.org/debian-9-install-raeltek-firmware - Programster


好的,我会去看看。 - Dean Thomson
2这个仓库现在出现了fatal: remote error: access denied or repository not exported: /pub/scm/linux/kernel/git/romieu/linux-firmware.git的错误。我在使用4.4.1内核的14.04版本时遇到了这个错误。 - Patryk
1有没有更新的解决方案?因为这个和Alex的回答都不起作用。 - Anshuman Kumar

我遇到了与Ubuntu 12.04.5 LTS相同的问题。 今天我进行了测试,但是旧的“git://git.kernel.org/pub/scm/linux/kernel/git/romieu/linux-firmware.git”是一个失效的链接。
我已经搜索到了下载realtek固件的新的git网址。 我测试过的命令(并且运行得非常好)是:
git clone git://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git
sudo cp -r linux-firmware/rtl_nic/ /lib/firmware/
sudo update-initramfs -u

并且

rm -rf linux-firmware

删除git下载的目录。

也许更好的答案是安装linux-firmware软件包,如果需要的话再安装linux-firmware-nonfree软件包。

最近我遇到了类似的问题,但是当我按照Rocko方法操作时,链接断开了。所以它没有让我下载linux-firmware。

我还尝试了以下操作:sudo apt install firmware-realtek,但仍然没有成功。

在网上搜索后,找到了一个新的git链接。 git://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git

按照以下步骤进行操作:

  1. 下载linux-firmware: $ git clone git://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git

  2. 将缺失的固件复制到/lib/firmware目录下: $ sudo cp -r linux-firmware/rtl_nic/ /lib/firmware/ $ sudo cp -r linux-firmware/i915 /lib/firmware/(在我的情况下,i915也是缺失的)

  3. 更新initramfs: $ sudo update-initramfs -u

注意:更新之后,如果仍然发现一些固件丢失,请在linux-firmware中搜索并将这些文件夹复制到/lib/firmware目录下。


似乎Linux固件包已损坏,我在Ubuntu 13.04中解决了这个问题。
sudo apt-get purge linux-firmware

并且

sudo apt-get install linux-firmware

对于Debian,我运行以下命令,确实有效:
apt-get install linux-firmware-nonfree

文件/lib/firmware/rtl_nic/rtl8105e-1.fw位于软件包firmware-realtek中。
您需要运行以下命令。打开终端Ctrl + Alt + T
sudo apt-get install firmware-realtek

对我来说,我的服务器上有rtl8125a,但是firmware-realtek软件包中没有包含它。但是我在内核网站上找到了它,所以这就是我解决问题的方法:
wget --quiet https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/tree/rtl_nic/rtl8125a-3.fw
mv -f rtl8125a-3.fw /lib/firmware/rtl_nic/
update-initramfs -u