It took me around 3 days of work to get any version of oracle to work on a Gentoo/Opteron server, but I have finally succeeded. First, download the x86 linux database from oracle, and extract like they tell you.

$ gunzip *.gzip

$ cpio -idmv < *db*

Now edit your /etc/sysctl.conf file and make it look roughly like....this:

Add or edit the following line in the /etc/pam.d/login file, if it does not already exist:
session required /lib/security/pam_limits.so

So now all the system settings are more suited towards Oracle, but you're still running in a 64bit environment. So follow these directions and install a 32bit chroot. I installed mine in /usr/local, because it had the most space, choose a place that's going to have enough space to install oracle (5-10gigs would be cool). A 32bit chroot is basically reinstalling gentoo into a chrooted environment. Follow these wonderful instructions: http://www.gentoo.org/proj/en/base/amd64/technotes.xml?part=2&chap=4

Getting the emul libraries won't hurt, but the main part you want to pay attention to is "4.c." Also, without being in the chroot, it'll probably help to mount proc to your chrooted environment's proc. (ie: $ mount -t proc none /path/to/chroot/gentoo/proc), that probably should've been done already though (during the chroot's install). Now you should move your Disk1 folder into the chroot's /usr/local/src, and then log into the chroot. ($ linux32 chroot /path/to/gentoo/ /bin/bash). Now run these commands...

$ groupadd oinstall

$ groupadd dba

$ useradd -g oinstall -G dba oracle

$ chmod oracle:oinstall -R /usr/local/src/Disk1

(oracle documentation, you should do this nowishly)

For the Bourne, Bash, or Korn shell, add the following lines to the /etc/profile file (or the /etc/profile.local file on SuSE systems):

In a new terminal type "xhost +", and then close the term. Now we need to set some variables, so open up ~/.profile with your favourite editor (nano is easy, if you don't know vim). The first line should be "umask 022". Save and exit, now you're gonna want to set ORACLE_BASE and ORACLE_SID, to do this type:

$ ORACLE_BASE=/usr/local/oracle

$ ORACLE_SID=ORCL

$ export DISPLAY=0.0

Now you should be able to run the installer...

$ /usr/local/src/Disk1/runInstaller -ignoreSysPrereqs

Go through the installer like normal, when it gets to the dbca, and it says it fails, just say okay and continue. Sometime during the install it'll tell you to run a script as root, make sure you're in the chrooted-gentoo when you run that script. Now you should run 'oraenv', which will update all your variables for you. Remember, whenever you're in the chrooted environment and are working...you should always run oraenv first. It helps with things. At any rate, you can try to run dbca yourself and go through the process of creating a database, but for me it always crashed at the end. I manually copied an initORCL.ora file from a different oracle server and then did something like....

$ sqlplus /nolog

SQL> connect / as sysdba

SQL> CREATE DATABASE ORCL

CONTROLFILE REUSE;

SQL> startup

(If that doesn't work, it's close enough, just find the right syntax).

Now you have your database created, and you can easily launch a listener.

Just be sure to change your host....mine's genfire, yours is probably not.
Now we're almost done, all that's left is some init scripts.
We should probably run this command so you can give sysdba privilages out:

As for the database however, dbstart doesn't seem to work on my machine, and I don't know how to start a database in command-line mode with sqlplus, if anyone could solve this last step it would be completely automated. (There are minor problems with how I created the database, but only because I don't know anything at all about Oracle, use these instructions more as a loose guide..., in example, I don't understand how to implement rollback segments, and all the system tables are non-existant, so that makes some errors for oracle's enterprise manager)

If you have any questions or comments, feel free to e-mail me at dragoncow2@gmail.com.

Actually, that reminds me, if someone could test this out in their spare time(hehehe...), could they run Oracle's database configurator and find a solution as to why it crashes. It's a java error, but I have no idea what it relates to.