Seeing as the QS22 blades are out, here's a short guide to getting debian installed.
[jk@qs22 ~]$ grep -m1 ^cpu /proc/cpuinfo cpu : Cell Broadband Engine, altivec supported [jk@qs22 ~]$ lsb_release -d Description: Debian GNU/Linux unstable (sid)
kernel
You'll need a kernel that has support for the IBM Cell blades. If you configure your kernel with the 'cell_defconfig' target, you should have all the necessary options:
[jk@pingu linux-2.6.25]$ make cell_defconfig
Specifically, you need:
CONFIG_PPC_IBM_CELL_BLADE
;CONFIG_SERIAL_OF_PLATFORM
;CONFIG_FUSION_SAS
;CONFIG_ROOT_NFS
;CONFIG_IP_PNP_DHCP
andCONFIG_SPU_FS
.
root filesystem
The QS22s have no internal disk (they're compute nodes, right?), so you'll have to either:
- use a remote root filesystem, like NFS; or
- add a LSI SAS adaptor to the blade, and use an external SAS disk for the root filesystem.
The installation process will be different depending on which you choose, so just skip to the appropriate section here.
NFS root
For the first option, there's a number of NFS-root howtos
around. First up, we need to build the actual debian filesystem, using
debootstrap
. For example:
[jk@pingu ~]$ sudo debootstrap --arch=powerpc --foreign sid /srv/nfs/qs22/
This will create an entire debian filesystem in /srv/nfs/qs22
.
We need to make a few modifications though:
- add the following line to
/etc/inittab
:T0:23:respawn:/sbin/getty -L ttyS0 19200 vt100
- and couple of extra device nodes:
[jk@pingu ~]$ cd /srv/nfs/qs22/dev [jk@pingu dev]$ sudo mknod console c 5 1 [jk@pingu dev]$ sudo mknod ttyS0 c 4 64
Once this is done, we need to complete the bootstrap on the QS22. Set up
your NFS server, and export the appropriate directory. Boot the QS22 with the
nfs root kernel options, plus "rw init=/bin/sh
" (eg
root=/dev/nfs nfsroot=server_ip:/srv/nfs/qs22 ip=dhcp rw
init=/bin/sh
). Then, once the machine has booted:
sh-3.2# PATH=/:/bin:/usr/bin:/sbin:/usr/sbin /debootstrap/debootstrap --second-stage
This should finish the bootstrap. After it has completed (it should finish
with "I: Base system installed successfully
"), reboot the
machine with the same kernel command line, minus the rw
init=/bin/sh
arguments. Once it boots, you should have the debian login
prompt. Login as root (there will be no password, but don't forget to set one)
and away you go.
SAS disk
If you're using SAS, the install is much more straightforward, as you can just use the standard debian installer. However, you may need to use a custom kernel which supports the QS22s. This is a matter of building your own kernel, using the powerpc64 debian installer image as the initramfs:
[jk@pingu linux-2.6.25]$ wget http://ftp.us.debian.org/debian/dists/testing/main/installer-powerpc/current/images/powerpc64/netboot/initrd.gz [jk@pingu linux-2.6.25]$ gunzip -c < initrd.gz > initrd [jk@pingu linux-2.6.25]$ make cell_defconfig [jk@pingu linux-2.6.25]$ sed -ie 's,^CONFIG_INITRAMFS_SOURCE=".*",CONFIG_INITRAMFS_SOURCE="'$PWD'/initrd",' .config [jk@pingu linux-2.6.25]$ make
Then, just boot the kernel in arch/powerpc/boot/zImage.pseries
. The debian installer should start, and guide you through the rest of the
installation. Since you're netbooting, you can ignore any messages about not
having a bootstrap partition, or not being able to install a kernel or
yaboot
software
Entirely optional, but you'll probably get the most out of your QS22 with a few extra packages:
[jk@qs22 ~]$ sudo apt-get install openssh-server libspe2-dev spu-gcc build-essential