I installed Ubuntu 11.10 oneiric on an old Mac Pro ("MacPro1,1" which is the first of the Intel Mac Pros) as a second boot next to Solaris 11. There were several complications: Solaris installs a custom grub (legacy) bootloader with modifications needed for beadm (boot image manager), and I couldn't find a way to boot into Ubuntu 11.10 64bit from the old grub. I also installed Ubuntu on a "non-first disk," which can cause problems.
Hardware: I am able to access external drives that are connected through a low-end PCI card that has two eSATA slots on it. I can't seem to access another drive that is wired to one of the two open PATA plugs that are on the motherboard (and a real pain to access to connect the SATA wire). I might have a problem with that connection because before I installed Ubuntu I was unable to boot from that drive to an OS X disk that I used in the previous week. I might have bumped the wire when trying to plug another wire next to it, but I am not sure. I'll test it in a few weeks).
Sound works out the back line-out (mini-stereo jack) but not the front line-out or the speaker. I haven't tested the optical out.
After I installed Ubuntu, a green icon appeared at the top about hardware, and it had a button to click to activate the Broadcom driver to make the wifi card work. Networking appears to be normal--I downloaded updates already. The screen flickers at boot time, but that is to be expected. I have not tested the video to see if it is optimized.
Some things to note:
1) Do NOT use the default install for ubuntu server because it won't work with the 32bit EFI firmware on old Mac Pros (new Mac Pros might be able to use the standard install if they have 64bit EFI firmware). Go to this page:
Ubuntu 11.10 (Oneiric Ocelot)
and install:
http://d2ce223loljjr2.cloudfront.net...md64%2Bmac.iso
2) Burn the ISO to a CD and boot from it by holding the option key (or alt key if you have a non-Mac keyboard). If you have a non-mac keyboard, boot into a Unix-like OS and run "eject" from the terminal and "eject -t" or "eject -t cd0" to close it (depending on OS).
3) If you are prompted about where to install grub, install it on the disk where you are installing ubuntu server. If you install it on the first disk and there is a different version of grub, you might have problems. You will have problems if that other version of grub was installed by Solaris. If your other grub is for OS X, you can probably overwrite it, but you might have to learn how to rebuild the boot loader to boot into OS X.
4) My install failed when trying to install grub. If grub fails to install, MAKE A NOTE OF THE DEVICE NAME AND THE INSTRUCTIONS GIVEN ON THE SCREEN. My device was /dev/sdc2, but yours might be different. Chose the option to continue installing to allow me to manually install grub later.
5) If grub failed to install... finish the regular install and then reboot from the CD and choose the option that says something about an emergency restore or recover. That will lead you through a bunch of options for language and keyboard and things, and then you want to select the option to boot into a shell script at /dev/sdc2 (or whichever disk you chose as the install disk). If you chose the wrong option you will waste loads of time trying to remap all the search paths and then your disk is messed up when you boot for real.
6) From the shell prompt that you loaded from the install CD, run "grub-install /dev/sdc2" (or whatever your disk is). You do NOT need to use the "sudo" command! Follow the directions and be careful that you select the correct disk for installation.
7) Reboot, perhaps holding the option key. You will come to a black screen and the grub prompt. Type this, but change your disk name if it is not sdc2:
linux /vmlinuz root=/dev/sdc2
boot
If you want to do other things like add kernal options, add them at the end of the first line. If you want to load a RAM disk at boot time, do that with the initrd command below the "linux" command and before the "boot" command (i.e.,: "initrd /initrd").
8) To build a grub2 config file, go to the Terminal prompt and run this:
sudo grub-mkconfig -o /boot/grub/grub.cfg
That command might build numerous config files, and you might want the one that mentions booting to /dev/sdc2 (or whatever /dev/sda2 or whatever you install destination is).