This brings us to a really important point: playing around with the kernel configuration is okay to do as a learning exercise (as we do here), but for a production system, it's really critical that you use a proven – known, tested, and working – kernel configuration.
Here, to help you understand the nuances of selecting a valid starting point for kernel configuration, we will see three approaches to obtaining a starting point for kernel configuration that (we hope) are typical:
- First, the approach to follow for a typical small embedded Linux system
- Next, an approach where you emulate the distribution's configuration
- Finally, an approach where you base the kernel configuration on the existing (or another) system's kernel modules (the localmodconfig approach)
Let's examine each of these approaches in a bit more detail.