Compiling The Linux Kernel


Dependencies


To compile Linux Kernel the following are required to be installed.
  • gcc latest version,
  • ncurses development package and
  • system packages should be up-to date
To install the dependencies run the following commands in terminal and type the password for the user, when prompted.
For gcc
$ sudo apt-get install gcc
For ncurses development package
$ sudo apt-get install libncurses5-dev
After installing the above packages then update your system by running the following command


Update


To download the latest kernel go to kernel.org and download the latest stable version.


Once the download complete move to the directory where you have downloaded the kernel package “linux-3.1.5.tar.bz2“. Now extract the tar file to the location “/usr/src/“.
To move to the directory, for example if the downloaded package is in your Downloads directory. Use the below command.
$ cd Downloads/
To extract the tar file run the following command. Type the password for the user when prompted.
$ sudo tar -xvf linux-3.1.5.tar.bz2 -C /usr/src/
Now move to the directory where the extracted file is, or copy and paste the below command in terminal.
$ cd /usr/src/linux-3.1.5/
Now you can configure, compile and install Linux Kernel 3.1 in your system. Run the commands one by one and type the password for the user, when prompted.

To Configure

$ sudo make menuconfig
The above command is used to configure the Linux kernel. Once you execute the command, you will get a pop up window with the list of menus and you can select the items for the new configuration. If your unfamiliar with the configuration just check for the file systems menu and check whether ext4 is chosen or not, if not select it and save the configuration. Check the screen shot below for menuconfig.
If you like to have your existing configuration then run the below command.
$ sudo make oldconfig
There are other alternate configuration commands are available and you can find them in README file under linux-3.0 directory.

To Compile

$ sudo make
The above command is used to compile the Linux Kernel. It will take some time to complete it, approximately 40 min to 50 min it depends on your system configuration.

To Install

$ sudo make modules_install install
The above command will install the Linux Kernel 3.0 into your system. It will create some files under /boot/ directory and it will automatically make a entry in your grub.cfg. Check whether it made correct entry and check for the files it created.
The files under /boot/ directory are,
  • System.map-3.0.0
  • vmlinuz-3.0.0
  • initrd.img-3.0.0
  • config-3.0.0
If you unable to find the initrd.img-3.0.0 file then create it. Run the below command to create it.
$ sudo update-initramfs -u -k 3.0.0

Update

If the above command unable to update / generate the initramfs then run the following command to create new initramfs.
$ sudo update-initramfs -c -k 3.0.0


Comments

Popular posts from this blog

Scan FC LUN's in RHEL/CentOS

CEPH bluestore using ceph-ansible

How to enable federated engine in MySQL