如何在 2.x 主机上创建 debian 3.x 内核 rootfs

如何在 2.x 主机上创建 debian 3.x 内核 rootfs

我正在尝试为嵌入式 A10 板构建 rootfs。这将与 3.0.62+ 模块和相应的 vmlinux 映像相匹配。

几天来我一直在尝试使用 sid 为 3.x 内核设置 rootfs。

尝试使用 debootstrap 安装,即:

sudo debootstrap --foreign --verbose --arch=armel --include=vim-nox,openssh-server,ntupdate,less --exclude=nano sid . http://ftp.au.debian.org/debian

只是给我一个期望与主机系统具有相同内核版本的构建。

因此,例如,当我sudo chroot进入新的 rootfs 时,我得到:

root@njord:/lib/modules# depmod
ERROR: could not open directory /lib/modules/2.6.32-5-amd64: No such file or directory

它正在搜索与主机系统相对应的模块,而不是安装的内核映像/模块。

我觉得我一定在这里遗漏了一些非常明显的东西。是否有一些我可以设置的标志(在 rootfs 本身或在 debootstrap 阶段)将目标内核版本设置为与主机不同的版本?

答案1

你想通过depmod在 chroot 中运行来实现什么目的?如果您没有指定版本,那么是的,它将使用正在运行的内核的版本,如下所示man depmod

       depmod [-b basedir] [-e] [-E Module.symvers] [-F System.map] [-n] [-v]
              [-A] [-P prefix] [-w] [version]

       depmod [-e] [-E Module.symvers] [-F System.map] [-m] [-n] [-v]
              [-P prefix] [-w] [version] [filename...]

[...]

       If a version is provided, then that kernel version's module directory
       is used rather than the current kernel version (as returned by uname
       -r).

相关内容