内核配置文件存储在哪里?


11

我目前正在运行Angstrom Linux 2.6.32。我打算将Linux内核从2.6.32升级到3.0.7。因此,我必须配置3.0.7内核运行make menuconfig

现在,我想将新内核配置与以前的内核配置进行比较,但是找不到内核3.0.7配置文件。有任何想法吗?

Answers:


9

新的.config代码位于内核源代码树的顶层。也可能会安装到它/boot/config-3.0.7或类似的东西。


不幸的是,目录.config上没有文件/usr/src/linux-3.0.7。上/boot只有config-2.6.32文件。
dempap

@dempap /usr/src/linux-3.0.7是您运行的位置make menuconfig?那应该已经产生了.config
derobert

1
我建议find -type f -name '.config'找到它。至少到3.13,我的内核源代码树中肯定有一个。
derobert

@dempap A .config总是在您运行的目录make menuconfig(或其他任何目录)中生成make xxxconfig。如果不存在,则说明您在错误的目录中查找或已将其删除。
吉尔(Gilles)'所以

1
@dempap尝试ls -A查看它。.以惯例开头的文件被视为隐藏文件。
derobert

11

当你运行make menuconfigmake xconfigmake XXX_defconfigmake oldconfigmake localmodconfig或任何其他的make XXXconfigLinux内核源代码树的目标,这将创建(如果成功的话)称为文件.config。该文件在内核编译期间使用,并且除非您手动擦除或运行它,否则不会删除该文件make mrproper

保留内核源代码树很常见/usr/src;如果您在中进行编译,/usr/src/linux-3.0.7.config文件在中/usr/src/linux-3.0.7/.config。(由于这是一个点文件ls因此除非带有该-a标志运行,否则该命令不会显示该文件。)

许多发行版都安排将.config文件复制到包含内核的软件包中,然后将其安装在内核旁边,例如/boot/config-3.0.7match /boot/vmlinuz-3.0.7。嵌入式发行版通常不这样做。我不知道Angstrom是否可以,而且如果您手动编译内核,这也将不适用。

有时可以从运行中的内核中获得内核配置/proc/config.gz。这需要IKCONFIG编译时选项。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.