22.6 Installing SAP R/3

Contributed by Holger Kipp. Original version converted to SGML by Valentino Vaschetto.

Installations of SAP Systems using FreeBSD will not be supported by the SAP support team -- they only offer support for certified platforms.

22.6.1 Preface

This document describes a possible way of installing a SAP R/3-System with Oracle Database for Linux onto a FreeBSD machine, including the installation of FreeBSD and Oracle. Two different configurations will be described:

Even though this document tries to describe all important steps in a greater detail, it is not intended as a replacement for the Oracle and SAP R/3 installation guides.

Please see the documentation that comes with the SAP R/3 Linux edition for SAP- and Oracle-specific questions, as well as resources from Oracle and SAP OSS.

22.6.2 Software

The following CD-ROMs have been used for SAP-installations:

22.6.2.1 SAP R/3 4.6B, Oracle 8.0.5

Name Number Description
KERNEL 51009113 SAP Kernel Oracle / Installation / AIX, Linux, Solaris
RDBMS 51007558 Oracle / RDBMS 8.0.5.X / Linux
EXPORT1 51010208 IDES / DB-Export / Disc 1 of 6
EXPORT2 51010209 IDES / DB-Export / Disc 2 of 6
EXPORT3 51010210 IDES / DB-Export / Disc 3 of 6
EXPORT4 51010211 IDES / DB-Export / Disc 4 of 6
EXPORT5 51010212 IDES / DB-Export / Disc 5 of 6
EXPORT6 51010213 IDES / DB-Export / Disc 6 of 6

Additionally, I used the Oracle 8 Server (Pre-production version 8.0.5 for Linux, Kernel Version 2.0.33) CD which is not really necessary, and of course FreeBSD 4.3-STABLE (it was only a few days past 4.3 RELEASE).

22.6.2.2 SAP R/3 4.6C SR2, Oracle 8.1.7

Name Number Description
KERNEL 51014004 SAP Kernel Oracle / SAP Kernel Version 4.6D / DEC, Linux
RDBMS 51012930 Oracle 8.1.7/ RDBMS / Linux
EXPORT1 51013953 Release 4.6C SR2 / Export / Disc 1 of 4
EXPORT1 51013953 Release 4.6C SR2 / Export / Disc 2 of 4
EXPORT1 51013953 Release 4.6C SR2 / Export / Disc 3 of 4
EXPORT1 51013953 Release 4.6C SR2 / Export / Disc 4 of 4
LANG1 51013954 Release 4.6C SR2 / Language / DE, EN, FR / Disc 1 of 3

Depending on the languages you would like to install, additional language CDs might be necessary. Here we're just using DE and EN, so the first Language-CD is the only one needed. As a little note, the numbers for all four export CDs are identical. All three language CDs also have the same number (this is different from the 4.6B IDES release CD numbering). At the time of writing this installation is running on FreeBSD 4.5-STABLE (20.03.2002).

22.6.3 SAP-Notes

The following notes should be read before installing SAP R/3 or proved to be useful during installation:

22.6.3.1 SAP R/3 4.6B, Oracle 8.0.5

Number Title
0171356 SAP Software on Linux: Essential Comments
0201147 INST: 4.6C R/3 Inst. on UNIX - Oracle
0373203 Update / Migration Oracle 8.0.5 --> 8.0.6/8.1.6 LINUX
0072984 Release of Digital UNIX 4.0B for Oracle
0130581 R3SETUP step DIPGNTAB terminates
0144978 Your system has not been installed correctly
0162266 Questions and tips for R3SETUP on Windows NT / W2K

22.6.3.2 SAP R/3 4.6C, Oracle 8.1.7

Number Title
0015023 Initializing table TCPDB (RSXP0004) (EBCDIC)
0045619 R/3 with several languages or typefaces
0171356 SAP Software on Linux: Essential Comments
0195603 RedHat 6.1 Enterprise version: Known problems
0212876 The new archiving tool SAPCAR
0300900 Linux: Released DELL Hardware
0377187 RedHat 6.2: important remarks
0387074 INST: R/3 4.6C SR2 Installation on UNIX
0387077 INST: R/3 4.6C SR2 Inst. on UNIX - Oracle
0387078 SAP Software on UNIX: OS Dependencies 4.6C SR2

22.6.4 Hardware-Requirements

The following equipment is sufficient for the installation of a SAP R/3 System. For production use, a more exact sizing is of course needed:

Component 4.6B 4.6C
Processor 2 x 800MHz Pentium III 2 x 800MHz Pentium III
Memory 1GB ECC 2GB ECC
Hard Disk Space 50-60GB (IDES) 50-60GB (IDES)

For use in production, Xeon-Processors with large cache, high-speed disk access (SCSI, RAID hardware controller), USV and ECC-RAM is recommended. The large amount of hard disk space is due to the preconfigured IDES System, which creates 27 GB of database files during installation. This space is also sufficient for initial production systems and application data.

22.6.4.1 SAP R/3 4.6B, Oracle 8.0.5

The following off-the-shelf hardware was used: a dual processor board with 2 800 MHz Pentium III processors, Adaptec 29160 Ultra160 SCSI adapter (for accessing a 40/80 GB DLT tape drive and CDROM), Mylex AcceleRAID (2 channels, firmware 6.00-1-00 with 32 MB RAM). To the Mylex Raid-controller are attached two 17 GB hard disks (mirrored) and four 36 GB hard disks (RAID level 5).

