14
09/21/08 1 Ho Chi Minh city University of Technology Ho Chi Minh city University of Technology Linux kernel R.M. Introduction of building Linux kernel from source

09/21/081 Ho Chi Minh city University of Technology Linux kernel R.M. Introduction of building Linux kernel from source

Embed Size (px)

Citation preview

09/21/08 1Ho Chi Minh city University of TechnologyHo Chi Minh city University of Technology

Linux kernel

R.M.

Introduction of building Linux kernel from source

09/21/08 2Ho Chi Minh city University of TechnologyHo Chi Minh city University of Technology

Content

• Linux kernel – Linux distro• Linux kernel configuration• Building Linux kernel• Using compiled kernel

09/21/08 3Ho Chi Minh city University of TechnologyHo Chi Minh city University of Technology

Linux kernel – Linux distro

• Linux distribution (Linux distro)– Linux OS

• Linux kernel• Libraries & Utilities: GCC, X Window,...

– Collection of applications

• http://distrowatch.com

09/21/08 4Ho Chi Minh city University of TechnologyHo Chi Minh city University of Technology

Linux kernel

• History– http://en.wikipedia.org/wiki/Linux

• Home page– http://www.kernel.org

• Source– Download source file

• http://www.kernel.org/pub/linux/kernel/v2.6/

– Uncompress the source file• tar xjf linux-2.6.26.5.tar.bz2

09/21/08 5Ho Chi Minh city University of TechnologyHo Chi Minh city University of Technology

Kernel configuration

• .config file– Create default config file: make defconfig

• Two basic ways– make menuconfig– make xconfig

• Required package: libncurses5-dev

09/21/08 6Ho Chi Minh city University of TechnologyHo Chi Minh city University of Technology

Kernel configuration

09/21/08 7Ho Chi Minh city University of TechnologyHo Chi Minh city University of Technology

Kernel configuration

• Suggestions– Just modify if you know about it– Should use default .config file

• make defconfig

– Build Linux kernel in ext3 partition– Free space should be larger than 1GB

09/21/08 8Ho Chi Minh city University of TechnologyHo Chi Minh city University of Technology

Compile kernel

• Two phases– Build kernel image– Build kernel modules

• Normal way– Phase 1: make -j 4

– Phase 2: make -j 4 modules_install

• Debian/Ubuntu distro– export CONCURRENCY_LEVEL=4– fakeroot make-kpkg --initrd --revision=1.0 kernel_image

09/21/08 9Ho Chi Minh city University of TechnologyHo Chi Minh city University of Technology

Compile kernel

09/21/08 10Ho Chi Minh city University of TechnologyHo Chi Minh city University of Technology

Install & Use

• Use root permission to install kernel image • Normal way

– make install

• Debian/Ubuntu distro– dpkg -i ../linux-image-2.6.24.3_rm.1.0_i386.deb

• Check grub– grub.conf or menu.lst in /boot/grub

• Reboot to use new kernel

09/21/08 11Ho Chi Minh city University of TechnologyHo Chi Minh city University of Technology

Install & Use

09/21/08 12Ho Chi Minh city University of TechnologyHo Chi Minh city University of Technology

Art of building kernel

• Understand our system– Create a config file fitting our system

• Understand new features in Linux kernel• Choose a good kernel

– Stable– Latest

• Question: Can we create specific config file automatically just used in our system?

09/21/08 13Ho Chi Minh city University of TechnologyHo Chi Minh city University of Technology

Documents

• Inside kernel source– File README– Directory Documentations/

• Debian/Ubuntu– http://www.howtoforge.com/kernel_compilation_ubuntu

09/21/08 14Ho Chi Minh city University of TechnologyHo Chi Minh city University of Technology

Thank you for listening