Tech4Him – Technology with Integrity

A Christian technology chaos wrangler and his thoughts


pedge_2950_3_overview1Yesterday we finished the installation of a new server. There has
been alot of discussion about how to install Ubuntu 6.06 onto a Dell
PowerEdge 2950 server with a PERC 5 RAID controller. Really the
discussion has been about support for the PERC 5 controller and linux
kernel’s earlier than 2.6.17. The megaraid_sas driver is needed but not properly handled in Ubuntu 6.06 LTS.

We really wanted to use Ubuntu 6.06 LTS because of the long-term
support through 2011 however the kernel with this version does not
properly recognize the raid containers created and manager by the PERC
5 controller. Luckily, we knew this before the server was ordered and
had a number of contingency plans. One of the biggest threads we found
about the topic is located here in the Ubuntu forums.

So here is the disk configuration. We had four (4) 250GB SATA drives
with two bays empty. We proceeded to use the Ubuntu 6.06.1 LTS Alternate
CD
to perform the installation. The installation was done with all the
primary defaults. Now when the installer is detecting the networking
hardware it did not detect the two onboard GB Broadcom NICs. No
problem, just continue.

Now came the detection of the hard disks and partitioning. The
installer detected all four (4) physical drives (sda, sdb,sdc and sdd)
AND the only large raid volume (sde). (Note: In Ubuntu 6.10, 7,04 and
7.10, only the one large raid volume was listed and correctly so.) At
this point we selected drive sde, the large raid volume and chose to
use all the available space. This allowed the installer to
automatically create the necessary partitions.

The installation continued until the cd was ejected and the message
to hit enter to continue appeared. At this point, DO NOT hit continue.
Instead we need to modify the grub menu list. So we need to goto a
console by hitting Alt + F2.

We are following some of the items listed in reply #20 of the above
thread. You can use his code as a script or do what we did and do it
manually in order to be sure we had everything correct.

chroot /target

echo megaraid_sas >> /etc/mkinitramfs/modules
cp /boot/initrd.img-2.6.15-26-386 /boot/initrd.img-2.6.15-26-386.old
mkinitramfs -o /boot/initrd.img-2.6.15-26-386 2.6.15-26-386

grub-install /dev/sde

Here is where we change (hd4,0) to (hd0,0) in menu.lst

grep hd4 /boot/grub/menu.lst
cp /boot/grub/menu.lst /boot/grub/menu.lst.orig
sed -e ’s/hd4/hd0/g’ /boot/grub/menu.lst.orig > /boot/grub/menu.lst


Finally, remember that the two (2) onboard nics were not detected.
The nice things is all we need to do is to add the entries for the
interfaces are added and the bnx2 module driver will be automatically
loaded. The thread mentioned above has you do the following in your script:

echo ‘
# The Ethernet network interface
auto eth0
iface eth0 inet dhcp

auto eth1
iface eth1 inet dhcp
‘ >> /etc/network/interfaces

touch /etc/resolv.conf

We simply did the following and decided to goahead and put all the static IP information for the server in now and add the dns servers to the resolv.conf

vi /etc/network/interfaces

auto eth0
iface eth0 inet static
address xxx.xxx.xxx.xxx
netmask 255.255.255.0
network xxx.xxx.xxx.0
broadcast xxx.xxx.xxx.255
gateway xxx.xxx.xxx.xxx

auto eth1

iface eth1 inet static
address xxx.xxx.xxx.xxx
netmask 255.255.255.0
network xxx.xxx.xxx.0
broadcast xxx.xxx.xxx.255
gateway xxx.xxx.xxx.xxx

And now the resolv.conf

touch /etc/resolv.conf

nameserver xxx.xxx.xxx.xxx
nameserver xxx.xxx.xxx.xxx

This biggest things is to get the ‘root’ entries in the menu.lst
file correct. Below is the last part of our menu.lst file. Notice that
the three ‘root’ etries are using hd0,0 instead of what was originally
there, hd4,0.

/boot/grub/menu.lst

## ## End Default Options ##

title Ubuntu, kernel 2.6.15-26-386
root (hd0,0)
kernel /boot/vmlinuz-2.6.15-26-386 root=/dev/sde1 ro quiet splash
initrd /boot/initrd.img-2.6.15-26-386
savedefault
boot

title Ubuntu, kernel 2.6.15-26-386 (recovery mode)
root (hd0,0)
kernel /boot/vmlinuz-2.6.15-26-386 root=/dev/sde1 ro single
initrd /boot/initrd.img-2.6.15-26-386
boot

title Ubuntu, memtest86+
root (hd0,0)
kernel /boot/memtest86+.bin
boot

### END DEBIAN AUTOMAGIC KERNELS LIST

Now press Alt+ F1 to go back to the installer window and hit enter to reboot. That should be it! Now, if for some reason it does not work, don’t panic. If GRUB is loading but not finding the /root filesystem just go back to the GRUB menu, hit ‘e’ to edit the primary menu selection. This takes you to the command line editor, check and be sure (hd0,0) is in the line and not (hd4,0). If not, changeit right there and then hit ‘enter’. When back at the grub menu, hit ‘b’ to boot that selection.

Blessings.

Popularity: 6% [?]

Share and Enjoy:
  • Print
  • Digg
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • email
  • LinkedIn
  • PDF
  • RSS
  • Slashdot
  • StumbleUpon
  • Technorati
  • Twitter

Leave a Reply