<?xml version="1.0" encoding="iso-8859-2"?>
<!--
     The FreeBSD Documentation Project

     $FreeBSD$
-->
<!--
     The FreeBSD Hungarian Documentation Project
     Translated by: PALI, Gabor <pgj@FreeBSD.org>
     %SOURCE%	en_US.ISO8859-1/books/handbook/linuxemu/chapter.xml
     %SRCID%	1.141
-->

<chapter id="linuxemu" lang="hu">
  <chapterinfo>
    <authorgroup>
      <author>
	<firstname>Jim</firstname>
	<surname>Mock</surname>
	<contrib>Átdolgozta és egyes részeit
	  aktualizálta: </contrib>
      </author>
    </authorgroup>
    <authorgroup>
      <author>
	<firstname>Brian N.</firstname>
	<surname>Handy</surname>
	<contrib>Eredetileg írta: </contrib>
      </author>
      <author>
	<firstname>Rich</firstname>
	<surname>Murphey</surname>
      </author>
    </authorgroup>
  </chapterinfo>

  <title>Bináris Linux kompatibilitás</title>

  <sect1 id="linuxemu-synopsis">
    <title>Áttekintés</title>

    <indexterm><primary>Bináris Linux
      kompatibilitás</primary></indexterm>
    <indexterm>
      <primary>bináris kompatibilitás</primary>
      <secondary>Linux</secondary>
    </indexterm>

    <para>A &os; számos más &unix;-szerû
      operációs rendszerhez nyújt bináris
      kompatibilitást, köztük a Linuxhoz is.
      Elcsodálkozhatnánk rajta, hogy vajon miért
      kell tudnia a &os;-nek Linux binárisokat futtatnia.  A
      válasz erre nagyon egyszerû.  Rengeteg cég
      és fejlesztõ kizárólag csak Linuxra
      fejleszt, hiszen ez mostanság egy nagyon <quote>izgalmas
      téma</quote> az informatika világában.
      Emiatt azonban a &os; közösségnek külön
      gyõzködnie kell ezeket a cégeket és
      fejlesztõket, hogy készítsék el a
      termékeik natív &os;-s változatát.
      Ezzel az a gond, a legtöbb ilyen cég egyszerûen
      nem veszi észre, hogy ha létezne a
      terméküknek &os;-re írt változata, akkor
      még többen használnák.  Így
      továbbra is csak Linuxra fejlesztenek.  Mit tudnak tenni
      ilyenkor a &os; használói?  Nos, ekkor jön
      jól a &os; bináris szintû
      kompatibilitása.</para>

    <para>Dióhéjban úgy tudnánk
      összefoglalni, hogy ennek köszönhetõen a &os;
      felhasználók képesek a linuxos
      alkalmazások közel 90%-át mindenféle
      további módosítás nélkül
      futtatni.  Így tehát használható a
      <application>&staroffice;</application>,
      <application>&netscape;</application> Linux változata, az
      <application>&adobe;&nbsp;&acrobat;</application>,
      <application>&realplayer;</application>,
      <application><trademark>VMware</trademark></application>,
      <application>&oracle;</application>,
      <application>&wordperfect;</application>,
      <application>Doom</application>, <application>Quake</application>,
      és még sok minden más.  Sõt, egyes
      tapasztalatok szerint bizonyos helyzetekben a &os; által
      futtatott Linux binárisok sokkal jobban
      teljesítenek, mint Linux alatt.</para>

    <para>Azonban vannak olyan Linuxra jellemzõ, az
      operációs rendszer szintjén
      meghúzódó eszközök, amelyek &os;
      alatt nem használhatóak.  &os;-n nem fognak
      mûködni azok a Linux binárisok, amelyek
      túlzottan kihasználják az olyan &i386;-os
      rendszerhívásokat, mint például a
      virtuális 8086 mód.</para>

    <para>A fejezet elolvasása során
      megismerjük:</para>

    <itemizedlist>
      <listitem>
	<para>hogyan engedélyezzük rendszerünkön a
	  Linux kompatibilitást;</para>
      </listitem>

      <listitem>
	<para>hogyan telepítsünk linuxos osztott
	  könyvtárakat;</para>
      </listitem>

      <listitem>
	<para>hogyan telepítsünk linuxos
	  alkalmazásokat a &os; rendszerünkre;</para>
      </listitem>

      <listitem>
	<para>a &os; Linux kompatibilitásának
	  implementációs részleteit.</para>
      </listitem>
    </itemizedlist>

    <para>A fejezet elolvasásához ajánlott:</para>

    <itemizedlist>
      <listitem>
	<para>külsõ szoftverek
	  telepítésének ismerete (<xref
	  linkend="ports"/>).</para>
      </listitem>
    </itemizedlist>

  </sect1>

  <sect1 id="linuxemu-lbc-install">
    <title>Telepítés</title>

    <indexterm><primary>KLD (betölthetõ rendszermag
      objektum)</primary></indexterm>

    <para>A bináris Linux kompatibilitás
      alapértelmezés szerint nem engedélyezett.
      Legkönnyebben úgy tudjuk elérhetõvé
      tenni, ha betöltjük a <literal>linux</literal> nevû
      KLD modult (<quote>Kernel LoaDable</quote>).  Ehhez
      <username>root</username> felhasználóként a
      következõket kell begépelni:</para>

    <screen>&prompt.root; <userinput>kldload linux</userinput></screen>

    <para>Ha minden egyes rendszerindítás során
      engedélyezni szeretnénk a bináris
      kompatibilitást, akkor tegyük bele az
      <filename>/etc/rc.conf</filename> állományba ezt a
      sort:</para>

    <programlisting>linux_enable="YES"</programlisting>

    <para>A modul betöltõdését a &man.kldstat.8;
      paranccsal tudjuk ellenõrizni:</para>

    <screen>&prompt.user; <userinput>kldstat</userinput>
Id Refs Address    Size     Name
 1    2 0xc0100000 16bdb8   kernel
 7    1 0xc24db000 d000     linux.ko</screen>

    <indexterm>
      <primary>a rendszermag beállításai</primary>
      <secondary>COMPAT_LINUX</secondary>
    </indexterm>

    <para>Ha valamiért nem akarjuk vagy nem éppen nem
      tudjuk betölteni a modult, akkor a bináris Linux
      kompatibilitást az <literal>options COMPAT_LINUX</literal>
      beállítással be is tudjuk
      építeni a rendszermagba.  Ennek pontos
      menetét a <xref linkend="kernelconfig"/>ben találjuk
      meg.</para>

    <sect2>
      <title>Linuxos futtatókönyvtárak
	telepítése</title>

      <indexterm>
	<primary>Linux</primary>
	<secondary>linuxos könyvtárak
	  telepítése</secondary>
      </indexterm>

      <para>A linuxos könyvtárakat két módon
	is felrakhatjuk: egyrészt a <link
	linkend="linuxemu-libs-port">linux_base</link> port
	telepítésével, másrészt <link
	linkend="linuxemu-libs-manually">manuálisan</link>.</para>

      <sect3 id="linuxemu-libs-port">
	<title>A könyvtárak telepítése a
	  linux_base porttal</title>

	<indexterm><primary>Portgyûjtemény</primary></indexterm>

	<para>A futtatókönyvtárakat a lehetõ
	  legegyszerûbben a <filename
	  role="package">emulators/linux_base</filename> porton
	  keresztül tudjuk telepíteni.  Teljesen úgy
	  történik, mint a <ulink type="html"
	  url="file://localhost/usr/ports/">Portgyûjtemény</ulink>
	  akármelyik másik portjának
	  telepítése.  Csupán ennyit kell
	  beírnunk:</para>

	<screen>&prompt.root; <userinput>cd /usr/ports/emulators/linux_base-f10</userinput>
&prompt.root; <userinput>make install distclean</userinput></screen>

	<note>
	  <para>A &os; 8.0 kiadását megelõzõ
	    változataiban az <filename
	      role="package">emulators/linux_base-f10</filename> port
	    helyett az <filename
	      role="package">emulators/linux_base-fc4</filename> portot
	    használjuk.</para>
	</note>

	<para>A telepítés végeztével kaptunk
	  is egy mûködõ bináris Linux
	  kompatibilitást, habár egyes programok
	  még panaszkodhatnak a rendszerkönyvtárak
	  alverzióit illetõen.
	  Általánosságban véve ez azonban
	  nem okoz nagyobb gondot.</para>

	<note>
	  <para>A <filename
	    role="package">emulators/linux_base</filename> portnak
	    több változata is használható,
	    melyek az egyes Linux disztribúcióknak
	    feleltethetõek meg.  Ilyenkor mindig érdemes
	    közülük azt választani, amelyik a
	    leginkább megfelel a telepíteni
	    kívánt linuxos alkalmazás
	    igényeinek.</para>
	</note>

      </sect3>

      <sect3 id="linuxemu-libs-manually">
	<title>A könyvtárak telepítése
	  manuálisan</title>

	<para>Ha korábban még nem telepítettük
	  volna a Portgyûjteményt, akkor egyénileg
	  kell felraknunk az egyes könyvtárakat.
	  Közülük azokra lesz
	  szükségünk, amelyeket maga az
	  alkalmazás is használni akar, valamint a
	  futásidejû linkerre.  Emellett még a &os;
	  rendszerünkön levõ Linux binárisok
	  számára a <filename>/compat/linux</filename>
	  könyvtárban létre kell hoznunk a
	  gyökér ún.
	  <quote>árnyékkönyvtárát</quote>
	  is.  A &os; alatt elindított Linux programok
	  elõször ebben a könyvtárban
	  fogják keresni a hozzájuk tartozó osztott
	  könyvtárakat.  Így tehát, amikor egy
	  linuxos program betölti például a
	  <filename>/lib/libc.so</filename>
	  függvénykönyvtárat, akkor a &os;
	  elõször a
	  <filename>/compat/linux/lib/libc.so</filename>
	  állományt próbálja meg megnyitni,
	  majd ha az nem létezik, akkor a
	  <filename>/lib/libc.so</filename> állományt.  Az
	  osztott könyvtárak ezért a
	  <filename>/compat/linux/lib</filename>
	  árnyékkönyvtárba
	  telepítendõek, és nem oda, ahova a linuxos
	  <command>ld.so</command> mutat.</para>

	<para>Általánosságban szólva eleinte
	  elég csak azokat az osztott könyvtárakat
	  megkeresni és felrakni, amelyekre a
	  telepítendõ linuxos alkalmazásunknak
	  ténylegesen szüksége van.  Egy idõ
	  után úgyis összegyûlnek azok a
	  fontosabb függvénykönyvtárak, amelyek
	  segítségével már minden
	  további ráfordítás
	  nélkül futtatni tudjuk a frissen importált
	  programokat.</para>

      </sect3>

      <sect3>
	<title>Hogyan telepítsünk újabb osztott
	  könyvtárakat?</title>

	<indexterm><primary>osztott
	  könyvtárak</primary></indexterm>

	<para>Mit tegyünk, ha az <filename
	  role="package">emulators/linux_base</filename> port
	  telepítése után az alkalmazás
	  még mindig hiányol néhány osztott
	  könyvtárat?  Honnan tudhatjuk meg, hogy milyen
	  osztott könyvtárak kellenek majd egy Linux
	  bináris használatához, és honnan
	  szerezzük be ezeket?  Erre alapvetõn két
	  lehetõségünk van (az
	  utasításokat <username>root</username>
	  felhasználóként kell majd
	  végrehajtanunk).</para>

	<para>Ha hozzáférünk egy Linux rendszerhez,
	  akkor szedjük össze az alkalmazásunk
	  futtatásához szükséges osztott
	  könyvtárakat, és másoljuk ezeket a
	  &os; partíciójára.
	  Például:</para>

	<informalexample>
	  <para>Tegyük fel, hogy FTP-n keresztül
	    leszedtük a <application>Doom</application> Linux
	    változatát, és felraktuk egy
	    általunk elérhetõ Linux rendszerre.  Az
	    <command>ldd linuxdoom</command> parancs
	    segítségével ki tudjuk deríteni,
	    milyen osztott könyvtárak kellenek majd
	    nekünk:</para>

	  <screen>&prompt.user; <userinput>ldd linuxdoom</userinput>
libXt.so.3 (DLL Jump 3.1) =&gt; /usr/X11/lib/libXt.so.3.1.0
libX11.so.3 (DLL Jump 3.1) =&gt; /usr/X11/lib/libX11.so.3.1.0
libc.so.4 (DLL Jump 4.5pl26) =&gt; /lib/libc.so.4.6.29</screen>

	  <indexterm><primary>szimbolikus linkek</primary></indexterm>

	  <para>Az utolsó oszlopban levõ
	    állományokat másoljuk át,
	    tegyük ezeket a <filename>/compat/linux</filename>
	    könyvtárba, és hozzunk létre az
	    elsõ oszlopban szereplõ szimbolikus linkeket.
	    Így tehát a következõ
	    állományok kellenének:</para>

	  <screen>/compat/linux/usr/X11/lib/libXt.so.3.1.0
/compat/linux/usr/X11/lib/libXt.so.3 -&gt; libXt.so.3.1.0
/compat/linux/usr/X11/lib/libX11.so.3.1.0
/compat/linux/usr/X11/lib/libX11.so.3 -&gt; libX11.so.3.1.0
/compat/linux/lib/libc.so.4.6.29
/compat/linux/lib/libc.so.4 -&gt; libc.so.4.6.29</screen>

	  <blockquote>
	    <note>
	      <para>Ha már rendelkezünk az
		<command>ldd</command> kimenetének elsõ
		oszlopában szereplõ
		fõverziószámú osztott
		könyvtárral, akkor nem kell
		átmásolni az utolsó oszlopban
		levõ állományokat, hiszen így
		is mûködnie kellene mindennek.  Ha viszont egy
		újabb változattal találkozunk,
		akkor érdemes mégis inkább
		átmásolni.  Miután a szimbolikus
		linkeket átirányítottuk az
		új változatra, a régit akár
		törölhetjük is.  Ha például
		ezek a könyvtárak elérhetõek a
		rendszerünkön:</para>

	      <screen>/compat/linux/lib/libc.so.4.6.27
/compat/linux/lib/libc.so.4 -&gt; libc.so.4.6.27</screen>

	      <para>Észrevesszük, hogy az
		<command>ldd</command> kimenetében az új
		bináris egy újabb változatot
		igényel:</para>

	      <screen>libc.so.4 (DLL Jump 4.5pl26) -&gt; libc.so.4.6.29</screen>

	      <para>Ha csak az utolsó jegyében marad le
		valamivel a verziószám, akkor nem kell
		különösebben aggódnunk a
		<filename>/lib/libc.so.4.6.29</filename> miatt sem,
		hiszen a programnak egy picivel korábbi
		verzióval is remekül kellene tudnia
		mûködni.  Természetesen, ha akarjuk,
		ettõl függetlenül
		lecserélhetjük a
		<filename>libc.so</filename> állományt,
		ami ezt eredményezi:</para>

	      <screen>/compat/linux/lib/libc.so.4.6.29
/compat/linux/lib/libc.so.4 -&gt; libc.so.4.6.29</screen>
	    </note>
	  </blockquote>

	  <blockquote>
	    <note>
	      <para>A szimbolikus linkek karbantartása
		<emphasis>csak</emphasis> a Linux binárisok
		esetén szükséges.  A &os;
		saját futásidejû linkere
		magától megkeresi a megfelelõ
		fõverziószámú
		könyvtárakat, ezért emiatt
		általában nem kell aggódni.</para>
	    </note>
	  </blockquote>
	</informalexample>

      </sect3>
    </sect2>

    <sect2>
      <title>Linux ELF binárisok telepítése</title>

      <indexterm>
	<primary>Linux</primary>
	<secondary>ELF binárisok</secondary>
      </indexterm>

      <para>Az ELF binárisok futtatása elõtt
	néha még szükség van a
	<quote>megbélyegzés</quote> (branding)
	használatára is.  Ha egy bélyegezetlen ELF
	binárist akarunk elindítani, akkor a
	következõ hibaüzenetet kapjuk:</para>

      <screen>&prompt.user; <userinput><replaceable>./egy-linux-elf-bináris</replaceable></userinput>
ELF binary type not known
Abort</screen>

      <para>A &os; rendszermagjának a &man.brandelf.1; paranccsal
	tudunk segíteni a &os; és a Linux
	binárisainak
	megkülönböztetésében.</para>

      <screen>&prompt.user; <userinput>brandelf -t Linux <replaceable>egy-linux-elf-bináris</replaceable></userinput></screen>

      <indexterm><primary>GNU
	eszköztár</primary></indexterm>

      <para>A GNU által fejlesztett eszközök
	manapság már automatikusan elhelyezik az ELF
	binárisok azonosításához
	szükséges bélyegeket, ezért ez a
	lépés a jövõben egyre inkább
	feleslegessé válik.</para>
    </sect2>

    <sect2>
      <title>Tetszõleges RPM formátumú csomag
	telepítése</title>

      <para>A &os; a telepített (akár linuxos)
	alkalmazások nyomonkövetésére
	saját csomagadatbázissal rendelkezik, amelynek
	következtében a &linux; által
	felkínált RPM adatbázisokat nem
	támogatja.</para>

      <para>Ennek ellenére akármelyik RPM alapú
	&linux; alkalmazás telepíthetõ
	rendszerünkre a következõ módon:</para>

      <screen>&prompt.root; <userinput>cd /compat/linux</userinput>
&prompt.root; <userinput>rpm2cpio -q &lt; <replaceable>/a/linuxos/allomány.helye.rpm</replaceable> | cpio -id</userinput></screen>

      <para>Ezt követõen a &man.brandelf.1;
	segítségével állítsuk be az ELF
	binárisokat (könyvtárakat viszont ne!)
	megfelelõ típusúra.  Ekkor ugyan nem
	leszünk képesek rendesen eltávolítani
	az így telepített szoftvert, de ez a
	módszer teszteléshez megfelelõ.</para>
    </sect2>

    <sect2>
      <title>A névfeloldó
	beállítása</title>

      <para>Ha a névfeloldás (DNS) valamiért nem
	mûködne, vagy egy ehhez hasonló üzenetet
	kapunk:</para>

      <screen>resolv+: "bind" is an invalid keyword resolv+:
"hosts" is an invalid keyword</screen>

      <para>Akkor a <filename>/compat/linux/etc/host.conf</filename>
	állományba be kell illesztenünk a
	következõ sorokat:</para>

      <programlisting>order hosts, bind
multi on</programlisting>

      <para>Az itt megszabott sorrend szerint elõször az
	<filename>/etc/hosts</filename> állományt
	nézi át, és majd csak ezután
	próbálja meg feloldani a nevet.  Ha a
	<filename>/compat/linux/etc/host.conf</filename>
	állomány nem létezik, akkor a linuxos
	alkalmazás a &os; <filename>/etc/host.conf</filename>
	állományát találja meg, és
	panaszkodni fog a &os; eltérõ
	formátumára.  Távolítsuk el a
	<literal>bind</literal> szócskát, ha nem
	állítottunk be névszervert az
	<filename>/etc/resolv.conf</filename>
	állományhoz.</para>

    </sect2>
  </sect1>

  <sect1 id="linuxemu-mathematica">
    <sect1info>
      <authorgroup>
	<author>
	  <firstname>Boris</firstname>
	  <surname>Hollas</surname>
	  <contrib>A Mathematica 5.X verziójához
	    igazította: </contrib>
	</author>
      </authorgroup>
    </sect1info>

    <title>A &mathematica; telepítése</title>

    <indexterm>
      <primary>alkalmazások</primary>
      <secondary><application>Mathematica</application></secondary>
    </indexterm>

    <para>Ebben a szakaszban megismerhetjük, hogyan
      telepítsük a <application>&mathematica;
      5.X</application> Linux változatát &os;
      rendszerekre.</para>

    <para>A <application>&mathematica;</application> vagy a
      <application>&mathematica; for Students</application> linuxos
      változatai közvetlenül megrendelhetõek a
      fejlesztõtõl: <ulink
      url="http://www.wolfram.com/"></ulink>.</para>

    <sect2>
      <title>A &mathematica; telepítõjének
	elindítása</title>

      <para>Elõször is jeleznünk kell a &os;-nek, hogy a
	<application>&mathematica;</application> binárisai a
	linuxos ABI-t (Application Binary Interface) fogják
	használni.  Itt legkönnyebben úgy
	járhatunk el, ha egyszerûen
	beállítjuk, hogy a rendszer a bélyegezetlen
	ELF binárisokat automatikusan Linux binárisoknak
	tekintse:</para>

      <screen>&prompt.root; <userinput>sysctl kern.fallback_elf_brand=3</userinput></screen>

      <para>Ennek köszönhetõen a &os; most már az
	összes bélyegezetlen ELF bináris
	esetén a linuxos ABI-t fogja használni, és
	így a telepítõt akár már
	közvetlenül a CD-rõl is
	indíthatjuk.</para>

      <para>Most másoljuk át a
	<filename>MathInstaller</filename> nevû
	állományt a merevlemezünkre:</para>

      <screen>&prompt.root; <userinput>mount /cdrom</userinput>
