I’ve had quite a few emails from people around the world who seem to have similar issues with the XServe. It is nice hardware kit, but we just want to run Linux on the thing. Most have been asking how far we’ve gotten. I’ve been at conferences most of this month (I’m an academic) so havn’t had time to do any more playing with the box, so here’s where we’re at and how we think the future will proceed.
Linux will not run on an Apple XServe (right now) because the XServe uses EFI rather than BIOS. Linux has EFI support for the ia64 (Itanuim) and i386 architectures. There is no EFI support for x86_64 except for some in-development patches on LKML I pointed to last time. I mailed the author of the patches and he kindly advised me to wait until his patches get into the mainline kernel (or at least Andrew Mortons tree) before we do much testing. So bottom line, patches are being submitted by Intel and are in the wild, expect merging soon.
So currently we have a kernel on a USB stick (custom Debian installer). Using EFI we can get the kernel to be loaded by the XServe. We also installed rEFIt on the XServe, I don’t think this was necessary. The default EFI loader should load our kernel correctly. Our kernel inflates itself and then hangs. This, I believe, is because the kernel is making a BIOS call after it inflates itself. This BIOS call is not available on XServe, thus the initialisation sequence halts. I have a picure of this, but it’s not very helpful
When the EFI patches make it into a trustworthy kernel tree we will roll-our-own Debian installer. But there are likely to be further issues. I’m not an expert on BIOS but I suspect any power management tools and graphics drivers make BIOS calls. It’s likely that some Itanium power management stuff will have to be ported to x86_64. Basically, the kernel may boot, but some of the userspace tools will probably not be ready for production deployment for a few months. I add again that this future prognosis is a conjecture of mine. I’d be happy to be wrong and to have everything work perfectly within the next month.
If you’ve got an XServe and you need it to do some real work , hang on a month or so for the EFI support in the x86_64 kernel. If you’re looking to buy XServe because the hardware looks good and you need to run Linux – don’t. Get yourself a Dell PowerEdge or something that has a proven Linux track record.