Archive

Posts Tagged ‘ubuntu 8.10’

How to Compile an Ubuntu 8.10 Kernel

December 3, 2008 33 comments

Compile a 8.10 Kernel

The purpose of this tutorial is to show you how to set up a kernel that is highly tuned for your CPU, in this case a dual core Pentium for a workstation.

Caution: If you do something wrong..it happens…be sure to reboot and select an alternative kernel. You should always have several kernels in case of trouble.

Step #1: Download and install the necessary tools.
Download the necessary tools so that you have everything ready.

# apt-get install kernel-package libncurses5-dev fakeroot wget bzip2

You must have the source available to create a new kernel.

# apt-get install linux-source

You must be in the /usr/src directory to work or copy the source,
linux-source-2.6.27.tar.bz2, to the directory you want to work in. Either move into the /usr/src directory to work or into the alternative directory you will make the build in.

# cd /usr/src

This directory will contain the necessary headers to build the kernel. These are the source files.

You need to unpack the source that was downloaded.

# bzip2 -d linux-source-2.6.27.tar.bz2
# tar xvf linux-source-2.6.27.tar

Now you should have a directory that looks like this:

linux-source-2. 6.27

Create a symbolic link to this source directory and name it linux.

# ln -s linux-source-2.6.27 linux

Move into the directory, you can use the term linux as it is now a link to that folder.

# cd linux

The config file is a hidden file that has the configuration from the kernel that is installed. You will need to copy that because it has already determined your hardware devices.

# cp /boot/config-`uname -r` ./.config

When you copy this config file over, it is a file represents the hardware that the kernel discovered at boot and set up. It also reflects many default settings.

Step #2: Now the fun begins….

You are ready to start menuconfig which will allow you to choose your kernel specifics.

make menuconfig

This opens the menu to start configuration.

Here you see it detected the .config file.

kern1

Now work your way through the menus and make the selections that you want to add or subtract. For example, here Reiserfs was originally a module that could be added, it had a “M” to indicate module that could be loaded. Bu it has been unchecked so modular support will not be available, thus saving space in your kernel. The “*” indicates that it will be loaded into the kernel and an empty option means that no support for that option will be placed in the kernel.

kern2

Once you have all of your modifications complete save the new .config file.

Run this command to clean up.

# make-kpkg clean

The next thing you want to do is create a kernel extension so that as you make kernels you are able to tell the versions apart. What I usually do is place my initials and a number so that I can keep track.

# fakeroot make-kpkg – -initrd – -append-to-version=-mw1 kernel_image kernel_headers

After –append-to-version= you write a string that will help you keep track of your kernel changes, it must begin with a minus (-) and must not contain whitespace.

This will take awhile.

After the successful kernel build, you can find two .deb packages in the directory you built the kernel in. If you were located in the linux directory, look in the directory above for the two .deb packages.

Now you can install and create .deb files so you can take your kernel to another machine with similar hardware. Run these commands as root in order to install them into the boot directory and modify your /boot/grub/menu.lst.

# dpkg -i linux-image-2.6.27.2-mw1_2.6.27.2-mw1-10.00.Custom_i386.deb

# dpkg -i linux-headers-2.6.27.2-mw1_2.6.27.2-mw1-10.00.Custom_i386.deb

You should now be able to select and test the new kernel when you reboot.

Now when I look in /boot/grub/menu.lst I see listed my new kernel:

## ## End Default Options ##

title Ubuntu 8.10, kernel 2.6.27.2-mw1
uuid 9c297074-83fe-41d2-b0d5-9e2e043028e5
kernel /vmlinuz-2.6.27.2-mw1 root=UUID=b1c96812-724b-407d-a8b4-9aad3628540e ro quiet splash crashkernel=384M-2G:64M@16M,2G-:128M@16M
initrd /initrd.img-2.6.27.2-mw1
quiet

title Ubuntu 8.10, kernel 2.6.27.2-mw1 (recovery mode)
uuid 9c297074-83fe-41d2-b0d5-9e2e043028e5
kernel /vmlinuz-2.6.27.2-mw1 root=UUID=b1c96812-724b-407d-a8b4-9aad3628540e ro crashkernel=384M-2G:64M@16M,2G-:128M@16M single
initrd /initrd.img-2.6.27.2-mw1

title Ubuntu 8.10, kernel 2.6.27-7-generic
uuid 9c297074-83fe-41d2-b0d5-9e2e043028e5
kernel /vmlinuz-2.6.27-7-generic root=UUID=b1c96812-724b-407d-a8b4-9aad3628540e ro quiet splash crashkernel=384M-2G:64M@16M,2G-:128M@16M
initrd /initrd.img-2.6.27-7-generic
quiet

Caution: You will need space in the /boot directory to save kernels as you build them. I typically build my /boot directory with 500 MBs of space.

Tip:

Edit your timeout in the /boot/grub/menu.lst and increase it when you are building and trying kernels. That way it will not fly by so fast.