&prompt.root; <userinput>cp /cdrom/Unix/Installers/Linux/MathInstaller <replaceable>helyi_könyvtár</replaceable></userinput></screen>

      <para>Az állományban cseréljük ki az
	elsõ sorban található
	<literal>/bin/sh</literal> hivatkozást a
	<literal>/compat/linux/bin/sh</literal> hivatkozásra.
	Ezzel biztosíthatjuk, hogy a telepítõt a
	linuxos &man.sh.1; fogja elindítani.  Ezután a
	kedvenc szövegszerkesztõnkkel vagy a
	következõ szakaszban található szkript
	segítségével helyettesítsük
	benne a <literal>Linux)</literal> szöveg összes
	elõfordulását a <literal>FreeBSD)</literal>
	szöveggel.  Mivel a
	<application>&mathematica;</application> telepítõje
	az <command>uname -s</command> parancsra kapott
	válaszból állapítja meg az
	operációs rendszer típusát,
	ezért ezzel a módosítással a &os;-t
	is a Linuxhoz hasonló módon fogja kezelni.  A
	<command>MathInstaller</command> elindítása
	után most már telepíthetõ a
	<application>&mathematica;</application>.</para>

    </sect2>

    <sect2>
      <title>A &mathematica; állományainak
	módosítása</title>

      <para>A <application>&mathematica;</application>
	telepítése során létrejött
	szkripteket a használatuk elõtt át kell
	írnunk.  Amennyiben a
	<application>&mathematica;</application>hoz tartozó
	programokat a <filename
	  class="directory">/usr/local/bin</filename>
	könyvtárba telepítettük, akkor itt
	találjuk a <filename>math</filename>,
	<filename>mathematica</filename>,
	<filename>Mathematica</filename> és
	<filename>MathKernel</filename> állományokra
	mutató szimbolikus linkeket.  Ezek mindegyikében
	cseréljük ki a <literal>Linux)</literal>
	karakterláncot a <literal>FreeBSD)</literal>
	szövegre a kedvenc szövegszerkesztõnkkel vagy az
	alábbi szkripttel:</para>

      <programlisting>#!/bin/sh
cd /usr/local/bin
for i in math mathematica Mathematica MathKernel
  do sed 's/Linux)/FreeBSD)/g' $i &gt; $i.tmp
  sed 's/\/bin\/sh/\/compat\/linux\/bin\/sh/g' $i.tmp &gt; $i
  rm $i.tmp
  chmod a+x $i
done</programlisting>

    </sect2>

    <sect2>
      <title>A &mathematica; jelszavának
	megszerzése</title>

      <indexterm>
	<primary>Ethernet</primary>
	<secondary>MAC-cím</secondary>
      </indexterm>

      <para>A <application>&mathematica;</application> elsõ
	indítása során kérni fog egy
	jelszót.  Ha még nem kértünk volna
	jelszót a fejlesztõtõl, akkor a
	<quote>számítógépünk
	azonosítójának</quote> (machine ID)
	megállapításához indítsuk el
	a telepítés könyvtárában
	található <command>mathinfo</command> nevû
	programot.  Ez az azonosító
	lényegében az elsõdleges Ethernet
	kártyánk MAC-címe lesz, ezért a
	<application>&mathematica;</application> nem futtatható
	több számítógépen.</para>

      <para>Amikor e-mailen, telefonon vagy faxon keresztül
	regisztráljuk a terméket a Wolframnál,
	akkor meg kell adnunk nekik ezt az azonosítót
	<quote>machine ID</quote> néven, amire õk
	elküldik a hozzá tartozó
	jelszót.</para>

    </sect2>

    <sect2>
      <title>A &mathematica; frontendjének futtatása
	hálózaton keresztül</title>

      <para>A <application>&mathematica;</application> a
	szabványos betûkészletekkel meg nem
	jeleníthetõ szimbólumokhoz
	(integráljelek, szummák, görög
	betûk, matematikai jelölések stb.)
	használ néhány olyan speciális
	betûtípust, amelyek nem minden esetben állnak
	rendelkezésre.  Az X által használt
	protokoll miatt ezeket a betûtípusokat
	<emphasis>helyben</emphasis> kell telepíteni.  Ennek
	értelmében a
	<application>&mathematica;</application> CD-jén
	található betûtípusokat
	telepítenünk kell a
	számítógépünkre is.  A CD-n
	ezeket általában a
	<filename>/cdrom/Unix/Files/SystemFiles/Fonts</filename>
	könyvtárban találjuk meg, vagy a merevlemezen
	a <filename>/usr/local/mathematica/SystemFiles/Fonts</filename>
	könyvtárban.  Ezen belül pedig a
	<filename>Type1</filename> és <filename>X</filename>
	alkönyvtárakra van szükségünk.  Az
	alábbiakban leírtak szerint több módon
	is használhatjuk ezeket.</para>

      <para>Az egyik ilyen módszer, ha átmásoljuk
	az imént említett könyvtárakat a
	többi mellé, vagyis a
	<filename>/usr/X11R6/lib/X11/fonts</filename>
	könyvtárba.  Ekkor szükségünk lesz
	még a <filename>fonts.dir</filename>
	állomány átírására is,
	ahova fel kell vennünk a betûtípusok neveit,
	majd ennek megfelelõen az elsõ sorban
	módosítanunk a könyvtárban
	található betûtípusok
	számát.  De ugyanígy lefuttathatjuk ebben a
	könyvtárban a &man.mkfontdir.1; parancsot is.</para>

      <para>Az a másik megoldás, ha a
	könyvtárakat így másoljuk át a
	<filename>/usr/X11R6/lib/X11/fonts</filename> helyre:</para>

      <screen>&prompt.root; <userinput>cd /usr/X11R6/lib/X11/fonts</userinput>
