Chapter 10. Configuring your Linux Kernel

Table of Contents
10.1. Installing the Linux Kernel source
10.2. Knowing your hardware
10.3. Kernel compilation - the Linux 1.2.13 kernel
10.4. Kernel compilation - the Linux 1.3.x, 2.0.x, and 2.2.x kernels
10.5. Note on PPP-2.x and /proc/net/dev
10.6. General kernel config considerations for PPP

In order to use PPP, your Linux kernel must be compiled to include PPP support. Obtain the Linux source code for your kernel if you do not already have this - it belongs in /usr/src/linux on Linux's standard file system.

Check out this directory - many Linux distributions install the source tree (the files and subdirectories) as part of their installation process.

At bootup, your Linux kernel prints out a great deal of information. Amongst this is information about PPP support and if the kernel includes it. To view this information, look at your syslog file or use
dmesg | less
to display the information to the screen. If your kernel includes PPP support, you will see lines like

PPP Dynamic channel allocation code copyright 1995 Caldera, Inc.
PPP line discipline registered.

(this is for the Linux 2.x.x kernel series).

Linux kernel sources can be obtained by ftp from sunsite.unc.edu or its mirror sites.

10.1. Installing the Linux Kernel source

The following are brief instructions for obtaining and installing the Linux kernel sources. Full information can be obtained from The Linux Kernel HOWTO.

In order to install and compile the Linux kernel, you need to be logged in as root.

  1. Change directory to the /usr/src directory cd /usr/src.

  2. Check in /usr/src/linux to see if you already have the sources installed.

  3. If you don't have the sources, get them from Linux kernel source directory or your nearest mirror. Select the appropriate directory- v2.0 if you are running a 2.0.x kernel, or v2.2 if you are running a 2.2.x kernel. If you are looking for earlier versions of the kernel (such as 1.2.X), these are kept in Old Linux kernel source directory.

  4. Choose the appropriate kernel - usually the most recent one available is what you are looking for. Retrieve this and put the source tar file in /usr/src. Note: a 'tar' file is an archive - possibly compressed (as are the Linux kernel source tar files) containing many files in a number of directories. It is the Linux equivalent of a DOS multi-directory zip file.

  5. If you already have the Linux sources installed but are upgrading to a new kernel, you must remove the old sources. Use the command rm -rf /usr/src/linux.

  6. Now uncompress and extract the sources using the command tar xzf linux-X.X.XX.tar.gz where "X.X.XX" is the version of the kernel you downloaded.

  7. Now, cd /usr/src/linux and read the README file. This contains an excellent explanation of how to go about configuring and compiling a new kernel. Read this file, (it's a good idea to print it out and have a copy handy whilst you are compiling until you have done this enough times to know your way around).