22.6.4.2 SAP R/3 4.6C, Oracle 8.1.7

For this installation a DELL PowerEdge 2500 was used: a dual processor board with two 1000 MHz Pentium III processors (256 kB Cache), 2 GB PC133 ECC SDRAM, PERC/3 DC PCI Raid Controller with 128 MB, and an EIDE DVD-ROM drive. To the RAID-controller are attached two 18 GB hard disks (mirrored) and four 36 GB hard disks (RAID level 5).

22.6.5 Installation of FreeBSD

First you have to install FreeBSD. There are several ways to do this (FreeBSD 4.3 was installed via FTP, FreeBSD 4.5 directly from release-CD).

22.6.5.1 Disk Layout

To keep it simple, the same disk layout both for the SAP R/3 46B- and SAP R/3 46C SR2-installation was used. Only the device names changed, as the installations were on different hardware (/dev/da and /dev/amr respectively, so if using an AMI MegaRAID, one will see /dev/amr0s1a instead of /dev/da0s1a):

Filesystem Size (1k-blocks) Size (GB) Mounted on
/dev/da0s1a 1.016.303 1 /
/dev/da0s1b   6 swap
/dev/da0s1e 2.032.623 2 /var
/dev/da0s1f 8.205.339 8 /usr
/dev/da1s1e 45.734.361 45 /compat/linux/oracle
/dev/da1s1f 2.032.623 2 /compat/linux/sapmnt
/dev/da1s1g 2.032.623 2 /compat/linux/usr/sap

Configure and initialize the two logical drives with the Mylex- or PERC/3 RAID software beforehand. The software can be started during the bios boot phase.

Please note that this disk layout differs slightly from the SAP recommendations, as SAP suggests mounting the oracle-subdirectories (and some others) separately - I decided to just create them as real subdirectories for simplicity.

22.6.5.2 make world and a New Kernel

Download the latest stable-sources. Rebuild world and your custom kernel after configuring your kernel configuration file. Here you should also include the kernel parameters which are required for both SAP R/3 and Oracle.

22.6.6 Installing the Linux Environment

During the first installation with FreeBSD 4.3-STABLE I had some trouble downloading the required RPM-files (for 4.3 stable, 2nd May 2001), but with FreeBSD 4.5-STABLE, everything went very smooth. Should you encounter some problems, try to download those files by hand. For a list of RPM-Mirrors and required files, see the corresponding makefile.

22.6.6.1 Installing Linux Base-system

First the linux_base port needs to be installed (as root). This is currently linux_base-6.

    # cd /usr/ports/emulators/linux_base
    # make package

22.6.6.2 Installing Linux Development

The Linux development is needed, if you want to install Oracle on FreeBSD according to the corresponding description in the handbook:

    # cd /usr/ports/devel/linux_devtools
    # make package

Linux Development has only been installed for the SAP R/3 46B IDES-installation. It is not needed, if the Oracle DB is not relinked on the FreeBSD system. This is the case if you are using the Oracle tarball from a linux system.

22.6.6.3 Installing Necessary RPMs

To start the R3SETUP-Program, PAM support is needed. During the first SAP-Installation on FreeBSD 4.3-STABLE I tried to install PAM with all the required packages and finally forced the installation of the PAM package, which worked. For SAP R/3 4.6C SR2 I directly forced the installation of the PAM-RPM, which also works, so it seems the dependend packages are not needed:

    # rpm -i --ignoreos --nodeps --root /compat/linux --dbpath /var/lib/rpm \
pam-0.68-7.i386.rpm

For Oracle 8.0.5 to run the intelligent agent, I also had to install the RedHat Tcl package tcl-8.0.5-30.i386.rpm (otherwise the relinking during Oracle install will not work). There are some other issues regarding relinking of Oracle, but that is a Oracle-Linux issue, not FreeBSD specific.

22.6.6.4 Some additional hints

It might also be a good idea to add linprocfs to /etc/fstab. See man linprocfs. Another parameter to set is kern.fallback_elf_brand=3 which is done in file /etc/sysctl.conf.

22.6.7 Creating the SAP/R3 Environment

22.6.7.1 Creating the Necessary Filesystems and Mountpoints

For a simple installation, it is sufficient to create the following filesystems:

mountpoint size in GB
/compat/linux/oracle 45 GB
/compat/linux/sapmnt 2 GB
/compat/linux/usr/sap 2 GB

It is also necessary to created some links. Otherwise the SAP-Installer will complain, as it is checking the created links:

    # ln -s /compat/linux/oracle /oracle
    # ln -s /compat/linux/sapmnt /sapmnt
    # ln -s /compat/linux/usr/sap /usr/sap

