I always like to do something in Linux. Although my plan is a bit different. Right now I don’t want to share here until I finish that. But today I share my experience on compile a Linux kernel from source. You can also try it on your PC. But my recommendation would be to try it in virtual box. Install a lightweight Linux distro like lubuntu in the virtual box. I tried it in my Ubuntu 12.04 (my working PC). The main benefit of compiling it by hand is to get better performance by doing some customize while compiling. Okay, let’s start compiling it.
At first, install all required packages..
sudo apt-get install kernel-package libncurses5-dev fakeroot build-essential udev
Then, I enter the directory /usr/src and download the latest and stable version of Linux kernel from the Linux Kernel Archives .
cd /usr/src wget -c http://www.kernel.org/pub/linux/kernel/v3.0/linux-x.x.x.tar.bz2 (you can choose any stable version)
Extract it and go inside of the folder for preparing for kernel modification
tar xvfvj linux-x.x.x.tar.bz2 cd linux-x.x.x sudo make clean && make mrproper
Now you will have to configure the menuconfig. This is customizing the kernel. Basically, this is the hardest parts of building own version of the Linux kernel which is determining exactly which drivers and configuration options are required for the machine to work it properly. But in case if you don’t know the configuration, then you can keep the default configuration.
Now, build the kernel
make-kpkg clean fakeroot make deb-pkg
By the way, I might take several hours. So don’t be worry. Yes, compiling is done. You will get four files as follows in /usr/src…
Now, install the kernel in your PC..
cd /usr/src dpkg -i /usr/src/linux-headers--xxxxx.deb dpkg -i /usr/src/linux-image--xxxxx.deb
if successful, then update your grub
Restart your PC. You will see new kernel in your boot menu. Happy hacking 🙂