General Kernel Configuration
Jump to navigation
Jump to search
This page helps with the configuration of the Linux kernel. Remember, configuring the kernel is easy - you just have to know which hardware you have quite well.
General Information
The kernel sources are unpacked in /usr/src (at least on Gentoo).
- Once you are in the kernel source directory, use the following command to configure graphically your kernel:
make menuconfig
- When migrating to a new kernel, copy your old .config file from the old kernel directory to the new one and type:
make oldconfig
Hardware Detection
- There is a nice link at the Gentoo wiki.
- Basically, emerge pciutils lshw usbutils, which gives you lspci, lshw, and lsusb.
Kernel Configuration
Choice of the scheduler
- There is an I/O scheduler in the section Block Layer. This is different from the CPU scheduler. The SD scheduler is a *CPU* scheduler.
- In vanilla-sources, apparently there is no choice for the CPU scheduler. Same is true for ck-sources (where SD scheduler is mandatory).
Real Time Clock (RTC) support
- With recent kernels (2.6.25+), there are two areas for this configuration.
- Device Drivers -> Character Devices
- Device Drivers -> Real Time Clock
- If Gentoo hangs when starting (when running the clock init script) and you are using the support in Character Devices, change it to use the one in Real Time Clock (which I guess is newer and better).
Reading foreign partition tables
- Each OS creates its own partition table format when initializing / formatting a disk. You can build support for reading these partition table formats with Linux; it's under File Systems -> Partition Types. Note that I don't really know what partition table format Linux uses.
Startup Parameters
- The /etc/modprobe.d direcrectory contains files filed with options that can be passed to the appropriate kernel module. For example, the ALSA modules. If you built the drivers not as a module, but directly into the kernel, you can pass these options as kernel startup parameters. The syntax is the following one:
snd-hda-intel.model=asus
- Additional documentation can be found in /usr/src/linux/Documentation/kernel-parameters.txt.