11gR2 database installation comes up with new feature known as Installation Fixup scripts which aids you during Installation phase. If a pre-requisite check fails, then it provides a click and generate fixup script option and then points you to script location which then need’s to be executed with root permission. As per doc’s , it takes care of following things
- Checks and sets kernel parameters to values required for successful installation, including:Shared memory parameters,Semaphore parameters and Open file descriptor and UDP send/receive parameters
- Sets permissions on the Oracle Inventory directory.
- Reconfigures primary and secondary group memberships for the installation owner, if necessary, for the Oracle Inventory directory, and for the operating system privileges groups.
- Sets up virtual IP and private IP addresses in /etc/hosts.
- Sets shell limits to required values, if necessary.
- Installs the Cluster Verification Utility packages (cvuqdisk rpm).
Below are screenshot for error’s encountered as a result of missing kernel settings in sysctl.conf file
Below is output of running the script as root
cat orarun.log This is the log file for orarun script Timestamp: 090109150435 Response file being used is :/tmp/CVU_22.214.171.124.0_oracle/fixup.response Enable file being used is :/tmp/CVU_126.96.36.199.0_oracle/fixup.enable Setting Kernel Parameters... file-max in response file:6815744 file-max in /etc/sysctl.conf:6815744 The value for file-max in response file is not greater than value for file-max in /etc/sysctl.conf file. Hence not changing it. file-max for current session:6553600 ip_local_port_range in response file:9000 65500 ip_local_port_range in /etc/sysctl.conf:9000 65000 ip_local_port_range for current session:1024 65000 aio-max-nr in response file:1048576 aio-max-nr in /etc/sysctl.conf:1048576 The value for aio-max-nr in response file is not greater than value for aio-max-nr in /etc/sysctl.conf file. Hence not changing it. aio-max-nr for current session:65536
Before running the script, I had modified the file without executing sysctl -p to implement the changes. Fixup script log shows that it checks the file again and replaces parameter if required and then executes sysctl command to make changes persistent.