The rest is a little tricky, you now have to set an x-environment. Since AIX stopped making machines where you could just beebop into the data center and log into CDE, you will probably be using something on your client PC to do this. I use cygwin. Setting up cygwin is almost a different post, but I set up the default for X11 and got an error that twm wasn't found. From my cygwin bash shell I went to /etc/X11/xinit and eventually just replaced my xinitrc by doing this:

echo "xterm" > xinitrc

It is ugly, but I get an x environment with a shell that works.

From that shell, I run 'xhost +' and then 'ipconfig' to get my ip.

From the AIX session, I create a new /apps filesystem, become the 'oracle' user, and then export my display:

I see a clock in my xterm, so I control-C in AIX to kill it. I now have my environment set up to run the installer:

$ cd /tmp/Disk1
$ ./runInstaller
**************************************************************************
******
Your platform requires the root user to perform certain pre-installation
OS preparation. The root user should run the shell script 'rootpre.sh' be
fore
you proceed with Oracle installation. rootpre.sh can be found at the top
level
of the CD or the stage area.
Answer 'y' if root has run 'rootpre.sh' so you can proceed with Oracle
installation.
Answer 'n' to abort installation and then ask root to run 'rootpre.sh'.
**************************************************************************
******
Has 'rootpre.sh' been run by root? [y/n] (n)
y
Starting Oracle Universal Installer...
No pre-requisite checks found in oraparam.ini, no system pre-requisite checks will be executed.
Preparing to launch Oracle Universal Installer from /tmp/OraInstall2009-11-19_11-11-29AM. Please wait ...$ Nov 19, 2009 11:11:36 AM java.util.prefs.FileSystemPreferences$2 run
INFO: Created user preferences directory.
Nov 19, 2009 11:11:38 AM java.util.prefs.FileSystemPreferences$3 run
INFO: Created system preferences directory in java.home.

Now I am in the gui, but I don't feel like posting GUI screen shots, so I will just talk you through it, I change the install path to be under /apps/oracle. Ditto with the next question about the inventory directory:

/apps/oracle
/apps/oracle/oraInventory
I set the operating system group to 'dba'

I can't cut and paste from the gui window, but there checks give me one warning:

# /apps/oracle/product/10.2.0/db_1/root.sh
Running Oracle10 root.sh script...
The following environment variables are set as:
ORACLE_OWNER= oracle
ORACLE_HOME= /apps/oracle/product/10.2.0/db_1
Enter the full pathname of the local bin directory: [/usr/local/bin]:
Creating /usr/local/bin directory...
Copying dbhome to /usr/local/bin ...
Copying oraenv to /usr/local/bin ...
Copying coraenv to /usr/local/bin ...
Creating /etc/oratab file...
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root.sh script.
Now product-specific root actions will be performed.

I am just going to start with the default instance:
cd /apps/oracle/product/10.2.0/db_1/dbs/
cp init.ora initoracle.ora

Now, it gets more difficult. First we see that rpm_share is not something called directly, although some research shows that it is a different script. Set -x in it gets stripped out, so that doesn’t help.

Most people know how to create ssh public and private keys. If you hit enter when it asks for a password, you then have keys that don’t need a password to authenticate. As I show below, you really only need to do this once for each user if you own a whole farm of servers. Only worry about unique keys if you are giving them away to someone else or putting them on a server outside of your control. This may seem lax, but if you tighten up security too much in some places, you end up with unwieldy policies that people find ways to work around.

$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/home/username/.ssh/id_rsa):
Created directory '/home/username/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/username/.ssh/id_rsa.
Your public key has been saved in /home/username/.ssh/id_rsa.pub.
The key fingerprint is:
63:ef:3d:e0:83:86:57:5c:61:57:2c:5c:9f:a4:f2:c6 username@thishost

I like to start by making a line between /etc/ssh/ssh_known_hosts and /home/root/known_hosts. This way, when I accept a host as root, it works for everybody. My philosophy is that if root trusts a host to be what it says it is, everyone else can trust it too:

mail -s “here is the subject” email@rigler.org,otheremail@rigler.org < /etc/motd
This sends an email from a pipe:
ls -l | mail -s "here is the subject" email@rigler.org,otheremail@rigler.org
When you first install the system, if you have /etc/resolv.conf configured, email will figure out
where to go.
If you want to forward email sent to your unix account to a different account, just add the email
address that you want to use to a file called ~/.forward

In this case, it eventually worked, something just must have not been in the correct state. It would be interesting to build a spot that simply loads exactly what is needed for a mksysb,bos install, service mode work for our environment.

The easiest way to create a new resource for NIM is to use the smit menu system to get to the ‘Define a Resource Screen’ and fill it out. First type ‘smitty nim’ and then use up,down, and enter to
traverse the menu screens:

I just got my connection from AIX into Oracle through Perl working, using DBD::Oracle. This is good news because it opens up the potential to do processing in our robust shared AIX environment on an LPAR licensed as an Oracle client, not a server. Instead of embedding stuff into Oracle’s extended SQL language just to get it to run on the server, we could now simply write in Perl. This could end up saving us quite a bit of money on Oracle licensing.

The configuration may seem trivial, but I ran into so many gotchas on this, that I just hacked into some Oracle scripts and essentially picked up their environment to run. It was compiled with an @INC path that didn’t exist, so I just created it and moved in all of their compiled Perl. It’s Perl 5.8.3 compiled in single thread mode which is different from the Perl that is compiled with Base AIX.

First, find your perl library wherever Oracle ended up putting it and move it to the location hardcoded in @INC:

IBM has given parts of the AIX LVM to Linux, so it would only stand to reason that there is a set of AIX-like commands for linux to use. This shows how to basically create a filesystem. A more comprehensive introduction to LVM is at:

I already had one volume created (sdb1) and it clearly shows up a little different. The new
ones all say ‘NEW’ for one thing, and don’t yet show Allocatable, probably because they aren’t associated with a logical volume yet. First, they need a volume group, though:

Even though we can make reference to volume group names (testvg) directly, logical
volumes seem to be named specifically as their device location. To extend and reduce
the size of the logical volume, we have to say: