Kernel hacking A section that determines whether the kernel will
contain advanced debugging options. Most users will
not want to include this option in their production
kernels because it increases the kernel size and slows
performance by adding extra routines.
Security options Configuration options for whether the NSA’s Security
Enhanced Linux (SELinux) is enabled.
Cryptographic
options
Support for cryptography hardware. (Ubuntu patches
not found in the vanilla kernel sources.)
Library routines Options for zlib compression support.
After you select all the options you want, you can save the configuration file
and continue with step 7 in the kernel compilation steps list shown earlier.
Creating an Initial RAM Disk Image
If you require special device drivers to be loaded to mount the root file system
(for SCSI drives, network cards, or exotic file systems, for example), you
must create an initial RAM disk image named /boot/initrd.img. For
most users, it is not necessary to create this file, but if you are not certain,
having it really does not hurt. To create an initrd.img file, use the shell
script /sbin/mkinitrd. The format for the command is the following,
where file_name is the name of the image file you want to create:
Click here to view code image
/sbin/mkinitrd file_name kernel_version
mkinitrd looks at /etc/fstab, /etc/modprobe.conf, and /etc/
raidtab to obtain the information it needs to determine which modules
should be loaded during boot. For our system, we use the following:
Click here to view code image
matthew@seymour:~$ sudo mkinitrd initrd-4.15.3.img 4.15.3-1
When Something Goes Wrong
Several things might go wrong during a kernel compile and install, and
several clues point to the true problem. You may see error messages printed to
the screen, and some error messages are printed to the file