# # $Id: oracle-10gR2.spec 1700 2008-10-15 00:44:41Z rm153 $ # # NOTE: this rpm must be built as the oracle user, and will clobber oracle_base. # this rpm will not build in mock. # %define short_version 10.2.0 %if 0%{?rhel} == 5 %define oracle_base /opt/oracle %else %define oracle_base /home/oracle %endif %define oracle_uid 601 %define dba_gid 604 %define cpu_patch_num 7375644 # Set to 1 to apply a critical patch update %define apply_cpu 1 %define debug_package %{nil} Summary: Oracle Database Name: oracle-10gR2 Version: %{short_version}.4 Release: 4%{?dist}%{?repo} License: Oracle Technology Network Development License URL: http://www.oracle.com Group: Applications/Databases Buildroot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX) AutoReqProv: no Provides: oracle = %{version}-%{release} %ifarch x86_64 Source0: 10201_database_linux_x86_64.tar.bz2 Source1: p6810189_10204_Linux-x86-64.zip NoSource: 0 NoSource: 1 %if %apply_cpu Source2: p%{cpu_patch_num}_10204_Linux-x86-64.zip %endif %else Source0: 10201_database_linux32.zip Source1: p6810189_10204_Linux-x86.zip NoSource: 0 NoSource: 1 %if %apply_cpu Source2: p%{cpu_patch_num}_10204_Linux-x86.zip NoSource: 2 %endif %endif Source10: dbstart.stl Source11: dbshut.stl Source12: %{name}-custom.rsp Source13: %{name}-patchset.rsp BuildRequires: jpackage-utils >= 0:1.5 %description Oracle Database 10gR2 is the first database designed for enterprise grid computing, the most flexible and cost-effective way to manage enterprise information. It cuts costs of management while providing the highest possible quality of service. In addition to numerous quality and performance enhancements, Oracle Database 10gR2 significantly reduces the costs of managing the IT environment, with a simplified install, greatly reduced configuration and management requirements, and automatic performance diagnosis and SQL tuning. These and other automated management capabilities help improve DBA and developer productivity and efficiency. %prep # # Remind builder that this rpm clobbers files on the filesystem # echo "Warning: current oracle_base %{oracle_base} is about to be destroyed!" sleep 15 # # check environment # _UID=`id -u` if [ "${_UID}" != "%{oracle_uid}" ]; then echo "ERROR: current uid does not match oracle_uid!" exit 255 fi _GID=`id -g` if [ "${_GID}" != "%{dba_gid}" ]; then echo "ERROR: current gid does not match dba_gid!" exit 255 fi rm -rf %{oracle_base} || (echo "ERROR: cannot remove existing oracle_base directory!" && exit 255) mkdir -p %{oracle_base} if [ ! -w "%{oracle_base}/.." ]; then echo "ERROR: cannot write to oracle_base parent directory!" exit 255 fi if [ ! -r /etc/oraInst.loc ]; then echo "ERROR: opatch will fail if it cannot find oraInventory! (/etc/oraInst.loc)" echo "" echo "cat > /etc/oraInst.loc << _EOF_" echo "inventory_loc=%{oracle_base}/product/%{short_version}/oraInventory" echo "inst_group=dba" echo "_EOF_" echo "" exit 255 fi # # prepare environment # export ORACLE_BASE=%{oracle_base} export ORACLE_HOME=${ORACLE_BASE}/product/%{short_version} # # extract the zip # %if %apply_cpu %setup -D -q -b 1 -b 2 -n database %else %setup -D -q -b 1 -n database %endif # # FIXME: instead of installing oracle in the prep section, it should be done # in the install section # # # install the response file, temporarily, with correct permissions # mkdir -p $RPM_BUILD_ROOT install -p -m 700 %{SOURCE12} $RPM_BUILD_ROOT/response_file.rsp install -p -m 700 %{SOURCE13} $RPM_BUILD_ROOT/patchset.rsp # # fix paths in the response file # perl -p -i -e 's@%FROM_LOCATION%@%{_builddir}/database/stage/products.xml@g' $RPM_BUILD_ROOT/response_file.rsp perl -p -i -e 's@%ORACLE_BASE%@%{oracle_base}@g' $RPM_BUILD_ROOT/response_file.rsp perl -p -i -e 's@%SHORT_VERSION%@%{short_version}@g' $RPM_BUILD_ROOT/response_file.rsp # # run the installer # ./runInstaller -silent -noconfig -responseFile $RPM_BUILD_ROOT/response_file.rsp -force -ignoreSysPrereqs -waitforcompletion # # run the patch installer # (cd ../Disk1 ; ./runInstaller -silent -noconfig -responseFile $RPM_BUILD_ROOT/patchset.rsp -force -ignoreSysPrereqs -waitforcompletion) # # run the CPU installer # %if %apply_cpu perl -p -i -e 's@-m31@-m32@g' ${ORACLE_HOME}/bin/genoccish pushd ../%{cpu_patch_num} for patch in $(find . -type d -name '[0-9][0-9][0-9][0-9][0-9][0-9][0-9]' -maxdepth 1 -print) do ${ORACLE_HOME}/OPatch/opatch apply -silent $patch done popd %endif # # clean up install scripts # rm -f %{oracle_base}/product/%{short_version}/root.sh rm -f %{oracle_base}/product/%{short_version}/root.sh.old rm -f %{oracle_base}/product/%{short_version}/oraInst.loc # # fix permissions # find %{oracle_base} -exec chmod a-s {} \; find %{oracle_base}/product/%{short_version} -type f -name '*.a' -exec chmod 644 {} \; find %{oracle_base}/product/%{short_version} -type f -name '*.jar' -exec chmod 644 {} \; find %{oracle_base}/product/%{short_version} -type f -name '*.so' -exec chmod 755 {} \; find %{oracle_base}/product/%{short_version} -type f -name '*.so.*.?' -exec chmod 755 {} \; find %{oracle_base}/product/%{short_version} -type f -name '*.msb' -exec chmod 644 {} \; find %{oracle_base}/product/%{short_version} -type f -name '*.nlb' -exec chmod 644 {} \; find %{oracle_base}/product/%{short_version} -type f -name '*.dat' -exec chmod 644 {} \; # # remove empty files # find %{oracle_base}/product/%{short_version} -type f -size 0b -exec rm -f {} \; %build %install rm -rf $RPM_BUILD_ROOT mkdir $RPM_BUILD_ROOT # # create the init script # mkdir -p $RPM_BUILD_ROOT/%{_initrddir} cat > $RPM_BUILD_ROOT/%{_initrddir}/%{name}-listener << _____EOF_____ #!/bin/bash # # Init script for the Oracle Listener # # chkconfig: 345 90 19 # description: Startup/Shutdown Oracle Listener # # processname: %{oracle_base}/product/%{short_version}/bin/tnslsnr # pidfile: /var/run/tnslsnr.pid # ########################### # # NOTES: # - Must be run as root because this script su's to oracle # - Start the listener before the database so that it auto-registers # immediately, rather than waiting a few minutes # ########################### # full path to listener binary prog=%{oracle_base}/product/%{short_version}/bin/tnslsnr # binary name BASENAME="\$(basename \$prog)" # Source function library if [ -x /etc/rc.d/init.d/functions ]; then . /etc/rc.d/init.d/functions fi # Stop non-root users here test \`id -u\` = 0 || exit 4 ############# # FUNCTIONS # ############# # # Stop listener # function lsnrstop () { echo -n \$"Stopping \$BASENAME: " if [ -n "\`pidfileofproc \$prog\`" ] ; then daemon --user oracle "lsnrctl stop" #killproc \$prog else failure \$"Stopping \$BASENAME" fi RETVAL=\$? [ "\$RETVAL" = 0 ] && rm -f /var/lock/subsys/\$BASENAME [ "\$RETVAL" = 0 ] && rm -f /var/run/\$BASENAME.pid echo return \$RETVAL } # # Start listener # function lsnrstart () { echo -n \$"Starting \$BASENAME: " daemon --user oracle "lsnrctl start" && success || failure RETVAL=\$? [ "\$RETVAL" = 0 ] && touch /var/lock/subsys/\$BASENAME [ "\$RETVAL" = 0 ] && pidof \$BASENAME > /var/run/\$BASENAME.pid echo return \$RETVAL } # # Check listener status # function lsnrstatus() { echo -n \$"Running lsnrctl status: " daemon --user oracle "lsnrctl status" } ######## # MAIN # ######## case "\$1" in 'start') lsnrstart ;; 'stop') lsnrstop ;; 'restart') lsnrstop lsnrstart ;; 'condrestart') if [ -f "/var/run/\${BASENAME}.pid" ]; then lsnrstop lsnrstart fi ;; 'status') lsnrstatus status \$prog ;; *) echo "Usage: \$0 {start|stop|restart|condrestart|status}" exit 1 ;; esac _____EOF_____ cat > $RPM_BUILD_ROOT/%{_initrddir}/%{name}-oracle << _____EOF_____ #!/bin/bash # # Init script for the Oracle database # # chkconfig: 345 91 19 # description: Startup/Shutdown Oracle database # # processname: %{oracle_base}/product/%{short_version}/bin/oracle # pidfile: /var/run/oracle.pid # ########################### # # NOTES: # - Must be run as root because this script su's to oracle # - Start the listener before the database so that it auto-registers # immediately, rather than waiting a few minutes # ########################### # full path to database binary prog=%{oracle_base}/product/%{short_version}/bin/oracle # binary name BASENAME="\$(basename \$prog)" # Source function library if [ -x /etc/rc.d/init.d/functions ]; then . /etc/rc.d/init.d/functions fi # Stop non-root users here test \`id -u\` = 0 || exit 4 ############# # FUNCTIONS # ############# # # Stop database # function dbstop () { echo -n \$"Stopping \$BASENAME: " if [ -n "\`pidfileofproc \$prog\`" ] ; then daemon --user oracle "dbshut ALL" #killproc \$prog else failure \$"Stopping \$BASENAME" fi RETVAL=\$? [ "\$RETVAL" = 0 ] && rm -f /var/lock/subsys/\$BASENAME [ "\$RETVAL" = 0 ] && rm -f /var/run/\$BASENAME.pid echo return \$RETVAL } # # Start database # function dbstart () { echo -n \$"Starting \$BASENAME: " daemon --user oracle "dbstart ALL" && success || failure RETVAL=\$? [ "\$RETVAL" = 0 ] && touch /var/lock/subsys/\$BASENAME [ "\$RETVAL" = 0 ] && pidof \$prog > /var/run/\$BASENAME.pid echo return \$RETVAL } ######## # MAIN # ######## case "\$1" in 'start') dbstart ;; 'stop') dbstop ;; 'restart') dbstop dbstart ;; 'condrestart') if [ -f "/var/run/\${BASENAME}.pid" ]; then dbstop dbstart fi ;; 'status') status \$prog ;; *) echo "Usage: \$0 {start|stop|restart|condrestart|status}" exit 1 ;; esac _____EOF_____ # # create the oraInst.loc file, with correct permissions # mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/%{name} cat > $RPM_BUILD_ROOT/%{_sysconfdir}/%{name}/oraInst.loc << _EOF_ inventory_loc=%{oracle_base}/product/%{short_version}/oraInventory inst_group= _EOF_ chmod 664 $RPM_BUILD_ROOT/%{_sysconfdir}/%{name}/oraInst.loc chown oracle:dba $RPM_BUILD_ROOT/%{_sysconfdir}/%{name}/oraInst.loc # # create the oratab file, with correct permissions # mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/%{name} cat > $RPM_BUILD_ROOT/%{_sysconfdir}/%{name}/oratab << _EOF_ # # This file is used by ORACLE utilities. It is created by root.sh # and updated by the Database Configuration Assistant when creating # a database. # A colon, ':', is used as the field terminator. A new line terminates # the entry. Lines beginning with a pound sign, '#', are comments. # # Entries are of the form: # \$ORACLE_SID:\$ORACLE_HOME:: # # The first and second fields are the system identifier and home # directory of the database respectively. The third field indicates # to the dbstart utility that the database should , "Y", or should not, # "N", be brought up at system boot time. # # Multiple entries with the same \$ORACLE_SID are not allowed. # *:%{oracle_base}/product/%{short_version}:Y _EOF_ # # move installed files to build root # DIR=`dirname %{oracle_base}` mkdir -p $RPM_BUILD_ROOT/${DIR} mv %{oracle_base} $RPM_BUILD_ROOT/${DIR} chown oracle:dba $RPM_BUILD_ROOT/${DIR} # install startup scripts that require a sid mv $RPM_BUILD_ROOT/%{oracle_base}/product/%{short_version}/bin/dbstart $RPM_BUILD_ROOT/%{oracle_base}/product/%{short_version}/bin/dbstart.orig install -p -m 755 %{SOURCE10} $RPM_BUILD_ROOT/%{oracle_base}/product/%{short_version}/bin/dbstart mv $RPM_BUILD_ROOT/%{oracle_base}/product/%{short_version}/bin/dbshut $RPM_BUILD_ROOT/%{oracle_base}/product/%{short_version}/bin/dbshut.orig install -p -m 755 %{SOURCE11} $RPM_BUILD_ROOT/%{oracle_base}/product/%{short_version}/bin/dbshut # set up profile for all users mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/profile.d cat > $RPM_BUILD_ROOT/etc/profile.d/%{name}.sh << __EOF__ if [ -z "\$ORACLE_BASE" ]; then export ORACLE_BASE=%{oracle_base} fi if [ -z "\$ORACLE_HOME" ]; then export ORACLE_HOME=\${ORACLE_BASE}/product/%{short_version} fi if [ -z "\$ORACLE_SID" ]; then export ORACLE_SID=maverick fi if [ -z "\$ORACLE_TERM" ]; then export ORACLE_TERM=xterm fi if [ -z "\$TNS_ADMIN" ]; then export TNS_ADMIN=\${ORACLE_BASE}/admin/system/tnsadmin fi if [ -z "\$NLS_LANG" ]; then export NLS_LANG=AMERICAN fi if [ -z "\$ORA_NLS33" ]; then export ORA_NLS33=\${ORACLE_HOME}/ocommon/nls/admin/data fi myldpathmunge () { if [ -z "\$LD_LIBRARY_PATH" ] ; then LD_LIBRARY_PATH=\$1 else if ! echo \$LD_LIBRARY_PATH | /bin/egrep -q "(^|:)\$1($|:)" ; then if [ "\$2" = "after" ] ; then LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:\$1 else LD_LIBRARY_PATH=\$1:\$LD_LIBRARY_PATH fi fi fi } mypathmunge () { if ! echo \$PATH | /bin/egrep -q "(^|:)\$1($|:)" ; then if [ "\$2" = "after" ] ; then PATH=\$PATH:\$1 else PATH=\$1:\$PATH fi fi } mypathmunge \$ORACLE_HOME/bin:\$ORACLE_HOME/lbin after myldpathmunge \${ORACLE_HOME}/lib:\${LD_LIBRARY_PATH} before export LD_LIBRARY_PATH PATH unset mypathmunge unset myldpathmunge __EOF__ %clean rm -rf $RPM_BUILD_ROOT %files %defattr(-,oracle,dba,0755) %{oracle_base}/product/%{short_version} %config(noreplace) %{_sysconfdir}/%{name}/oratab %config %{_sysconfdir}/%{name}/oraInst.loc %dir %{_sysconfdir}/%{name} %config %attr(0755,root,dba) %{_initrddir}/%{name}-listener %config %attr(0755,root,dba) %{_initrddir}/%{name}-oracle # mode 0775 to allow dba group members to modify global environment settings %config %attr(0775,root,dba) %{_sysconfdir}/profile.d/%{name}.sh %pre OUTPUT=`grep dba /etc/group | tail -1 | awk -F: '{print $1}' ` if [ -z ${OUTPUT} ]; then groupadd -r -g %{dba_gid} -o dba fi OUTPUT=`grep oracle /etc/passwd | tail -1 | awk -F: '{print $1}' ` if [ -z ${OUTPUT} ]; then useradd -r -c Oracle -g dba -u %{oracle_uid} -o oracle -s /bin/bash -m -d /home/oracle || : else # oracle may be installed, so shutdown any existing instances (service oracle stop ; exit 0) > /dev/null 2>&1 (service oracle-9i stop ; exit 0) > /dev/null 2>&1 (service oracle-9iR2 stop ; exit 0) > /dev/null 2>&1 (service oracle-10g stop ; exit 0) > /dev/null 2>&1 (service oracle-10gR2 stop ; exit 0) > /dev/null 2>&1 fi %post OUTPUT=`grep kernel.shmmax /etc/sysctl.conf | awk '{print $1}' ` if [ -z ${OUTPUT} ]; then echo "# increase shmmax for oracle" >> /etc/sysctl.conf echo "kernel.shmmax = 2147483648" >> /etc/sysctl.conf sysctl -w kernel.shmmax=2147483648 fi OUTPUT=`grep fs.file-max /etc/sysctl.conf | awk '{print $1}' ` if [ -z ${OUTPUT} ]; then echo "# increase file-max for oracle" >> /etc/sysctl.conf echo "fs.file-max = 65536" >> /etc/sysctl.conf sysctl -w fs.file-max=65536 fi OUTPUT=`grep kernel.sem /etc/sysctl.conf | awk '{print $1}' ` if [ -z ${OUTPUT} ]; then echo "# increase for oracle" >> /etc/sysctl.conf echo "kernel.sem = 250 32000 100 128" >> /etc/sysctl.conf sysctl -w kernel.sem="250 32000 100 128" fi OUTPUT=`grep net.core.rmem_default /etc/sysctl.conf | awk '{print $1}' ` if [ -z ${OUTPUT} ]; then echo "# increase default socket receive buffer size for oracle" >> /etc/sysctl.conf echo "net.core.rmem_default = 262144" >> /etc/sysctl.conf sysctl -w net.core.rmem_default=262144 fi OUTPUT=`grep net.core.rmem_max /etc/sysctl.conf | awk '{print $1}' ` if [ -z ${OUTPUT} ]; then echo "# increase maximum socket receive buffer size for oracle" >> /etc/sysctl.conf echo "net.core.rmem_max = 262144" >> /etc/sysctl.conf sysctl -w net.core.rmem_max=262144 fi OUTPUT=`grep net.core.wmem_default /etc/sysctl.conf | awk '{print $1}' ` if [ -z ${OUTPUT} ]; then echo "# increase default socket send buffer size for oracle" >> /etc/sysctl.conf echo "net.core.wmem_default = 262144" >> /etc/sysctl.conf sysctl -w net.core.wmem_default=262144 fi OUTPUT=`grep net.core.wmem_max /etc/sysctl.conf | awk '{print $1}' ` if [ -z ${OUTPUT} ]; then echo "# increase maximum socket send buffer size for oracle" >> /etc/sysctl.conf echo "net.core.wmem_max = 262144" >> /etc/sysctl.conf sysctl -w net.core.wmem_max=262144 fi # add oracle startup script to chkconfig chkconfig --add %{name}-listener chkconfig --add %{name}-oracle # add ojdbc14.jar to java shared dir ORACLE_HOME=%{oracle_base}/product/%{short_version} if [ ! -L %{_javadir}/ojdbc14-%{version}.jar ]; then ln -s ${ORACLE_HOME}/jdbc/lib/ojdbc14.jar %{_javadir}/ojdbc14-%{version}.jar fi # make sure temp directories exist with correct perms mkdir -p /var/tmp/.oracle chmod 01777 /var/tmp/.oracle chown root /var/tmp/.oracle # make sure a /var/opt/oracle directory exists, but don't add it as a # file to the rpm as it may conflict with other versions of oracle if [ ! -d /var/opt/oracle ]; then mkdir -p /var/opt/oracle chown oracle:dba /var/opt/oracle fi # needs to exist, but not as a file in the rpm because of version conflicts if [ ! -r %{_sysconfdir}/oratab ]; then ln -s %{_sysconfdir}/%{name}/oratab %{_sysconfdir}/oratab fi # needs to exist, but not as a file in the rpm because of version conflicts if [ ! -r %{_sysconfdir}/oraInst.loc ]; then ln -s %{_sysconfdir}/%{name}/oraInst.loc %{_sysconfdir}/oraInst.loc fi # needs to exist, but not as a file in the rpm because of version conflicts if [ ! -r %{_sysconfdir}/oracle ]; then ln -s %{_sysconfdir}/%{name} %{_sysconfdir}/oracle fi %preun # shutdown existing oracle-10gR2 instances (service %{name} stop ; exit 0) > /dev/null 2>&1 if [ -L %{_javadir}/ojdbc14-%{version}.jar ]; then rm -f %{_javadir}/ojdbc14-%{version}.jar fi %changelog * Tue Oct 14 2008 Rob Myers 10gR2-10.2.0.4-4 - CPUOct2008 (#7375644) * Thu Sep 11 2008 Rob Myers 10gR2-10.2.0.4-3 - set apply_cpu to 1 - update -silent option for opatch * Tue Sep 9 2008 Rob Myers 10gR2-10.2.0.4-2 - CPUJul2008 (#7150470) - create oracle user's home directory * Tue Apr 15 2008 Rob Myers 10gR2-10.2.0.4-1 - Update to 10.2.0.4 * Tue Jan 15 2008 Rob Myers 10gR2-10.2.0.3-4 - CPUJan2008 (#6646853) * Tue Oct 30 2007 Rob Myers 10gR2-10.2.0.3-3 - create /home/oracle directory - remove selinux bits - CPUOct2007 (#6394981) * Thu Aug 16 2007 Rob Myers 10gR2-10.2.0.3-2 - do not make oracle home directory the same as oracle_base - split init script into listener and oracle components - make an selinux sub package, attempting to follow Fedora packaging guidelines - selinux policy reworked into separate domains for the important apps - make oracle binaries NoSource - include CPUJul2007 (#6079591) - update OPatch for CPUJul2007 (#4898608) * Mon Jul 2 2007 Rob Myers 10gR2-10.2.0.3-1 - add dist and repo tags - SELinux policy cleanup * Mon Apr 30 2007 Rob Myers 10gR2-10.2.0.3-stl.9 - SELinux policy cleanup - add with_selinux flag * Fri Apr 27 2007 Rob Myers 10gR2-10.2.0.3-stl.7 - spec clean ups, permission fixes - don't need to set a listener password anymore - fix invalid postun script * Thu Apr 26 2007 Rob Myers 10gR2-10.2.0.3-stl.5 - many, many fixes * Wed Apr 25 2007 Rob Myers 10gR2-10.2.0.3-stl.4 - build an initial selinux policy module which will require much refinement - change oracle_base to /opt/oracle - make home directory mode 0755 * Tue Apr 24 2007 Rob Myers 10gR2-10.2.0.3-stl.3 - rebuild with CPUAPR2007 (#5901891) * Wed Jan 24 2007 Rob Myers 10gR2-10.2.0.3-stl.2 - add patch 5671740 for INCOMPLETE CALL STACK FOR LINUX 64-BIT WITH 2.6.9 KERNEL * Wed Jan 24 2007 Rob Myers 10gR2-10.2.0.3-stl.1 - update to 10.2.0.3 * Fri Oct 20 2006 Rob Myers 10gR2-10.2.0.2-stl.8 - rebuild with CPUOCT2006 * Fri Aug 4 2006 Rob Myers 10gR2-10.2.0.2-stl.7 - rebuild with CPUJUL2006 - make /etc/oraInst.loc a prerequisite; moving oraInventoy becomes a non-issue * Wed Jun 21 2006 Rob Myers 10gR2-10.2.0.2-stl.6 - rebuild with 10.2.0.2 - fix: allow dba to modify profile.d entry - fix: permissions so that users not in dba group can use oracle apps - fix: add oracle user with dba as primary group - fix: add multiline to init script * Mon Oct 31 2005 Rob Myers 10gR2-10.2.0.1-stl.7 - rebuild for x86 * Wed Oct 26 2005 Rob Myers 10gR2-10.2.0.1-stl.6 - rebuild for x86_64 - changed TNS_ADMIN to ~oracle/admin/system/tnsadmin - use _javadir from jpackage-utils - move oraInventory to version specific location * Thu Oct 06 2005 Rob Myers 10gR2-10.2.0.1-stl.5 - fix default permissions * Tue Jul 26 2005 Rob Myers 10gR2-10.2.0.1-stl.4 - change oracle_base to /home/oracle - miscellaneous cleanup * Mon Jul 25 2005 Rob Myers 10gR2-10.2.0.1-stl.3 - switch to responsefile install * Thu Jul 21 2005 Rob Myers 10gR2-10.2.0.1-stl.1 - update to 10gR2 - add sysctl's - make init script work better with SELinux * Tue Apr 12 2005 Rob Myers 10g-10.1.0.4-stl.1 - upgrade to 10.1.0.4 - convert ORACLE_HOME to short_version (10.1.0) - documented install options - no x86_64 version yet * Mon Apr 11 2005 Rob Myers 10g-10.1.0.3-stl.6 - fix changelog date - fix oracle.sh script * Mon Apr 11 2005 Rob Myers 10g-10.1.0.3-stl.5 - sync with oracle-9iR2 * Tue Jan 25 2005 Rob Myers 10g-10.1.0.3-stl.4 - symlinks for stuff in /etc/ * Tue Jan 25 2005 Rob Myers 10g-10.1.0.3-stl.3 - fix error in postinstall - add /var/opt/oracle - do not add oracle driver to tomcat's common path * Tue Jan 25 2005 Rob Myers 10g-10.1.0.3-stl.2 - move oracle to oracle-10g everywhere to prevent conflicts - link ojdbc14.jar to java share - make arch specific - fix quotes in kernel.sem parameters - clean up scriptlets * Fri Jan 21 2005 Rob Myers 10g-10.1.0.3-stl.1 - upgrade to 10.1.0.3 - lots of cleanup - still need to get zimmer to rewrite dbstart/dbshut to specify sids