## timeout sec
# Set a timeout, in SEC seconds, before automatically booting the default entry
# (normally the first entry defined).
timeout 8

Tip:
Comment out the hiddenmenu so that you will see the menu on boot. For more info check out our Building Linux Kernels online course.

Monitoring Multiple Servers with Nagios 3

November 28, 2008 3 comments

As an administrator you may be face with the task of constantly monitoring web servers, mail servers, ftp servers, etc. Basically, your organization wants all of their servers up and running all of the time. Nagios 3 offers an easy set up and configuration to make this happen so that you can monitor multiple servers and have Nagios alert you to problems. Nagios can notify you by email, pager or phone. This will allow you to have a life and count on Nagios to contact you when problems develop.

In the past Nagios has been a real difficult set up and configure job. Many have just given up and moved on. However, using Ubuntu 8.10 and the new Nagios 3 this is a breeze to set up and use effectively. Here are some key links to get you going:

Set up Nagios 3 on Ubuntu 8.10
Configure Web Server Monitoring
Configure Mail Server Monitoring


Take a Live Virtual Class on Nagios

nagio2

Nagios is based on Objects. Objects are hosts, services, contacts and timeperiods. A host is a physical device on your network like a server, router, switch or printer. Each of these hosts has an IP Address or MAC Address that you can use to monitor it with. A service is an attribute of the host. For example a service might be CPU load, disk usage, or uptime. A service might also be something that the host provides like HTTP, FTP, or POP3. Once you have set up a host and as service, Nagios will begin to monitor that service on the host. The contacts are the administrators that should get notified and how they should get notified when there are problems. Finally, timeperiods are blocks of time that determine when an administrator should get notified by Nagios. Put this all together, and you have a sophisticated monitoring process that will make your life easier.

Nagios has a web interface that you may log into so that you can see various hosts and services that you are monitoring. Here is an example.

nagios

Categories: Server Admin Tags: , ,

Ubuntu 8.10 USB Drive Review

November 18, 2008 8 comments

Ubuntu 8.10 offers a way to create a USB drive from the Live CD or an .iso. The question is, how well does this really work. In order to test we created several of these USB drive installs. The first thing to note is that the process is easy to do. Here is a step by step in create a USB Pen Drive disk.

Insert the USB Pen Drive once you have booted the Live CD. Now go to System/Administration and Create USB startup disk in the menu. You will see it has detected the 2 GB San Disk. You can use as small as 1 GB for the disk. You will also need to indicate the location of the Live CD or an .iso so the system can build the disk. Here we used the Live CD.

d2

It provides you with the option to decide how much free space to allow for files that you create. What this does is give you a way to move this Pen Drive from computer to computer and save your files. A mobile Pen Drive.

d3

Installation process is quick.

d4

Now remove the USB drive and boot from the USB drive. On most computers at boot time you will have an option to choose your boot drive by selecting F12 at boot. Then select boot from USB drive. If all is well the Ubuntu USB drive should boot and you will see the same thing as the Live CD. Your computer must be able to boot from a USB drive, if it does not have that capability it will not work.

Results Were Mixed:
We tried it on a Lenovo T60p and it would not work at all. Error message ” No operating system”. So for some reason it could not read the disk. On a Dell Inspiron 1100 it booted fine. A little slow but you have to remember it is creating the whole operating system off the USB drive initially.

Ubuntu…Please Don’t Release on Time!

October 28, 2008 15 comments

The update process in Ubuntu has …. well it has gotten out of control. There is no doubt that updates are a necessity for security patches and bug fixes…no argument there. However, Ubuntu seems to want to build the operating system as they go… having you download huge numbers of updates, often daily. Many users have complained bitterly about this as they do not have the bandwidth to justify the updates and they do not enjoy the experience being forced to update almost daily.

I believe this whole issue is forced on the developers because of the release schedule which is rigid. Now Canonical may be proud that they release on time but they should be ashamed in releasing too soon.

Take a look at the LTS version of the server. When it released it did not have LVM2, it did not have all of the updated software raid tools, it did not have acls installed either. Each of these is a standard option that any administrator would want available, especially in the LTS version. They could be installed manually once you installed 8.04 but they were later installed via the update process. The point is, Ubuntu should have released a solid up to date server version in 8.04, not build it as you go with updates. Administrators depend on their servers being up to speed when they install. In addition, adding LVM2, raid tools and acls at a later date after the installation are problematic.

The LTS version of the Desktop was even worse. In fact, there were so many updates that the 8.04.1 version had to be released. Canonical created many angry users over the fact that since 8.04.1 many users thought it was a whole new version so they wiped out there system and installed new. The process was confusing to users and unpleasant. In fact, if users kept up with the updates they had 8.04.1 already installed.

The 8.04 or now 8.04.1 version was supposed to be the long term support version that was more stable and would be a solid foundation for a long time. Unfortunately the constant updates has put that in question.

Follow

Get every new post delivered to your Inbox.

Join 53 other followers