![重新编译内核,不含当前未使用的模块](https://linux22.com/image/69869/%E9%87%8D%E6%96%B0%E7%BC%96%E8%AF%91%E5%86%85%E6%A0%B8%EF%BC%8C%E4%B8%8D%E5%90%AB%E5%BD%93%E5%89%8D%E6%9C%AA%E4%BD%BF%E7%94%A8%E7%9A%84%E6%A8%A1%E5%9D%97.png)
有没有一种巧妙的方法来剥离 Linux 内核以仅支持当前正在使用的设备。在 NVIDIA 抱怨 GCC 版本不匹配之后,我决定使用当前版本的 GCC 重新编译内核。现在,既然知道当前内核实际使用哪些模块,我可以自动生成一个.config
为本机定制的文件吗?这样展位可以节省一些空间和时间。就像是
lsmod [options] | sed [a good regexp] > .config
答案1
这就是make localmodconfig
目的。
摘自/usr/src/linux/README
:
"make localmodconfig" Create a config based on current config and loaded modules (lsmod). Disables any module option that is not needed for the loaded modules.