Getting the Right Kernel Configuration for Your System the Easy Way

If you're lazy (and/or smart), you still want to compile a kernel for your system and save the time compiling all the things you don't need, then make localmodconfig is your friend. It will create a .config from the modules you have loaded, as Christoph Hellwig did not fail to mention repeatedly at the LinuxTag. But there are two caveats.

As it needs the modules to be loaded, you need to run a system with all modules compile. You should plug in all your usb and other devices you might use so their modules are loaded. And you may need to set the drivers you need to boot and access root to be compiled into the kernel, which means [*], not [m]. You may need means: you will have to do this unless you create an initrd with them.


  1. The biggest use-case of this is to get the minimal set of modules compiled (only to shorten compilation time) for the cases when you need to debug/bisect a hardware issue with your kernel.

  2. Yeah, and if you modify your own kernel, e.g. not to use fsync (which seems to be a very bad idea) and want to save time ;) ;)


I appreciate comments. Feel free to write anything you wish. Selected comments and questions will be published.