Possible error message during installation (here with System PRD and the SAP R/3 4.6C SR2 installation):

    INFO 2002-03-19 16:45:36 R3LINKS_IND_IND SyLinkCreate:200
        Checking existence of symbolic link /usr/sap/PRD/SYS/exe/dbg to
        /sapmnt/PRD/exe. Creating if it does not exist...
    
    WARNING 2002-03-19 16:45:36 R3LINKS_IND_IND SyLinkCreate:400
        Link /usr/sap/PRD/SYS/exe/dbg exists but it points to file
        /compat/linux/sapmnt/PRD/exe instead of /sapmnt/PRD/exe. The
        program cannot go on as long as this link exists at this
        location. Move the link to another location.
    
    ERROR 2002-03-19 16:45:36 R3LINKS_IND_IND Ins_SetupLinks:0
        can not setup link '/usr/sap/PRD/SYS/exe/dbg' with content
        '/sapmnt/PRD/exe'

22.6.7.2 Creating Users and Directories

SAP R/3 needs two users and three groups. The usernames depend on the SAP system id (SID) which consists of three letters. Some of these SIDs are reserved by SAP (for example SAP and NIX. For a complete list please see the SAP documentation). For the IDES installation I used IDS, for the 4.6C SR2 installation PRD, as that system is intended for production use. We have therefore the following groups (group ids might differ, these are just the values I used with my installation):

group id group name description
100 dba Data Base Administrator
101 sapsys SAP System
102 oper Data Base Operator

For a default Oracle-Installation, only group dba is used. As oper-group, one also uses group dba (see Oracle- and SAP-documentation for further information).

We also need the following users:

user id username generic name group additional groups description
1000 idsadm/prdadm sidadm sapsys oper SAP Administrator
1002 oraids/oraprd orasid dba oper DB Administrator

Adding the users with adduser requires the following (please note shell and home directory) entries for SAP-Administrator:

    Name: sidadm
    Password: ******
    Fullname: SAP Administrator SID
    Uid: 1000
    Gid: 101 (sapsys)
    Class:
    Groups: sapsys dba
    HOME: /home/sidadm
    Shell: bash  (/compat/linux/bin/bash)

and for Database-Administrator:

    Name: orasid 
    Password: ****** 
    Fullname: Oracle Administrator SID
    Uid: 1002 
    Gid: 100 (dba) 
    Class: 
    Groups: dba 
    HOME: /oracle/sid 
    Shell: bash  (/compat/linux/bin/bash)

This should also include group oper in case you are using both groups dba and oper.

22.6.7.3 Creating Directories

These directories are usually created as separate filesystems. This depends entirely on your requirements. I choose to create them as simple directories, as they are all located on the same RAID 5 anyway:

First we will set owners and rights of some directories (as user root):

    # chmod 775 /oracle
    # chmod 777 /sapmnt
    # chown root:dba /oracle
    # chown sidadm:sapsys /compat/linux/usr/sap
    # chmod 775 /compat/linux/usr/sap

Second we will create directories as user orasid. These will all be subdirectories of /oracle/SID:

    # su - orasid
    # cd /oracle/SID
    # mkdir mirrlogA mirrlogB origlogA origlogB
    # mkdir sapdata1 sapdata2 sapdata3 sapdata4 sapdata5 sapdata6
    # mkdir saparch sapreorg
    # exit

For the Oracle 8.1.7-installation some additional directories are needed:

    # su - orasid
    # cd /oracle
    # mkdir 805_32
    # mkdir client stage
    # mkdir client/80x_32
    # mkdir stage/817_32
    # cd /oracle/SID
    # mkdir 817_32

Note: The directory client/80x_32 is used with exactly this name. Don't replace the x with some number or anything.

In the third step we create directories as user sidadm:

    # su - sidadm
    # cd /usr/sap
    # mkdir SID
    # mkdir trans
    # exit

22.6.7.4 Entries in /etc/services

SAP R/3 requires some entries in file /etc/services, which will not be set correctly during installation under FreeBSD. Please add the following entries (you need at least those entries corresponding to the instance number - in this case, 00. It will do no harm adding all entries from 00 to 99 for dp, gw, sp and ms). If you are going to use a saprouter or need to access SAP OSS, you also need 99, as port 3299 is usually used for the saprouter process on the target system:

    sapdp00    3200/tcp # SAP Dispatcher.      3200 + Instance-Number
    sapgw00  3300/tcp # SAP Gateway.         3300 + Instance-Number
    sapsp00  3400/tcp #                      3400 + Instance-Number
    sapms00  3500/tcp #                      3500 + Instance-Number
    sapmsSID 3600/tcp # SAP Message Server.  3600 + Instance-Number
    sapgw00s   4800/tcp # SAP Secure Gateway   4800 + Instance-Number

22.6.7.5 Necessary Locales

SAP requires at least two locales that are not part of the default RedHat installation. SAP offers the required RPMs as download from their FTP-server (which is only accessible if you are a customer with OSS-access). See note 0171356 for a list of RPMs you need.

It is also possible to just create appropriate links (for example from de_DE and en_US ), but I would not recommend this for a production system (so far it worked with the IDES system without any problems, though). The following locales are needed:

    de_DE.ISO-8859-1
    en_US.ISO-8859-1

Create the links like this:

    # cd /compat/linux/usr/share/locale
    # ln -s de_DE de_DE.ISO-8859-1
    # ln -s en_US en_US.ISO-8859-1

If they are not present, there will be some problems during the installation. If these are then subsequently ignored (by setting the status of the offending steps to OK in file CENTRDB.R3S), it will be impossible to log onto the SAP-system without some additional effort.

22.6.7.6 Kernel Tuning

