I faced this task as I had to provide some kind of simple "single click offline setup" for customers, intended to install Oracle11R2 DB on their (probably not connected to internet) Linux stations. The details of this "how to" is published at my blog. I will try to present here a brief summary:
Everyone, who tried to install Oracle DB on Linux – knows how many boring steps need to pass through. As result of my job I got a directory “orainst” with all need resources (files, scripts and directory with optionally needed RPMs) inside. All you need is to save it on DVD (or ISO) and use it on your target station. Just enter into “orainst” and run “./setup.sh”
The our goal – to build installation package, included all needed files and directories which need to successful Oracle setup in Linux station, disconnected from internet. First of all, we already have a great helper for our job. As Oracle installation process became more and more complex Oracle decided to launch Oracle Preinstall RPM, with name of intended- to-install product contained into RPM’s name. In our case - oracle-rdbms-server-11gR2-preinstall-1.0-6.el6.x86_64.rpm
The step-by-step instruction in blog describes in details how to prepare (optionally) the local yum repository for offline installation and how to fix Oracle Preinstall RPM if you don't want to deal with "kernel-uek", which is of course the Oracle Unbreakable Enterprise Kernel (also, optionally).
few words about installation script – “setup.sh”. It performs the following actions:
Checks if hostname exists into /etc/hosts and exits with error
message if not. I noticed, that installation fails un case of
hostname is not presented into /etc/hosts file. May be, there is
some other solution? I would like to get any other opinions
Configure yum local repository , which contained all needed packages
to be installed by oracle-rdbms-server-11gR2-preinstall rpm as
part of preinstallation tasks. It also will clean this configuration
after preinstall ended. If you intend to use regular yum
configuration (say web repository) and not need this local
repository, you can remove all yum-related statements from script.
- Run oracle-rdbms-server-11gR2-preinstall rpm, which do all
difficult staff – configure OS kernel, install patches and packages
and creates oracle user and group.
- Run Oracle installer. Oracle installer uses response file
db-MYDB.rsp, which contained db installation parameters (in example
supposed that SID chosen as “MYDB”).
- Run postinstall scripts as root user.
- Update /etc/oratab file and create “oracle” service for automated
startup on boot (and with start/stop/monitor commands)
If someone tried to repeat my experience I would happy to get your comments.