From owner-freebsd-doc Tue Mar 28 5: 0:18 2000 Delivered-To: freebsd-doc@freebsd.org Received: from freefall.freebsd.org (freefall.FreeBSD.ORG [204.216.27.21]) by hub.freebsd.org (Postfix) with ESMTP id 33F3637BEFA for ; Tue, 28 Mar 2000 05:00:00 -0800 (PST) (envelope-from gnats@FreeBSD.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.9.3/8.9.2) id FAA25560; Tue, 28 Mar 2000 05:00:00 -0800 (PST) (envelope-from gnats@FreeBSD.org) Received: from dolemite.cdrom.com (dolemite.cdrom.com [204.216.28.171]) by hub.freebsd.org (Postfix) with ESMTP id 14A8237BE9F for ; Tue, 28 Mar 2000 04:51:08 -0800 (PST) (envelope-from murray@dolemite.cdrom.com) Received: (from root@localhost) by dolemite.cdrom.com (8.9.3/8.9.3) id UAA10596; Tue, 28 Mar 2000 20:51:19 GMT (envelope-from murray) Message-Id: <200003282051.UAA10596@dolemite.cdrom.com> Date: Tue, 28 Mar 2000 20:51:19 GMT From: Murray Stokely Reply-To: murray@cdrom.com To: FreeBSD-gnats-submit@freebsd.org X-Send-Pr-Version: 3.2 Subject: docs/17638: Added section Handbook/LinuxEmu/Oracle Sender: owner-freebsd-doc@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org >Number: 17638 >Category: docs >Synopsis: Added section on installing Oracle for Linux >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-doc >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Tue Mar 28 05:00:00 PST 2000 >Closed-Date: >Last-Modified: >Originator: Murray Stokely >Release: FreeBSD 5.0-CURRENT i386 >Organization: BSDi >Environment: >Description: Date: Fri, 03 Mar 2000 09:34:14 -0800 From: Marcel Moolenaar To: Murray Stokely Subject: Re: Linux/Oracle howto -> handbook Murray Stokely wrote: > Can I import your Linux / Oracle howto into the FreeBSD handbook? > The section on Linux emulation is really out of date but I'm working > on rewriting a good deal of this chapter and it would really help out > to import your Oracle howto. You can import the howto, but I think it needs some updates. It seems that Oracle doesn't work with linux_{base|devtools}-6.1 and that linux_{base|devtools}-5.2 must be used. I have to verify it, but don't really have the time right now. What I'm saying is that the HOWTO itself is a bit out of date. This doesn't mean that you can't import it, but it's good to know :-) -- Marcel Moolenaar mail: marcel@cup.hp.com / marcel@FreeBSD.org tel: (408) 447-4222 >How-To-Repeat: I added a note that he talks about above and formatted his docunment in SGML. >Fix: Index: chapter.sgml =================================================================== RCS file: /host/ares/usr/home/ncvs/doc/en_US.ISO_8859-1/books/handbook/linuxemu/chapter.sgml,v retrieving revision 1.28 diff -u -r1.28 chapter.sgml --- chapter.sgml 2000/03/23 01:32:00 1.28 +++ chapter.sgml 2000/03/28 20:40:47 @@ -394,6 +394,223 @@ + + Installing Oracle + + Contributed by Marcel Moolenaar + marcel@cup.hp.com + + + Preface + This document describes the process of installing Oracle + 8.0.5 and Oracle 8.0.5.1 Enterprise Edition for Linux onto a + FreeBSD machine + + + + Installing the Linux environment + Make sure you have both linux_base and linux_devtools from + the ports collection installed. These ports are added to the + collection after the release of FreeBSD 3.2. If you are using + FreeBSD 3.2 or an older version for that matter, update your + ports collection. You may want to consider updating your FreeBSD + version too. If you run into difficulties with linux_base-6.1 or + linux_devtools-6.1 you may have to use version 5.2 of these + packages. + + If you want to run the intelligent agent, you'll + also need to install the Red Hat tcl package: + tcl-8.0.3-20.i386.rpm. The general command + for installing packages with the official RPM port is : + + &prompt.root; rpm -i --ignoreos --root /compat/linux --dbpath /var/lib/rpm package + + Installation of the package should not generate any + errors. + + + + Creating the Oracle environment + Before you can install Oracle, you need to set up a proper + environment. This document only describes what to do + *specially* to run Oracle for Linux on FreeBSD, not what has + been described in the Oracle installation guide. + + + Kernel Tuning + As described in the Oracle installation guide, you need + to set the maximum size of shared memory. Don't use SHMMAX + under FreeBSD. SHMMAX is merely calculated out of SHMMAXPGS + and PGSIZE. Therefore define SHMMAXPGS. All other options can + be used as described in the guide. For example: + + +options SHMMAXPGS=10000 +options SHMMNI=100 +options SHMSEG=10 +options SEMMNS=200 +options SEMMNI=70 +options SEMMSL=61 + + Set these options to suit your intended use of + Oracle. + + Also, make sure you have the following options in your + kernel config-file: + + +options SYSVSHM #SysV shared memory +options SYSVSEM #SysV semaphores +options SYSVMSG #SysV interprocess communication + + + + + Oracle account Create an Oracle account + just as you would create any other account. The Oracle account + is special only that you need to give it a Linux shell. Add + /compat/linux/bin/bash to + /etc/shells and set the shell for the + Oracle account to + /compat/linux/bin/bash. + + + + + Environment + Besides the normal Oracle variables, such as ORACLE_HOME + and ORACLE_SID you must set the following environment + variables: + + +LD_LIBRARY_PATH=$ORACLE_HOME/lib +CLASSPATH=$ORACLE_HOME/jdbc/lib/classes111.zip +PATH=/compat/linux/bin:/compat/linux/sbin:/compat/linux/usr/bin:/compat/linux/usr/sbin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:$ORACLE_HOME/bin + + + It is advised to set all the environment variables in + .profile. A complete example is: + +ORACLE_BASE=/oracle; export ORACLE_BASE +ORACLE_HOME=/oracle; export ORACLE_HOME +LD_LIBRARY_PATH=$ORACLE_HOME/lib +export LD_LIBRARY_PATH +ORACLE_SID=ORCL; export ORACLE_SID +ORACLE_TERM=386x; export ORACLE_TERM +CLASSPATH=$ORACLE_HOME/jdbc/lib/classes111.zip +export CLASSPATH +PATH=/compat/linux/bin:/compat/linux/sbin:/compat/linux/usr/bin:/compat/linux/usr/sbin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:$ORACLE_HOME/bin +export PATH + + + + + + Installing Oracle + + Due to a slight inconsistency in the Linux emulator, you + need to create a directory named .oracle in + /var/tmp before you start the + installer. Either make it world writable or let it be owner by + the oracle user. You should be able to install Oracle without + any problems. If you have problems, check your Oracle + distribution and/or configuration first! After you have + installed Oracle, apply the patches described in the next two + subsections. + + A frequent problem is that the TCP protocol + adapter is not installed right. As a consequence, you cannot + start any TCP listeners. The following actions help solve this + problem: + + + &prompt.root; cd $ORACLE_HOME/network/lib + &prompt.root; make -f ins_network.mk ntcontab.o + &prompt.root; cd $ORACLE_HOME/lib + &prompt.root; ar r libnetwork.a ntcontab.o + &prompt.root; cd $ORACLE_HOME/network/lib + &prompt.root; make -f ins_network.mk install + + + Don't forget to run root.sh + again! + + + Patching root.sh + + When installing Oracle, some actions, which need to be +performed as root, are recorded in a shell script called +root.sh. root.sh is written in the orainst directory. Apply the +following patch to root.sh, to have it use to proper location of chown +or alternatively run the script under a Linux native shell. + + +*** orainst/root.sh.orig Tue Oct 6 21:57:33 1998 +--- orainst/root.sh Mon Dec 28 15:58:53 1998 +*************** +*** 31,37 **** +# This is the default value for CHOWN +# It will redefined later in this script for those ports +# which have it conditionally defined in ss_install.h +! CHOWN=/bin/chown +# +# Define variables to be used in this script +--- 31,37 ---- +# This is the default value for CHOWN +# It will redefined later in this script for those ports +# which have it conditionally defined in ss_install.h +! CHOWN=/usr/sbin/chown +# +# Define variables to be used in this script + + + When you don't install Oracle from CD, you can path the + source for root.sh. It is called rthd.sh and + is located in the orainst directory in the source tree. + + + + + Patching genclntsh + + The script genclntsh is used to create a single shared +client library. It is used when building the demos. Apply the +following patch to comment out the definition of PATH: + + + +*** bin/genclntsh.orig Wed Sep 30 07:37:19 1998 +--- bin/genclntsh Tue Dec 22 15:36:49 1998 +*************** +*** 32,38 **** +# +# Explicit path to ensure that we're using the correct commands +#PATH=/usr/bin:/usr/ccs/bin export PATH +! PATH=/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin export PATH +# +# each product MUST provide a $PRODUCT/admin/shrept.lst +--- 32,38 ---- +# +# Explicit path to ensure that we're using the correct commands +#PATH=/usr/bin:/usr/ccs/bin export PATH +! #PATH=/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin export PATH +# +# each product MUST provide a $PRODUCT/admin/shrept.lst + + + + + + Running Oracle + + When you have followed the instructions, you should be +able to run Oracle as if it was run on Linux itself. Wether that is +good or bad, depends on how you value Linux :-) Until we have a native +FreeBSD version of Oracle supported by Oracle, I think Oracle for +Linux is a good alternative. + + + Advanced Topics >Release-Note: >Audit-Trail: >Unformatted: To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-doc" in the body of the message