SAP R/3 Systems need a lot of resources. I therefore added the following parameters to my kernel config-file:

    # Set these for memory pigs (SAP and Oracle):
    options MAXDSIZ="(1024*1024*1024)"
    options DFLDSIZ="(1024*1024*1024)"
    # System V options needed.
    options SYSVSHM #SYSV-style shared memory
    options SHMMAXPGS=262144 #max amount of shared mem. pages
    #options SHMMAXPGS=393216 #use this for the 46C inst.parameters
    options SHMMNI=256 #max number of shared memory ident if.
    options SHMSEG=100 #max shared mem.segs per process
    options SYSVMSG #SYSV-style message queues 
    options MSGSEG=32767 #max num. of mes.segments in system 
    options MSGSSZ=32 #size of msg-seg. MUST be power of 2
    options MSGMNB=65535 #max char. per message queue
    options MSGTQL=2046 #max amount of msgs in system
    options SYSVSEM #SYSV-style semaphores 
    options SEMMNU=256 #number of semaphore UNDO structures
    options SEMMNS=1024 #number of semaphores in system
    options SEMMNI=520 #number of semaphore indentifiers
    options SEMUME=100       #number of UNDO keys

The minimum values are specified in the documentation that comes from SAP. As there is no description for Linux, see the HP-UX-section (32-bit) for further information. As the system for the 4.6C SR2 installation has more main memory, the shared segments can be larger both for SAP and Oracle, therefore choose a larger number of shared memory pages.

Note: With the default installation of FreeBSD 4.5 on x386, leave MAXDSIZ and DFLDSIZ at 1 GB maximum. Otherwise, strange errors like ``ORA-27102: out of memory'' and ``Linux Error: 12: Cannot allocate memory'' might happen.

22.6.8 Installing SAP R/3

22.6.8.1 Preparing SAP CDROMs

There are many CDROMs to mount and unmount during the installation. Assuming you have enough CDROM-drives, you can just mount them all. I decided to copy the CDROM contents to corresponding directories:

    /oracle/SID/sapreorg/cd-name

where cd-name was one of KERNEL, RDBMS, EXPORT1, EXPORT2, EXPORT3, EXPORT4, EXPORT5 and EXPORT6 for the 4.6B/IDES-installation, and KERNEL, RDBMS, DISK1, DISK2, DISK3, DISK4 and LANG for the 4.6C SR2-installation. All the filenames on the mounted CDs should be in capital letters, otherwise use the -g option for mounting. So use the following commands:

    # mount_cd9660 -g /dev/cd0a /mnt
    # cp -R /mnt/* /oracle/SID/sapreorg/cd-name
    # umount /mnt

22.6.8.2 Running the install-script

First you have to prepare an install-directory:

    # cd /oracle/SID/sapreorg
    # mkdir install
    # cd install

Then the install-script is started, which will copy nearly all the relevant files into the install-directory:

    # /oracle/SID/sapreorg/KERNEL/UNIX/INSTTOOL.SH

The IDES-Installation (4.6B) comes with a fully customized SAP R/3 Demo-System, so there are six instead of just three EXPORT-CDs. At this point the installation template CENTRDB.R3S is for installing a standard central instance (R/3 and Database), not the IDES central instance, so one needs to copy the corresponding CENTRDB.R3S from the EXPORT1 directory, otherwise R3SETUP will only ask for three EXPORT-CDs.

The newer SAP 4.6C SR2-release comes with four EXPORT-CDs. The parameter-file that controls the installation-steps is CENTRAL.R3S. Contrary to earlier releases there are no separate installation templates for a central instance with or without database. SAP is using a separate template for DB-installation. To restart the installation later it is however sufficient to restart with the original file.

During and after installation, SAP requires hostname to return the computer name only, not the fully qualified domain name. So either set the hostname accordingly, or set an alias with alias hostname='hostname -s' for both orasid and sidadm (and for root at least during installation steps performed as root). It is also possible to adjust the installed profile- and login-scripts of both users that are installed during SAP-installation.

22.6.8.3 Start R3SETUP 4.6B

Make sure LD_LIBRARY_PATH is set correctly:

    # export LD_LIBRARY_PATH=/oracle/IDS/lib:/sapmnt/IDS/exe:/oracle/805_32/lib

Start R3SETUP as root from installation directory:

    # cd /oracle/IDS/sapreorg/install
    # ./R3SETUP -f CENTRDB.R3S

The script then asks some questions (defaults in brackets, followed by actual input):

