## 22.7 Installing SAP® R/3® ***Contributed by Holger Kipp. ******Original version converted to SGML by Valentino Vaschetto. *** Installations of **SAP®** Systems using DragonFly will not be supported by the SAP support team -- they only offer support for certified platforms. **Warning:** This description applies to FreeBSD, for which it was originally written. This may or may not apply to DragonFly at this point; while FreeBSD 4.x features usually translate over to DragonFly well, your mileage may vary. ### 22.7.1 Preface This document describes a possible way of installing a ***'SAP R/3® System ** with** Oracle® Database***' for Linux onto a DragonFly machine, including the installation of DragonFly and **Oracle** . Two different configurations will be described: * ***'SAP R/3 4.6B (IDES) ** with** Oracle 8.0.5***' on FreeBSD 4.3-STABLE * ***'SAP R/3 4.6C ** with** Oracle 8.1.7***' on FreeBSD 4.5-STABLE 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.7.2 Software The following CD-ROMs have been used for **SAP** installations: #### 22.7.2.1 SAP R/3 4.6B, Oracle® 8.0.5 [[!table data=""" | 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, we 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 FreeBSD 4.3-STABLE (it was only a few days past 4.3 RELEASE). #### 22.7.2.2 SAP R/3 4.6C SR2, Oracle 8.1.7 [[!table data=""" | 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 are 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.7.3 SAP Notes The following notes should be read before installing ***'SAP R/3***' and proved to be useful during installation: #### 22.7.3.1 SAP R/3 4.6B, Oracle 8.0.5 [[!table data=""" | 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.7.3.2 SAP R/3 4.6C, Oracle 8.1.7 [[!table data=""" | 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.7.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: [[!table data=""" | 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.7.4.1 SAP R/3 4.6B, Oracle 8.0.5 The following off-the-shelf hardware was used: a dual processor board with two 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.7.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.7.5 Installation of FreeBSD First you have to install FreeBSD. #### 22.7.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`): [[!table data=""" | File system | 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 -- we decided to just create them as real subdirectories for simplicity. #### 22.7.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](sapr3.html#KERNELTUNING) which are required for both ***'SAP R/3 ** and** Oracle***'. ### 22.7.6 Installing the Linux Environment #### 22.7.6.1 Installing the Linux Base System First the [linuxemu-lbc-install.html#LINUXEMU-SUSE-PKGSRC linux_base] port needs to be installed (as `root`): # cd /usr/ports/emulators/linux_base # make install distclean #### 22.7.6.2 Installing Linux Development Environment The Linux development environment is needed, if you want to install **Oracle** on FreeBSD according to the [linuxemu-oracle.html Section 22.6]: # cd /usr/ports/devel/linux_devtools # make install distclean The Linux development environment 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.7.6.3 Installing the Necessary RPMs To start the `R3SETUP` program, PAM support is needed. During the first **SAP** Installation on FreeBSD 4.3-STABLE we 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***' we directly forced the installation of the PAM RPM, which also works, so it seems the dependent 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, we also had to install the RedHat Tcl package `tcl-8.0.5-30.i386.rpm` (otherwise the relinking during **Oracle** installation will not work). There are some other issues regarding relinking of **Oracle** , but that is a **Oracle** Linux issue, not DragonFly specific. #### 22.7.6.4 Some Additional Hints It might also be a good idea to add `linprocfs` to `/etc/fstab`, for more informations, see the [linprocfs(5)](http://leaf.dragonflybsd.org/cgi/web-man?command#linprocfs§ion5) manual page. Another parameter to set is `kern.fallback_elf_brand=3` which is done in the file `/etc/sysctl.conf`. ### 22.7.7 Creating the SAP R/3 Environment #### 22.7.7.1 Creating the Necessary File Systems and Mountpoints For a simple installation, it is sufficient to create the following file systems: [[!table data=""" | mount point | 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.7.7.2 Creating Users and Directories ***'SAP R/3 ** needs two users and three groups. The user names 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 we 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 we used with our installation): [[!table data=""" | 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: [[!table data=""" | user ID | user name | generic name | group | additional groups | description 1000 | idsadm/prdadm | `***sid***`adm | sapsys | oper | SAP Administrator 1002 | oraids/oraprd | ora`***sid***` | dba | oper | Oracle Administrator | """]] Adding the users with [adduser(8)](http://leaf.dragonflybsd.org/cgi/web-man?command#adduser§ion8) requires the following (please note shell and home directory) entries for ***SAP Administrator***: Name: `***sid***`adm Password: ****** Fullname: SAP Administrator `***SID***` Uid: 1000 Gid: 101 (sapsys) Class: Groups: sapsys dba HOME: /home/`***sid***`adm Shell: bash (/compat/linux/bin/bash) and for ***Oracle Administrator***: Name: ora`***sid***` 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.7.7.3 Creating Directories These directories are usually created as separate file systems. This depends entirely on your requirements. We 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 `***sid***`adm:sapsys /compat/linux/usr/sap # chmod 775 /compat/linux/usr/sap Second we will create directories as user `ora`***sid******. These will all be subdirectories of `/oracle/`***SID******: # su - ora`***sid***` # 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 - ora`***sid***` # 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. Do not replace the ***x*** with some number or anything. In the third step we create directories as user ******sid***`adm`: # su - `***sid***`adm # cd /usr/sap # mkdir `***SID***` # mkdir trans # exit #### 22.7.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 sapms`***SID***` 3600/tcp # SAP Message Server. 3600 + Instance-Number sapgw00s 4800/tcp # SAP Secure Gateway 4800 + Instance-Number #### 22.7.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 we 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.7.7.6 Kernel Tuning ***'SAP R/3***' systems need a lot of resources. We therefore added the following parameters to the kernel configuration 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 identifiers 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 i386™, 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.7.8 Installing SAP R/3 #### 22.7.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. We decided to copy the CDROMs 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.7.8.2 Running the Installation Script First you have to prepare an `install` directory: # cd /oracle/`***SID***`/sapreorg # mkdir install # cd install Then the installation 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 demonstration 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 database 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 `ora`***sid' ** and** 'sid***`adm` (and for `root` at least during installation steps performed as `root`). It is also possible to adjust the installed `.profile` and `.login` files of both users that are installed during **SAP** installation. #### 22.7.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): [[!table data=""" | Question | Default | Input Enter SAP System ID | [C11] | IDS **Enter** 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 | | 1 **Enter** 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 | | 850 **Enter** (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 `***sid***`adm | [1000] | **Enter** Enter User-ID of ora`***sid***` | [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 the 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 our case, it requested EXPORT4 CD again but indicated the correct key (6_LOCATION, then 7_LOCATION etc.), so one can just continue with entering the correct values. 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.7.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): [[!table data=""" | Question | Default | Input Enter SAP System ID | [C11] | PRD **Enter** Enter SAP Instance Number | [00] | **Enter** Enter SAPMOUNT Directory | [/sapmnt] | **Enter** Enter name of SAP central host | [majestix] | **Enter** Enter Database System ID | [PRD] | PRD **Enter** Enter name of SAP db host | [majestix] | **Enter** Select character set | [1] (WE8DEC) | **Enter** Enter Oracle server version (2) Oracle 8.1.7 | | 2 **Enter** 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 | 1800 **Enter** (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 | | 3 **Enter** (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 `ora`***sid' **) and OSUSERSIDADM_IND_ORA (creating user** 'sid***`adm`). 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.7.9 Installing Oracle 8.0.5 Please see the corresponding SAP Notes and Oracle `Readme`s 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 [linuxemu-oracle.html the Installing Oracle chapter.] #### 22.7.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 `Readme`s for further information. If this is no option (at the time of installation we 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 we 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.7.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. We did not delete the remains of our previous RDBMS installation tries, though. Afterwards, **Oracle** Database could be started with no problems. ### 22.7.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.7.11 Continue with SAP R/3 Installation First check the environment settings of users `idsamd` (`***sid***`adm) and `oraids` (ora`***sid***`). 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.7.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!): [[!table data=""" | Question | Input Enter Password for sapr3 | sap **Enter** Confirum Password for sapr3 | sap **Enter** Enter Password for sys | change_on_install **Enter** Confirm Password for sys | change_on_install **Enter** Enter Password for system | manager **Enter** Confirm Password for system | manager **Enter** | """]] At this point We had a few problems with `dipgntab` during the 4.6B installation. #### 22.7.11.2 Listener Start the **Oracle** Listener as user `ora`***sid****** as follows: % umask 0; lsnrctl start Otherwise you might get the error ORA-12546 as the sockets will not have the correct permissions. See SAP Note 072984. #### 22.7.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 do not need MNLS, it is still necessary to check the table TCPDB and initializing it if this has not been done. See SAP note 0015023 and 0045619 for further information. ### 22.7.12 Post-installation Steps #### 22.7.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 parameters 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.7.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 user name, We 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.7.12.3 Configure Transport System, Profile, Operation Modes, Etc. Within client 000, user different from `ddic` and `sap*`, do at least the following: [[!table data=""" | Task | Transaction Configure Transport System, e.g. 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.7.12.4 Edit `init`***sid***`.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`, we changed the following values: compress = hardware archive_function = copy_delete_save cpio_flags # "-ov --formatnewc --block-size=128 --quiet" cpio_in_flags # "-iuv --block-size128 --quiet" tape_size = 38000M tape_address = /dev/nsa0 tape_address_rew = /dev/sa0 Explanations: `compress`: The tape we 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 block size to 5120 Bytes. For DLT Tapes, HP recommends at least 32 K block size, so we used `--block-size#128` for 64 K. `--formatnewc` is needed because we 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 automatically. `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.7.12.5 Configuration Issues after Installation The following **SAP** parameters should be tuned after installation (examples for IDES 46B, 1 GB memory): [[!table data=""" | 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: [[!table data=""" | Name | Value ztta/dynpro_area | 2500000 | """]] SAP Note 0157246: [[!table data=""" | 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.7.13 Problems during Installation #### 22.7.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 occurred 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. Do not forget to also start the **Oracle** listener again (as `ora`***sid****** with `umask 0; lsnrctl start`) if it was also stopped (for example due to a necessary reboot of the system). #### 22.7.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/`***sid***`adm (was empty) STATUS=OK (had status ERROR) Then you can restart `R3SETUP` again. #### 22.7.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.7.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.7.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 (e.g. `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.7.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.7.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.7.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.7.13.9 ORA-27102 (Out of Memory) This error happened whilst trying to use values for `MAXDSIZ` and `DFLDSIZ` greater than 1 GB (1024x1024x1024). Additionally, we got ***`Linux Error 12: Cannot allocate memory`***. #### 22.7.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, we 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 We also found SAP Notes (0029227 and 0008401) describing this behavior. We did not encounter any of these problems with the **SAP 4.6C** installation. #### 22.7.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.7.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.7.13.13 sigaction sig31: File size limit exceeded This error occurred 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 will not 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 cannot connect to the **SAP** system, look at the corresponding logfiles which can be found at `/usr/sap/`***SID***`/DVEBMGS`***nr***`/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.7.13.14 Start of `saposcol` Failed There are some problems with the 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 does not collect all the data (many calls will just return 0, for example for CPU usage). CategoryHandbook CategoryHandbook-linuxcompatibility