&prompt.root; <userinput>mkdir X</userinput>
&prompt.root; <userinput>mkdir MathType1</userinput>
&prompt.root; <userinput>cd /cdrom/Unix/Files/SystemFiles/Fonts</userinput>
&prompt.root; <userinput>cp X/* /usr/X11R6/lib/X11/fonts/X</userinput>
&prompt.root; <userinput>cp Type1/* /usr/X11R6/lib/X11/fonts/MathType1</userinput>
&prompt.root; <userinput>cd /usr/X11R6/lib/X11/fonts/X</userinput>
&prompt.root; <userinput>mkfontdir</userinput>
&prompt.root; <userinput>cd ../MathType1</userinput>
&prompt.root; <userinput>mkfontdir</userinput></screen>

      <para>Most adjuk hozzá az új
	könyvtárakat a betûtípusok
	könyvtáraihoz:</para>

      <screen>&prompt.root; <userinput>xset fp+ /usr/X11R6/lib/X11/fonts/X</userinput>
&prompt.root; <userinput>xset fp+ /usr/X11R6/lib/X11/fonts/MathType1</userinput>
&prompt.root; <userinput>xset fp rehash</userinput></screen>

      <para>Ha az <application>&xorg;</application> szervert
	használjuk, akkor az <filename>xorg.conf</filename>
	állományban megadhatjuk ezen
	könyvtárak automatikus betöltését
	is.</para>

      <note>
	<para>Az <application>&xfree86;</application>
	  típusú szerverek esetén az
	  <filename>XF86Config</filename> konfigurációs
	  állományt kell
	  módosítanunk.</para>
      </note>

      <indexterm><primary>betûk</primary></indexterm>

      <para>Ha még <emphasis>nincs</emphasis>
	<filename>/usr/X11R6/lib/X11/fonts/Type1</filename> nevû
	könyvtárunk, akkor a példában
	szereplõ <filename>MathType1</filename>
	könyvtárat nyugodtan átnevezhetjük
	<filename>Type1</filename> nevûre.</para>

    </sect2>
  </sect1>

  <sect1 id="linuxemu-maple">
    <sect1info>
      <authorgroup>
	<author>
	  <firstname>Aaron</firstname>
	  <surname>Kaplan</surname>
	  <contrib>Írta: </contrib>
	</author>
      </authorgroup>
      <authorgroup>
	<author>
	  <firstname>Robert</firstname>
	  <surname>Getschmann</surname>
	  <contrib>Köszönet: </contrib>
	</author>
      </authorgroup>
    </sect1info>

    <title>A &maple; telepítése</title>

    <indexterm>
      <primary>alkalmazások</primary>
      <secondary><application>Maple</application></secondary>
    </indexterm>

    <para>A <application>&maple;</application> egy
      <application>&mathematica;</application>hoz hasonló
      kereskedelmi alkalmazás.  A használatához
      elõször meg kell vásárolni a <ulink
      url="http://www.maplesoft.com/"></ulink> címrõl, majd
      a licenc megszerzéséhez ugyanott
      regisztrálni.  &os;-re a szoftvert a következõ
      egyszerû lépéseken keresztül tudjuk
      telepíteni.</para>

    <procedure>
      <step>
	<para>Indítsuk el a termékhez mellékelt
	  <filename>INSTALL</filename> nevû szkriptet.
	  Válasszuk a telepítõprogram által
	  felkínált opciók közül a
	  <quote>RedHat</quote> címkéjût.  A
	  telepítés célkönyvtára legyen
	  a <filename
	  class="directory">/usr/local/maple</filename>.</para>
      </step>

      <step>
	<para>Ha eddig még nem tettük volna meg,
	  rendeljük meg a <application>&maple;</application>
	  licencét a Maple Waterloo Software-tõl (<ulink
	  url="http://register.maplesoft.com/"></ulink>) és
	  másoljuk az
	  <filename>/usr/local/maple/license/license.dat</filename>
	  állományba.</para>
      </step>

      <step>
	<para>Az <application>&maple;</application>-höz
	  mellékelt <filename>INSTALL_LIC</filename> szkript
	  elindításával telepítsük a
	  <application>FLEXlm</application> licenckezelõt.  A
	  szervernek adjuk meg a
	  számítógépünk
	  hálózati nevét.</para>
      </step>

      <step>
	<para>Javítsuk át a
	  <filename>/usr/local/maple/bin/maple.system.type</filename>
	  állományt a következõ
	  módon:</para>

	<programlisting>   ----- itt kezdõdik a módosítás ---------
*** maple.system.type.orig      Sun Jul  8 16:35:33 2001
--- maple.system.type   Sun Jul  8 16:35:51 2001
***************
*** 72,77 ****
--- 72,78 ----
          # the IBM RS/6000 AIX case
          MAPLE_BIN="bin.IBM_RISC_UNIX"
          ;;
+     "FreeBSD"|\
      "Linux")
          # the Linux/x86 case
        # We have two Linux implementations, one for Red Hat and
   ----- módosítás vége -------------------</programlisting>

	<para>Vigyázzunk, hogy a <literal>"FreeBSD"|\</literal>
	  kezdetû sor végén nem szabad semmilyen
	  további whitespace karakternek lennie.</para>

	<para>Ez a javítás arra utasítja a
	  <application>&maple;</application>-t, hogy a
	  <quote>FreeBSD</quote>-t Linux rendszerként ismerje
	  fel.  A <filename>bin/maple</filename> szkript hívja a
	  <filename>bin/maple.system.type</filename> szkriptet, amely
	  pedig a <command>uname -a</command> hívással
	  próbálja kideríteni az
	  operációs rendszer nevét.  Ettõl
	  függõen választja ki, hogy milyen
	  típusú binárisokat fog futtatni.</para>
      </step>

      <step>
	<para>Indítsuk el a licenckezelõ szervert.</para>

	<para>A most következõ szkripttel
	  könnyedén el tudjuk indítani az
	  <command>lmgrd</command> programot.  A szkriptet
	  <filename>/usr/local/etc/rc.d/lmgrd.sh</filename> néven
	  hozzuk létre:</para>

	<programlisting>   ----- nyissz -----------

#! /bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin
PATH=${PATH}:/usr/local/maple/bin:/usr/local/maple/FLEXlm/UNIX/LINUX
export PATH

LICENSE_FILE=/usr/local/maple/license/license.dat
LOG=/var/log/lmgrd.log

case "$1" in
start)
	lmgrd -c ${LICENSE_FILE} 2&gt;&gt; ${LOG} 1&gt;&amp;2
	echo -n " lmgrd"
	;;
stop)
	lmgrd -c ${LICENSE_FILE} -x lmdown 2&gt;&gt; ${LOG} 1&gt;&amp;2
	;;
*)
	echo "Usage: `basename $0` {start|stop}" 1&gt;&amp;2
	exit 64
	;;
esac

exit 0
   ----- nyissz -----------</programlisting>
      </step>

      <step>
	<para>Próbáljuk meg elindítani a
	  <application>&maple;</application>-t:</para>

	<screen>&prompt.user; <userinput>cd /usr/local/maple/bin</userinput>
&prompt.user; <userinput>./xmaple</userinput></screen>

	<para>Szerencsés esetben innentõl kezdve már
	  minden mûködik.  És ne felejtsünk el
	  írni a Maplesoftnak, hogy szeretnénk egy
	  natív &os; verziót a
	  termékükbõl!</para>
      </step>
    </procedure>

    <sect2>
      <title>Általános buktatók</title>

      <itemizedlist>
	<listitem>
	  <para>A <application>FLEXlm</application> licenckezelõvel
	    esetenként nehéz lehet elboldogulni.
	    Errõl a témáról bõvebben a
	    <ulink url="http://www.globetrotter.com/"></ulink>
	    címen találunk
	    leírásokat.</para>
	</listitem>

	<listitem>
	  <para>Az <command>lmgrd</command> nagyon
	    válogatós a licencállományokat
	    illetõen és bármilyen
	    apróságra kiakad.  Egy szabályos
	    licencállomány valahogy így néz
	    ki:</para>

<programlisting># =======================================================
# License File for UNIX Installations ("Pointer File")
# =======================================================
SERVER chillig ANY
#USE_SERVER
VENDOR maplelmg

FEATURE Maple maplelmg 2000.0831 permanent 1 XXXXXXXXXXXX \
         PLATFORMS=i86_r ISSUER="Waterloo Maple Inc." \
         ISSUED=11-may-2000 NOTICE=" Technische Universitat Wien" \
         SN=XXXXXXXXX</programlisting>

	  <note>
	    <para>A sorozatszámot természetesen
	      eltávolítottuk.  Itt a
	      <hostid>chillig</hostid> a
	      számítógép neve.</para>
	  </note>

	  <para>Az itt megadott licencállomány
	    remekül használható egészen addig
	    a pontig, amíg békén hagyjuk a
	    <quote>FEATURE</quote> kezdetû sort (melyet a
	    licenckulcs véd).</para>
	</listitem>
      </itemizedlist>

    </sect2>
  </sect1>

  <sect1 id="linuxemu-matlab">
    <sect1info>
      <authorgroup>
	<author>
	  <firstname>Dan</firstname>
	  <surname>Pelleg</surname>
	  <contrib>Írta: </contrib>
	</author>
      </authorgroup>
    </sect1info>

    <title>A &matlab; telepítése</title>

    <indexterm>
      <primary>alkalmazások</primary>
      <secondary><application>MATLAB</application></secondary>
    </indexterm>

    <para>Ez a leírás azt mutatja be, hogyan
      telepítsük &os; rendszerekre a <application>&matlab;
      version 6.5</application> Linux változatát.  A
      <application>&java.virtual.machine;</application> (lásd
      <xref linkend="matlab-jre"/>) használatától
      eltekintve meglepõen jól mûködik.</para>

    <para>A <application>&matlab;</application> Linux változata
      közvetlenül megrendelhetõ a The MathWorks-tõl,
      a <ulink url="http://www.mathworks.com"></ulink> címen.  Ne
      felejtsük el beszerezni a licencállományt
      és az elkészítéséhez
      szükséges útmutatót.  Ha már
      úgyis arra járunk, jelezzük a
      fejlesztõknek, hogy igényt tartanánk a
      termékük natív &os;-s változatára
      is!</para>

    <sect2>
      <title>A &matlab; telepítése</title>

      <para>A <application>&matlab;</application>
	telepítéséhez a következõket kell
	tennünk:</para>

      <procedure>
	<step>
	  <para>Helyezzük be a telepítõ CD-t és
	    csatlakoztassuk.  A telepítõszkript
	    javaslatának megfelelõen váltsunk
	    át a <username>root</username>
	    felhasználóra.  A szóbanforgó
	    szkript elindításához
	    gépeljük be a következõt:</para>

	  <screen>&prompt.root; <userinput>/compat/linux/bin/sh /cdrom/install</userinput></screen>

	  <tip>
	    <para>A telepítõ grafikus.  Ha a
	      megjelenítõ használatáról
	      szóló hibaüzeneteket kapunk, akkor
	      adjuk ki a <command>setenv HOME
	      ~<replaceable>FELHASZNÁLÓ</replaceable></command>
	      parancsot, ahol a
	      <replaceable>FELHASZNÁLÓ</replaceable> annak
	      a felhasználónak a neve legyen, amivel az
	      imént meghívtuk a &man.su.1;
	      programot.</para>
	  </tip>
	</step>

	<step>
	  <para>Amikor a <application>&matlab;</application>
	    könyvtárát kell megadnunk, ezt
	    írjuk be:
	    <userinput>/compat/linux/usr/local/matlab</userinput>.</para>

	  <tip>
	    <para>A telepítés további
	      részeinek megkönnyítése
	      érdekében írjuk be ezt a
	      parancssorba: <command>set
	      MATLAB=/compat/linux/usr/local/matlab</command></para>
	  </tip>
	</step>

	<step>
	  <para>Miután megkaptuk a
	    <application>&matlab;</application> licencét, az
	    útmutatás szerint szerkesszük
	    át.</para>

	  <tip>
	    <para>A licencállományt a kedvenc
	      szövegszerkesztõnkkel akár már
	      korábban elõ is
	      készíthetjük, és majd amikor a
	      telepítõnek szüksége lesz
	      rá, másoljuk be
	      <filename>$MATLAB/license.dat</filename> helyre.</para>
	  </tip>
	</step>

	<step>
	  <para>Futtassuk le a telepítést.</para>
	</step>
      </procedure>

      <para>Ezzel befejezõdött a
	<application>&matlab;</application> hagyományos
	telepítése.  Innentõl már csak a &os;
	rendszer <quote>hozzátapasztásán</quote>
	fogunk dolgozni.</para>

    </sect2>

    <sect2>
      <title>A licenckezelõ elindítása</title>

      <procedure>
	<step>
	  <para>Hozzunk létre szimbolikus linkeket a
	    licenckezelõ szkriptjeire:</para>

	  <screen>&prompt.root; <userinput>ln -s $MATLAB/etc/lmboot /usr/local/etc/lmboot_TMW</userinput>
&prompt.root; <userinput>ln -s $MATLAB/etc/lmdown /usr/local/etc/lmdown_TMW</userinput></screen>
	</step>

	<step>
	  <para>Hozzunk létre egy indítószkriptet
	    <filename>/usr/local/etc/rc.d/flexlm.sh</filename>
	    néven.  A lentebb látható minta a
	    <application>&matlab;</application>hoz mellékelt
	    <filename>$MATLAB/etc/rc.lm.glnx86</filename>
	    állomány egy módosított
	    változata.  Benne az állományok
	    helyét és a licenckezelõ
	    indításának
	    körülményeit változtattuk meg (hogy
	    Linux emuláció alatt fusson).</para>

	  <programlisting>#!/bin/sh
case "$1" in
  start)
        if [ -f /usr/local/etc/lmboot_TMW ]; then
              /compat/linux/bin/sh /usr/local/etc/lmboot_TMW -u <replaceable>felhasználó</replaceable> &amp;&amp; echo 'MATLAB_lmgrd'
        fi
        ;;
  stop)
	if [ -f /usr/local/etc/lmdown_TMW ]; then
            /compat/linux/bin/sh /usr/local/etc/lmdown_TMW  &gt; /dev/null 2&gt;&amp;1
	fi
        ;;
  *)
	echo "Usage: $0 {start|stop}"
	exit 1
	;;
esac

exit 0</programlisting>

	  <important>
	    <para>Tegyük ezt az állományt
	      végrehajthatóvá:</para>

	    <screen>&prompt.root; <userinput>chmod +x /usr/local/etc/rc.d/flexlm.sh</userinput></screen>

	    <para>A fenti szkriptben cseréljük ki a
	      <replaceable>felhasználó</replaceable>
	      nevét a rendszerünkben levõ egyik
	      felhasználó nevére (ami persze nem a
	      <username>root</username>).</para>
	  </important>
	</step>

	<step>
	  <para>A licenckezelõt az alábbi paranccsal
	    indítsuk el:</para>

	  <screen>&prompt.root; <userinput>/usr/local/etc/rc.d/flexlm.sh start</userinput></screen>
	</step>
      </procedure>

    </sect2>

    <sect2 id="matlab-jre">
      <title>A &java; futtató környezet
	élesítése</title>

      <para>A <application>&java;</application> futtató
	környezet (&java; Runtime Environment, JRE) linkjét
	irányítsuk át egy &os; alatt
	mûködõ változatéra:</para>

      <screen>&prompt.root; <userinput>cd $MATLAB/sys/java/jre/glnx86/</userinput>
&prompt.root; <userinput>unlink jre; ln -s ./jre1.1.8 ./jre</userinput></screen>

    </sect2>

    <sect2>
      <title>A &matlab; indítószkriptjének
	elkészítése</title>

      <procedure>
	<step>
	  <para>Hozzunk létre egy ilyen
	    indítószkriptet a
	    <filename>/usr/local/bin/matlab</filename>
	    könyvtárban:</para>

	  <programlisting>#!/bin/sh
/compat/linux/bin/sh /compat/linux/usr/local/matlab/bin/matlab "$@"</programlisting>
	</step>

	<step>
	  <para>Futtassuk le a <command>chmod +x
	    /usr/local/bin/matlab</command> parancsot.</para>
	</step>
      </procedure>

      <tip>
	<para>A szkript lefutása során az <filename
	  role="package">emulators/linux_base</filename>
	  verziójától függõen
	  hibákat is kaphatunk.  Ha el akarjuk kerülni
	  ezeket, akkor szerkesszük át a
	  <filename>/compat/linux/usr/local/matlab/bin/matlab</filename>
	  állomány következõ
	  sorát:</para>

	<programlisting>if [ `expr "$lscmd" : '.*-&gt;.*'` -ne 0 ]; then</programlisting>

	<para>(a 13.0.1 számú verzióban ez 410.
	  sor) erre:</para>

	<programlisting>if test -L $newbase; then</programlisting>
      </tip>

    </sect2>

    <sect2>
      <title>A &matlab; leállító
	szkriptjének elkészítése</title>

      <para>A &matlab; szabálytalan kilépéseit az
	alábbi utasítások nyomán tudjuk
	megszüntetni.</para>

      <procedure>
	<step>
	  <para>Hozzunk létre egy
	    <filename>$MATLAB/toolbox/local/finish.m</filename>
	    nevû állományt, majd írjuk bele
	    ezt a sort:</para>

	  <programlisting>! $MATLAB/bin/finish.sh</programlisting>

	  <note>
	    <para>A <literal>$MATLAB</literal> szöveget pontosan
	      így írjuk be.</para></note>

	  <tip>
	    <para>Ugyanebben a könyvtárban találjuk a
	      beállításaink kilépés
	      elõtti mentéséért felelõs
	      <filename>finishsav.m</filename> és
	      <filename>finishdlg.m</filename>
	      állományokat.  Ha ezek valamelyikét
	      módosítjuk, akkor az elõbbi parancsot
	      közvetlenül a <literal>save</literal>
	      után szúrjuk be.</para>
	  </tip>
	</step>

	<step>
	  <para>Hozzunk létre egy
	    <filename>$MATLAB/bin/finish.sh</filename>
	    állományt, amelyben szerepeljen a
	    következõ:</para>

	  <programlisting>#!/usr/compat/linux/bin/sh
(sleep 5; killall -1 matlab_helper) &amp;
exit 0</programlisting>
	</step>

	<step>
	  <para>Tegyük végrehajthatóvá:</para>

	  <screen>&prompt.root; <userinput>chmod +x $MATLAB/bin/finish.sh</userinput></screen>
	</step>
      </procedure>

    </sect2>

    <sect2 id="matlab-using">
      <title>A &matlab; használata</title>

      <para>Most már a <command>matlab</command> parancs
	begépelésével bármikor
	elindíthatjuk.</para>

    </sect2>
  </sect1>

  <sect1 id="linuxemu-oracle">
    <sect1info>
      <authorgroup>
	<author>
	  <firstname>Marcel</firstname>
	  <surname>Moolenaar</surname>
	  <contrib>Írta: </contrib>
	</author>
      </authorgroup>
    </sect1info>

    <title>Az &oracle; telepítése</title>

    <indexterm>
      <primary>alkalmazások</primary>
      <secondary><application>Oracle</application></secondary>
    </indexterm>

    <sect2>
      <title>Elõszó</title>

      <para>Ez a leírás azt mutatja be, hogyan
	telepítsük &os;-re az <application>&oracle;
	8.0.5</application> és <application>&oracle; 8.0.5.1
	Enterprise Edition</application> Linux
	változatait.</para>

    </sect2>

    <sect2>
      <title>A Linux környezet telepítése</title>

      <para>Telepítsük az <filename
	role="package">emulators/linux_base</filename> és
	<filename role="package">devel/linux_devtools</filename>
	portokat a Portgyûjteménybõl.  Amennyiben ennek
	során nehézségekbe
	ütköznénk, próbálkozzunk a
	korábbi változataikkal.</para>

      <para>Fel kell raknunk a Red&nbsp;Hat Tcl csomagját is, ha
	az alkalmazáshoz tartozó intelligens
	ügynököt is futtatni szeretnénk.  Ez a
	<filename>tcl-8.0.3-20.i386.rpm</filename>.  A hivatalos
	<application>RPM</application> port
	segítségével az alábbi
	általános parancson keresztül tudunk
	csomagokat telepíteni:</para>

      <screen>&prompt.root; <userinput>rpm -i --ignoreos --root /compat/linux --dbpath /var/lib/rpm <replaceable>csomag</replaceable></userinput></screen>

      <para>A <replaceable>csomag</replaceable>
	telepítésének semmilyen hibát nem
	kellene okoznia.</para>

    </sect2>

    <sect2>
      <title>Az &oracle; környezetének
	létrehozása</title>

      <para>Az <application>&oracle;</application>
	telepítéséhez elõször ki kell
	alakítanunk a megfelelõ környezetet.  Ez a
	leírás <emphasis>kifejezetten</emphasis>
	arról szól, hogy &os;-n hogyan futtassuk a linuxos
	<application>&oracle;</application>-t, nem pedig az
	<application>&oracle;</application> telepítési
	útmutatójában bemutatottakat
	taglalja.</para>

      <sect3 id="linuxemu-kernel-tuning">
	<title>A rendszermag hangolása</title>

	<indexterm><primary>a rendszermag
	  hangolása</primary></indexterm>

	<para>Ahogy az <application>&oracle;</application>
	  telepítési útmutatójában is
	  olvashatjuk, be kell állítanunk az osztott
	  memória maximális méretét.  &os;
	  alatt erre a célra ne használjuk az
	  <literal>SHMMAX</literal> értéket, mivel az
	  <literal>SHMMAX</literal> az <literal>SHMMAXPGS</literal>
	  és <literal>PGSIZE</literal>
	  értékekbõl számolódik ki.
	  Ezért nekünk itt a <literal>SHMMAXPGS</literal>
	  értékét kell meghatároznunk.
	  Minden egyéb beállítás
	  történhet az útmutatóban megadottak
	  szerint.  Például:</para>

	<programlisting>options SHMMAXPGS=10000
options SHMMNI=100
options SHMSEG=10
options SEMMNS=200
options SEMMNI=70
options SEMMSL=61</programlisting>

	<para>Hangoljuk be ezeket az értékeket az
	  <application>&oracle;</application> tervezett
	  használatához.</para>

	<para>Emellett a konfigurációs
	  állományban ne feledkezzünk meg az
	  alábbi beállítások
	  megadásáról sem:</para>

<programlisting>options SYSVSHM #SysV osztott memória
options SYSVSEM #SysV szemaforok
options SYSVMSG #SysV folyamatok közti kommunikáció</programlisting>
      </sect3>

      <sect3 id="linuxemu-oracle-account">
	<title>Az &oracle; hozzáférése</title>

	<para>Egy rendes hozzáféréshez
	  hasonlóan hozzunk létre egy külön
	  <username>oracle</username> hozzáférést
	  is rendszerünkön.  Az <username>oracle</username>
	  hozzáférés csak annyiban
	  különleges, hogy linuxos
	  parancsértelmezõt kell társítanunk
	  hozzá.  Ehhez vegyük fel
	  <literal>/compat/linux/bin/bash</literal> sort az
	  <filename>/etc/shells</filename> állományba,
	  majd állítsuk át az
	  <username>oracle</username> nevû
	  felhasználó
	  parancsértelmezõjét a
	  <filename>/compat/linux/bin/bash</filename> programra.</para>

      </sect3>

      <sect3 id="linuxemu-environment">
	<title>Környezet</title>

	<para>A megszokott <application>&oracle;</application>
	  környezeti változók, mint
	  például az <envar>ORACLE_HOME</envar> és
	  <envar>ORACLE_SID</envar> mellett még
	  definiálnunk kell a következõket is:</para>

	<informaltable frame="none" pgwide="1">
	  <tgroup cols="2">
	  <colspec colwidth="1*"/>
	  <colspec colwidth="2*"/>
	    <thead>
	      <row>
		<entry>Változó</entry>
		<entry>Érték</entry>
	      </row>
	    </thead>
	    <tbody>
	      <row>
		<entry><envar>LD_LIBRARY_PATH</envar></entry>
		<entry><literal>$ORACLE_HOME/lib</literal></entry>
	      </row>
	      <row>
		<entry><envar>CLASSPATH</envar></entry>
		<entry><literal>$ORACLE_HOME/jdbc/lib/classes111.zip</literal></entry>
	      </row>
	      <row>
		<entry><envar>PATH</envar></entry>
		<entry><literal>/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</literal></entry>
	      </row>
	    </tbody>
	  </tgroup>
	</informaltable>

	<para>Javasoljuk, hogy az összes környezeti
	  változót a <filename>.profile</filename>
	  állományban adjuk meg.  Ennek megfelelõen a
	  példa beállításai így
	  fognak kinézni benne:</para>

	<programlisting>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
PATH=$PATH:/compat/linux/usr/sbin:/bin:/sbin:/usr/bin:/usr/sbin
PATH=$PATH:/usr/local/bin:$ORACLE_HOME/bin
export PATH</programlisting>

      </sect3>
    </sect2>

    <sect2>
      <title>Az &oracle; telepítése</title>

      <para>A Linux emulátorban meghúzódó
	apró egyenletlenségek miatt a
	telepítés elõtt létre kell hoznunk egy
	<filename>.oracle</filename> nevû alkönyvtárat
	a <filename>/var/tmp</filename> könyvtárban.
	Helyezzük ezt az <username>oracle</username>
	felhasználó tulajdonába.  Ezt
	követõen minden további gond nélkül
	képesek leszünk az
	<application>&oracle;</application>
	telepítésére.  Ha netalán
	mégis problémákba
	ütköznénk, elõször mindig az
	<application>&oracle;</application> telepítési
	és konfigurációs állományait
	ellenõrizzük!  Az <application>&oracle;</application>
	telepítése után rakjuk fel a
	következõ szakaszokban bemutatandó
	javításokat.</para>

      <para>Gyakran problémát okoz, ha a TCP protokollt
	még nem telepítettük.  Ennek
	következményeképpen ugyanis nem tudnak
	elindulni a TCP alapú szolgáltatások.  Az
	alábbi mûveletek ebben igyekeznek
	segíteni:</para>

      <screen>&prompt.root; <userinput>cd $ORACLE_HOME/network/lib</userinput>
&prompt.root; <userinput>make -f ins_network.mk ntcontab.o</userinput>
&prompt.root; <userinput>cd $ORACLE_HOME/lib</userinput>
&prompt.root; <userinput>ar r libnetwork.a ntcontab.o</userinput>
&prompt.root; <userinput>cd $ORACLE_HOME/network/lib</userinput>
&prompt.root; <userinput>make -f ins_network.mk install</userinput></screen>

      <para>Ne felejtsük el ismét elindítani a
	<filename>root.sh</filename> szkriptet!</para>

    <sect3 id="linuxemu-patch-root">
	<title>A root.sh javítása</title>

	<para>Az <application>&oracle;</application>
	  telepítése során
	  <username>root</username> (privilegizált)
	  felhasználóként elvégzendõ
	  mûveleteket a <filename>root.sh</filename>
	  elnevezésû szkriptben találjuk.  Ez a
	  szkript az <filename>orainst</filename> könyvtárba
	  kerül.  A <command>chown</command> parancs helyes
	  lefutásához alkalmazzuk az alább
	  mellékelt javítást, vagy az egész
	  szkriptet egy linuxos parancsértelmezõbõl
	  indítsuk el.</para>

	<programlisting>*** 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</programlisting>

	<para>Ha nem CD-rõl telepítjük az
	  <application>&oracle;</application>-t, akkor akár a
	  <filename>root.sh</filename> forrását is
	  kijavíthatjuk.  A neve <filename>rthd.sh</filename>,
	  és a forrásfa <filename>orainst</filename>
	  könyvtárában találhatjuk.</para>

      </sect3>

      <sect3 id="linuxemu-patch-tcl">
	<title>A genclntsh javítása</title>

	<para>A <command>genclntsh</command> szkript a kliensek
	  által használt osztott könyvtár
	  létrehozására alkalmazható.
	  Általában demók
	  fordításához van rá
	  szükség.  Az alábbi javítás
	  alkalmazásával a <envar>PATH</envar>
	  változó értéke
	  törölhetõ:</para>

	<programlisting>*** 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</programlisting>

      </sect3>
    </sect2>

    <sect2>
      <title>Az &oracle; futtatása</title>

      <para>Ha rendesen követtük az iménti
	utasításokat, akkor most már úgy
	tudjuk futtatni az <application>&oracle;</application>-t, mintha
	csak Linuxon futna.</para>

    </sect2>
  </sect1>

  <sect1 id="sapr3">
    <sect1info>
      <authorgroup>
	<author>
	  <firstname>Holger</firstname>
	  <surname>Kipp</surname>
	  <contrib>Írta: </contrib>
	</author>
      </authorgroup>
      <authorgroup>
	<author>
	  <firstname>Valentino</firstname>
	  <surname>Vaschetto</surname>
	  <contrib>Az eredeti verziót SGML-re ültette:
	    </contrib>
	</author>
      </authorgroup>
    </sect1info>

    <title>Az &sap.r3; telepítése</title>

    <indexterm>
      <primary>alkalmazások</primary>
      <secondary><application>SAP R/3</application></secondary>
    </indexterm>

    <para>Az <application>&sap;</application> típusú
      rendszerek telepítéséhez &os;-re hivatalosan
      nem kaphatunk mûszaki segélynyújtást
      &mdash; csak a minõsített platformokat
      támogatják.</para>

    <sect2 id="preface">
      <title>Elõszó</title>

      <para>Ez a leírás az
	<application>&sap.r3;</application> rendszer és
	<application>&oracle;</application> adatbázis Linux
	változatainak telepítését mutatja be
	&os;-n, beleértve a &os; és az
	<application>&oracle;</application>
	telepítését.  Kétféle
	konfigurációt írunk le:</para>

      <itemizedlist>
	<listitem>
	  <para><application>&sap.r3; 4.6B (IDES)</application> és
	  <application>&oracle; 8.0.5</application>, FreeBSD 4.3-STABLE</para>
	</listitem>
	<listitem>
	  <para><application>&sap.r3; 4.6C</application> és
	  <application>&oracle; 8.1.7</application>, FreeBSD 4.5-STABLE</para>
	</listitem>
      </itemizedlist>

      <para>Habár ez a dokumentum igyekszik az összes fontos
	lépést a lehetõ legrészletesebb
	módon tárgyalni, semmiképpen sem
	célja az <application>&oracle;</application> és az
	<application>&sap.r3;</application> alkalmazásokhoz
	mellékelt telepítési
	útmutatók kiváltása.</para>

      <para>A kifejezetten az <application>&sap;</application> vagy az
	<application>&oracle;</application> Linux változataira
	vonatkozó kérdések, valamint az
	<application>&oracle;</application> és az
	<application>&sap; OSS</application> konkrét
	használatával kapcsolatos leírások
	tekintetében a saját
	dokumentációjukat olvassuk el.</para>

    </sect2>

    <sect2 id="software">
      <title>A szoftver</title>

      <para>Az <application>&sap;</application>
	telepítéséhez az alábbi CD-ket
	használtuk fel:</para>

      <sect3 id="software-46b">
	<title>&sap.r3; 4.6B, &oracle; 8.0.5</title>

      <informaltable frame="none" pgwide="1">
	<tgroup cols="3">
	  <thead>
	    <row>
	      <entry>Név</entry>
	      <entry>Szám</entry>
	      <entry>Leírás</entry>
	    </row>
	  </thead>
	  <tbody>
	    <row>
	      <entry>KERNEL</entry>
	      <entry>51009113</entry>
	      <entry>SAP Kernel Oracle /
		telepítõ / AIX, Linux, Solaris</entry>
	    </row>
	    <row>
	      <entry>RDBMS</entry>
	      <entry>51007558</entry>
	      <entry>Oracle / RDBMS 8.0.5.X /
		Linux</entry>
	    </row>
	    <row>
	      <entry>EXPORT1</entry>
	      <entry>51010208</entry>
	      <entry>IDES / DB-Export /
		1. lemez</entry>
	    </row>
	    <row>
	      <entry>EXPORT2</entry>
	      <entry>51010209</entry>
	      <entry>IDES / DB-Export /
		2. lemez</entry>
	    </row>
	    <row>
	      <entry>EXPORT3</entry>
	      <entry>51010210</entry>
	      <entry>IDES / DB-Export /
		3. lemez</entry>
	    </row>
	    <row>
	      <entry>EXPORT4</entry>
	      <entry>51010211</entry>
	      <entry>IDES / DB-Export /
		4. lemez</entry>
	    </row>
	    <row>
	      <entry>EXPORT5</entry>
	      <entry>51010212</entry>
	      <entry>IDES / DB-Export /
		5. lemez</entry>
	    </row>
	    <row>
	      <entry>EXPORT6</entry>
	      <entry>51010213</entry>
	      <entry>IDES / DB-Export /
		6. (utolsó) lemez</entry>
	    </row>
	  </tbody>
	</tgroup>
      </informaltable>

      <para>Emellett még használtuk az
	<application>&oracle; 8 Server</application> (az elõzetes
	8.0.5 változat a Linux 2.0.33 verziójához)
	CD-jét is, amely igazából nem
	feltétlenül szükséges, valamint a &os;
	(a 4.3 RELEASE kiadása után nem sokkal levõ)
	4.3-STABLE változatát.</para>

      </sect3>

      <sect3 id="software-46c">
	<title>&sap.r3; 4.6C SR2, &oracle; 8.1.7</title>

	<informaltable frame="none" pgwide="1">
	  <tgroup cols="3">
	    <thead>
	      <row>
		<entry>Név</entry>
		<entry>Szám</entry>
		<entry>Leírás</entry>
	      </row>
	    </thead>
	    <tbody>
	      <row>
		<entry>KERNEL</entry>
		<entry>51014004</entry>
		<entry>SAP Kernel Oracle /
		  SAP Kernel 4.6D változat / DEC, Linux</entry>
	      </row>
	      <row>
		<entry>RDBMS</entry>
		<entry>51012930</entry>
		<entry>Oracle 8.1.7/ RDBMS /
		  Linux</entry>
	      </row>
	      <row>
		<entry>EXPORT1</entry>
		<entry>51013953</entry>
		<entry>4.6C kiadás SR2 / Export
		  / 1. lemez</entry>
	      </row>
	      <row>
		<entry>EXPORT1</entry>
		<entry>51013953</entry>
		<entry>4.6C kiadás SR2 / Export
		  / 2. lemez</entry>
	      </row>
	      <row>
		<entry>EXPORT1</entry>
		<entry>51013953</entry>
		<entry>4.6C kiadás SR2 / Export
		  / 3. lemez</entry>
	      </row>
	      <row>
		<entry>EXPORT1</entry>
		<entry>51013953</entry>
		<entry>4.6C kiadás SR2 / Export
		  / 4. (utolsó) lemez</entry>
	      </row>
	      <row>
		<entry>LANG1</entry>
		<entry>51013954</entry>
		<entry>4.6C kiadás SR2 / Nyelvi
		  támogatás / német, angol, francia
		  / 1.  lemez</entry>
	      </row>
	    </tbody>
	  </tgroup>
	</informaltable>

	<para>A telepítendõ nyelvtõl függõen
	  egyéb nyelvi támogatást tartalmazó
	  CD használata is szükségessé
	  válhat.  Itt most csak a német és angol
	  nyelveket használjuk, ezért elegendõ az
	  elsõ CD.  Csendben hozzátesszük, hogy mind a
	  négy EXPORT CD száma megegyezik.
	  Ugyanígy a három nyelvi CD-nek is megegyeznek a
	  számai (ez eltér a 4.6B IDES kiadás CD
	  számozásától).  Az
	  írás pillanatában a &os; 4.5-STABLE
	  (2002.03.20-i) változatát
	  használjuk.</para>

      </sect3>
    </sect2>

    <sect2 id="sap-notes">
      <title>&sap; füzetek</title>

      <para>Az <application>&sap.r3;</application>
	telepítésével kapcsolatban az alábbi
	füzetek bizonyultak hasznosnak:</para>

      <sect3 id="sap-notes-46b">
	<title>&sap.r3; 4.6B, &oracle; 8.0.5</title>

	<informaltable frame="none" pgwide="1">
	  <tgroup cols="2">
	    <thead>
	      <row>
		<entry>Szám</entry>
		<entry>Cím</entry>
	      </row>
	    </thead>
	    <tbody>
	      <row>
		<entry>0171356</entry>
		<entry>SAP Software on Linux: Essential
		  Comments</entry>
	      </row>
	      <row>
		<entry>0201147</entry>
		<entry>INST: 4.6C R/3 Inst. on UNIX -
		  Oracle</entry>
	      </row>
	      <row>
		<entry>0373203</entry>
		<entry>Update / Migration Oracle 8.0.5 --&gt;
		  8.0.6/8.1.6 LINUX</entry>
	      </row>
	      <row>
		<entry>0072984</entry>
		<entry>Release of Digital UNIX 4.0B for
		  Oracle</entry>
	      </row>
	      <row>
		<entry>0130581</entry>
		<entry>R3SETUP step DIPGNTAB terminates</entry>
	      </row>
	      <row>
		<entry>0144978</entry>
		<entry>Your system has not been installed
		  correctly</entry>
	      </row>
	      <row>
		<entry>0162266</entry>
		<entry>Questions and tips for R3SETUP on Windows
		  NT / W2K</entry>
	      </row>
	    </tbody>
	  </tgroup>
	</informaltable>
      </sect3>

      <sect3 id="sap-notes-46c">
	<title>&sap.r3; 4.6C, &oracle; 8.1.7</title>

	<informaltable frame="none" pgwide="1">
	  <tgroup cols="2">
	    <thead>
	      <row>
		<entry>Szám</entry>
		<entry>Cím</entry>
	      </row>
	    </thead>
	    <tbody>
	      <row>
		<entry>0015023</entry>
		<entry>Initializing table TCPDB (RSXP0004)
		  (EBCDIC)</entry>
	      </row>
	      <row>
		<entry>0045619</entry>
		<entry>R/3 with several languages or
		  typefaces</entry>
	      </row>
	      <row>
		<entry>0171356</entry>
		<entry>SAP Software on Linux: Essential
		  Comments</entry>
	      </row>
	      <row>
		<entry>0195603</entry>
		<entry>RedHat 6.1 Enterprise version:
		  Known problems</entry>
	      </row>
	      <row>
		<entry>0212876</entry>
		<entry>The new archiving tool SAPCAR</entry>
	      </row>
	      <row>
		<entry>0300900</entry>
		<entry>Linux: Released DELL Hardware</entry>
	      </row>
	      <row>
		<entry>0377187</entry>
		<entry>RedHat 6.2: important remarks</entry>
	      </row>
	      <row>
		<entry>0387074</entry>
		<entry>INST: R/3 4.6C SR2 Installation on
		  UNIX</entry>
	      </row>
	      <row>
		<entry>0387077</entry>
		<entry>INST: R/3 4.6C SR2 Inst. on UNIX -
		  Oracle</entry>
	      </row>
	      <row>
		<entry>0387078</entry>
		<entry>SAP Software on UNIX: OS Dependencies
		  4.6C SR2</entry>
	      </row>
	    </tbody>
	  </tgroup>
	</informaltable>

      </sect3>
    </sect2>

    <sect2 id="hardware-requirements">
      <title>Hardverkövetelmények</title>

      <para>Az alábbi hardvereszközök
	szükségesek az <application>&sap.r3;</application>
	rendszer telepítéséhez.  Az éles
	használathoz ennél természetesen valamivel
	több kell majd:</para>

      <informaltable frame="none" pgwide="1">
	<tgroup cols="3">
	  <thead>
	    <row>
	      <entry>Változat</entry>
	      <entry>4.6B</entry>
	      <entry>4.6C</entry>
	    </row>
	  </thead>
	  <tbody>
	    <row>
	      <entry>Processzor</entry>
	      <entry>Két &pentium; III 800MHz</entry>
	      <entry>Két &pentium; III 800MHz</entry>
	    </row>
	    <row>
	      <entry>Memória</entry>
	      <entry>1GB ECC</entry>
	      <entry>2GB ECC</entry>
	    </row>
	    <row>
	      <entry>Szabad hely a merevlemezen</entry>
	      <entry>50 - 60GB (IDES)</entry>
	      <entry>50 - 60GB (IDES)</entry>
	    </row>
	  </tbody>
	</tgroup>
      </informaltable>

      <para>Éles használatra nagyobb
	gyorsítótárral rendelkezõ &xeon;
	processzorokat, nagysebességû
	háttértárakat (SCSI, hardveres RAID
	vezérlõvel), USV és ECC memória
	modulok ajánlottak.  A nagy tárigényt
	egyébként az elõre beállított
	IDES rendszer indokolja, ami egy 27&nbsp;GB méretû
	adatbázist hoz létre a telepítés
	során.  Ez a terület általában
	elegendõ egy frissen induló rendszer és
	hozzá tartozó alkalmazásadatok
	tárolására.</para>

      <sect3 id="hardware-46b">
	<title>&sap.r3; 4.6B, &oracle; 8.0.5</title>

	<para>A következõ hardverkonfigurációt
	  használtuk: két 800 MHz-es &pentium;&nbsp;III
	  processzor és a hozzájuk tartozó alaplap,
	  egy &adaptec; 29160 Ultra160 SCSI-vezérlõ (a
	  40/80&nbsp;GB méretû DLT szalagos meghajtó
	  és CD-meghajtó használatához)
	  és egy &mylex; &acceleraid; RAID-vezérlõ (2
	  csatorna, 6.00-1-00 verziójú firmware és
	  32&nbsp;MB memória), amihez két 17&nbsp;GB-os
	  (tükrözött) merevlemez és négy
	  36&nbsp;GB-os merevlemez (RAID&nbsp;5) csatlakozik.</para>

      </sect3>

      <sect3 id="hardware-46c">
	<title>&sap.r3; 4.6C, &oracle; 8.1.7</title>

	<para>Itt a hardver egy &dell; &poweredge; 2500 volt:
	  kétprocesszoros alaplap, két darab
	  1000&nbsp;MHz-es &pentium;&nbsp;III processzorral
	  (fejenként 256&nbsp;KB
	  gyorsítótárral), 2&nbsp;GB PC133-as ECC
	  SDRAM memóriával, PERC/3 DC PCI
	  RAID-vezérlõvel (128&nbsp;MB memória),
	  valamint egy EIDE DVD-meghajtóval.  A
	  RAID-vezérlõre két, egyenként
	  18&nbsp;GB méretû merevlemezt (tükrözve)
	  és négy 36&nbsp;GB méretû
	  merevlemezt csatlakoztattunk (RAID&nbsp;5-ben).</para>

      </sect3>
    </sect2>

    <sect2 id="installation">
      <title>A &os; telepítése</title>

      <para>Elõször is telepítenünk kell a &os;-t.
	Ez több módon is lehetséges, ezekrõl a
	<xref linkend="install-diff-media"/>ban olvashatunk
	bõvebben.</para>

      <sect3 id="disk-layout">
	<title>A lemezek felosztása</title>

	<para>Az egyszerûség kedvéért az
	  <application>&sap.r3; 46B</application> és
	  <application>&sap.r3; 46C SR2</application>
	  telepítése során is ugyanazt a
	  felosztást használtuk.  Egyedül az
	  eszközök nevei változtak, mivel a
	  telepítés eltérõ hardvereken
	  történt (<filename>/dev/da</filename>) és
	  <filename>/dev/amr</filename>, tehát ha az AMI
	  &megaraid; esetén a <filename>/dev/da0s1a</filename>
	  helyett a <filename>/dev/amr0s1a</filename> eszközt
	  láthatjuk):</para>

	<informaltable frame="none" pgwide="1">
	  <tgroup cols="3">
	    <thead>
	      <row>
		<entry>Állományrendszer</entry>
		<entry>Méret</entry>
		<entry>Csatlakozási pont</entry>
	      </row>
	    </thead>
	    <tbody>
	      <row>
		<entry><filename>/dev/da0s1a</filename></entry>
		<entry>1&nbsp;GB</entry>
		<entry><filename>/</filename></entry>
	      </row>
	      <row>
		<entry><filename>/dev/da0s1b</filename></entry>
		<entry>6&nbsp;GB</entry>
		<entry>lapozóállomány</entry>
	      </row>
	      <row>
		<entry><filename>/dev/da0s1e</filename></entry>
		<entry>2&nbsp;GB</entry>
		<entry><filename>/var</filename></entry>
	      </row>
	      <row>
		<entry><filename>/dev/da0s1f</filename></entry>
		<entry>8&nbsp;GB</entry>
		<entry><filename>/usr</filename></entry>
	      </row>
	      <row>
		<entry><filename>/dev/da1s1e</filename></entry>
		<entry>45&nbsp;GB</entry>
		<entry><filename>/compat/linux/oracle</filename></entry>
	      </row>
	      <row>
		<entry><filename>/dev/da1s1f</filename></entry>
		<entry>2&nbsp;GB</entry>
		<entry><filename>/compat/linux/sapmnt</filename></entry>
	      </row>
	      <row>
		<entry><filename>/dev/da1s1g</filename></entry>
		<entry>2&nbsp;GB</entry>
		<entry><filename>/compat/linux/usr/sap</filename></entry>
	      </row>
	    </tbody>
	  </tgroup>
	</informaltable>

	<para>Elõre állítsuk be és
	  inicializáljuk a két logikai meghajtót a
	  &mylex; és a PERC/3 RAID-vezérlõkön.
	  A hozzá tartozó szoftver a
	  <acronym>BIOS</acronym> indításának
	  fázisában hívható be.</para>

	<para>A lemezek felosztása némileg eltér az
	  &sap; által javasoltaktól, mivel az &sap;
	  szerint az <application>&oracle;</application>
	  könyvtárait (néhány másikkal
	  együtt) külön-külön érdemes
	  csatlakoztatni &mdash; mi most az
	  egyszerûsítés kedvéért csak
	  létrehoztuk ezeket.</para>

      </sect3>

      <sect3 id="makeworldandnewkernel">
	<title>A <command>make world</command> és egy új
	  rendszermag</title>

	<para>Töltsük le a legfrissebb -STABLE
	  forrásokat.  Fordítsuk újra az
	  összes forrást (<command>make world</command>)
	  és a beállításainak
	  elvégzése után a saját
	  rendszermagunkat is.  Itt ne felejtsük el megadni az
	  <application>&sap.r3;</application> és az
	  <application>&oracle;</application>
	  mûködéséhez szükséges
	  <link
	  linkend="kerneltuning">paramétereket</link>.</para>

      </sect3>
    </sect2>

    <sect2 id="installingthelinuxenviornment">
      <title>A Linux környezet telepítése</title>

      <sect3 id="installinglinuxbase-system">
	<title>Az linuxos alaprendszer telepítése</title>

	<para>Elsõként a <link
	  linkend="linuxemu-libs-port">linux_base</link> portot kell
	  felraknunk (<username>root</username>
	  felhasználóként):</para>

	<screen>&prompt.root; <userinput>cd /usr/ports/emulators/linux_base-fc4</userinput>
&prompt.root; <userinput>make install distclean</userinput></screen>

      </sect3>

      <sect3 id="installinglinuxdevelopment">
	<title>A linuxos fejlesztõi környezet
	  telepítése</title>

	<para>Ha az <application>&oracle;</application>-t &os;-re a
	  <xref linkend="linuxemu-oracle"/>ban leírtak szerint
	  akarjuk telepíteni, akkor szükségünk
	  lesz a linuxos fejlesztõeszközökre is:</para>

	<screen>&prompt.root; <userinput>cd /usr/ports/devel/linux_devtools</userinput>
&prompt.root; <userinput>make install distclean</userinput></screen>

	<para>A linuxos fejlesztõkörnyezetet csak az
	  <application>&sap.r3; 46B IDES</application>
	  telepítésénél raktuk fel.  Nincs
	  rá szükségünk, ha a &os; rendszeren
	  nem akarjuk újralinkelni az
	  <application>&oracle;</application> adatbázist.
	  Pontosan ez a helyzet, amikor egy Linux rendszerhez
	  gyártott <application>&oracle;</application>
	  készletet használunk.</para>

      </sect3>

      <sect3 id="installingnecessaryrpms">
	<title>A szükséges RPM csomagok
	  telepítése</title>

	<indexterm><primary>RPM</primary></indexterm>

	<para>Az <command>R3SETUP</command>
	  elindításához PAM
	  támogatásra is szükségünk lesz.
	  Amikor elõször próbáltuk meg
	  telepíteni a &os; 4.3-STABLE változatára
	  az <application>&sap;</application>-t, felraktuk a PAM-et
	  és az összes hozzá tartozó csomagot,
	  majd végül úgy bírtuk
	  mûködésre, hogy
	  kényszerítettük a PAM
	  telepítését is.  Az <application>&sap.r3;
	  4.6C SR2</application> esetén szintén
	  sikerült önmagában felrakni a PAM RPM
	  csomagját is, tehát úgy néz ki,
	  hogy a függõségeit már nem kell
	  telepíteni: </para>

	<screen>&prompt.root; <userinput>rpm -i --ignoreos --nodeps --root /compat/linux --dbpath /var/lib/rpm \
pam-0.68-7.i386.rpm</userinput></screen>

	<para>Az <application>&oracle; 8.0.5</application>
	  verziójához mellékelt intelligens
	  ügynök futtatásához fel kell rakni a
	  RedHat <filename>tcl-8.0.5-30.i386.rpm</filename> nevû
	  Tcl csomagját is (máskülönben a az
	  <application>&oracle;</application> telepítése
	  közben szükséges újralinkelés
	  nem fog mûködni).  Vannak ugyan
	  egyébként is gondok az
	  <application>&oracle;</application>
	  újralinkelésével, azonban ez linuxos
	  probléma, nem pedig &os;-s.</para>

      </sect3>

      <sect3 id="linuxprocandfallbackelfbrand">
	<title>Néhány további tipp</title>

	<para>Hasznos lehet, ha felvesszük a
	  <literal>linprocfs</literal> bejegyzést az
	  <filename>/etc/fstab</filename> állományba.
	  Ennek pontos részleteit a &man.linprocfs.5; man oldalon
	  találjuk meg.  Másik fontos paraméter a
	  <literal>kern.fallback_elf_brand=3</literal>, amelyet az
	  <filename>/etc/sysctl.conf</filename> állományba
	  kell beszúrnunk.</para>

      </sect3>
    </sect2>

    <sect2 id="creatingsapr3env">
      <title>Az &sap.r3; környezetének
	létrehozása</title>

      <sect3 id="filesystemsandmountpoints">
	<title>A szükséges állományrendszerek
	  és csatlakozási pontok
	  létrehozása</title>

	<para>Egy egyszerûbb telepítéshez elég
	  csupán a következõ
	  állományrendszereket
	  elkészíteni:</para>

	<informaltable frame="none" pgwide="1">
	  <tgroup cols="2">
	    <thead>
	      <row>
		<entry>csatlakozási pont</entry>
		<entry>méret GB-ban</entry>
	      </row>
	    </thead>
	    <tbody>
	      <row>
		<entry><filename>/compat/linux/oracle</filename></entry>
		<entry>45 GB</entry>
	      </row>
	      <row>
		<entry><filename>/compat/linux/sapmnt</filename></entry>
		<entry>2 GB</entry>
	      </row>
	      <row>
		<entry><filename>/compat/linux/usr/sap</filename></entry>
		<entry>2 GB</entry>
	      </row>
	    </tbody>
	  </tgroup>
	</informaltable>

	<para>Készítenünk kell még
	  néhány linket is, különben az
	  <application>&sap;</application> telepítõje
	  panaszkodni fogni az ellenõrzésük
	  során:</para>

	<screen>&prompt.root; <userinput>ln -s /compat/linux/oracle /oracle</userinput>
&prompt.root; <userinput>ln -s /compat/linux/sapmnt /sapmnt</userinput>
&prompt.root; <userinput>ln -s /compat/linux/usr/sap /usr/sap</userinput></screen>

	<para>Az egyik ilyen telepítés közben
	  megjelenõ hibaüzenet (a <emphasis>PRD</emphasis>
	  rendszer és az <application>&sap.r3; 4.6C
	  SR2</application> telepítése
	  esetén):</para>

	<screen>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'</screen>

      </sect3>

      <sect3 id="creatingusersanddirectories">
	<title>A felhasználók és
	  könyvtárak létrehozása</title>

	<para>Az <application>&sap.r3;</application> rendszernek
	  két felhasználóra és három
	  csoportra van szüksége.  Az igényelt
	  felhasználók nevei az
	  <application>&sap;</application> rendszer
	  azonosítójától (System ID, SID)
	  függenek, amely három betûbõl
	  áll.  Egyes ilyen rendszerazonosítók az
	  <application>&sap;</application> számára vannak
	  fenntartva.  (Például a <literal>SAP</literal>
	  és a <literal>NIX</literal>.  Ezek teljes
	  listáját az <application>&sap;</application>
	  dokumentációjában találjuk meg.)
	  Erre az IDES telepítéséhez az
	  <literal>IDS</literal>, a 4.6C SR2
	  telepítésénél a
	  <literal>PRD</literal> neveket adtuk, mivel ezeket a
	  rendszereket éles használatra
	  szánták.  Ennélfogva a
	  következõ csoportokat hoztuk létre
	  hozzájuk (a csoportok azonosítói ugyan
	  eltérhetnek az általunk
	  használtaktól):</para>

	<informaltable frame="none" pgwide="1">
	  <tgroup cols="3">
	  <thead>
	  <row>
	    <entry>csoport azonosítója</entry>
	    <entry>csoport neve</entry>
	    <entry>leírás</entry>
	  </row>
	  </thead>
	  <tbody>
	  <row>
	    <entry>100</entry>
	    <entry>dba</entry>
	    <entry>Adatbázis adminisztrátor</entry>
	  </row>
	  <row>
	    <entry>101</entry>
	    <entry>sapsys</entry>
	    <entry>&sap; rendszer</entry>
	  </row>
	  <row>
	    <entry>102</entry>
	    <entry>oper</entry>
	    <entry>Adatbázis operátor</entry>
	  </row>
	  </tbody>
	  </tgroup>
	</informaltable>

	<para>Az <application>&oracle;</application>
	  alapértelmezett
	  telepítésénél csak a
	  <groupname>dba</groupname> csoport jön létre.  A
	  <groupname>dba</groupname> csoportot
	  <groupname>oper</groupname> csoportként is
	  használhatjuk (bõvebb
	  információkért lásd az
	  <application>&oracle;</application> és az
	  <application>&sap;</application>
	  dokumentációját).</para>

	<para>Ezenkívül az alábbi
	  felhasználókra van még
	  szükségünk:</para>

	<informaltable frame="none" pgwide="1">
	  <tgroup cols="6">
	  <thead>
	  <row>
	    <entry>felhasználói
	      azonosító</entry>
	    <entry>felhasználói név</entry>
	    <entry>általános név</entry>
	    <entry>csoport</entry>
	    <entry>egyéb csoportok</entry>
	    <entry>leírás</entry>
	  </row>
	  </thead>
	  <tbody>
	  <row>
	    <entry>1000</entry>
	    <entry>idsadm/prdadm</entry>
	    <entry><replaceable>sid</replaceable>adm</entry>
	    <entry>sapsys</entry>
	    <entry>oper</entry>
	    <entry>&sap; adminisztrátor</entry>
	  </row>
	  <row>
	    <entry>1002</entry>
	    <entry>oraids/oraprd</entry>
	    <entry>ora<replaceable>sid</replaceable></entry>
	    <entry>dba</entry>
	    <entry>oper</entry>
	    <entry>&oracle; adminisztrátor</entry>
	  </row>
	  </tbody>
	  </tgroup>
	</informaltable>

	<para>Az &man.adduser.8; parancs használata során
	  a következõkre lesz szükségünk egy
	  <quote>&sap; Administrator</quote>
	  létrehozásához (figyeljük a
	  parancsértelmezõt (shell) és a
	  felhasználói könyvtárat (home
	  directory)):</para>

	<programlisting>Name: <replaceable>sid</replaceable>adm
Password: ******
Fullname: SAP Administrator <replaceable>SID</replaceable>
Uid: 1000
Gid: 101 (sapsys)
Class:
Groups: sapsys dba
HOME: /home/<replaceable>sid</replaceable>adm
Shell: bash  (/compat/linux/bin/bash)</programlisting>

	<para>Ugyanígy az <quote>&oracle; Administrator</quote>
	  esetében:</para>

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

	<para>A <groupname>dba</groupname> és
	  <groupname>oper</groupname> csoportok használata
	  során ne felejtsük el megadni az
	  <groupname>oper</groupname> csoportot sem.</para>

      </sect3>

      <sect3 id="creatingdirectories">
	<title>Könyvtárak létrehozása</title>

	<para>A könyvtárakat általában
	  külön állományrendszerekként
	  hozzák létre, de ez teljesen az
	  igényeinken múlik.  Mi most egyszerû
	  könyvtárakként alakítottuk ki
	  ezeket, ezért tulajdonképpen ugyanazon a
	  RAID&nbsp;5 tömbön találhatóak
	  meg:</para>

	<para>Ehhez elõször beállítjuk az egyes
	  könyvtárak tulajdonosait és
	  engedélyeit (<username>root</username>
	  felhasználóként):</para>

	<screen>&prompt.root; <userinput>chmod 775 /oracle</userinput>
&prompt.root; <userinput>chmod 777 /sapmnt</userinput>
&prompt.root; <userinput>chown root:dba /oracle</userinput>
&prompt.root; <userinput>chown <replaceable>sid</replaceable>adm:sapsys /compat/linux/usr/sap</userinput>
&prompt.root; <userinput>chmod 775 /compat/linux/usr/sap</userinput></screen>

	<para>Másodsorban
	  <username>ora<replaceable>sid</replaceable></username>
	  felhasználóként hozzuk létre az
	  <filename>/oracle/<replaceable>SID</replaceable></filename>
	  alkönyvtárait:</para>

	<screen>&prompt.root; <userinput>su - ora<replaceable>sid</replaceable></userinput>
&prompt.root; <userinput>cd /oracle/<replaceable>SID</replaceable></userinput>
&prompt.root; <userinput>mkdir mirrlogA mirrlogB origlogA origlogB</userinput>
&prompt.root; <userinput>mkdir sapdata1 sapdata2 sapdata3 sapdata4 sapdata5 sapdata6</userinput>
&prompt.root; <userinput>mkdir saparch sapreorg</userinput>
&prompt.root; <userinput>exit</userinput></screen>

	<para>Az <application>&oracle; 8.1.7</application>
	  telepítésénél még
	  további könyvtárakra is
	  szükségünk lesz:</para>

	<screen>&prompt.root; <userinput>su - ora<replaceable>sid</replaceable></userinput>
&prompt.root; <userinput>cd /oracle</userinput>
&prompt.root; <userinput>mkdir 805_32</userinput>
&prompt.root; <userinput>mkdir client stage</userinput>
&prompt.root; <userinput>mkdir client/80x_32</userinput>
&prompt.root; <userinput>mkdir stage/817_32</userinput>
&prompt.root; <userinput>cd /oracle/<replaceable>SID</replaceable></userinput>
&prompt.root; <userinput>mkdir 817_32</userinput></screen>

	<note>
	  <para>A <filename>client/80x_32</filename>
	    könyvtárnak pontosan ilyen névvel kell
	    rendelkeznie.  Ne cseréljük ki a benne
	    szereplõ <emphasis>x</emphasis>-et semmire se!</para>
	</note>

	<para>A harmadik lépésben létrehozzuk a
	  <username><replaceable>sid</replaceable>adm</username>
	  felhasználóhoz tartozó
	  könyvtárakat:</para>

	<screen>&prompt.root; <userinput>su - <replaceable>sid</replaceable>adm</userinput>
&prompt.root; <userinput>cd /usr/sap</userinput>
&prompt.root; <userinput>mkdir <replaceable>SID</replaceable></userinput>
&prompt.root; <userinput>mkdir trans</userinput>
&prompt.root; <userinput>exit</userinput></screen>

      </sect3>

      <sect3 id="entriesinslashetcslashservices">
	<title>Az <filename>/etc/services</filename></title>

	<para>A <application>&sap.r3;</application>
	  mûködéséhez fel kell vennünk
	  néhány olyan bejegyzést is az
	  <filename>/etc/services</filename> állományba,
	  amelyek a &os; telepítése során nem
	  jönnek létre.  Így tehát
	  írjuk be az alábbi sorokat (legalább a
	  használni kívánt példány
	  számához illõ sorokat adjuk meg &mdash; ez
	  jelen esetünkben most a <literal>00</literal>.
	  Természetesen az sem okoz gondot, ha a
	  <literal>dp</literal>, <literal>gw</literal>,
	  <literal>sp</literal> és <literal>ms</literal>
	  esetén beírjuk az összes
	  példánynak megfelelõ portot
	  <literal>00</literal>-tól <literal>99</literal>-ig).
	  Amennyiben a <application>SAProuter</application> vagy az
	  <application>&sap;</application> OSS
	  használatára lenne szükségünk,
	  akkor adjuk meg a <application>SAProuter</application>
	  által lefoglalt <literal>99</literal>-es
	  példánynak megfelelõ 3299-es portot a
	  rendszerünkön:</para>

	<programlisting>
sapdp00  3200/tcp # SAP menetirányító        3200 + a példány száma
sapgw00  3300/tcp # SAP átjáró               3300 + a példány száma
sapsp00  3400/tcp #                          3400 + a példány száma
sapms00  3500/tcp #                          3500 + a példány száma
sapms<replaceable>SID</replaceable> 3600/tcp # SAP üzenetkezelõ szerver 3600 + a példány száma
sapgw00s 4800/tcp # biztonságos SAP átjáró   4800 + a példány száma</programlisting>

      </sect3>

      <sect3 id="necessarylocales">
	<title>A szükséges nyelvi
	  beállítások</title>

	<indexterm><primary>nyelvi
	  beállítás</primary></indexterm>

	<para>Az <application>&sap;</application>-nek legalább
	  két olyan nyelvre van szüksége, amely nem
	  része az alap RedHat telepítéseknek.  Az
	  &sap; a saját FTP szervereirõl
	  elérhetõvé tette az ehhez
	  szükséges RPM csomagokat (amelyek viszont csak OSS
	  típusú hozzáférés
	  birtokában tölthetõek le).  A 0171356
	  számú jegyzet tartalmazza a beszerzendõ
	  RPM-ek listáját.</para>

	<para>Megcsinálhatjuk úgy is, hogy egyszerûen
	  csak linkeket hozunk létre (például a
	  <emphasis>de_DE</emphasis> és
	  <emphasis>en_US</emphasis> könyvtárakra),
	  habár ezt egy éles rendszer esetében
	  semmiképpen sem ajánljuk (az IDES rendszerrel
	  tapasztalataink szerint eddig még remekül
	  mûködött).  Az alábbi nyelvi
	  beállítások fognak tehát
	  nekünk kelleni:</para>

	<programlisting>de_DE.ISO-8859-1
en_US.ISO-8859-1</programlisting>

	<para>Így hozzuk létre hozzájuk a
	  linkeket:</para>

	<screen>&prompt.root; <userinput>cd /compat/linux/usr/share/locale</userinput>
&prompt.root; <userinput>ln -s de_DE de_DE.ISO-8859-1</userinput>
&prompt.root; <userinput>ln -s en_US en_US.ISO-8859-1</userinput></screen>

	<para>A telepítés során az iméntiek
	  hiánya gondokat okozhat.  Ha folyamatosan figyelmen
	  kívül hagyjuk az ezekbõl fakadó
	  hibákat (vagyis a <filename>CENTRDB.R3S</filename>
	  állományban a gondot okozó
	  lépések <literal>STATUS</literal>
	  értékét <literal>OK</literal>-ra
	  állítjuk), akkor komolyabb
	  erõfeszítések megtétele
	  nélkül majd képtelenek leszünk
	  bejelentkezni a frissen telepített
	  <application>&sap;</application> rendszerünkbe.</para>

      </sect3>

      <sect3 id="kerneltuning">
	<title>A rendszermag finomhangolása</title>

	<indexterm><primary>a rendszermag
	  finomhangolása</primary></indexterm>

	<para>Az <application>&sap.r3;</application> rendszerek
	  temérdek mennyiségû erõforrást
	  igényelnek.  Ennek
	  kielégítésére az alábbi
	  paramétereket adjuk hozzá a rendszermag
	  beállításait tartalmazó
	  állományhoz:</para>

	<programlisting># Adjunk a memóriazabálóknak (SAP és Oracle):
options MAXDSIZ="(1024*1024*1024)"
options DFLDSIZ="(1024*1024*1024)"
# Kell néhány System V beállítás is:
options SYSVSHM # SYSV típusú osztott memória be
options SHMMAXPGS=262144 # a megosztható memória maximális mérete lapokban
#options SHMMAXPGS=393216 # a 46C telepítésekor ezt használjuk
options SHMMNI=256 # az osztott memóriákhoz tartozó azonosítók maximális száma
options SHMSEG=100 # a futó programonként megosztható szegmensek maximuma
options SYSVMSG # SYSV típusú üzenetsorok
options MSGSEG=32767 # a rendszerben keringõ üzenetszegmensek maximális száma
options MSGSSZ=32 # az üzenetszegmensek mérete. 2 hatványa LEGYEN
options MSGMNB=65535 # maximális karakter üzenetsoronként
options MSGTQL=2046 # a rendszerben levõ üzenetek maximuma
options SYSVSEM # SYSV típusú szemaforok
options SEMMNU=256 # a szemaforok UNDO struktúráinak száma
options SEMMNS=1024 # a rendszerben levõ szemaforok száma
options SEMMNI=520 # a szemaforok azonosítóinak mennyisége
options SEMUME=100 # az UNDO kulcsok száma</programlisting>

	<para>Az itt megadott minimum értékek az &sap;
	  által kiadott dokumentációkból
	  származnak.  Mivel a Linux változathoz
	  errõl nincs külön leírás,
	  ezért a (32 bites) HP-UX változat
	  dokumentációi között érdemes
	  ennek utánanézni.  Mivel a 4.6C SR2
	  telepítéséhez használt rendszeren
	  valamivel több fizikai memória állt
	  rendelkezésünkre, ezért az osztott
	  szegmensek méretét nagyobbra tudtuk
	  megválasztani mind az <application>&sap;</application>,
	  mind az <application>&oracle;</application> esetében,
	  ami magyarázza a megosztható lapok nagyobb
	  számát.</para>

	<note>
	  <para>A &os; &i386; változatának
	    telepítése során hagyjuk meg a
	    <literal>MAXDSIZ</literal> és
	    <literal>DFLDSIZ</literal> értékek
	    alapértelmezett 1&nbsp;GB-os maximumát.
	    Ellenkezõ esetben ezekhez hasonló furcsa
	    hibaüzeneteket láthatunk: <errorname>ORA-27102:
	    out of memory</errorname> vagy <errorname>Linux Error: 12:
	    Cannot allocate memory</errorname>.</para>
	</note>

      </sect3>
    </sect2>

    <sect2 id="installingsapr3">
      <title>Az &sap.r3; telepítése</title>

      <sect3 id="preparingsapcdroms">
	<title>Az &sap; CD-k
	  elõkészítése</title>

	<para>Sok CD-t kell a telepítés során
	  mozgatni, tehát csatlakoztatni és
	  leválasztani.  Ha viszont elegendõ
	  meghajtóval rendelkezünk, akkor akár
	  csatlakoztathatjuk egyszerre is az összeset.  Vagy
	  felmásolhatjuk a CD-k tartalmát a nekik
	  megfelelõ könyvtárakba:</para>

	<programlisting>/oracle/<replaceable>SID</replaceable>/sapreorg/<replaceable>cd-neve</replaceable></programlisting>

	<para>ahol a <replaceable>cd-neve</replaceable> a
	  következõk valamelyike: <filename>KERNEL</filename>,
	  <filename>RDBMS</filename>, <filename>EXPORT1</filename>,
	  <filename>EXPORT2</filename>, <filename>EXPORT3</filename>,
	  <filename>EXPORT4</filename>, <filename>EXPORT5</filename>
	  és <filename>EXPORT6</filename> (4.6B/IDES), valamint
	  <filename>KERNEL</filename>, <filename>RDBMS</filename>,
	  <filename>DISK1</filename>, <filename>DISK2</filename>,
	  <filename>DISK3</filename>, <filename>DISK4</filename>
	  és <filename>LANG</filename> (4.6C SR2).  A
	  csatlakoztatott CD-ken található
	  állományok neveinek nagybetûseknek kell
	  lenniük.  Ha nem így lenne, akkor a
	  csatlakoztatásnál adjuk meg a
	  <option>-g</option> opciót.  Így tehát a
	  következõ parancsokat kell kiadnunk:</para>

	<screen>&prompt.root; <userinput>mount_cd9660 -g /dev/cd0a /mnt</userinput>
&prompt.root; <userinput>cp -R /mnt/* /oracle/<replaceable>SID</replaceable>/sapreorg/<replaceable>cd-neve</replaceable></userinput>
&prompt.root; <userinput>umount /mnt</userinput></screen>

      </sect3>

      <sect3 id="runningtheinstall-script">
	<title>A telepítõszkript futtatása</title>

	<para>Elsõként egy <filename
	  class="directory">install</filename> nevû
	  könyvtárat kell
	  elõkészítenünk:</para>

	<screen>&prompt.root; <userinput>cd /oracle/<replaceable>SID</replaceable>/sapreorg</userinput>
&prompt.root; <userinput>mkdir install</userinput>
&prompt.root; <userinput>cd install</userinput></screen>

	<para>Ezután futtassuk le a
	  telepítõszkriptet, ami pedig bemásolja az
	  <filename class="directory">install</filename>
	  könyvtárba szinte az összes fontos
	  állományt:</para>

	<screen>&prompt.root; <userinput>/oracle/<replaceable>SID</replaceable>/sapreorg/KERNEL/UNIX/INSTTOOL.SH</userinput></screen>

	<para>Az IDES (4.6B) változathoz egy teljes &sap.r3;
	  bemutató rendszer is tartozik, ezért a
	  megszokott három CD helyett hat EXPORT
	  típusú CD-bõl áll.  Itt a
	  <filename>CENTRDB.R3S</filename> telepítõsablon
	  csak a szabvány központi példányt
	  hozza létre (<application>&r3;</application> és
	  az adatbázis), az IDES központi
	  példányát már nem.  Ezért
	  az <filename class="directory">EXPORT1</filename>
	  könyvtárból ki kell másolnunk a
	  <filename>CENTRDB.R3S</filename> állományt,
	  különben az <command>R3SETUP</command> csak
	  három EXPORT CD-t fog kérni.</para>

	<para>Az újabb <application>&sap; 4.6 SR2</application>
	  kiadáshoz négy EXPORT CD tartozik.  A
	  telepítés folyamatát a
	  <filename>CENTRAL.R3S</filename> állományban
	  levõ paraméterek vezérlik.  A
	  korábbi kiadásokkal ellentétben nincsenek
	  külön sablonok az adatbázissal és a
	  nélküle telepítendõ központi
	  példányok számára.  Az
	  <application>&sap;</application> az adatbázisok
	  telepítésére külön sablont
	  használ.  Újrakezdéskor a
	  telepítést ettõl függetlenül
	  elegendõ az eredeti állománnyal
	  újraindítani.</para>

	<para>A telepítés közben és
	  után az <application>&sap;</application>-nek a
	  <command>hostname</command> paranccsal csak a gép
	  saját nevét, nem pedig a teljes
	  hálózati nevét kell megadnunk.  Ilyenkor
	  ezt vagy egyenként begépeljük, vagy
	  létrehozunk rá egy álnevet az
	  <username>ora<replaceable>sid</replaceable></username>
	  és
	  <username><replaceable>sid</replaceable>adm</username>
	  (valamint a megfelelõ lépésekben a
	  <username>root</username>) felhasználóknak:
	  <command>alias hostname='hostname -s'</command>.
	  Ezenkívül még az
	  <application>&sap;</application> telepítésekor
	  létrehozott mindkét felhasználó
	  <filename>.profile</filename> és
	  <filename>.login</filename> állományait is
	  beállíthatjuk ennek megfelelõen.</para>

      </sect3>

      <sect3 id="startr3setup-46B">
	<title>Az <command>R3SETUP</command> 4.6B
	  verziójának indítása</title>

	<para>Ne felejtsük el jól beállítani
	  az <envar>LD_LIBRARY_PATH</envar> környezeti
	  változót:</para>

	<screen>&prompt.root; <userinput>export LD_LIBRARY_PATH=/oracle/IDS/lib:/sapmnt/IDS/exe:/oracle/805_32/lib</userinput></screen>

	<para>A telepítés könyvtárában
	  <username>root</username> felhasználóként
	  indítsuk el az <command>R3SETUP</command>
	  programot:</para>

	<screen>&prompt.root; <userinput>cd /oracle/IDS/sapreorg/install</userinput>
&prompt.root; <userinput>./R3SETUP -f CENTRDB.R3S</userinput></screen>

	<para>A szkript ezek után feltesz néhány
	  kérdést (az alapértelmezett
	  válaszok zárójelben,
	  közvetlenül a megadottak után):</para>

	<informaltable frame="none" pgwide="1">
	  <tgroup cols="3">
	  <thead>
	  <row>
	    <entry>Kérdés</entry>
	    <entry>Alapértelmezés</entry>
	    <entry>Válasz</entry>
	  </row>
	  </thead>
	  <tbody>
	  <row>
	    <entry>Enter SAP System ID</entry>
	    <entry>[C11]</entry>
	    <entry>IDS<keycap>Enter</keycap></entry>
	  </row>
	  <row>
	    <entry>Enter SAP Instance Number</entry>
	    <entry>[00]</entry>
	    <entry><keycap>Enter</keycap></entry>
	  </row>
	  <row>
	    <entry>Enter SAPMOUNT Directory</entry>
	    <entry>[/sapmnt]</entry>
	    <entry><keycap>Enter</keycap></entry>
	  </row>
	  <row>
	    <entry>Enter name of SAP central host</entry>
	    <entry>[troubadix.domain.de]</entry>
	    <entry><keycap>Enter</keycap></entry>
	  </row>
	  <row>
	    <entry>Enter name of SAP db host</entry>
	    <entry>[troubadix]</entry>
	    <entry><keycap>Enter</keycap></entry>
	  </row>
	  <row>
	    <entry>Select character set</entry>
	    <entry>[1] (WE8DEC)</entry>
	    <entry><keycap>Enter</keycap></entry>
	  </row>
	  <row>
	    <entry>Enter Oracle server version (1) Oracle 8.0.5, (2) Oracle 8.0.6, (3) Oracle 8.1.5, (4) Oracle 8.1.6</entry>
	    <entry> </entry>
	    <entry>1<keycap>Enter</keycap></entry>
	  </row>
	  <row>
	    <entry>Extract Oracle Client archive</entry>
	    <entry>[1] (Yes, extract)</entry>
	    <entry><keycap>Enter</keycap></entry>
	  </row>
	  <row>
	    <entry>Enter path to KERNEL CD</entry>
	    <entry>[/sapcd]</entry>
	    <entry>/oracle/IDS/sapreorg/KERNEL</entry>
	  </row>
	  <row>
	    <entry>Enter path to RDBMS CD</entry>
	    <entry>[/sapcd]</entry>
	    <entry>/oracle/IDS/sapreorg/RDBMS</entry>
	  </row>
	  <row>
	    <entry>Enter path to EXPORT1 CD</entry>
	    <entry>[/sapcd]</entry>
	    <entry>/oracle/IDS/sapreorg/EXPORT1</entry>
	  </row>
	  <row>
	    <entry>Directory to copy EXPORT1 CD</entry>
	    <entry>[/oracle/IDS/sapreorg/CD4_DIR]</entry>
	    <entry><keycap>Enter</keycap></entry>
	  </row>
	  <row>
	    <entry>Enter path to EXPORT2 CD</entry>
	    <entry>[/sapcd]</entry>
	    <entry>/oracle/IDS/sapreorg/EXPORT2</entry>
	  </row>
	  <row>
	    <entry>Directory to copy EXPORT2 CD</entry>
	    <entry>[/oracle/IDS/sapreorg/CD5_DIR]</entry>
	    <entry><keycap>Enter</keycap></entry>
	  </row>
	  <row>
	    <entry>Enter path to EXPORT3 CD</entry>
	    <entry>[/sapcd]</entry>
	    <entry>/oracle/IDS/sapreorg/EXPORT3</entry>
	  </row>
	  <row>
	    <entry>Directory to copy EXPORT3 CD</entry>
	    <entry>[/oracle/IDS/sapreorg/CD6_DIR]</entry>
	    <entry><keycap>Enter</keycap></entry>
	  </row>
	  <row>
	    <entry>Enter path to EXPORT4 CD</entry>
	    <entry>[/sapcd]</entry>
	    <entry>/oracle/IDS/sapreorg/EXPORT4</entry>
	  </row>
	  <row>
	    <entry>Directory to copy EXPORT4 CD</entry>
	    <entry>[/oracle/IDS/sapreorg/CD7_DIR]</entry>
	    <entry><keycap>Enter</keycap></entry>
	  </row>
	  <row>
	    <entry>Enter path to EXPORT5 CD</entry>
	    <entry>[/sapcd]</entry>
	    <entry>/oracle/IDS/sapreorg/EXPORT5</entry>
	  </row>
	  <row>
	    <entry>Directory to copy EXPORT5 CD</entry>
	    <entry>[/oracle/IDS/sapreorg/CD8_DIR]</entry>
	    <entry><keycap>Enter</keycap></entry>
	  </row>
	  <row>
	    <entry>Enter path to EXPORT6 CD</entry>
	    <entry>[/sapcd]</entry>
	    <entry>/oracle/IDS/sapreorg/EXPORT6</entry>
	  </row>
	  <row>
	    <entry>Directory to copy EXPORT6 CD</entry>
	    <entry>[/oracle/IDS/sapreorg/CD9_DIR]</entry>
	    <entry><keycap>Enter</keycap></entry>
	  </row>
	  <row>
	    <entry>Enter amount of RAM for SAP + DB</entry>
	    <entry> </entry>
	    <entry>850<keycap>Enter</keycap> (megabyte)</entry>
	  </row>
	  <row>
	    <entry>Service Entry Message Server</entry>
	    <entry>[3600]</entry>
	    <entry><keycap>Enter</keycap></entry>
	  </row>
	  <row>
	    <entry>Enter Group-ID of sapsys</entry>
	    <entry>[101]</entry>
	    <entry><keycap>Enter</keycap></entry>
	  </row>
	  <row>
	    <entry>Enter Group-ID of oper</entry>
	    <entry>[102]</entry>
	    <entry><keycap>Enter</keycap></entry>
	  </row>
	  <row>
	    <entry>Enter Group-ID of dba</entry>
	    <entry>[100]</entry>
	    <entry><keycap>Enter</keycap></entry>
	  </row>
	  <row>
	    <entry>Enter User-ID of <replaceable>sid</replaceable>adm</entry>
	    <entry>[1000]</entry>
	    <entry><keycap>Enter</keycap></entry>
	  </row>
	  <row>
	    <entry>Enter User-ID of ora<replaceable>sid</replaceable></entry>
	    <entry>[1002]</entry>
	    <entry><keycap>Enter</keycap></entry>
	  </row>
	  <row>
	    <entry>Number of parallel procs</entry>
	    <entry>[2]</entry>
	    <entry><keycap>Enter</keycap></entry>
	  </row>
	  </tbody>
	  </tgroup>
	</informaltable>

	<para>Ha a CD-ket nem különbözõ helyekre
	  másoltuk, akkor az <application>&sap;</application>
	  telepítõje nem fogja megtalálni ezeket (a
	  rajtuk levõ <filename>LABEL.ASC</filename> segít
	  neki az azonosításban) és kérni
	  fogja a CD csatlakoztatását, illetve a
	  csatlakozási pontjának
	  megadását.</para>

	<para>A <filename>CENTRDB.R3S</filename> sem minden esetben
	  mentes a hibáktól.  A tapasztalataink szerint az
	  EXPORT4 címkéjû CD-t kérte
	  újra, miközben a helyes kulcsokat jelezte ki
	  (6_LOCATION, majd 7_LOCATION stb.), így egyszerûen
	  csak lépjünk tovább az
	  értékek meghagyásával.</para>

	<para>Függetlenül az imént említett
	  problémáktól, egészen az &oracle;
	  adatbáziskezelõ telepítéséig
	  mindennek mûködnie kellene.</para>

      </sect3>

      <sect3 id="startr3setup-46C">
	<title>Az <command>R3SETUP</command> 4.6C SR2
	  elindítása</title>

	<para>Állítsuk be jól az
	  <envar>LD_LIBRARY_PATH</envar> környezeti
	  változó értékét.  Ez
	  némileg eltér a 4.6B és az
	  <application>&oracle; 8.0.5</application>
	  párosának
	  beállításától:</para>

	<screen>&prompt.root; <userinput>export LD_LIBRARY_PATH=/sapmnt/PRD/exe:/oracle/PRD/817_32/lib</userinput></screen>

	<para>A telepítés
	  könyvtárából
	  <username>root</username> felhasználóként
	  indítsuk el az <command>R3SETUP</command>
	  programot:</para>

	<screen>&prompt.root; <userinput>cd /oracle/PRD/sapreorg/install</userinput>
&prompt.root; <userinput>./R3SETUP -f CENTRAL.R3S</userinput></screen>

	<para>A szkript ezek után feltesz néhány
	  kérdést (az alapértelmezett
	  válaszok zárójelben,
	  közvetlenül a megadottak után):</para>

	<informaltable frame="none" pgwide="1">
	  <tgroup cols="3">
	  <thead>
	  <row>
	    <entry>Kérdés</entry>
	    <entry>Alapértelmezés</entry>
	    <entry>Válasz</entry>
	  </row>
	  </thead>
	  <tbody>
	  <row>
	    <entry>Enter SAP System ID</entry>
	    <entry>[C11]</entry>
	    <entry>PRD<keycap>Enter</keycap></entry>
	  </row>
	  <row>
	    <entry>Enter SAP Instance Number</entry>
	    <entry>[00]</entry>
	    <entry><keycap>Enter</keycap></entry>
	  </row>
	  <row>
	    <entry>Enter SAPMOUNT Directory</entry>
	    <entry>[/sapmnt]</entry>
	    <entry><keycap>Enter</keycap></entry>
	  </row>
	  <row>
	    <entry>Enter name of SAP central host</entry>
	    <entry>[majestix]</entry>
	    <entry><keycap>Enter</keycap></entry>
	  </row>
	  <row>
	    <entry>Enter Database System ID</entry>
	    <entry>[PRD]</entry>
	    <entry>PRD<keycap>Enter</keycap></entry>
	  </row>
	  <row>
	    <entry>Enter name of SAP db host</entry>
	    <entry>[majestix]</entry>
	    <entry><keycap>Enter</keycap></entry>
	  </row>
	  <row>
	    <entry>Select character set</entry>
	    <entry>[1] (WE8DEC)</entry>
	    <entry><keycap>Enter</keycap></entry>
	  </row>
	  <row>
	    <entry>Enter Oracle server version (2) Oracle 8.1.7</entry>
	    <entry> </entry>
	    <entry>2<keycap>Enter</keycap></entry>
	  </row>
	  <row>
	    <entry>Extract Oracle Client archive</entry>
	    <entry>[1] (Yes, extract)</entry>
	    <entry><keycap>Enter</keycap></entry>
	  </row>
	  <row>
	    <entry>Enter path to KERNEL CD</entry>
	    <entry>[/sapcd]</entry>
	    <entry>/oracle/PRD/sapreorg/KERNEL</entry>
	  </row>
	  <row>
	    <entry>Enter amount of RAM for SAP + DB</entry>
	    <entry>2044</entry>
	    <entry>1800<keycap>Enter</keycap> (megabyte)</entry>
	  </row>
	  <row>
	    <entry>Service Entry Message Server</entry>
	    <entry>[3600]</entry>
	    <entry><keycap>Enter</keycap></entry>
	  </row>
	  <row>
	    <entry>Enter Group-ID of sapsys</entry>
	    <entry>[100]</entry>
	    <entry><keycap>Enter</keycap></entry>
	  </row>
	  <row>
	    <entry>Enter Group-ID of oper</entry>
	    <entry>[101]</entry>
	    <entry><keycap>Enter</keycap></entry>
	  </row>
	  <row>
	    <entry>Enter Group-ID of dba</entry>
	    <entry>[102]</entry>
	    <entry><keycap>Enter</keycap></entry>
	  </row>
	  <row>
	    <entry>Enter User-ID of <username>oraprd</username></entry>
	    <entry>[1002]</entry>
	    <entry><keycap>Enter</keycap></entry>
	  </row>
	  <row>
	    <entry>Enter User-ID of <username>prdadm</username></entry>
	    <entry>[1000]</entry>
	    <entry><keycap>Enter</keycap></entry>
	  </row>
	  <row>
	    <entry>LDAP support</entry>
	    <entry> </entry>
	    <entry>3<keycap>Enter</keycap> (nincs
	      támogatás)</entry>
	  </row>
	  <row>
	    <entry>Installation step completed</entry>
	    <entry>[1] (continue)</entry>
	    <entry><keycap>Enter</keycap></entry>
	  </row>
	  <row>
	    <entry>Choose installation service</entry>
	    <entry>[1] (DB inst,file)</entry>
	    <entry><keycap>Enter</keycap></entry>
	  </row>
	  </tbody>
	  </tgroup>
	</informaltable>

	<para>Az OSUSERDBSID_IND_ORA és OSUSERIDADM_IND_ORA
	  lépésekben az
	  <username>ora<replaceable>sid</replaceable></username>
	  és
	  <username><replaceable>sid</replaceable>adm</username>
	  felhasználók létrehozása
	  hibákra futhat.</para>

	<para>Függetlenül az említett
	  problémáktól, az &oracle;
	  adatbáziskezelõ telepítéséig
	  mindennek remekül kell mûködnie.</para>

      </sect3>
    </sect2>

    <sect2 id="installingoracle805">
      <title>Az &oracle; 8.0.5 telepítése</title>

      <para>Az <application>&oracle;</application> Linux
	változatának telepítése során
	felmerülõ problémák tekintetében
	keressük fel az &sap; füzeteket és az &oracle;
	<filename>Readme</filename> állományait.  A
	legtöbb, ha nem is az összes gondot az
	egymással nem kompatibilis
	függvénykönyvtárak
	okozzák.</para>

      <para>Az <application>&oracle;</application>
	telepítésének részleteit a <link
	linkend="linuxemu-oracle">Az &oracle;
	telepítése</link> címû szakaszban
	találjuk.</para>

      <sect3 id="installingtheoracle805withorainst">
	<title>Az &oracle; 8.0.5 telepítése az
	  <command>orainst</command>
	  segítségével</title>

	<para>Az <application>&oracle;</application> 8.0.5
	  verziójának használata esetén
	  néhány további
	  függvénykönyvtár
	  újralinkelésére is szükség
	  lesz, mivel az <application>&oracle; 8.0.5</application>
	  még a régi glibc könyvtárral lett
	  fordítva (RedHat&nbsp;6.0), viszont a RedHat&nbsp;6.1
	  már a glibc újabb verzióját
	  használja.  A linkelés
	  mûködéséhez az alábbi
	  csomagokat kell még telepítenünk:</para>

	<itemizedlist>
	  <listitem><para><filename>compat-libs-5.2-2.i386.rpm</filename></para></listitem>
	  <listitem><para><filename>compat-glibc-5.2-2.0.7.2.i386.rpm</filename></para></listitem>
	  <listitem><para><filename>compat-egcs-5.2-1.0.3a.1.i386.rpm</filename></para></listitem>
	  <listitem><para><filename>compat-egcs-c++-5.2-1.0.3a.1.i386.rpm</filename></para></listitem>
	  <listitem><para><filename>compat-binutils-5.2-2.9.1.0.23.1.i386.rpm</filename></para></listitem>
	</itemizedlist>

	<para>A részleteket lásd az &sap; füzeteiben
	  vagy az &oracle; <filename>Readme</filename>
	  állományaiban.  Amennyiben ez nem oldható
	  meg, akkor az eredeti binárisok, esetleg az eredeti
	  RedHat rendszerbõl származó
	  újralinkelt binárisok is
	  használhatóak (habár a
	  telepítés pillanatában személyesen
	  ezt nem tudtuk ellenõrizni).</para>

	<para>Az intelligens ügynök
	  lefordításához fel kell raknunk a RedHat
	  saját Tcl csomagját.  Ha ehhez nem tudjuk
	  beszerezni a <filename>tcl-8.0.3-20.i386.rpm</filename>
	  csomagot, akkor a RedHat&nbsp;6.1 változatához
	  készült <filename>tcl-8.0.5-30.i386.rpm</filename>
	  is megteszi.</para>

	<para>Az újralinkeléstõl eltekintve a
	  telepítés többi része szinte adja
	  magát:</para>

	<screen>&prompt.root; <userinput>su - oraids</userinput>
&prompt.root; <userinput>export TERM=xterm</userinput>
&prompt.root; <userinput>export ORACLE_TERM=xterm</userinput>
&prompt.root; <userinput>export ORACLE_HOME=/oracle/IDS</userinput>
&prompt.root; <userinput>cd $ORACLE_HOME/orainst_sap</userinput>
&prompt.root; <userinput>./orainst</userinput></screen>

	<para>Az <emphasis>&oracle; On-Line Text Viewer</emphasis>
	  kikapcsolásán (mivel az jelenleg Linux alatt sem
	  érhetõ el) kívül mindegyik
	  képernyõt hagyjuk jóvá az
	  <keycap>Enter</keycap> billentyû
	  lenyomásával.  Az
	  <application>&oracle;</application> ezután a
	  rendelkezésre álló
	  <command>gcc</command>, <command>egcs</command> vagy
	  <command>i386-redhat-linux-gcc</command> helyett a
	  <command>i386-glibc20-linux-gcc</command>
	  használatával újra akarja linkelni
	  magát.</para>

	<para>Idõ hiányában az <application>&oracle;
	  8.0.5 PreProduction</application>
	  kiadásából emeltünk ki
	  binárisokat, de az adatbáziskezelõ rendszer
	  felélesztésére tett elsõ
	  kísérleteink kudarcba fulladtak, és
	  ezután a megfelelõ RPM-ek összeszedése
	  valódi rémálomnak bizonyult.</para>

      </sect3>

      <sect3 id="installingtheoracle805preproduction">
	<title>Az &oracle; 8.0.5 Pre-production Release for Linux
	  (Kernel 2.0.33) telepítése</title>

	<para>A telepítés nagyon könnyû.
	  Csatlakoztassuk a CD-t, majd indítsuk el a
	  telepítõt.  Ezután meg kell adnunk az
	  &oracle; felhasználói
	  könyvtárát és a telepítõ
	  odamásolja az összes binárist.
	  Habár a telepítés megkezdése
	  elõtt a korábbi kísérleteink
	  nyomát nem tüntettük el.</para>

	<para>Ezt követõen az
	  <application>&oracle;</application> adatbázisrendszer
	  minden további gond nélkül
	  elindítható.</para>

      </sect3>
    </sect2>

    <sect2 id="installingoracle817">
      <title>Az &oracle; 8.1.7 Linux változatának
	telepítése</title>

      <para>Szedjük le az <filename>oracle8172.tgz</filename>
	állományt a Linux rendszeren létrehozott
	könyvtárából, és bontsuk ki a
	<filename>/oracle/<replaceable>SID</replaceable>/817_32/</filename>
	könyvtárba.</para>

    </sect2>

    <sect2 id="continuewithsapr4installation">
      <title>Az &sap.r3; telepítésének
	folytatása</title>

      <para>Elõször is ellenõrizzük az
	<username>isamd</username> (<replaceable>sid</replaceable>adm)
	és <username>oraids</username>
	(ora<replaceable>sid</replaceable>) felhasználók
	környezeti beállításait.  A
	<filename>.profile</filename>, <filename>.login</filename>
	és <filename>.cshrc</filename>
	állományaikban a korábbi
	beállítások szerint kell szerepelnie a
	<command>hostname</command> parancsnak.  Ha még mindig a
	teljes hálózati név lenne meg bennük,
	akkor a <command>hostname</command> parancsot át kell
	írni mind a három állományban a
	<command>hostname -s</command> parancsra.</para>

      <sect3 id="databaseload">
	<title>Az adatbázis feltöltése</title>

	<para>Ezután az <command>R3SETUP</command>
	  folytatható vagy újraindítható
	  (attól függõen, hogy a kilépést
	  választottuk-e vagy sem).  Az
	  <command>R3SETUP</command> ekkor létrehozza az
	  adatbázisban a táblákat és az
	  <command>R3load</command> meghívásával
	  feltölti ezeket adatokkal (a 46B IDES változat
	  esetében az EXPORT1 - EXPORT6, a 46C esetében
	  pedig a DISK1 - DISK4 lemezekrõl).</para>

	<para>Amikor a feltöltés befejezõdött (ami
	  akár órákig is eltarthat),
	  szükség lesz még néhány
	  jelszó megadására is.  A
	  próbatelepítéseknél nyugodtan
	  használhatjuk a jól ismert
	  alapértelmezett jelszavakat (azonban
	  mindenképpen változtassuk meg ezeket, ha egy
	  kicsit is számít a biztonság!):</para>

	<informaltable frame="none" pgwide="1">
	  <tgroup cols="2">
	  <thead>
	  <row>
	    <entry>Kérdés</entry>
	    <entry>Válasz</entry>
	  </row>
	  </thead>
	  <tbody>
	  <row>
	    <entry>Enter Password for sapr3</entry>
	    <entry>sap<keycap>Enter</keycap></entry>
	  </row>
	  <row>
	    <entry>Confirum Password for sapr3</entry>
	    <entry>sap<keycap>Enter</keycap></entry>
	  </row>
	  <row>
	    <entry>Enter Password for sys</entry>
	    <entry>change_on_install<keycap>Enter</keycap></entry>
	  </row>
	  <row>
	    <entry>Confirm Password for sys</entry>
	    <entry>change_on_install<keycap>Enter</keycap></entry>
	  </row>
	  <row>
	    <entry>Enter Password for system</entry>
	    <entry>manager<keycap>Enter</keycap></entry>
	  </row>
	  <row>
	    <entry>Confirm Password for system</entry>
	    <entry>manager<keycap>Enter</keycap></entry>
	  </row>
	  </tbody>
	  </tgroup>
	</informaltable>

	<para>A 4.6B telepítése során még
	  gondjaink akadtak a <command>dipgntab</command>
	  használatával.</para>

      </sect3>

      <sect3 id="listener">
	<title>Az &oracle; Listener elindítása</title>

	<para>Így kell elindítani az
	  <username>ora<replaceable>sid</replaceable></username>
	  felhasználóval az
	  <application>&oracle;</application> Listenert:</para>

	<screen>&prompt.user; <userinput>umask 0; lsnrctl start</userinput></screen>

	<para>Ha máshogy próbálkozunk, akkor az
	  <errorcode>ORA-12546</errorcode> kódú
	  hibát fogjuk kapni, mert a hálózati
	  portok socketei nem rendelkeznek a szükséges
	  engedélyekkel.  Lásd a 072984-es &sap;
	  füzet.</para>

      </sect3>

      <sect3 id="mnlstables">
	<title>Az MNLS táblák
	  frissítése</title>

	<para>Ha nem Latin 1 kódolású nyelveket
	  akarunk importálni az <application>&sap;</application>
	  rendszerbe, akkor frissítenünk kell a
	  többnyelvû nyelvi támogatáshoz (Multi
	  National Language Support, MNLS) tartozó
	  táblázatokat.  Ezek bemutatását a
	  15023 és 45619 számú &sap; OSS
	  füzetekben olvashatjuk.  Minden más esetben az
	  <application>&sap;</application> telepítésekor
	  nyugodtan kihagyhatjuk.</para>

	<note>
	  <para>Ha még nincs is konkrétan
	    szükségünk az MNLS-re, akkor is
	    ellenõriznünk és inicializálnunk
	    kell a TCPDB táblát.  A 0015023 és
	    0045619 számú &sap; füzetekben tudhatunk
	    meg errõl többet.</para>
	</note>

      </sect3>
    </sect2>

    <sect2 id="postinstallationsteps">
      <title>Telepítés utáni teendõk</title>

      <sect3 id="requestsapr3licensekey">
	<title>Az &sap.r3; licenckulcsának
	  megszerzése</title>

	<para>Az <application>&sap.r3;</application>
	  licenckulcsát külön kell kérni.
	  Fontos, mert a telepítéshez használatos
	  ideiglenes licenc csak négy hétig
	  érvényes.  Elõször szerezzük meg
	  a hardverkulcsot.  Jelentkezzünk be az
	  <username>idsadm</username> felhasználóval
	  és adjuk ki a <command>saplicense</command>
	  parancsot:</para>

	<screen>&prompt.root; <userinput>/sapmnt/IDS/exe/saplicense -get</userinput></screen>

	<para>A <command>saplicense</command> paraméter
	  nélkül meghívására
	  válaszul opciókat listáz ki.  A
	  licenckulcsot megérkezése után így
	  tudjuk élesíteni:</para>

	<screen>&prompt.root; <userinput>/sapmnt/IDS/exe/saplicense -install</userinput></screen>

	<para>Ezután a következõ
	  értékeket kell megadni:</para>

	<programlisting>SAP SYSTEM ID   = <replaceable>SID, 3 karakter</replaceable>
CUSTOMER KEY    = <replaceable>hardverkulcs, 11 karakter</replaceable>
INSTALLATION NO = <replaceable>telepítés száma, 10 számjegy</replaceable>
EXPIRATION DATE = <replaceable>ééééhhnn, tehát "99991231"</replaceable>
LICENSE KEY     = <replaceable>licenckulcs, 24 karakter</replaceable></programlisting>
      </sect3>

      <sect3 id="creatingusers">
	<title>A felhasználók
	  létrehozása</title>

	<para>Hozzunk létre egy felhasználót a 000
	  kliensen belül (a csak rajta belül
	  elvégezhetõ feladatokhoz, aki
	  különbözik a <username>sap*</username>
	  és <username>ddic</username>
	  felhasználóktól).
	  Felhasználónévként
	  általában a <username>wartung</username> nevet
	  választottuk (ami angolul a
	  <username>service</username> névnek, avagy
	  szolgáltatásnak felel meg).  A
	  <literal>sap_new</literal> és
	  <literal>sap_all</literal> nevû profilok is kellenek.  A
	  biztonságosság kedvéért a kliens
	  összes alapértelmezett
	  felhasználójának (beleértve a
	  <username>sap*</username> és <username>ddic</username>
	  felhasználókat is) változtassuk meg a
	  jelszavát.</para>

      </sect3>

      <sect3 id="configtranssysprofileopermodesetc">
	<title>A szállítási rendszer, a profilok,
	  mûködési módok stb.
	  beállítása</title>

	<para>A <username>ddic</username> és
	  <username>sap*</username> felhasználóktól
	  eltérõ nevû felhasználóval a
	  000 kliensen belül legalább a
	  következõket végezzük el:</para>

	<informaltable frame="none" pgwide="1">
	  <tgroup cols="2">
	  <thead>
	  <row>
	    <entry>Feladat</entry>
	    <entry>Tranzakció</entry>
	  </row>
	  </thead>
	  <tbody>
	  <row>
	    <entry>A szállítási rendszer (Transport
	      System) beállítása,
	      például a <emphasis>Stand-Alone Transport
	      Domain Entity</emphasis> értékre</entry>
	    <entry>STMS</entry>
	  </row>
	  <row>
	    <entry>A rendszer profiljának
	      létrehozása és
	      szerkesztése</entry>
	    <entry>RZ10</entry>
	  </row>
	  <row>
	    <entry>A mûködési módok és
	      példányok karbantartása</entry>
	    <entry>RZ04</entry>
	  </row>
	  </tbody>
	  </tgroup>
	</informaltable>

	<para>Az iménti és az összes többi
	  telepítés utáni lépések
	  leírása teljes egészében
	  megtalálható az <application>&sap;</application>
	  telepítési útmutatóiban.</para>

      </sect3>

      <sect3 id="editintsidsap">
	<title>Az
	  <filename>init<replaceable>sid</replaceable>.sap</filename>
	  (<filename>initIDS.sap</filename>) szerkesztése</title>

	<para>Az <filename>/oracle/IDS/dbs/initIDS.sap</filename>
	  állomány tartalmazza a
	  <application>&sap;</application> tartalék
	  profilját.  Itt többek közt a
	  használni kívánt szalag
	  méretét, a tömörítés
	  típusát és hasonló
	  paramétereket kell definiálni.  A
	  <command>sapdba</command> / <command>brbackup</command>
	  futtatásához a következõ
	  értékeket változtattuk meg:</para>

	<programlisting>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</programlisting>

	<para>Magyarázat:</para>

	<para><varname>compress</varname>
	  (tömörítés): HP DLT1
	  típusú szalagot használtunk, ami tud
	  hardveres tömörítést.</para>

	<para><varname>archive_function</varname>
	  (archiválási házirend): Ez adja meg, hogy
	  alapértelmezés szerint mi történjen
	  az &oracle; archivált naplóival: az új
	  naplóállományok elõször a
	  szalagra mentõdnek, majd a már lementett
	  naplók ismét mentésre kerülnek
	  és végül törlõdnek.  Ezzel sok
	  fejfájástól menekülünk meg,
	  mivel ilyenkor az archiváló szalagok esetleges
	  sérülése esetén is
	  valószínûleg képesek leszünk
	  visszaállítani az adatbázist.</para>

	<para><varname>cpio_flags</varname> (a cpio
	  beállítása): A <option>-B</option>
	  használata alapértelmezés, amivel a
	  blokkok mérete 5120&nbsp;byte-ra
	  állítódik.  A DLT típusú
	  szalagokhoz a HP legalább 32&nbsp;KB-os
	  blokkméretet javasolt, ezért a
	  <option>--block-size=128</option>
	  beállítással ezt 64&nbsp;KB-ra
	  növeltük.  Szükségünk volt a
	  <option>--format=newc</option>
	  beállításra is, mivel 65535-nél
	  több inode számunk van.  Az utolsó
	  beállítás a <option>--quiet</option>,
	  amivel megakadályozzuk, hogy a <command>cpio</command>
	  lementett blokkokat összefoglaló
	  kijelzésére begerjedjen a
	  <command>brbackup</command>.</para>

	<para><varname>cpio_in_flags</varname> (a cpio bemeneti
	  beállításai): A szalagok
	  visszatöltésénél használt
	  beállítások.  A formátumot
	  automatikusan felismeri.</para>

	<para><varname>tape_size</varname> (szalagméret): Ezzel
	  adjuk meg általában a szalag nyers
	  kapacitását.  Biztonsági okokból
	  (hardveres tömörítést
	  használunk) ez az érték a
	  ténylegesnél valamivel kisebb.</para>

	<para><varname>tape_address</varname> (szalagos eszköz): a
	  <command>cpio</command> által használható
	  nem visszatekerhetõ eszköz.</para>

	<para><varname>tape_address_rew</varname> (visszatekerhetõ
	  szalagos eszköz): A <command>cpio</command> által
	  használható visszatekerhetõ
	  eszköz.</para>

      </sect3>

      <sect3>
	<title>Telepítés utáni
	  beállítások</title>

	<para>Az <application>&sap;</application> alábbi
	  paramétereit kell beállítani a
	  telepítés után (IDES 46B, 1&nbsp;GB
	  memóriával):</para>

	<informaltable frame="none" pgwide="1">
	  <tgroup cols="2">
	    <thead>
	      <row>
		<entry>Név</entry>
		<entry>Érték</entry>
	      </row>
	    </thead>
	    <tbody>
	      <row>
		<entry>ztta/roll_extension</entry>
		<entry>250000000</entry>
	      </row>
	      <row>
		<entry>abap/heap_area_dia</entry>
		<entry>300000000</entry>
	      </row>
	      <row>
		<entry>abap/heap_area_nondia</entry>
		<entry>400000000</entry>
	      </row>
	      <row>
		<entry>em/initial_size_MB</entry>
		<entry>256</entry>
	      </row>
	      <row>
		<entry>em/blocksize_kB</entry>
		<entry>1024</entry>
	      </row>
	      <row>
		<entry>ipc/shm_psize_40</entry>
		<entry>70000000</entry>
	      </row>
	    </tbody>
	  </tgroup>
	</informaltable>

	<para>0013026 &sap; füzet:</para>

	<informaltable frame="none" pgwide="1">
	  <tgroup cols="2">
	    <thead>
	      <row>
		<entry>Név</entry>
		<entry>Érték</entry>
	      </row>
	    </thead>
	    <tbody>
	      <row>
		<entry>ztta/dynpro_area</entry>
		<entry>2500000</entry>
	      </row>
	    </tbody>
	  </tgroup>
	</informaltable>

	<para>0157246 &sap; füzet:</para>

	<informaltable frame="none" pgwide="1">
	  <tgroup cols="2">
	    <thead>
	      <row>
		<entry>Név</entry>
		<entry>Érték</entry>
	      </row>
	    </thead>
	    <tbody>
	      <row>
		<entry>rdisp/ROLL_MAXFS</entry>
		<entry>16000</entry>
	      </row>
	      <row>
		<entry>rdisp/PG_MAXFS</entry>
		<entry>30000</entry>
	      </row>
	    </tbody>
	  </tgroup>
	</informaltable>

	<note>
	  <para>A fenti paraméterek használatával
	    egy 1&nbsp;gigabyte fizikai memóriával
	    rendelkezõ rendszer esetén
	    nagyjából így alakul a
	    memóriahasználat:</para>

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

	  <para>(547&nbsp;MB aktív, 305&nbsp;MB inaktív,
	    109&nbsp;MB rögzített, 40&nbsp;MB
	    gyorsítótár, 112&nbsp;MB puffer,
	    3492&nbsp;KB szabad)</para>
	</note>

      </sect3>
    </sect2>

    <sect2 id="problemsduringinstallation">
      <title>A telepítés során adódó
	problémák</title>

      <sect3 id="restartr3setup">
	<title>Az <command>R3SETUP</command>
	  újraindítása egy probléma
	  kijavítása után</title>

	<para>Az <command>R3SETUP</command> hiba esetén
	  leáll.  Miután átnéztük a
	  hibára utaló naplókat és
	  elhárítottuk a hiba okát, újra el
	  kell indítanunk az <command>R3SETUP</command>
	  programot, majd a REPEAT opció
	  kiválasztásával próbáljuk
	  megismételni az <command>R3SETUP</command> által
	  kifogásolt legutóbbi mûveletet.</para>

	<para>Az <command>R3SETUP</command>
	  újraindításához egyszerûen
	  adjuk meg a megfelelõ <filename>R3S</filename>
	  állományt:</para>

	<screen>&prompt.root; <userinput>./R3SETUP -f CENTRDB.R3S</userinput></screen>

	<para>a 4.6B verzió esetén, vagy a</para>

	<screen>&prompt.root; <userinput>./R3SETUP -f CENTRAL.R3S</userinput></screen>

	<para>a 4.6C verzió esetén, függetlenül
	  attól, hogy a hiba a <filename>CENTRAL.R3S</filename>
	  vagy <filename>DATABASE.R3S</filename>
	  állományoknál keletkezett.</para>

	<note>
	  <para>Egyes lépéseknél az
	    <command>R3SETUP</command> úgy véli, hogy az
	    <application>&sap;</application> programjai
	    mûködnek (mivel a hozzájuk tartozó
	    lépéseket már megtettük),
	    így a hibák miatt az adatbázist esetleg
	    korábban nem tudta elindítani.  Ezért a
	    hibák kijavításának
	    végeztével az <command>R3SETUP</command>
	    ismételt indítása elõtt
	    nekünk kell beindítani mind az
	    adatbázist, mind pedig az
	    <application>&sap;</application> rendszert.</para>

	  <para>Ne felejtsük el újra elindítani az
	    <application>&oracle;</application> Listener
	    segédprogramját sem (az
	    <username>ora<replaceable>sid</replaceable></username>
	    felhasználóval adjuk ki a <command>umask 0;
	    lsnrctl start</command> parancsot), ha az
	    idõközben leállt volna
	    (például a rendszer kényszerû
	    újraindítása miatt).</para>
	</note>

      </sect3>

      <sect3 id="indoraduringduringr3setup">
	<title>OSUSERSIDADM_IND_ORA az <command>R3SETUP</command>
	  közben</title>

	<para>Ha az <command>R3SETUP</command> panaszkodik ebben a
	  lépésben, akkor írjuk át az
	  általa ekkor használt sablont (a 4.6B
	  esetén ez a <filename>CENTRDB.R3S</filename>, illetve a
	  4.6C esetén ez a <filename>CENTRAL.R3S</filename> vagy
	  a <filename>DATABASE.R3S</filename>).  Keressük a
	  <literal>[OSUSERSIDADM_IND_ORA]</literal> szöveget, vagy
	  csak a <literal>STATUS=ERROR</literal> bejegyzést, majd
	  írjuk be a következõ
	  értékeket:</para>

	<programlisting>HOME=/home/<replaceable>sid</replaceable>adm (üres volt)
STATUS=OK (ERROR státusza volt)
	</programlisting>

	<para>Ezután indítsuk újra az
	  <command>R3SETUP</command> programot.</para>

      </sect3>

      <sect3 id="indoraduringr3setup">
	<title>OSUSERDBSID_IND_ORA az <command>R3SETUP</command>
	  közben</title>

	<para>Az <command>R3SETUP</command> ebben a
	  lépésben is hajlamos panaszkodni.  Az itt
	  felbukkanó hiba hasonló az OSUSERSIDADM_IND_ORA
	  lépésben jelentkezõhöz.
	  Szerkesszük át az <command>R3SETUP</command>
	  által ilyenkor használt sablont (4.6B
	  verzió esetén ez a
	  <filename>CENTRDB.R3S</filename>, illetve 4.6C
	  verziónál a <filename>CENTRAL.R3S</filename>
	  vagy <filename>DATABASE.R3S</filename>).  Keressük meg a
	  <literal>[OSUSERDBSID_IND_ORA]</literal> részt, vagy
	  csak a <literal>STATUS=ERROR</literal> bejegyzést, majd
	  írjuk át az ebben a szakaszban szereplõ
	  értéket így:</para>

	<programlisting>STATUS=OK</programlisting>

	<para>Indítsuk újra az <command>R3SETUP</command>
	  programot.</para>

      </sect3>

      <sect3 id="oraviewvrffilenotfound">
	<title><errorname>oraview.vrf FILE NOT FOUND</errorname> hiba az
	  &oracle; telepítése közben</title>

	<para>A telepítés megkezdése elõtt nem
	  tiltottuk le az <emphasis>&oracle; On-Line Text
	  Viewer</emphasis> felrakását.  Habár
	  Linux esetén ez nem használható,
	  alapértelmezés szerint mégis ki van
	  választva.  Az &oracle; telepítõ
	  menüjében tiltsuk le ezt és
	  nélküle kezdjük újra a
	  telepítést.</para>

      </sect3>

      <sect3 id="textenvincalid">
	<title><errorname>TEXTENV_INVALID</errorname> hiba az
	  <command>R3SETUP</command>, RFC vagy SAPgui Start
	  programokban</title>

	<para>Ha ilyen hibával kerülünk szembe, akkor
	  hiányoznak a megfelelõ nyelvi
	  állományok.  A 0171356 &sap; füzet
	  tartalmazza a telepítendõ RPM csomagok
	  felsorolását (például a
	  RedHat&nbsp;6.1 esetén a
	  <filename>saplocales-1.0-3</filename> és
	  <filename>saposcheck-1.0-1</filename>).  Amennyiben figyelmen
	  kívül hagyjuk az ilyen hibákat, és
	  az <command>R3SETUP</command> minden
	  kiakadásánál átírjuk (a
	  <filename>CENTRDB.R3S</filename> állományban) az
	  <literal>STATUS</literal> értékét az
	  <literal>ERROR</literal> értékrõl az
	  <literal>OK</literal> értékre és
	  újraindítjuk, az
	  <application>&sap;</application> nem
	  állítódik be jól és nem
	  tudunk a <application>SAPgui</application>
	  alkalmazással rácsatlakozni a frissen
	  telepített rendszerre még akkor sem, ha el
	  tudtuk indítani.  Amikor a régebbi linuxos
	  <application>SAPgui</application> alkalmazással
	  csatlakozunk, a következõ üzeneteket
	  kapjuk:</para>

	<programlisting>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</programlisting>

	<para>Ez a viselkedés annak köszönhetõ,
	  hogy az <application>&sap.r3;</application> nem képes
	  jól összerendelni a nyelvi
	  beállításokat, sõt, magát sem
	  képes jól beállítani
	  (hiányoznak némely bejegyzések az
	  adatbázis egyes tábláiban).  Az
	  <application>&sap;</application>-hez úgy tudunk
	  ilyenkor csatlakozni, ha a <filename>DEFAULT.PFL</filename>
	  állományba felvesszük a következõ
	  bejegyzéseket (lásd 0043288 füzet):</para>

	<programlisting>abap/set_etct_env_at_new_mode = 0
install/collate/active = 0
rscp/TCP0B = TCP0B</programlisting>

	<para>Majd indítsuk újra az egész
	  <application>&sap;</application> rendszert.  Ezután
	  már tudunk csatlakozni hozzá, még ha az
	  országra jellemzõ nyelvi
	  beállítások nem is mûködnek
	  tökéletesen.  Miután korrigáltuk az
	  ország beállításait (és
	  felraktuk a megfelelõ nyelvi állományokat),
	  távolítsuk el az iménti
	  bejegyzéseket a <filename>DEFAULT.PFL</filename>
	  állományból és indítsuk
	  újra az <application>&sap;</application>
	  rendszert.</para>

      </sect3>

      <sect3 id="ora-00001">
	<title>Az <errorcode>ORA-00001</errorcode> hiba</title>

	<para>Ez a hiba &os; alatt az <application>&oracle;
	  8.1.7</application> használata során
	  következhet be.  Akkor történik, amikor az
	  <application>&oracle;</application> adatbázis nem volt
	  képes rendesen inicializálni magát
	  és összeomlott, aminek révén
	  szemaforokat és memóriát hagyott
	  megosztva a rendszerben.  Így az adatbázis
	  következõ indításakor kapunk egy
	  kövér <errorcode>ORA-00001</errorcode>
	  hibát.</para>

	<para>Az <command>ipcs -a</command> paranccsal keressük meg
	  ezeket, majd az <command>ipcrm</command>
	  segítségével pedig számoljuk
	  fel.</para>

      </sect3>

      <sect3 id="ora-00445pmon">
	<title>Az <errorcode>ORA-00445</errorcode> (a PMON
	  háttérprogram nem indult el) hiba</title>

	<para>Ez a hiba az <application>&oracle; 8.1.7</application>
	  használatakor következhet be.  Akkor kapjuk ezt a
	  hibát, amikor <username>prdadm</username>
	  felhasználóként a elindítjuk
	  <command>startsap</command> szkriptet (például
	  <command>startsap_majestix_00</command>).</para>

	<para>Erre gyógyír lehet, ha ehelyette az
	  adatbázis elindításához az
	  <username>oraprd</username> felhasználóval adjuk
	  ki az <command>svrmgrl</command> parancsot:</para>

	<screen>&prompt.user; <userinput>svrmgrl</userinput>
SVRMGR&gt; <userinput>connect internal;</userinput>
SVRMGR&gt; <userinput>startup</userinput>;
SVRMGR&gt; <userinput>exit</userinput></screen>

      </sect3>

      <sect3 id="ora-12546">
	<title>Az <errorcode>ORA-12546</errorcode> (A Listener
	  indítása megfelelõ engedélyekkel)
	  hiba</title>

	<para>Az <application>&oracle;</application> Listener
	  alkalmazását <username>oraids</username>
	  felhasználóként az alábbi
	  paranccsal indítsuk el:</para>

	<screen>&prompt.root; <userinput>umask 0; lsnrctl start</userinput></screen>

	<para>Máskülönben
	  <errorcode>ORA-12546</errorcode> hibát kapunk, mivel a
	  hálózati portokhoz tartozó socketek nem
	  rendelkeznek a megfelelõ engedélyekkel.
	  Lásd 0072984 &sap; füzet.</para>

      </sect3>

      <sect3 id="ora-27102">
	<title>Az <errorcode>ORA-27102</errorcode> (Nincs elég
	  memória) hiba</title>

	<para>Akkor fordul elõ ilyen hiba, amikor a
	  <literal>MAXDSIZ</literal> és
	  <literal>DFLDSIZ</literal> értékeit
	  1&nbsp;GB-nál (1024 x 1024 x 1024-nél) nagyobbra
	  állítottuk.  Mellé még kapunk egy
	  <errorname>Linux Error 12: Cannot allocate memory</errorname>
	  hibát is.</para>

      </sect3>

      <sect3 id="dipgntabindind">
	<title>[DIPGNTAB_IND_IND] az <command>R3SETUP</command>
	  közben</title>

	<para>Errõl alapvetõen a 0130581 számú
	  &sap; füzet ad tájékoztatást (az
	  <command>R3SETUP</command> <literal>DIPGNTAB</literal>
	  lépése hibára fut).  Az IDES
	  telepítése során az
	  <application>&sap;</application> rendszer valamiért az
	  <quote>IDS</quote> név helyett egy üres
	  karakterláncot használ.  Ez a
	  könyvtárak elérésében kisebb
	  gondokat okoz, mivel az elérési útvonaluk
	  a <replaceable>SID</replaceable>-bõl
	  generálódik (ami ebben az esetben az IDS).
	  Tehát a</para>

	<programlisting>/usr/sap/IDS/SYS/...
/usr/sap/IDS/DVMGS00</programlisting>

	<para>helyett a következõt próbálja meg
	  elérni:</para>

	<programlisting>/usr/sap//SYS/...
/usr/sap/D00</programlisting>

	<para>A telepítés folytatásához
	  létrehoztunk egy linket és egy másik
	  könyvtárat:</para>

	<screen>&prompt.root; <userinput>pwd</userinput>
/compat/linux/usr/sap
&prompt.root; <userinput>ls -l</userinput>
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 -&gt; IDS/SYS
drwxrwxr-x 2  idsadm sapsys 512 May 5 13:00 tmp
drwxrwxr-x 11 idsadm sapsys 512 May 4 14:20 trans</screen>

	<para>Észrevettük, hogy a &sap; füzetekben
	  (0029227 és 0008401) ugyanezt a viselkedést
	  írják le.  Az <application>&sap;
	  4.6C</application> telepítésénél
	  azonban ilyen hibával nem találkoztunk.</para>

      </sect3>

      <sect3 id="rfcrswboiniindind">
	<title>[RFCRSWBOINI_IND_IND] az <command>R3SETUP</command>
	  közben</title>

	<para>Az <application>&sap; 4.6C</application>
	  telepítése folyamán ez a hiba
	  csupán egy korábban bekövetkezett
	  másik hiba utóhatása volt.  Itt át
	  kell néznünk az összes érintett
	  naplót és ki kell javítanunk a
	  tényleges problémát.</para>

	<para>Amennyiben a naplók
	  átvizsgálása után csak ezt
	  találjuk egyedüli hibának (lásd
	  &sap; füzetek), állítsuk át (a
	  <filename>CENTRDB.R3S</filename> állományban) a
	  <literal>STATUS</literal> értékét az
	  <literal>OK</literal> értékre, majd
	  indítsuk újra az <command>R3SETUP</command>
	  programot.  A telepítés befejezése
	  után hajtsuk végre az SE38
	  tranzakcióból az <literal>RSWBOINS</literal>
	  riportot.  A további <literal>RFCRSWBOINI</literal>
	  és <literal>RFCRADDBDIF</literal>
	  lépésekkel kapcsolatban lásd a 0162266
	  &sap; füzetet.</para>

      </sect3>

      <sect3 id="rfcraddbdifindind">
	<title>[RFCRADDBDIF_IND_IND] az <command>R3SETUP</command>
	  közben</title>

	<para>Itt az elõbbihez hasonló feltételek
	  élnek: mindenképpen ellenõrizzük a
	  naplókban, hogy a hibát nem egy korábban
	  keletkezett hiba okozta.</para>

	<para>Ha tényleg csak az 0162266 &sap; füzetben
	  leírtak érvényesek, akkor (a
	  <filename>CENTRDB.R3S</filename> állományban)
	  állítsuk a gondot okozó
	  lépés <literal>STATUS</literal>
	  értékét az <literal>ERROR</literal>
	  értékrõl az <literal>OK</literal>
	  értékre, és indítsuk újra
	  az <command>R3SETUP</command> programot.  A
	  telepítés után pedig hajtsuk végre
	  az SE38 tranzakciból az <literal>RADDBDIF</literal>
	  riportot.</para>

      </sect3>

      <sect3 id="sigactionsig31">
	<title>A <errorcode>sigaction sig31: File size limit
	  exceeded</errorcode> hiba</title>

	<para>Ez a <emphasis>disp és work</emphasis>
	  <application>&sap;</application> programok
	  indítása során történhet meg.
	  Az <application>&sap;</application> rendszert
	  indító <command>startsap</command>
	  szkriptrõl leválva indulnak el a többi
	  <application>&sap;</application> program
	  elindításáért felelõs
	  alfolyamatok.  Ennek eredményeképpen a szkript
	  maga nem fogja észrevenni a hibát.</para>

	<para>Az <application>&sap;</application> programok
	  elindulását az <command>ps ax | grep
	  <replaceable>SID</replaceable></command> paranccsal tudjuk
	  ellenõrizni.  Az eredményül kapott
	  listában az összes aktív
	  <application>&oracle;</application> és
	  <application>&sap;</application> programnak szerepelnie kell.
	  Ha ebbõl az tûnik ki, hogy bizonyos programok
	  hiányoznak, vagy nem képesek kapcsolódni
	  az <application>&sap;</application> rendszerhez, akkor az
	  <filename>/usr/sap/<replaceable>SID</replaceable>/DVEBMGS<replaceable>nr</replaceable>/work/</filename>
	  könyvtárban nézzük át a
	  hozzájuk tartozó
	  naplóállományokat.  Elsõsorban a
	  <filename>dev_ms</filename> és a
	  <filename>dev_disp</filename> állományok
	  fontosak számunkra.</para>

	<para>A 31-es jelzés akkor keletkezik, ha az
	  <application>&oracle;</application> és az
	  <application>&sap;</application> által használt
	  osztott memória mértéke meghaladja a
	  rendszermag beállításai közt
	  megadott értéket.  Ezt tehát ennek
	  növelésével lehet orvosolni:</para>

	<programlisting># az éles 46C rendszereknek több kell:
options SHMMAXPGS=393216
# a 46B beéri kevesebbel is:
#options SHMMAXPGS=262144</programlisting>

      </sect3>

      <sect3 id="saposcolfails">
	<title>A <command>saposcol</command> nem indul</title>

	<para>A <command>saposcol</command> (4.6D verzió)
	  programmal akad néhány probléma.  Az
	  <application>&sap;</application> rendszer az
	  <command>saposcol</command> segítségével
	  próbál adatokat gyûjteni a rendszer
	  teljesítményérõl.  Mivel ez a
	  program nem feltétlenül szükséges az
	  <application>&sap;</application> rendszer
	  mûködéséhez, ez a probléma nem
	  tekinthetõ komolynak.  A korábbi (4.6B)
	  verziókban ugyan mûködik, de semmilyen adatot
	  nem képes begyûjteni (mivel a legtöbb
	  hívás, például a
	  processzorhasználat függvénye,
	  egyszerûen csak nullát ad vissza).</para>

      </sect3>
    </sect2>
  </sect1>

  <sect1 id="linuxemu-advanced">
    <title>Témák haladóknak</title>

    <para>Ha kíváncsiak vagyunk a Linux
      emuláció mûködésére,
      olvassuk el ezt a szakaszt.  Az itt leírtak
      leginkább Terry Lambert
      (<email>tlambert@primenet.com</email>) &a.chat;
      címére írt levele nyomán kerülnek
      bemutatásra (Az üzenet azonosítója:
      <literal>&lt;199906020108.SAA07001@usr09.primenet.com&gt;</literal>).</para>

    <sect2>
      <title>Hogyan mûködik?</title>

      <indexterm><primary>végrehajtási osztály
	betöltõ</primary></indexterm>

      <para>A &os; rendelkezik egy ún.
	<quote>végrehajtási osztály
	betöltõvel</quote> (execution class loader).  Ez
	lényegében a &man.execve.2;
	rendszerhívás alatt meghúzódó
	absztrakciós réteg.</para>

      <para>A &os;-nek a <literal>#!</literal> karaktersorozat
	hatására parancsértelmezõk vagy a
	hozzájuk tartozó szkriptek
	betöltésére utasító
	biztonsági betöltõ helyett van egy
	listája az alkalmas betöltõkrõl.</para>

      <para>A &unix; rendszerek a hagyományok szerint egyetlen
	betöltõvel rendelkeznek, ami elõször
	megvizsgálja a betölteni kívánt
	állomány bûvös számát (ami
	általában az elsõ 4 vagy 8 byte) és ez
	alapján eldönti, hogy az adott formátum
	támogatott-e.  Amennyiben ez így van,
	meghívja a betöltõt.</para>

      <para>Ha a bináris típusa nem ismert a rendszer
	számára, akkor az &man.execve.2;
	hívás hibával tér vissza, és
	a parancsértelmezõ próbálja meg a
	saját parancsaiként értelmezni.</para>

      <para>Eddig ez volt az alapértelmezés,
	<quote>akármilyen parancsértelmezõnk is
	volt</quote>.</para>

      <para>Késõbb az &man.sh.1; kódjába
	bekerült egy aprócska okosítás, amivel
	megnézte az állomány elsõ két
	karakterét, és ha az <literal>:\n</literal> volt,
	akkor a futtatáshoz maga helyett a &man.csh.1;
	parancsértelmezõt hívta meg (ezt
	állítólag elõször a SCO
	csinálta).</para>

      <para>A &os; viszont végignézi a betöltõk
	teljes listáját, amiben a sor végén
	szerepel egy általános <literal>#!</literal>
	formátumú betöltõ.  Ez az
	állomány futtatásához
	használatos értelmezõk kódját
	keresi, és ha egyet sem sikerül azonosítania,
	akkor a <filename>/bin/sh</filename> programot indítja
	el.</para>

      <indexterm><primary>ELF</primary></indexterm>

      <para>A Linux ABI támogatását a &os;
	úgy oldja meg, hogy elõször észleli az
	ELF bináris bûvös számát (ekkor
	még nem tesz különbséget a &os;,
	&solaris;, Linux vagy más ELF típusú
	binárisokat használó
	operációs rendszerek közt).</para>

      <indexterm><primary>Solaris</primary></indexterm>

      <para>Ezután az ELF formátum betöltõje az
	ELF állomány megjegyzéseket
	tároló szakaszában
	<emphasis>bélyegek</emphasis> (brand) után kutat,
	ami SVR4 és &solaris; ELF binárisok esetén
	nem létezik.</para>

      <para>A Linux binárisokat
	mûködésükhöz a &man.brandelf.1;
	segítségével <literal>Linux</literal>
	típusúnak kell
	<emphasis>megbélyegezni</emphasis>:</para>

      <screen>&prompt.root; <userinput>brandelf -t Linux <replaceable>állomány</replaceable></userinput></screen>

      <para>Miután ezt megcsináltuk, az ELF
	betöltõ észre fogja venni az
	állomány <literal>Linux</literal>
	típusát.</para>

      <indexterm>
	<primary>ELF</primary>
	<secondary>megbélyegzés</secondary>
      </indexterm>

      <para>Mikor az ELF betöltõ észleli, hogy az
	állomány <literal>Linux</literal>
	típusú, kicseréli egy mutató
	értékét a <literal>proc</literal>
	struktúrában.  Minden rendszerhívás
	ezen a mutatón keresztül érhetõ el (a
	hagyományos &unix; rendszerekben ez a
	rendszerhívásokat tartalmazó
	<literal>sysent[]</literal> struktúratömb).
	Emellett a frissen elindított program szoftveres
	megszakításait tartalmazó
	tömbjéhez beállítja a speciális
	jelzések kezelését, valamint a Linux modul
	által végzett néhány további
	(kisebb) javítást.</para>

      <para>A Linux rendszerhívásokat tartalmazó
	tömb többek közt tartalmazza a
	<literal>sysent[]</literal> bejegyzések egy
	listáját, amelyek címei a rendszermag Linux
	moduljára mutatnak.</para>

      <para>Amikor a Linux bináris hív egy
	rendszerhívást, a hozzá tartozó
	szoftveres megszakítás kódja a
	<literal>proc</literal> struktúrából a neki
	megfelelõ rendszerhívás kódját
	hivatkozza, így &os; rendszerhívás
	belépési pontja helyett a Linuxét kapja
	meg.</para>

      <para>Ráadásul Linux módban a
	különbözõ állományok
	hivatkozásai is
	<emphasis>átirányítódnak</emphasis>.
	Ez lényegében olyan, mint amit az
	állományrendszerek
	csatlakoztatásánál a <option>union</option>
	beállítás csinál (ami
	<emphasis>nem</emphasis> egyezik meg az
	<literal>unionfs</literal> állományrendszerrel!).
	Ilyenkor az állományokat elõször a
	<filename>/compat/linux/<replaceable>eredeti-hely</replaceable></filename>
	könyvtárában keresi, és
	<emphasis>majd</emphasis> ha ott nem találja, csak akkor
	kezdi el keresni az
	<filename>/<replaceable>eredeti-hely</replaceable></filename>
	ponton.  Ezzel oldhatjuk meg, hogy más binárisok
	futtatását igénylõ binárisok is
	képesek legyenek rendesen mûködni
	(például így az egész linuxos
	eszköztár tud futni a Linux ABI-n keresztül).
	Egyúttal arra is utal, hogy ha a Linux binárisok
	számára nem áll rendelkezésre a
	megfelelõ bináris, akkor &os; binárisokat is
	el tudnak indítani.  Ha a &man.uname.1; programot pedig
	bemásoljuk a <filename>/compat/linux</filename>
	könyvtáron belülre, akkor a Linux
	binárisok képtelenek lesznek megmondani, hogy nem
	Linux alatt futnak.</para>

      <para>Így lényegében egy Linux magot
	találunk a &os; rendszermagjában.  A benne
	megtalálható különbözõ
	szolgáltatásokat megvalósító
	függvények: az állománymûveletek,
	a virtuális memória kezelése, a
	jelzések küldése és System V
	típusú folyamatok közti
	kommunikáció stb.  megegyeznek a &os; és a
	Linux hívásai esetén egyaránt.
	Egyetlen eltérés, hogy a &os; binárisok a
	&os; <emphasis>segédfüggvényein</emphasis>
	(glue function), a Linux binárisok pedig a Linux
	segédfüggvényein keresztül férnek
	hozzájuk (a legelsõ operációs
	rendszerek tulajdonképpen csak a saját
	segédfüggvényeiket tartalmazták: a
	hívást kezdeményezõ program
	<literal>proc</literal> struktúrájában a
	függvények dinamikusan beállított
	címe helyett egy globális
	<literal>sysent[]</literal> struktúratömbben
	tárolták a meghívható
	függvényeket).</para>

      <para>Melyik közülük a &os; natív ABI-ja?
	Ez teljesen lényegtelen.  Alapvetõen az egyetlen
	különbség csupán annyi (pillanatnyilag,
	de ez a jövõben még változhat,
	valószínûleg hamarosan), hogy a &os;
	<emphasis>segédfüggvényei</emphasis>
	statikusan megtalálhatóak a rendszermagban,
	míg a Linux
	<emphasis>segédfüggvényei</emphasis>
	egyaránt elérhetõek modulból vagy
	statikus linkeléssel.</para>

      <para>Na igen, de akkor ez most emuláció?  Nem.  Ez
	egy ABI, nem emuláció.  Itt szó sincs
	emulátorról (ahogy szimulátorról
	sincs).</para>

      <para>De akkor mégis miért hívják ezt
	sokszor <quote>Linux emulációnak</quote>?
	Hát hogy nehezebb legyen eladni a &os;-t!  Komolyra
	fordítva a szót: ennek a kezdeti változata
	akkoriban született meg, amikor erre még nem volt
	rendes szó.  Nem mondhattuk, hogy a &os;
	befordítás vagy egy modul betöltése
	nélkül képes lett volna Linux
	binárisokat futtatni, ezért valamilyen
	módon meg kellett neveznünk az ilyenkor
	betöltött kódot &mdash; ebbõl lett
	<quote>a Linux emulátor</quote>.</para>

    </sect2>
  </sect1>
</chapter>