Question Default Input
Enter SAP System ID [C11] IDSEnter
Enter SAP Instance Number [00] Enter
Enter SAPMOUNT Directory [/sapmnt] Enter
Enter name of SAP central host [troubadix.domain.de] Enter
Enter name of SAP db host [troubadix] Enter
Select character set [1] (WE8DEC) Enter
Enter Oracle server version (1) Oracle 8.0.5, (2) Oracle 8.0.6, (3) Oracle 8.1.5, (4) Oracle 8.1.6   1Enter
Extract Oracle Client archive [1] (Yes, extract) Enter
Enter path to KERNEL CD [/sapcd] /oracle/IDS/sapreorg/KERNEL
Enter path to RDBMS CD [/sapcd] /oracle/IDS/sapreorg/RDBMS
Enter path to EXPORT1 CD [/sapcd] /oracle/IDS/sapreorg/EXPORT1
Directory to copy EXPORT1 CD [/oracle/IDS/sapreorg/CD4_DIR] Enter
Enter path to EXPORT2 CD [/sapcd] /oracle/IDS/sapreorg/EXPORT2
Directory to copy EXPORT2 CD [/oracle/IDS/sapreorg/CD5_DIR] Enter
Enter path to EXPORT3 CD [/sapcd] /oracle/IDS/sapreorg/EXPORT3
Directory to copy EXPORT3 CD [/oracle/IDS/sapreorg/CD6_DIR] Enter
Enter path to EXPORT4 CD [/sapcd] /oracle/IDS/sapreorg/EXPORT4
Directory to copy EXPORT4 CD [/oracle/IDS/sapreorg/CD7_DIR] Enter
Enter path to EXPORT5 CD [/sapcd] /oracle/IDS/sapreorg/EXPORT5
Directory to copy EXPORT5 CD [/oracle/IDS/sapreorg/CD8_DIR] Enter
Enter path to EXPORT6 CD [/sapcd] /oracle/IDS/sapreorg/EXPORT6
Directory to copy EXPORT6 CD [/oracle/IDS/sapreorg/CD9_DIR] Enter
Enter amount of RAM for SAP + DB   850Enter (in Megabytes)
Service Entry Message Server [3600] Enter
Enter Group-ID of sapsys [101] Enter
Enter Group-ID of oper [102] Enter
Enter Group-ID of dba [100] Enter
Enter User-ID of sidadm [1000] Enter
Enter User-ID of orasid [1002] Enter
Number of parallel procs [2] Enter

If you had not copied the CDs to the different locations, then the SAP-Installer cannot find the CD needed (identified by the LABEL.ASC-File on CD) and would then ask you to insert and mount the CD and confirm or enter the mount path.

