Jan 22

Installing Debian on an IBM x3650 7979

Category: Linux   — Published by tengo on January 22, 2012 at 6:28 am

The IBM x System server x3650-7979 51G came with two SAS 73GB drives. First I went into the Adaptec ServeRAID 8k menu by pressing CTRL-A on bootup. Ran the basic check drive function and then formed an array out of the two drives by ~preparing the drives indivdually for the array, then formed an array by adding both drives to the array as RAID 1 (mirroring) across drives in bay 0 and 1. I don't trust these older drives (roughly 4 years old) and having them in a hardware RAID might be a good idea. Hardware rRAID is transparent to the system (means Debian will not know about the underlying RAID) and I've heard that booting from a software RAID has some issues.

When you buy used systems, make sure to go into the BIOS (F1) and restore system defaults. Networks cards may be disabled, or other obscure settings from the previous owner in effect.

Then inserted the Debian 6.0.3 "Squeeze" install DVD-ROM and rebooted. Entered the "Advanced installation" and there "Automatic installation", which ran without hiccups.

Debian does not come with firmware for the Broadcom NetXtremeII network adapters used in these IBM systems, thus go over to firmware-bnx2 and download the tar. Extract it to a USB stick so that the bnx2/... dir is on the root of the stick and attach it to the server. Debian will munge it in and go on with installation.


firmware-bnx2 is from Debian's non-free repository and out-of-the-box your apt sources.list is probably set to have only main repos taken into account. After a few updates, then, you might oversee these important lines:

Setting up linux-image-2.6.32-5-amd64 (2.6.32-46) ...
Running depmod.
Running update-initramfs.
update-initramfs: Generating /boot/initrd.img-2.6.32-5-amd64
W: Possible missing firmware /lib/firmware/bnx2/bnx2-rv2p-09ax-5.0.0.j3.fw for module bnx2
W: Possible missing firmware /lib/firmware/bnx2/bnx2-rv2p-09-5.0.0.j3.fw for module bnx2
W: Possible missing firmware /lib/firmware/bnx2/bnx2-mips-09-5.0.0.j3.fw for module bnx2
Examining /etc/kernel/postinst.d.

And these basically mean: on the next reboot, your network interfaces will end up without firmware!!

To be safe, you'll have to add the non-free repo to your sources list, and as main packages that rely on a non-free package get into contrib, you'd better add contrib as well. Then run apt-get update.

And then the important step: apt-get install firmware-bnx2
and from then on, your BNX2 hardware will come from the repos.

While resolving this issue I got lots from reading this great how to on this specific non-free related issue.

Preparing for the data center

The installation already asked you for a hostname, a string which intentifies your system, and will also show up on the command prompt. It can be edited in /etc/hostname.
If it exists, edit the file /etc/default/dhcpcd and comment out the "SET_HOSTNAME" directive. You here set a fixed value for that and getting the hostname from DHCP would be undesirable.

Then edit  /etc/hosts to 1) properly map stuff to local host and then position your system within the ISP's domain. Talk to them if you don't have a system already hosted with them which you can use as an example. See below how the hostname is mapped to its FQDN (yourserver.example.com).        localhost.localdomain             localhost   yourserver.example.com      yourserver

Once the system arrives in the data-center, it will poll the local DHCP server for an IP address. Our set hostname will be transmitted and your ISP will assign you your datacenter IP based on that. The service on our machine handling this is dhclient. Config files are kept in /etc/dhclient3/dhclient.conf (although the man pages usually refer to /etc/dhclient/dhclient.conf). A log of past leases, probably from your office test-bed-network, are kept in /var/lib/dhcp/dhclient.eth0.leases (although man pages analogously refer to /var/lib/dhcp/dhclient.leases). It's quite probable that you have to look around a bit to find these files, it's always either dhcp/ dhcp<version> or varying file names with or without the <id> of your network adapter in the filename. Network adapter filenames are inserted when you have multiple adapters on your system, for example.

Next: On to SSH...

First after that is probably that you setup ssh daemon so you can log in from remote and leave the really noisy system sitting somewhere else.

Related reading:
- Set up a LAMP server on Debian Squeeze