Nethence Newdoc Olddoc Lab Your IP BBDock  

Warning: those guides are mostly obsolete, please have a look at the new documentation.


RHEL4/5 system preparation for Oracle 10g/11g
This guide covers :
- RHEL4 system preparation for Oracle 10g
- RHEL5 system preparation for Oracle 10g
- RHEL5 system preparation for Oracle 11g
- 1GB of ram
- twice the swap space
- a static ip address (BOOTPROTO=static)
- which resolves locally (/etc/hosts)
- /oracle as a quite large mount point (don't use -T largefile a megabyte per inode is too much)
Note. a minimal RHEL4/5 installation (just @base) is alright, we will add the required packages later on.
Note. you'll probably want to enable ntp or at least sync the time once.
Packages prerequesties
For RHEL4 and RHEL5,
  rpm -q \
binutils \
compat-libstdc++-33 \
elfutils-libelf \
elfutils-libelf-devel \
glibc \
glibc-common \
glibc-devel \
glibc-headers \
gcc \
gcc-c++ \
libaio \
libaio-devel \
libgcc \
libstdc++ \
libstdc++-devel \
make \
sysstat \
unixODBC \
unixODBC-devel \
unzip \
vsftpd \
xorg-x11-xauth \
pdksh \
| grep ^package | awk '{print $2}' | xargs yum -y install
note. yes RHEL5 has both available, KSH93 and PDKSH
note. compat-libstdc++-296 doesn't seem to be mandatory on rhel4 and rhel5 for 10g
note. RHEL5 + (what about libXp?),
rpm -q \
ksh \
xorg-x11-utils xorg-x11-apps \
| grep ^package | awk '{print $2}' | xargs yum -y install
note. RHEL4 +,
rpm -q \
xorg-x11-deprecated-libs \
xorg-x11-tools \
| grep ^package | awk '{print $2}' | xargs yum -y install
note. x11 apps and utils for xclock and xdpyinfo. The latter is eventually needed at OUI's startup to check for available colors.
note. xorg-x11-deprecated-libs contains libXp
System preparation
Create the groups,
groupadd oinstall
groupadd dba
Create the oracle user,
useradd -m -g oinstall -G dba oracle
passwd oracle
Fix perms for /oracle/,
cd /
chown oracle:oinstall oracle/
chmod 750 oracle/
The "nobody" user should exist,
grep ^nobody /etc/passwd
Kernel parameters
Clean-up the existing configuration,
cd /etc/
mv sysctl.conf sysctl.conf.dist
sed '/^$/d; /^#/d;' sysctl.conf.dist > sysctl.conf
note. OUI will tell you what parameters to change later on
File descriptors and processes
The fs.file-max kernel parameter has been changed but the user need to be permitted to use it. And we also set the max number of processes.
Edit the shell limits,
cd /etc/security/
cat >> limits.conf <<EOF9
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
Note. or simply '@dba' instead of 'oracle'
Enable shell limits,
cd /etc/pam.d/
cat >> login <<EOF9
session required
Note. /lib/security/
Edit oracle user profile,
cd /etc/
vi bashrc
if [ $USER = "oracle" ]; then
ulimit -u 16384 -n 65536
Note. bashrc is always read while profile may only be read by login shells
Note. for KSH,
#if [ $SHELL = "/bin/ksh" ]; then
# ulimit -p 16384
# ulimit -n 65536

(obsolete, see the new doc)