内核二进制文件的位置(不在 /boot 中时)?

The*_*eer 8 boot kernel embedded linux-kernel

我未能在/boot. 我还搜索了整个文件系统vmlinuxbzimage

find / -iname vmlin*
find / -iname bzimage
Run Code Online (Sandbox Code Playgroud)

但是,这是嵌入式设备,而不是标准桌面。内核二进制文件是否可能位于未安装的不同存储位置。

例子:

/ 安装在 SD 卡上,内核写在闪存上?

如果没有,定位内核二进制文件的选项是什么?

Gil*_*il' 3

/boot是桌面/服务器发行版中内核的标准位置,但嵌入式系统差异很大。内核的存储位置完全取决于您的引导加载程序,并且它可能不是一个文件,因为嵌入式引导加载程序通常无法读取 Linux 文件系统。

例如,使用 U-Boot(一种流行的嵌入式引导加载程序),您可以使用 创建一个映像mkimage,然后可以将其写入单独的 FAT 分区或以其他特定于系统的格式写入。如果内核映像位于 FAT 分区上,则该分区通常不会安装在 Linux 下,因为 Linux 永远不需要访问它(升级期间除外,但大多数嵌入式系统不会与引导加载程序分开升级其内核)。

结果是你必须寻找它。如果您需要帮助,您需要非常精确地描述您的系统,即使如此,我们也可能会或可能不会提供帮助,具体取决于您的嵌入式系统的流行程度。如果您自己无法找到它,请考虑向嵌入式系统提供商寻求支持。