KernelNewbies:

How do I compile a kernel?

(Also see a working example of building a 3.3.6 Linux kernel in BuildLinux33).

(The following instructions assume we are installing version 5.6.0 of the kernel; replace all instances with the version you are trying to build. These instructions are also x86-specific; other architecture's build procedures may differ.)

        wget www.kernel.org/pub/linux/kernel/v5.x/linux-5.6.tar.xz

        tar xJf linux-5.6.0.tar.xz

         make

         make modules_install

         make install 

If your distribution uses lilo:

         image = /boot/vmlinuz-5.6.0
         label = 5.6.0

If your distribution uses grub:

          title=Linux 5.6.0
          root (hd0,1) #  or whatever your current root is 
          kernel /boot/vmlinuz-5.6.0 root=/dev/hda1 # or whatever... 

          title=My very latest kernel install
          root (hd0,1) #  or whatever your current root is 
          kernel /boot/vmlinuz root=/dev/hda1 # or whatever... 

Note: This will work for lilo, too, but you still have to run /sbin/lilo after every install.

Still not getting it? Try this more indepth tutorial


If you're just trying out this procedure, do the unpacking and building in your home directory as discussed above. In a professional environment, though, the source would be stored in /usr/src or /usr/local/src, where compiling would also be done. To allow this, and at the same time avoid becoming root for the entire procedure, use your favorite GNOME or KDE utilities to create a group "devel" (or "hack" or whatever) and add yourself to that group. Then change the group owner of /usr/src to the new group and grant write privileges to the group.

That way you can unpack the kernel tarball into /usr/src (or whatever) and configure and build there without doing everything as root. Of course, you'll still need to sudo or become root when you install the new kernel and edit the lilo/grub configuration files.

This will help keep the kernel source separate from your resume, diary, and jpegs of your Main Squeeze.



CategoryFAQ

KernelNewbies: FAQ/KernelCompilation (last edited 2021-01-10 21:23:05 by RandyDunlap)