The CENTRDB.R3S might not be error-free. In my case, it requested EXPORT4 again (but indicated the correct key (6_LOCATION, then 7_LOCATION etc.), so one can just continue with entering the correct values. Do not get irritated.

Apart from some problems mentioned below, everything should go straight through up to the point where the Oracle database software needs to be installed.

22.6.8.4 Start R3SETUP 4.6C SR2

Make sure LD_LIBRARY_PATH is set correctly. This is a different value from the 4.6B installation with Oracle 8.0.5:

    # export LD_LIBRARY_PATH=/sapmnt/PRD/exe:/oracle/PRD/817_32/lib

Start R3SETUP as user root from installation directory:

    # cd /oracle/PRD/sapreorg/install
    # ./R3SETUP -f CENTRAL.R3S

The script then asks some questions (defaults in brackets, followed by actual input):

Question Default Input
Enter SAP System ID [C11] PRDEnter
Enter SAP Instance Number [00] Enter
Enter SAPMOUNT Directory [/sapmnt] Enter
Enter name of SAP central host [majestix] Enter
Enter Database System ID [PRD] PRDEnter
Enter name of SAP db host [majestix] Enter
Select character set [1] (WE8DEC) Enter
Enter Oracle server version (2) Oracle 8.1.7   2Enter
Extract Oracle Client archive [1] (Yes, extract) Enter
Enter path to KERNEL CD [/sapcd] /oracle/PRD/sapreorg/KERNEL
Enter amount of RAM for SAP + DB 2044 1800Enter (in Megabytes)
Service Entry Message Server [3600] Enter
Enter Group-ID of sapsys [100] Enter
Enter Group-ID of oper [101] Enter
Enter Group-ID of dba [102] Enter
Enter User-ID of oraprd [1002] Enter
Enter User-ID of prdadm [1000] Enter
LDAP support   3Enter (no support)
Installation step completed [1] (continue) Enter
Choose installation service [1] (DB inst,file) Enter

So far, creation of users gives an error during installation in phases OSUSERDBSID_IND_ORA (for creating user orasid) and OSUSERSIDADM_IND_ORA (creating user sidadm).

Apart from some problems mentioned below, everything should go straight through up to the point where the Oracle database software needs to be installed.

22.6.9 Installing Oracle 8.0.5

Please see the corresponding SAP-Notes and Oracle Readmes regarding Linux and Oracle DB for possible problems. Most if not all problems stem from incompatible libraries.

For more information on installing Oracle, refer to the Installing Oracle chapter.

22.6.9.1 Installing the Oracle 8.0.5 with orainst

If Oracle 8.0.5 is to be used, some additional libraries are needed for successfully relinking, as Oracle 8.0.5 was linked with an old glibc (RedHat 6.0), but RedHat 6.1 already uses a new glibc. So you have to install the following additional packages to ensure that linking will work:

compat-libs-5.2-2.i386.rpm

compat-glibc-5.2-2.0.7.2.i386.rpm

compat-egcs-5.2-1.0.3a.1.i386.rpm

compat-egcs-c++-5.2-1.0.3a.1.i386.rpm

compat-binutils-5.2-2.9.1.0.23.1.i386.rpm

See the corresponding SAP-Notes or Oracle Readmes for further information. If this is no option (at the time of installation I did not have enough time to check this), one could use the original binaries, or use the relinked binaries from an original RedHat System.

For compiling the intelligent agent, the RedHat Tcl package must be installed. If you cannot get tcl-8.0.3-20.i386.rpm, a newer one like tcl-8.0.5-30.i386.rpm for RedHat 6.1 should also do.

Apart from relinking, the installation is straightforward:

    # su - oraids
    # export TERM=xterm
    # export ORACLE_TERM=xterm
    # export ORACLE_HOME=/oracle/IDS
    # cd /ORACLE_HOME/orainst_sap
    # ./orainst

Confirm all Screens with Enter until the software is installed, except that one has to deselect the Oracle On-Line Text Viewer, as this is not currently available for Linux. Oracle then wants to relink with i386-glibc20-linux-gcc instead of the available gcc, egcs or i386-redhat-linux-gcc .

Due to time constrains I decided to use the binaries from an Oracle 8.0.5 PreProduction release, after the first attempt at getting the version from the RDBMS-CD working, failed, and finding and accessing the correct RPMs was a nightmare at that time.

22.6.9.2 Installing the Oracle 8.0.5 Pre-Production release for Linux (Kernel 2.0.33)

This installation is quite easy. Mount the CD, start the installer. It will then ask for the location of the Oracle home directory, and copy all binaries there. I did not delete the remains of my previous RDBMS-installation tries, though.

Afterwards, Oracle Database could be started with no problems.

22.6.10 Installing the Oracle 8.1.7 linux tarball

Take the tarball oracle81732.tgz you produced from the installation directory on a linux system and untar it to /oracle/SID/817_32/.

22.6.11 Continue with SAP R/3 Installation

First check the environment settings of users idsamd (sidadm) and oraids (orasid). They should now both have the files .profile, .login and .cshrc which are all using hostname. In case the system's hostname is the fully qualified name, you need to change hostname to hostname -s within all three files.

22.6.11.1 Database Load

Afterwards, R3SETUP can either be restarted or continued (depending on whether exit was chosen or not). R3SETUP then creates the tablespaces and loads the data (for 46B IDES, from EXPORT1 to EXPORT6, for 46C from DISK1 to DISK4) with R3load into the database.

When the database load is finished (might take a few hours), some passwords are requested. For test installations, one can use the well known default passwords (use different ones if security is an issue!):

Question Input
Enter Password for sapr3 sapEnter
Confirum Password for sapr3 sapEnter
Enter Password for sys change_on_installEnter
Confirm Password for sys change_on_installEnter
Enter Password for system managerEnter
Confirm Password for system managerEnter

At this point I had a few problems with dipgntab during the 4.6B installation.

22.6.11.2 Listener

Start the Oracle-Listener as user orasid as follows:

    % umask 0; lsnrctl start

Otherwise you might get ORA-12546 as the sockets will not have the correct permissions. See SAP note 072984.

22.6.11.3 Updating MNLS Tables

If you plan to import non-Latin-1 languages into the SAP-System, you have to update the Multi National Language Support tables. This is described in the SAP OSS-Notes 15023 and 45619. Otherwise, you can skip this question during SAP installation.

Note: If you don't need MNLS, it is still necessary to check table TCPDB and initializing it if this hasn't been done. See SAP note 0015023 and 0045619 for further information.

22.6.12 Post-installation Steps

22.6.12.1 Request SAP R/3 License Key

You have to request your SAP R/3 License Key. This is needed, as the temporary license that was installed during installation is only valid for four weeks. First get the hardware key. Log on as user idsadm and call saplicense:

    # /sapmnt/IDS/exe/saplicense -get

Calling saplicense without options gives a list of options. Upon receiving the license key, it can be installed using:

    # /sapmnt/IDS/exe/saplicense -install

You are then required to enter the following values:

    SAP SYSTEM ID   = SID, 3 chars
    CUSTOMER KEY    = hardware key, 11 chars
    INSTALLATION NO = installation, 10 digits
    EXPIRATION DATE = yyyymmdd, usually "99991231"
    LICENSE KEY     = license key, 24 chars

22.6.12.2 Creating Users

Create a user within client 000 (for some tasks required to be done within client 000, but with a user different from users sap* and ddic). As a username, I usually choose wartung (or service in English). Profiles required are sap_new and sap_all. For additional safety the passwords of default users within all clients should be changed (this includes users sap* and ddic).

22.6.12.3 Configure Transport System, Profile, Operation Modes, Etc.

Within client 000, user different from ddic and sap*, do at least the following:

Task Transaction
Configure Transport System, eg as Stand-Alone Transport Domain Entity STMS
Create / Edit Profile for System RZ10
Maintain Operation Modes and Instances RZ04

These and all the other post-installation steps are thoroughly described in SAP installation guides.

22.6.12.4 Edit initsid.sap (initIDS.sap)

The file /oracle/IDS/dbs/initIDS.sap contains the SAP backup profile. Here the size of the tape to be used, type of compression and so on need to be defined. To get this running with sapdba / brbackup, I changed the following values:

    compress = hardware
    archive_function = copy_delete_save
    cpio_flags = "-ov --format=newc --block-size=128 --quiet"
    cpio_in_flags = "-iuv --block-size=128 --quiet"
    tape_size = 38000M
    tape_address = /dev/nsa0
    tape_address_rew = /dev/sa0

Explanations:

compress The tape I use is a HP DLT1 which does hardware compression.

archive_function This defines the default behavior for saving Oracle archive logs: New logfiles are saved to tape, already saved logfiles are saved again and are then deleted. This prevents lots of trouble if you need to recover the database, and one of the archive-tapes has gone bad.

cpio_flags Default is to use -B which sets blocksize to 5120 Bytes. For DLT-Tapes, HP recommends at least 32 K blocksize, so I used --block-size=128 for 64 K. --format=newc is needed I have inode numbers greater than 65535. The last option --quiet is needed as otherwise brbackup complains as soon as cpio outputs the numbers of blocks saved.

cpio_in_flags Flags needed for loading data back from tape. Format is recognized automagically.

tape_size This usually gives the raw storage capability of the tape. For security reason (we use hardware compression), the value is slightly lower than the actual value.

tape_address The non-rewindable device to be used with cpio.

tape_address_rew The rewindable device to be used with cpio.

22.6.12.5 Configuration Issues after Installation

The following SAP-parameters should be tuned after installation (examples for IDES 46B, 1 GB memory):

Name Value
ztta/roll_extension 250000000
abap/heap_area_dia 300000000
abap/heap_area_nondia 400000000
em/initial_size_MB 256
em/blocksize_kB 1024
ipc/shm_psize_40 70000000

SAP-Note 0013026:

Name Value
ztta/dynpro_area 2500000

SAP-Note 0157246:

Name Value
rdisp/ROLL_MAXFS 16000
rdisp/PG_MAXFS 30000

Note: With the above parameters, on a system with 1 gigabyte of memory, one may find memory consumption similar to:

    Mem: 547M Active, 305M Inact, 109M Wired, 40M Cache, 112M Buf, 3492K Free

22.6.13 Problems During Installation

22.6.13.1 Restart R3SETUP after fixing a problem

R3SETUP stops if it encounters an error. If you have looked at the corresponding logfiles and fixed the error, you have to start R3SETUP again, usually selecting REPEAT as option for the last step R3SETUP complained about.

To restart R3SETUP, just start it with the corresponding R3S-file:

    # ./R3SETUP -f CENTRDB.R3S
for 4.6B, or with
    # ./R3SETUP -f CENTRAL.R3S
for 4.6C, no matter whether the error occured with CENTRAL.R3S or DATABASE.R3S.

Note: At some stages, R3SETUP assumes that both database- and SAP-processes are up and running (as those were steps it already completed). Should errors occur and for example the database could not be started, you have to start both database and SAP by hand after you fixed the errors and before starting R3SETUP again.

Don't forget to also start the oracle listener again (as orasid with umask 0; lsnrctl start) if it was also stopped (for example due to a necessary reboot of the system).

22.6.13.2 OSUSERSIDADM_IND_ORA During R3SETUP

If R3SETUP complains at this stage, edit the template file R3SETUP used at that time (CENTRDB.R3S (4.6B) or either CENTRAL.R3S or DATABASE.R3S (4.6C)). Locate [OSUSERSIDADM_IND_ORA] or search for the only STATUS=ERROR-entry and edit the following values:

    HOME=/home/sidadm (was empty)
    STATUS=OK (had status ERROR)
           

Then you can restart R3SETUP again.

22.6.13.3 OSUSERDBSID_IND_ORA During R3SETUP

Possibly R3SETUP also complains at this stage. The error here is similar to the one in phase OSUSERSIDADM_IND_ORA. Just edit the template file R3SETUP used at that time (CENTRDB.R3S (4.6B) or either CENTRAL.R3S or DATABASE.R3S (4.6C)). Locate [OSUSERDBSID_IND_ORA] or search for the only STATUS=ERROR-entry and edit the following value in that section:

    STATUS=OK

Then restart R3SETUP.

22.6.13.4 ``oraview.vrf FILE NOT FOUND'' During Oracle Installation

You have not deselected Oracle On-Line Text Viewer before starting the installation. This is marked for installation even though this option is currently not available for Linux. Deselect this product inside the Oracle installation menu and restart installation.

22.6.13.5 ``TEXTENV_INVALID'' During R3SETUP, RFC or SAPGUI Start

If this error is encountered, the correct locale is missing. SAP note 0171356 lists the necessary RPMs that need be installed (eg saplocales-1.0-3, saposcheck-1.0-1 for RedHat 6.1). In case you ignored all the related errors and set the corresponding status from ERROR to OK (in CENTRDB.R3S) every time R3SETUP complained and just restarted R3SETUP, the SAP-System will not be properly configured and you will then not be able to connect to the system with a sapgui, even though the system can be started. Trying to connect with the old Linux sapgui gave the following messages:

    Sat May 5 14:23:14 2001
    *** ERROR => no valid userarea given [trgmsgo. 0401]
    Sat May 5 14:23:22 2001
    *** ERROR => ERROR NR 24 occured [trgmsgi. 0410]
    *** ERROR => Error when generating text environment. [trgmsgi. 0435]
    *** ERROR => function failed [trgmsgi. 0447]
    *** ERROR => no socket operation allowed [trxio.c 3363]
    Speicherzugriffsfehler

This behavior is due to SAP R/3 being unable to correctly assign a locale and also not being properly configured itself (missing entries in some database tables). To be able to connect to SAP, add the following entries to file DEFAULT.PFL (see note 0043288):

    abap/set_etct_env_at_new_mode = 0
    install/collate/active = 0
    rscp/TCP0B = TCP0B

Restart the SAP system. Now you can connect to the system, even though country-specific language settings might not work as expected. After correcting country-settings (and providing the correct locales), these entries can be removed from DEFAULT.PFL and the SAP system can be restarted.

22.6.13.6 ORA-00001

This error only happened with Oracle 8.1.7 on FreeBSD 4.5. The reason was that the Oracle database could not initialize itself properly and crashed, leaving semaphores and shared memory on the system. The next try to start the database then returned ORA-00001.

Find them with ipcs -a and remove them with ipcrm.

22.6.13.7 ORA-00445 (background process PMON did not start)

This error happened with Oracle 8.1.7. This error is reported if the Database is started with the usual startsap-script (for example startsap_majestix_00) as user prdadm.

A possible workaround is to start the database as user oraprd instead with svrmgrl:

    % svrmgrl
    SVRMGR> connect internal;
    SVRMGR> startup;
    SVRMGR> exit

22.6.13.8 ORA-12546 (start Listener with Correct Permissions)

Start the Oracle Listener as user oraids with the following commands:

    # umask 0; lsnrctl start

Otherwise you might get ORA-12546 as the sockets will not have the correct permissions. See SAP note 0072984.

22.6.13.9 ORA-27102 (out of memory)

This error happend whilst trying to use values for MAXDSIZ and DFLDSIZ greater than 1 GB (1024x1024x1024). Additionally, I got ``Linux Error 12: Cannot allocate memory''.

22.6.13.10 [DIPGNTAB_IND_IND] During R3SETUP

In general, see SAP note 0130581 (R3SETUP step DIPGNTAB terminates). During the IDES-specific installation, for some reasons the installation process was not using the proper SAP system name ``IDS'', but the empty string "" instead. This lead to some minor problems with accessing directories, as the paths are generated dynamically using SID (in this case IDS). So instead of accessing:

    /usr/sap/IDS/SYS/...
    /usr/sap/IDS/DVMGS00

the following paths were used:

    /usr/sap//SYS/...
    /usr/sap/D00

To continue with the installation, I created a link and an additional directory:

    # pwd
    /compat/linux/usr/sap
    # ls -l
    total 4
    drwxr-xr-x 3  idsadm sapsys 512 May 5 11:20 D00
    drwxr-x--x 5  idsadm sapsys 512 May 5 11:35 IDS
    lrwxr-xr-x 1  root   sapsys 7 May 5 11:35 SYS -> IDS/SYS
    drwxrwxr-x 2  idsadm sapsys 512 May 5 13:00 tmp
    drwxrwxr-x 11 idsadm sapsys 512 May 4 14:20 trans

I also found SAP notes (0029227 and 0008401) describing this behavior. I did not encounter any of these problems with the SAP 4.6C-installation.

22.6.13.11 [RFCRSWBOINI_IND_IND] During R3SETUP

During installation of SAP 4.6C, this error was just the result of another error happening earlier during installation. In this case, you have to look through the corresponding logfiles and correct the real problem.

If after looking through the logfiles this error is indeed the correct one (check the SAP-notes), you can set STATUS of the offending step from ERROR to OK (file CENTRDB.R3S) and restart R3SETUP. After installation, you have to execute the report RSWBOINS from transaction SE38. See SAP note 0162266 for additional information about phase RFCRSWBOINI and RFCRADDBDIF.

22.6.13.12 [RFCRADDBDIF_IND_IND] During R3SETUP

Here the same restrictions apply: Make sure by looking through the logfiles, that this error is not caused by some previous problems.

If you can confirm that SAP-Note 0162266 applies, just set STATUS of the offending step from ERROR to OK (file CENTRDB.R3S) and restart R3SETUP. After installation, you have to execute the report RADDBDIF from transaction SE38.

22.6.13.13 sigaction sig31: File size limit exceeded

This error occured during start of SAP-processes disp+work. If starting SAP with the startsap-script, subprocesses are then started which detach and do the dirty work of starting all other SAP processes. As a result, the script itself won't notice if something goes wrong.

To check whether the SAP processes did start properly, have a look at the process status with ps ax | grep SID, which will give you a list of all Oracle- and SAP-processes. If it looks like some processes are missing or if you can't connect to the SAP-System, look at the corresponding logfiles which can be found at /usr/sap/SID/DVEBMGSnr/work/. The files to look at are dev_ms and dev_disp.

Signal 31 happens here if the amount of shared memory used by Oracle and SAP exceed the one defined within the kernel configuration file and could be resolved by using a larger value:

    # larger value for 46C production systems:
    options SHMMAXPGS=393216
    # smaller value sufficient for 46B:
    #options SHMMAXPGS=262144

22.6.13.14 Start of saposcol failed

There are some problems with Program saposcol (version 4.6D). The SAP-System is using saposcol to collect data about the system performance. This program is not needed to use the SAP-System, so this problem can be considered a minor one. The older versions (4.6B) does work, but doesn't collect all the data (many calls will just return 0, for example for CPU useage).

This, and other documents, can be downloaded from ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

For questions about FreeBSD, read the documentation before contacting <questions@FreeBSD.org>.
For questions about this documentation, e-mail <doc@FreeBSD.org>.