Web Tool Bag  
Home · Articles · Downloads · Discussion Forum · Web Links · News Categories · Synonyms DatabaseJuly 14 2024 23:26:48
Discussion Forum
Web Links
News Categories
Synonyms Database
Users Online
Guests Online: 1
No Members Online

Registered Members: 856
Unactivated Members: 118
Newest Member: lakim
Forum Threads
Newest Threads
Error: Cannot find m...
Uncaught Error: _reg...
Module build failed:...
mochi script questions
Hottest Threads
Installation [12]
Any questions and... [5]
Captcha picture d... [4]
Integrate with Vi... [4]
Mods: Sucess/Than... [4]
Latest Articles
Ubuntu: the vpn conn...
Howto Install HP Pri...
ReactJS progress met...
The Linux 2.6 Kernel Trilogy Ends: Go Configure
When we last talked about Linux 2.6 Kernel we left off at giving our new 2.6 kernel a unique name, so we can tell it apart from our other kernels. In our third, and final, salute to the new kernel, we'll get into the gnarly part configuration (and we'll also cover patching kernels, so you'll know how to keep your new kernels up-to-date).

Configuration is the most tedious, time-consuming part of the process. Howerver, it's extremely important, so don't gloss over it. If you leave things out, you'll have to go through all this again.
Now you may think of yourself an old Linux pro, but the steps for building a 2.6 kernel are different than 2.4, so pay attention.

Before we leap into the fun stuff, we need to review a couple of items from Part 1 of our trilogy. Remember the command for unpacking the compressed kernel archive:

$ bzcat linux-2.6.3.tar.bz2 | tar -xvf -

Yes, this is the olden way, as a kind reader pointed out. Use it if you have an elderly tar that does not support bzip2 archives. Modern editions of tar support bzip2 directly. The modern way:

$ tar xvjf linux-2.6.3.tar.bz2

Part 1 says to use gcc 2.95.3. I have received reports of using gcc versions up to 3.3 successfully. Your mileage may vary.

The Steps So Far

  • 1. Obtain kernel source code, and download it into ~/src
  • 2. Make sure gcc, GNU make, binutils, util-linux, and module-init-tools are up-to-date
  • 3. Make hard copies of dmesg, lscpi, and lsusb
  • 4. Backup any existing .config file (there may not be one)
  • 5. Run make mrproper to restore the source directory to a pristine state
  • 6. Edit ../linux-2.6.3/Makefile to give the new kernel a unique name, like EXTRAVERSION =new-name
module-init-tools replaces modutils in the 2.6 kernel. You can have both on your system. And, in addition to being well-armed with printouts of lscpi and dmesg, it is also wise to capture lsusb:

$ lsusb -v | lpr

lsusb is part of usbutils.

This is the most tedious, time-consuming part. Howerver, it's extremely important, so don't gloss over it. If you leave things out, you'll have to go through all this again. It is tempting to recycle your 2.4 .config, and run make oldconfig, but don't. The 2.4 and 2.6 kernels are quite different, this is asking for trouble.

Configure From Scratch
There are two nice graphical configuration utilities: menuconfig, and xconfig. menuconfig is ncurses-based, so you don't need X. xconfig in 2.6 requires Qt and X. Let's use xconfig, because it is sleek and fast, and completely redesigned for 2.6:

$ make xconfig

This will putter and mutter for a bit, then spit out a menu. Have your printouts handy, because now you have to select the right drivers for your hardware, decide what features your kernel will have, and whether to load drivers as modules, or build them into the kernel. menuconfig and xconfig generate loads of information read all of it. Many things will be selected by default. The worst thing that can happen by saying "yes" too many times is you'll enable features that won't be used. This is not a bad thing. In contrast, if you leave something out that you need, you may need to rebuild the kernel. Here are few things which should be built into the kernel:

  • module support
  • a.out binaries, ELF binaries, and MISC binaries
  • VGA text console
  • All filesystems you'll be using, such as ext2/3, ReiserFS, JFS, XFS, loopback, vfat, NTFS, udf, etc.

These depend on your hardware; whatever you select should be built into the kernel, not a loadable module:

  • IDE, ATA, and ATAPI Block Devices
  • SCSI support (note that the 2.6 kernel does not need IDE-SCSI, so if you have no SCSI devices, you can omit this)
  • USB support
  • Any on-board controllers
  • Sound support

These are OK to have as loadable modules:

  • NIC drivers
  • Netfilter/iptables
  • USB drivers
  • sound card drivers

There are help files on almost every item.

By Carla Schroder


Posted by admin on November 28 2006 19:55:25 7090 Reads · Print
Rating is available to Members only.

Please login or register to vote.

No Ratings have been Posted.


Not a member yet?
Click here to register.

Forgotten your password?
Request a new one here.
Member Poll
Which PHP framework do you preffer?





eZ Components






You must login to vote.
You must login to post a message.

03/10/2011 18:17
Hi, How to remove Register from Login screen? I don't want them to register and have full access! if you leave register then they should not have any rights until the admin assigns them

26/09/2011 08:28
Please describe your problem with more details. Thank you.

22/11/2010 18:31
Help. There was a problem with the request; error regarding feedbackzdr form program

Custom web software development by Devzone Tech
Copyright © 2024 - www.webtoolbag.com