固件和内核驱动_内核驱动固件

十二月 27, 2024 更新: 二月 25, 2025 [Linux 与系统] #Linux #Shell 与命令行 #obsidian #嵌入式

固件和内核驱动_内核驱动固件

驱动折腾小记

很多人更新了内核,但是自己的外设依然没有驱动,是因为仅仅更新内核是不够的,还需要更新固件。

什么是固件?

在许多设备能够与操作系统通信之前,它们必须首先使用设备制造商提供的“固件”进行初始化。这个固件不是Linux 的一部分,也不是由内核“执行”的,它只是在驱动程序初始化阶段被上传到设备。

虽然有些固件映像是由自由软件 构建的,但其中很大一部分只能以二进制形式重新分发。为了避免任何许可混淆,固件从主Linux树移动到一个名为linux-firmware 的单独存储库中。

在没有任何非自由固件二进制文件的情况下使用Linux是可能的,但代价是很多硬件无法操作使用。此外,也有很多设备预装了闭源 (也称不自由)的固件。如果你的目标是运行一个100%免费的自由设备,你通常需要做的不仅仅是避免只使用二进制的固件。

如何下载和安装固件?

检测固件

那怎样知道自己缺少哪些固件呢?可以在终端里执行下面命令。

sudo update-initramfs -u

如果缺少固件命令会输出“W: Possible missing firmware /lib/firmware/xxx/xxx.bin for module XXX

下载固件

国内下载地址:https://mirrors.tuna.tsinghua.edu.cn/kernel /firmware/

官方地址:https://mirrors.edge .kernel.org/pub/linux/kernel/firmware/

固件地址是按照 日期排序的,尽量选择一个最新的。

替换固件

系统的固件地址在**/lib/firmware/**,将下载的固件解压,然后把要用的驱动XXX的固件.bin复制过去就可以了。

也可以直接将全部的固件直接复制到 /lib/firmware/ 下面替换就行了,由于是根目录下,需要管理员权限。

更新完成后执行, 然后重启电脑。

sudo update-initramfs -u

内核收集

内核里面包含着开源 驱动,对,只有开源驱动,像是英伟达的N卡驱动是闭源驱动,是不可能包含到内核中的。如果你所用的设备的驱动没有开源,并且没有提供相应的闭源驱动,那是无法驱动的,例如 汇顶科技的很多指纹识别设备(不是全部),是无解的。

一般去两个作者主页翻一下,基本能找到比较新的内核,下载下来是deb包,双击安装即可。

作者论坛主页🔗
fslonghttps://bbs.deepin.org/user/120814
青稚°https://bbs.deepin.org/user/292516

高质量内核相关文章

分享一下论坛高质量文章:

  1. 关于源内可用内核的查看、安装与本地内核的卸载:https://bbs.deepin.org/post/254997
  2. 给坛里的朋友介绍一种安装最新内核的方法:https://bbs.deepin.org/post/172006
  3. 写给Surface用户的Linux入坑指南:https://bbs.deepin.org/post/195290
  4. [新手教程] deepin20.5+Linux内核5.18稳定版:https://bbs.deepin.org/post/237619
  5. reltek8188GU无线网卡安装:https://bbs.deepin.org/post/211026
  6. deepin 平台电源策略 :https://bbs.deepin.org/post/260831
  7. [经验分享] 编译打包deb内核:https://bbs.deepin.org/post/256149
  8. 编译内核的教程,手动编译 kernel 的命令行教程 :https://bbs.deepin.org/post/247599
  9. 编译deepin主线内核:https://bbs.deepin.org/post/262451