doc/fr_FR.ISO8859-1/books/handbook/linuxemu/chapter.sgml
2005-09-14 19:34:43 +00:00

3912 lines
144 KiB
Text

<!--
The FreeBSD Documentation Project
The FreeBSD French Documentation Project
$FreeBSD$
Original revision: 1.111
-->
<chapter id="linuxemu">
<chapterinfo>
<authorgroup>
<author>
<firstname>Jim</firstname>
<surname>Mock</surname>
<contrib>Restructur&eacute; et en partie mis &agrave; jour
par </contrib>
</author>
<!-- 22 Mar 2000 -->
</authorgroup>
<authorgroup>
<author>
<firstname>Brian N.</firstname>
<surname>Handy</surname>
<contrib>Contribution originelle de </contrib>
</author>
<author>
<firstname>Rich</firstname>
<surname>Murphey</surname>
</author>
</authorgroup>
</chapterinfo>
<title>Compatibilit&eacute; binaire avec Linux</title>
&trans.a.fonvieille;
<sect1 id="linuxemu-synopsis">
<title>Synopsis</title>
<indexterm><primary>compatibilit&eacute; binaire avec Linux</primary></indexterm>
<indexterm>
<primary>compatibilit&eacute; binaire</primary>
<secondary>Linux</secondary>
</indexterm>
<para>&os; fournit une compatibilit&eacute; binaire avec plusieurs autres
syst&egrave;mes d'exploitation du type &unix;, y compris Linux.
A ce point, vous devez vous demander pourquoi exactement
&os; a besoin d'&ecirc;tre capable d'ex&eacute;cuter des binaires Linux?
La r&eacute;ponse &agrave; cette question est tr&egrave;s simple. De
nombreuses entreprises et de nombreux d&eacute;veloppeurs ne
d&eacute;veloppent que pour Linux, puisque que c'est la derni&egrave;re
chose &ldquo;&agrave; la mode&rdquo; dans le monde de l'informatique.
Cela ne laisse aux utilisateurs de &os; que la possibilit&eacute;
de r&eacute;clamer aupr&egrave;s des ces m&ecirc;mes entreprises
et d&eacute;veloppeurs des versions native pour &os; de leurs
applications. Le probl&egrave;me est, que la plupart de ces
entreprises ne r&eacute;alisent pas vraiment combien de personnes
utiliseraient leur produit si il y aurait une version pour &os;
&eacute;galement, et la plupart continuent de d&eacute;velopper uniquement
pour Linux. Donc que doit faire un utilisateur de &os;?
C'est l&agrave; que la compatibilit&eacute; binaire avec Linux entre en
sc&egrave;ne.</para>
<para>En bref, la compatibilit&eacute; permet aux utilisateurs de
&os; d'ex&eacute;cuter environ 90% des applications Linux
sans aucune modification. Cela inclus des applications
comme <application>StarOffice</application>,
la version Linux de <application>Netscape</application>,
<application>Adobe Acrobat</application>,
<application>RealPlayer</application>
5 et 7, <application>VMWare</application>,
<application>&oracle;</application>,
<application>WordPerfect</application>, <application>Doom</application>,
<application>Quake</application>, et plus. On rapporte
&eacute;galement que dans certaines situations, les binaires Linux
sont plus performants sous &os; que sous Linux.</para>
<indexterm>
<primary>Linux</primary>
<secondary>syst&egrave;me de fichiers
<filename>/proc</filename></secondary>
</indexterm>
<para>Il existe cependant certaines caract&eacute;ristiques
sp&eacute;cifiques &agrave; Linux qui ne sont pas
support&eacute;es sous &os;. Les binaires Linux ne
fonctionneront pas sous &os; s'ils utilisent
le syst&egrave;me de fichiers <filename>/proc</filename> de
Linux (qui est diff&eacute;rent de celui de &os;), ou des appels
i386 sp&eacute;cifiques, comme activation du mode virtuel
8086.</para>
<para>Apr&egrave;s la lecture de ce chapitre, vous conna&icirc;trez:</para>
<itemizedlist>
<listitem>
<para>Comment activer la compatibilit&eacute; binaire avec
Linux sur votre syst&egrave;me.</para>
</listitem>
<listitem>
<para>Comment installer des biblioth&egrave;ques partag&eacute;es Linux
suppl&eacute;mentaires.</para>
</listitem>
<listitem>
<para>Comment installer des application Linux sur votre
syst&egrave;me &os;.</para>
</listitem>
<listitem>
<para>Les d&eacute;tails de l'impl&eacute;mentation de la
compatibilit&eacute; Linux sous &os;.</para>
</listitem>
</itemizedlist>
<para>Avant de lire ce chapitre, vous devrez:</para>
<itemizedlist>
<listitem>
<para>Savoir comment installer des logiciels tiers
(<xref linkend="ports">).</para>
</listitem>
</itemizedlist>
</sect1>
<sect1 id="linuxemu-lbc-install">
<title>Installation</title>
<indexterm><primary>KLD (kernel loadable object)</primary></indexterm>
<para>La compatibilit&eacute; binaire avec Linux n'est pas
activ&eacute;e par d&eacute;faut. La mani&egrave;re la plus simple
pour activer cette fonctionnalit&eacute; est de charger le KLD
<literal>linux</literal> (<quote>Kernel LoaDable
object</quote>&mdash;objet chargeable par le noyau, ce que l'on
nomme couramment un module). Vous pouvez charger ce module
en tapant simplement <command>linux</command> &agrave;
l'invite.</para>
<para>Si vous d&eacute;sirez que la compatibilit&eacute; Linux soit
toujours activ&eacute;e, alors vous devrez ajouter la ligne
suivante au fichier <filename>/etc/rc.conf</filename>:</para>
<programlisting>linux_enable="YES"</programlisting>
<para>La commande &man.kldstat.8; peut &ecirc;tre utilis&eacute;e
pour v&eacute;rifier que le KLD est charg&eacute;:</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>options du noyau</primary>
<secondary>LINUX</secondary>
</indexterm>
<para>Si pour quelques raisons vous ne voulez ou pouvez charger le
KLD, alors vous pouvez lier statiquement la compatibilit&eacute;
binaire Linux dans votre noyau en ajoutant <literal>options
LINUX</literal> &agrave; votre fichier de configuration du noyau.
Puis installez votre noyau comme d&eacute;crit dans la
<xref linkend="kernelconfig">.</para>
<sect2>
<title>Installer les biblioth&egrave;ques Linux</title>
<indexterm>
<primary>Linux</primary>
<secondary>installer les biblioth&egrave;ques Linux</secondary>
</indexterm>
<para>Cela peut &ecirc;tre fait de deux mani&egrave;res, soit
en utilisant le logiciel port&eacute;
<link linkend="linuxemu-libs-port">linux_base</link>, soit
en les installant <link
linkend="linuxemu-libs-manually">&agrave; la main</link>.</para>
<sect3 id="linuxemu-libs-port">
<title>Installation &agrave; l'aide du logiciel port&eacute;
linux_base</title>
<indexterm><primary>catalogue des logiciels
port&eacute;s</primary></indexterm>
<para>C'est de loin la m&eacute;thode la plus simple pour
installer les biblioth&egrave;ques. La proc&eacute;dure est
juste identique &agrave; l'installation d'un autre logiciel
port&eacute; &agrave; partir du
<ulink type="html" url="file://localhost/usr/ports/">catalogue
des logiciels port&eacute;s</ulink>.
Faites ce qui suit:</para>
<screen>&prompt.root; <userinput>cd /usr/ports/emulators/linux_base</userinput>
&prompt.root; <userinput>make install distclean</userinput></screen>
<para>La compatibilit&eacute; binaire Linux devrait maintenant
fonctionner. Certains programmes pourront se plaindre de
versions mineures incorrectes de certaines biblioth&egrave;ques
syst&egrave;mes. Cela semble, en g&eacute;n&eacute;ral, ne pas
vraiment &ecirc;tre un probl&egrave;me.</para>
<note><para>Il peut y avoir de multiples versions disponibles
du logiciel port&eacute; <filename
role="package">emulators/linux_base</filename>, correspondant
&agrave; diff&eacute;rentes distributions et versions de Linux.
Vous devez installez la version la plus proche de ce que
n&eacute;cessite les applications Linux que vous d&eacute;sirez
installer.</para></note>
</sect3>
<sect3 id="linuxemu-libs-manually">
<title>Installer les biblioth&egrave;ques &agrave; la main</title>
<para>Si vous n'avez pas le catalogue des logiciels
port&eacute;s install&eacute;, vous pouvez &agrave; la
place installer les biblioth&egrave;ques &agrave; la main.
Il vous faudra les biblioth&egrave;ques partag&eacute;es
Linux dont &agrave; besoin le programme et l'&eacute;diteur
de lien dynamiques. Vous devrez &eacute;galement
cr&eacute;er un r&eacute;pertoire racine
&ldquo;masquant&rdquo; (&ldquo;shadow root&rdquo;),
<filename>/compat/linux</filename>, pour les
biblioth&egrave;ques Linux sur votre syst&egrave;me &os;.
Toute biblioth&egrave;que partag&eacute;e ouverte par les
programmes Linux ex&eacute;cut&eacute;s sous &os; iront d'abord voir
dans cette arborescence. Ainsi, si un programme Linux
charge, par exemple, <filename>/lib/libc.so</filename>,
&os; essayera d'abord d'ouvrir
<filename>/compat/linux/lib/libc.so</filename>, puis si
cette biblioth&egrave;que n'existe pas,
<filename>/lib/libc.so</filename>. Les biblioth&egrave;ques
partag&eacute;es doivent donc &ecirc;tre install&eacute;es
sous l'arborescence <filename>/compat/linux/lib</filename>
plut&ocirc;t que sous les chemins d'acc&egrave;s
mentionn&eacute;s par la commande Linux
<command>ld.so</command>.</para>
<para>G&eacute;n&eacute;ralement, vous ne devrez cherchez &agrave;
savoir de quelles biblioth&egrave;ques partag&eacute;es
d&eacute;pendent les binaires Linux que les premi&egrave;res
fois que vous installerez des programmes Linux sur votre
syst&egrave;me &os;. Au bout d'un moment, vous disposerez
d'un jeu suffisant de biblioth&egrave;ques partag&eacute;es
Linux sur votre syst&egrave;me pour &ecirc;tre en mesure
d'ex&eacute;cuter les binaires Linux nouvellement
import&eacute;s sans effort suppl&eacute;mentaire.</para>
</sect3>
<sect3>
<title>Comment installer des biblioth&egrave;ques
partag&eacute;es suppl&eacute;mentaires</title>
<indexterm><primary>biblioth&egrave;ques
partag&eacute;es</primary></indexterm>
<para>Que faire si vous avez install&eacute; le logiciel
port&eacute; <filename>linux_base</filename> et que votre
application se plaint toujours qu'il lui manque des
biblioth&egrave;ques partag&eacute;es?
Comment savoir quelles biblioth&egrave;ques partag&eacute;es
ont besoin les binaires Linux, et o&ugrave; se les
procurer? Il a habituellement deux possibilit&eacute;s
(pour suivre les instructions ci-dessous, vous devrez
&ecirc;tre en session sous le compte super-utilisateur
<username>root</username>).</para>
<para>Si vous avez acc&egrave;s &agrave; un syst&egrave;me
Linux, d&eacute;terminez de quelles biblioth&egrave;ques
partag&eacute;es l'application a besoin, et copiez-les sur
votre syst&egrave;me &os;. Soit l'exemple suivant:</para>
<informalexample>
<para>Supposons que vous veniez de t&eacute;l&eacute;charger
le binaire Linux de <application>Doom</application>,
et que vous l'avez install&eacute; sur un syst&egrave;me
Linux. Vous pouvez alors v&eacute;rifier de quelles
biblioth&egrave;ques partag&eacute;es il a besoin pour
fonctionner avec la commande
<command>ldd linuxdoom</command>:</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>liens symboliques</primary></indexterm>
<para>Vous devrez r&eacute;cup&eacute;rer tous les
fichiers mentionn&eacute;s dans la derni&egrave;re colonne,
et les installer sous <filename>/compat/linux</filename>,
en utilisant les noms de la premi&egrave;re colonne comme
liens symboliques qui pointent dessus. Cela signifie
que vous aurez &eacute;ventuellement les fichiers suivants
sur votre syst&egrave;me &os;:</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>Remarquez que si vous avez d&eacute;j&agrave;
une biblioth&egrave;que partag&eacute;e de m&ecirc;me
num&eacute;ro de version majeure que celle indiqu&eacute;e
par la premi&egrave;re colonne du r&eacute;sultat
de la commande <command>ldd</command>, il est inutile
de copier le fichier donn&eacute; par la derni&egrave;re
colonne sur votre syst&egrave;me, celui que vous
avez d&eacute;j&agrave; devrait suffire.
Il est cependant recommand&eacute; de recopier
malgr&eacute; tout la biblioth&egrave;que partag&eacute;e
si c'est une version r&eacute;cente.
Vous pouvez supprimer l'ancienne version, du moment
que le lien symbolique pointe sur la nouvelle. Par
exemple, si vous avez les biblioth&egrave;ques suivantes
sur votre syst&egrave;me:</para>
<screen>/compat/linux/lib/libc.so.4.6.27
/compat/linux/lib/libc.so.4 -&gt; libc.so.4.6.27</screen>
<para>et que vous avez un nouveau binaire qui
d'apr&egrave;s le r&eacute;sultat de la commande
<command>ldd</command> semble avoir besoin d'une
version plus r&eacute;cente:</para>
<screen>libc.so.4 (DLL Jump 4.5pl26) -&gt; libc.so.4.6.29</screen>
<para>Si vous n'avez qu'une ou deux versions de retard
sur le dernier indice, alors ne vous souciez pas
d'installer la version
<filename>/lib/libc.so.4.6.29</filename> plus
r&eacute;cente, parce que le programme devrait fonctionner
sans probl&egrave;me avec une version
l&eacute;g&egrave;rement ant&eacute;rieure.
Vous pouvez n&eacute;anmoins d&eacute;cider de remplacer
<filename>libc.so</filename>, ce qui devrait vous
donner quelque chose comme:</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>Le m&eacute;canisme de lien symbolique n'est
n&eacute;cessaire que pour les binaires Linux.
L'&eacute;diteur de liens dynamiques de &os;
se charge lui-m&ecirc;me de trouver les num&eacute;ros
de versions majeures ad&eacute;quats et vous
n'avez pas &agrave; vous en pr&eacute;occuper.</para>
</note>
</blockquote>
</informalexample>
</sect3>
</sect2>
<sect2>
<title>Installer des binaires Linux ELF</title>
<indexterm>
<primary>Linux</primary>
<secondary>binaires ELF</secondary>
</indexterm>
<para>Une &eacute;tape suppl&eacute;mentaire est parfois
n&eacute;cessaire pour les binaires ELF: le
&ldquo;marquage&rdquo;. Si vous tentez d'ex&eacute;cuter un
binaire ELF non marqu&eacute;, vous obtiendrez un message
d'erreur ressemblant &agrave; ce qui suit:</para>
<screen>&prompt.user; <userinput>./mon-binaire-elf-linux</userinput>
ELF binary type not known
Abort</screen>
<para>Pour que le noyau &os; puisse distinguer un binaire ELF
&os; d'un binaire Linux, vous devez employer l'utilitaire
&man.brandelf.1;:</para>
<screen>&prompt.user; <userinput>brandelf -t Linux mon-binaire-elf-linux</userinput></screen>
<indexterm><primary>outils GNU</primary></indexterm>
<para>Les outils GNU incorporent d&eacute;sormais automatiquement
les marques n&eacute;cessaires dans les binaires ELF, vous
aurez donc de moins en moins besoin de passer par cette
&eacute;tape &agrave; l'avenir.</para>
</sect2>
<sect2>
<title>Configurer le r&eacute;solveur de noms de domaines</title>
<para>Si le DNS ne fonctionne pas, ou si vous avez les
messages:</para>
<screen>resolv+: "bind" is an invalid keyword resolv+:
"hosts" is an invalid keyword</screen>
<para>Vous devrez configurer un fichier
<filename>/compat/linux/etc/host.conf</filename>
contenant:</para>
<programlisting>order hosts, bind
multi on</programlisting>
<para>O&ugrave; l'ordre ci-dessus sp&eacute;cifie qu'il faut tout
d'abord regarder dans le fichier <filename>/etc/hosts</filename>
puis interroger le DNS. Quand le fichier
<filename>/compat/linux/etc/host.conf</filename> n'existe pas,
les applications Linux trouvent le fichier
<filename>/etc/host.conf</filename> de &os; et se plaignent de
sa syntaxe &os; incompatible. Supprimez
<literal>bind</literal> si vous n'avez pas configur&eacute; de
serveur de noms avec le fichier
<filename>/etc/resolv.conf</filename>.</para>
</sect2>
</sect1>
<sect1 id="linuxemu-mathematica">
<sect1info>
<authorgroup>
<author>
<firstname>Murray</firstname>
<surname>Stokely</surname>
<contrib>Mis &agrave; jour pour &mathematica; 4.X par </contrib>
</author>
</authorgroup>
<authorgroup>
<author>
<firstname>Bojan</firstname>
<surname>Bistrovic</surname>
<contrib>Fusionn&eacute; avec un travail de </contrib>
</author>
</authorgroup>
</sect1info>
<title>Installer &mathematica;</title>
<indexterm>
<primary>applications</primary>
<secondary><application>Mathematica</application></secondary>
</indexterm>
<para>Ce document d&eacute;crit l'installation de la version Linux
de <application>&mathematica; 4.X</application> sur un
syst&egrave;me &os;.</para>
<para>La version Linux de <application>&mathematica;</application>
fonctionne parfaitement sous &os;, cependant les binaires
fournis par Wolfram doivent &ecirc;tre marqu&eacute;s
afin que &os; sache qu'il faut utiliser l'ABI Linux pour les
ex&eacute;cuter.</para>
<para>La version Linux de <application>&mathematica;</application>
ou la version <application>&mathematica; for Students</application>
peut &ecirc;tre command&eacute;e directement aupr&egrave;s de
Wolfram &agrave; l'adresse
<ulink url="http://www.wolfram.com/"></ulink>.</para>
<sect2>
<title>Marquer les binaires Linux</title>
<para>Les binaires Linux se trouvent dans le r&eacute;pertoire
<filename>Unix</filename> du CDROM
<application>&mathematica;</application> distribu&eacute; par
Wolfram. Vous devez copier le contenu de ce r&eacute;pertoire
sur votre disque local de fa&ccedil;on &agrave; marquer les binaires
Linux &agrave; l'aide de &man.brandelf.1; avant de lancer
l'installation:</para>
<screen>&prompt.root; <userinput>mount /cdrom</userinput>
&prompt.root; <userinput>cp -rp /cdrom/Unix/ /localdir/</userinput>
&prompt.root; <userinput>brandelf -t Linux /localdir/Files/SystemFiles/Kernel/Binaries/Linux/*</userinput>
&prompt.root; <userinput>brandelf -t Linux /localdir/Files/SystemFiles/FrontEnd/Binaries/Linux/*</userinput>
&prompt.root; <userinput>brandelf -t Linux /localdir/Files/SystemFiles/Installation/Binaries/Linux/*</userinput>
&prompt.root; <userinput>brandelf -t Linux /localdir/Files/SystemFiles/Graphics/Binaries/Linux/*</userinput>
&prompt.root; <userinput>brandelf -t Linux /localdir/Files/SystemFiles/Converters/Binaries/Linux/*</userinput>
&prompt.root; <userinput>brandelf -t Linux /localdir/Files/SystemFiles/LicenseManager/Binaries/Linux/mathlm</userinput>
&prompt.root; <userinput>cd /localdir/Installers/Linux/</userinput>
&prompt.root; <userinput>./MathInstaller</userinput></screen>
<para>Alternativement, vous pouvez simplement fixer
le marquage par d&eacute;faut des binaires ELF non marqu&eacute;s
comme &eacute;tant des binaires Linux avec la commande:</para>
<screen>&prompt.root; <userinput>sysctl kern.fallback_elf_brand=3</userinput></screen>
<para>Avec cela &os; supposera que les binaires ELF non
marqu&eacute;s sont des binaires Linux, et donc vous devriez
&ecirc;tre en mesure d'ex&eacute;cuter le programme d'installation
directement depuis le CDROM.</para>
</sect2>
<sect2>
<title>Obtenir votre mot de passe pour &mathematica;</title>
<para>Avant de pouvoir utiliser
<application>&mathematica;</application>, vous devrez obtenir
un mot de passe de Wolfram qui correspond &agrave;
l'&ldquo;identifiant&rdquo; de votre machine.</para>
<indexterm>
<primary>Ethernet</primary>
<secondary>adresse MAC</secondary>
</indexterm>
<para>Une fois que vous avez install&eacute; les
biblioth&egrave;ques pour la compatibilit&eacute; Linux
et d&eacute;compact&eacute; <application>&mathematica;</application>
vous pouvez obtenir l'&ldquo;identifiant&rdquo; de votre
machine en ex&eacute;cutant le programme <command>mathinfo</command>
dans le r&eacute;pertoire d'installation. Cet identifiant
machine est bas&eacute; uniquement sur l'adresse MAC de votre
premi&egrave;re carte Ethernet.</para>
<screen>&prompt.root; <userinput>cd /localdir/Files/SystemFiles/Installation/Binaries/Linux</userinput>
&prompt.root; <userinput>mathinfo</userinput>
disco.example.com 7115-70839-20412</screen>
<para>Quand vous vous enregistrez aupr&egrave;s de Wolfram,
par courrier &eacute;lectronique, t&eacute;l&eacute;phone, ou
fax, vous leur communiquerez l'&ldquo;identifiant&rdquo; de la
machine et ils vous donneront en r&eacute;ponse le mot
de passe correspondant qui a la forme de plusieurs groupes
de nombres. Vous pouvez ensuite entrer cette information
quand vous essayez d'ex&eacute;cuter
<application>&mathematica;</application> pour la premi&egrave;re
fois comme vous le feriez sous une autre plateforme.</para>
</sect2>
<sect2>
<title>Ex&eacute;cuter l'interface de &mathematica; via le
r&eacute;seau</title>
<para><application>&mathematica;</application> utilise des polices
de caract&egrave;res sp&eacute;cifiques pour afficher des
caract&egrave;res qui ne sont pas pr&eacute;sents dans
l'ensemble standard de polices (caract&egrave;re
int&eacute;grale, somme, lettres gr&egrave;ques, etc.).
Le protocole X a besoin que ces polices
de carat&egrave;res soient install&eacute;es
<emphasis>localement</emphasis>. Cela signifie que vous devrez
copier sur votre machine locale ces polices &agrave; partir du
CDROM ou d'une machine avec
<application>&mathematica;</application> install&eacute;. Ces
polices sont normalement stock&eacute;es dans
<filename>/cdrom/Unix/Files/SystemFiles/Fonts</filename> sur
le CDROM, ou dans
<filename>/usr/local/mathematica/SystemFiles/Fonts</filename>
sur votre disque dur. En fait les polices sont dans les
sous-r&eacute;pertoires <filename>Type1</filename> et
<filename>X</filename>. Il existe diff&eacute;rentes mani&egrave;res
de les utiliser, comme d&eacute;crit ci-dessous.</para>
<para>La premi&egrave;re mani&egrave;re est de les copier dans
un des r&eacute;pertoires de polices de caract&egrave;res existant
dans <filename>/usr/X11R6/lib/X11/fonts</filename>.
Il faudra alors &eacute;diter le fichier
<filename>fonts.dir</filename>, y ajouter les noms des
polices, et changer le nombre de polices sur la premi&egrave;re
ligne. Alternativement, vous devriez pouvoir juste
ex&eacute;cuter &man.mkfontdir.1; dans le r&eacute;pertoire
dans lequel vous avez copi&eacute; les polices de
caract&egrave;res.</para>
<para>La deuxi&egrave;me mani&egrave;re est de copier les
r&eacute;pertoires dans
<filename>/usr/X11R6/lib/X11/fonts</filename>:</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>Maintenant ajoutez les nouveaux r&eacute;pertoires de
polices &agrave; votre chemin de recherche des polices
de caract&egrave;res:</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>Si vous utilisez le serveur
<application>&xfree86;</application>, vous pouvez charger
ces r&eacute;pertoires de polices automatiquement en les
ajoutant &agrave; votre fichier
<filename>XF86Config</filename>.</para>
<indexterm><primary>polices de caract&egrave;res</primary></indexterm>
<para>Si vous <emphasis>n'avez pas</emphasis> d&eacute;j&agrave;
de r&eacute;pertoire appel&eacute;
<filename>/usr/X11R6/lib/X11/fonts/Type1</filename>, vous
pouvez modifier le nom du r&eacute;pertoire
<filename>MathType1</filename> dans l'exemple ci-dessus par
<filename>Type1</filename>.</para>
</sect2>
</sect1>
<sect1 id="linuxemu-maple">
<sect1info>
<authorgroup>
<author>
<firstname>Aaron</firstname>
<surname>Kaplan</surname>
<!-- <address><email>aaron@lo-res.org</email></address>-->
<contrib>Contribution de </contrib>
</author>
</authorgroup>
<authorgroup>
<author>
<firstname>Robert</firstname>
<surname>Getschmann</surname>
<!-- <address><email>rob@getschmann.org</email></address>-->
<contrib>Remerciements &agrave; </contrib>
</author>
</authorgroup>
</sect1info>
<title>Installer &maple;</title>
<indexterm>
<primary>applications</primary>
<secondary><application>Maple</application></secondary>
</indexterm>
<para><application>&maple;</application> est un programme
math&eacute;matique commercial similaire &agrave;
<application>&mathematica;</application>. Vous devez
acqu&eacute;rir ce logiciel aupr&egrave;s de
<ulink url="http://www.maplesoft.com/"></ulink> et vous
enregistrer pour obtenir un fichier de licence. Pour installer
ce logiciel sous &os;, veuillez suivre les &eacute;tapes
suivantes:</para>
<procedure>
<step>
<para>Ex&eacute;cutez la proc&eacute;dure
<filename>INSTALL</filename> fournie avec le logiciel.
Choisissez l'option &ldquo;RedHat&rdquo; quand le
programme vous le demandera. Un r&eacute;pertoire
d'installation typique devrait &ecirc;tre:
<filename
class="directory">/usr/local/maple</filename>.</para></step>
<step>
<para>Si vous ne l'avez pas d&eacute;j&agrave; fait,
demandez une licence pour
<application>&maple;</application> aupr&egrave;s de
Maple Waterloo Software (<ulink
url="http://register.maplesoft.com/"></ulink>) et
copiez-la sous
<filename>/usr/local/maple/license/license.dat</filename>.</para></step>
<step>
<para>Installez le gestionnaire de licence
<application>FLEXlm</application> en ex&eacute;cutant la
proc&eacute;dure d'installation
<filename>INSTALL_LIC</filename> fournie avec
<application>&maple;</application>. Pr&eacute;cisez
le nom de la machine au serveur de licence.</para></step>
<step>
<para>Modifiez le fichier
<filename>/usr/local/maple/bin/maple.system.type</filename>
avec le correctif suivant:</para>
<programlisting> ----- snip ------------------
*** 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
----- snip end of patch -----</programlisting>
<para>Remarquez qu'apr&egrave;s
<literal>"FreeBSD"|\</literal> aucun espace ne doit
&ecirc;tre ajout&eacute;.</para>
<para>Ce correctif demande &agrave;
<application>&maple;</application> de reconna&icirc;tre
&ldquo;FreeBSD&rdquo; comme &eacute;tant un type de
syst&egrave;me Linux. La proc&eacute;dure
<filename>bin/maple</filename> fait appel &agrave; la
proc&eacute;dure
<filename>bin/maple.system.type</filename> qui &agrave; son
tour appelle <command>uname -a</command> pour d&eacute;terminer
le nom du syst&egrave;me d'exploitation. En fonction de ce
nom, la proc&eacute;dure d&eacute;terminera quels binaires
utiliser.</para></step>
<step>
<para>Lancez le serveur de licence.</para>
<para>La proc&eacute;dure suivante, install&eacute;e sous le
nom <filename>/usr/local/etc/rc.d/lmgrd.sh</filename>
est une fa&ccedil;on pratique de lancer
<command>lmgrd</command>:</para>
<programlisting> ----- snip ------------
#! /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>> ${LOG} 1>&2
echo -n " lmgrd"
;;
stop)
lmgrd -c ${LICENSE_FILE} -x lmdown 2>> ${LOG} 1>&2
;;
*)
echo "Usage: `basename $0` {start|stop}" 1>&2
exit 64
;;
esac
exit 0
----- snip ------------</programlisting></step>
<step>
<para>Testez <application>&maple;</application>:</para>
<screen>&prompt.user; <userinput>cd /usr/local/maple/bin</userinput>
&prompt.user; <userinput>./xmaple</userinput></screen>
<para>Cela devrait fonctionner. Assurez-vous d'&eacute;crire
&agrave; Maplesoft pour leur indiquer que vous d&eacute;sirez
une version native pour &os;!</para>
</step>
</procedure>
<sect2>
<title>Pi&egrave;ges courants</title>
<itemizedlist>
<listitem>
<para>Le gestionnaire de licence
<application>FLEXlm</application> peut &ecirc;tre
difficile &agrave; utiliser. De la documentation
suppl&eacute;mentaire &agrave; ce sujet est disponible
&agrave; l'adresse <ulink
url="http://www.globetrotter.com/"></ulink>.</para>
</listitem>
<listitem>
<para><command>lmgrd</command> est connu pour
&ecirc;tre tr&egrave;s capricieux au sujet
du fichier de licence et de planter si il y a un
quelconque probl&egrave;me. Un fichier de licence correct
devrait ressembler &agrave; ceci:</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>Le num&eacute;ro de s&eacute;rie et la cl&eacute; ont
&eacute;t&eacute; ici remplac&eacute;s par des <literal>X</literal>.
<hostid>chillig</hostid> est le nom de la
machine.</para>
</note>
<para>L'&eacute;dition du fichier de licence est
possible tant que vous ne touchez pas &agrave; la ligne
&ldquo;FEATURE&rdquo; (qui est prot&eacute;g&eacute;e
par la cl&eacute; de la licence).</para>
</listitem>
</itemizedlist>
</sect2>
</sect1>
<sect1 id="linuxemu-matlab">
<sect1info>
<authorgroup>
<author>
<firstname>Dan</firstname>
<surname>Pelleg</surname>
<contrib>Contribution de </contrib>
</author>
<!-- daniel+handbook@pelleg.org -->
</authorgroup>
</sect1info>
<title>Installer &matlab;</title>
<indexterm>
<primary>applications</primary>
<secondary><application>MATLAB</application></secondary>
</indexterm>
<para>Ce document d&eacute;crit l'installation de la version
Linux de <application>&matlab; version 6.5</application> sur un
syst&egrave;me &os;. Le logiciel fonctionne plut&ocirc;t
bien, &agrave; l'exception de la <application>&jvm;</application>,
machine virtuelle <application>&java;</application> (voir la
<xref linkend="matlab-jre">).</para>
<para>La version Linux de <application>&matlab;</application> peut
&ecirc;tre command&eacute;e directement aupr&egrave;s de
The MathWorks &agrave; l'adresse <ulink
url="http://www.mathworks.com"></ulink>. Assurez-vous d'avoir
le fichier de licence ou les instructions pour le
cr&eacute;er. Pendant que vous y &ecirc;tes, faites-leur savoir
que vous d&eacute;sireriez une version &os; native de leur
logiciel.</para>
<sect2>
<title>Installer &matlab;</title>
<para>Pour installer <application>&matlab;</application>, faites
ce qui suit:</para>
<procedure>
<step>
<para>Ins&eacute;rez le CD d'installation et montez-le.
Ouvrez une session super-utilisateur
(<username>root</username>), comme recommand&eacute; par
la proc&eacute;dure d'installation. Pour lancer la
proc&eacute;dure d'installation tapez:</para>
<screen>&prompt.root; <userinput>/compat/linux/bin/sh /cdrom/install</userinput></screen>
<tip>
<para>Le programme d'installation est graphique.
Si vous obtenez une erreur disant que le programme
est incapable d'ouvrir une instance d'affichage, tapez
<command>setenv HOME ~<replaceable>utilisateur</replaceable></command>,
o&ugrave; <replaceable>utilisateur</replaceable> est
l'utilisateur &agrave; partir duquel vous avez fait un
&man.su.1;.</para>
</tip>
</step>
<step>
<para>Quand on vous demande le r&eacute;pertoire racine
pour <application>&matlab;</application>, tapez:
<userinput>/compat/linux/usr/local/matlab</userinput>.</para>
<tip>
<para>Pour faciliter la suite de l'installation et
r&eacute;duire les frappes inutiles, tapez &agrave; l'invite
de l'interpr&eacute;teur de commandes ceci:
<command>set MATLAB=/compat/linux/usr/local/matlab</command></para>
</tip>
</step>
<step>
<para>Editez le fichier de licence comme pr&eacute;cis&eacute;
lors de l'obtention de la licence
<application>&matlab;</application>.</para>
<tip>
<para>Vous pouvez pr&eacute;parer d'avance ce fichier
en utilisant votre &eacute;diteur favori, et en le copiant
sous le nom <filename>$MATLAB/license.dat</filename>
avant que le programme d'installation ne vous demande de
l'&eacute;diter.</para>
</tip>
</step>
<step>
<para>Terminez le processus d'installation.</para>
</step>
</procedure>
<para>A ce point, votre installation de
<application>&matlab;</application> est termin&eacute;e. Les
&eacute;tapes suivantes rajoutent le n&eacute;cessaire
pour l'int&eacute;grer &agrave; votre syst&egrave;me
&os;.</para>
</sect2>
<sect2>
<title>D&eacute;marrage du gestionnaire de licence</title>
<procedure>
<step>
<para>Cr&eacute;ez des liens symboliques pour les
proc&eacute;dures du gestionnaire de licence:</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>Cr&eacute;ez un fichier de d&eacute;marrage nomm&eacute;
<filename>/usr/local/etc/rc.d/flexlm.sh</filename>.
L'exemple ci-dessous est une version modifi&eacute;e
du fichier <filename>$MATLAB/etc/rc.lm.glnx86</filename>
fourni. Les modifications concernent l'emplacement des
fichiers, et le lancement du gestionnaire de licence
sous l'&eacute;mulation Linux.</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>utilisateur</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>Le fichier doit &ecirc;tre rendu
ex&eacute;cutable:</para>
<screen>&prompt.root; <userinput>chmod +x /usr/local/etc/rc.d/flexlm.sh</userinput></screen>
<para>Vous devez remplacer
<replaceable>utilisateur</replaceable> dans la
proc&eacute;dure par un nom d'utilisateur valide sur
votre syst&egrave;me (et non pas
<username>root</username>).</para>
</important>
</step>
<step>
<para>Lancez le gestionnaire de licence avec la
commande:</para>
<screen>&prompt.root; <userinput>/usr/local/etc/rc.d/flexlm.sh start</userinput></screen>
</step>
</procedure>
</sect2>
<sect2 id="matlab-jre">
<title>Lier l'environnement d'ex&eacute;cution &java;
(&ldquo;&java; Runtime Environment&rdquo;)</title>
<para>Modifiez le lien vers le
&ldquo;<application>&java;</application> Runtime
Environment&rdquo; (JRE) pour un lien fonctionnant
correctement sous &os;:</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>Cr&eacute;ation d'une proc&eacute;dure de lancement
pour &matlab;</title>
<procedure>
<step>
<para>Placez la proc&eacute;dure de d&eacute;marrage suivante
dans le r&eacute;pertoire
<filename>/usr/local/bin/matlab</filename>:
</para>
<programlisting>#!/bin/sh
/compat/linux/bin/sh /compat/linux/usr/local/matlab/bin/matlab "$@"</programlisting>
</step>
<step>
<para>Puis tapez la commande
<command>chmod +x /usr/local/bin/matlab</command>.</para>
</step>
</procedure>
<tip>
<para>En fonction de la version
<filename role="package">emulators/linux_base</filename>
utilis&eacute;e, vous pouvez rencontrer des probl&egrave;mes
lors de l'utilisation de cette proc&eacute;dure. Pour
&eacute;viter cela, &eacute;ditez le fichier
<filename>/compat/linux/usr/local/matlab/bin/matlab</filename>,
et modifiez la ligne qui dit:</para>
<programlisting>if [ `expr "$lscmd" : '.*-&gt;.*'` -ne 0 ]; then</programlisting>
<para>(dans la version 13.0.1, c'est la ligne 410) en:</para>
<programlisting>if test -L $newbase; then</programlisting>
</tip>
</sect2>
<sect2>
<title>Cr&eacute;er une proc&eacute;dure d'arr&ecirc;t pour
&matlab;</title>
<para>Ce qui suit est n&eacute;cessaire pour corriger le fait
que &matlab; ne peut &ecirc;tre quitter correctement.</para>
<procedure>
<step>
<para>Cr&eacute;ez un fichier
<filename>$MATLAB/toolbox/local/finish.m</filename>, et y
mettre la ligne suivante:</para>
<programlisting>! $MATLAB/bin/finish.sh</programlisting>
<note><para><literal>$MATLAB</literal> doit &ecirc;tre
&eacute;crit tel quel.</para></note>
<tip>
<para>Dans le m&ecirc;me r&eacute;pertoire, vous
trouverez les fichiers
<filename>finishsav.m</filename> et
<filename>finishdlg.m</filename>, qui vous permettront
de sauvegarder l'environnement avant de quitter.
Si vous utilisez l'un d'eux, ins&eacute;rez la ligne
ci-dessus apr&egrave;s la commande
<literal>save</literal>.</para></tip>
</step>
<step>
<para>Cr&eacute;ez un fichier
<filename>$MATLAB/bin/finish.sh</filename>, qui contiendra
ce qui suit:</para>
<programlisting>#!/usr/compat/linux/bin/sh
(sleep 5; killall -1 matlab_helper) &
exit 0</programlisting>
</step>
<step>
<para>Rendez le fichier ex&eacute;cutable:</para>
<screen>&prompt.root; <userinput>chmod +x $MATLAB/bin/finish.sh</userinput></screen>
</step>
</procedure>
</sect2>
<sect2 id="matlab-using">
<title>Utilisation de &matlab;</title>
<para>A ce point, vous &ecirc;tes pr&ecirc;t &agrave;
taper la commande <command>matlab</command> et &agrave; commencer
&agrave; l'utiliser.</para>
</sect2>
</sect1>
<sect1 id="linuxemu-oracle">
<sect1info>
<authorgroup>
<author>
<firstname>Marcel</firstname>
<surname>Moolenaar</surname>
<contrib>Contribution de </contrib>
</author>
<!-- marcel@cup.hp.com -->
</authorgroup>
</sect1info>
<title>Installer &oracle;</title>
<indexterm>
<primary>applications</primary>
<secondary><application>Oracle</application></secondary>
</indexterm>
<sect2>
<title>Pr&eacute;face</title>
<para>Ce document d&eacute;crit le processus d'installation
d'<application>&oracle; 8.0.5</application> et
d'<application>&oracle; 8.0.5.1 Enterprise Edition</application>
pour Linux sur une machine &os;.</para>
</sect2>
<sect2>
<title>Installer l'environnement Linux</title>
<para>Assurez-vous d'avoir install&eacute; les deux logiciels
<filename role='package'>emulators/linux_base</filename> et
<filename role='package'>devel/linux_devtools</filename> du
catalogue des logiciels port&eacute;s. Si vous rencontrez
des probl&egrave;mes avec ces logiciels port&eacute;s,
il se peut que vous ayez &agrave; utiliser les versions
pr&eacute;-compil&eacute;es ou des versions plus
anciennes disponibles dans le catalogue des logiciels
port&eacute;s.</para>
<para>Si vous d&eacute;sirez installer l'agent intelligent,
vous devrez &eacute;galement installer le
&ldquo;package&rdquo; Red Hat Tcl:
<filename>tcl-8.0.3-20.i386.rpm</filename>. La commande
g&eacute;n&eacute;rale pour installer des RPMs avec le logiciel
<application>RPM</application> (<filename
role='package'>archivers/rpm</filename>) est:</para>
<screen>&prompt.root; <userinput>rpm -i --ignoreos --root /compat/linux --dbpath /var/lib/rpm <replaceable>package</replaceable></userinput></screen>
<para>L'installation du <replaceable>package</replaceable> ne
devrait pas g&eacute;n&eacute;rer d'erreur.</para>
</sect2>
<sect2>
<title>Cr&eacute;er l'environment &oracle;</title>
<para>Avant de pouvoir installer
<application>&oracle;</application>, vous devez configurer un
environnement propre. Ce document ne d&eacute;crit
que ce qu'il y a faire <emphasis>sp&eacute;cifiquement</emphasis>
pour utiliser <application>&oracle;</application> pour Linux
sous &os;, et non pas ce qui a &eacute;t&eacute; d&eacute;crit
dans le guide d'installation
d'<application>&oracle;</application>.</para>
<sect3 id="linuxemu-kernel-tuning">
<title>Optimisation du noyau</title>
<indexterm><primary>optimisation du noyau</primary></indexterm>
<para>Comme d&eacute;crit dans le guide d'installation
d'<application>&oracle;</application>, vous devez
configurer une taille maximale pour la m&eacute;moire
partag&eacute;e. Sous &os; n'utilisez pas l'option
<literal>SHMMAX</literal>. <literal>SHMMAX</literal> est
simplement calcul&eacute;e &agrave; partir de
<literal>SHMMAXPGS</literal> et <literal>PGSIZE</literal>.
D&eacute;finissez donc l'option <literal>SHMMAXPGS</literal>.
Toutes les autres options peuvent &ecirc;tre
configur&eacute;es comme d&eacute;crit dans le guide.
Par exemple:</para>
<programlisting>options SHMMAXPGS=10000
options SHMMNI=100
options SHMSEG=10
options SEMMNS=200
options SEMMNI=70
options SEMMSL=61</programlisting>
<para>Configurez ces options en fonction de l'utilisation
pr&eacute;vue d'<application>&oracle;</application>.</para>
<para>Assurez-vous &eacute;galement de la pr&eacute;sence des
options suivantes dans votre fichier de configuration du
noyau:</para>
<programlisting>options SYSVSHM #SysV shared memory
options SYSVSEM #SysV semaphores
options SYSVMSG #SysV interprocess communication</programlisting>
</sect3>
<sect3 id="linuxemu-oracle-account">
<title>Compte &oracle;</title>
<para>Cr&eacute;ez un compte <username>oracle</username>
de la m&ecirc;me mani&egrave;re que vous cr&eacute;erez
un autre compte utilisateur. Le compte
<username>oracle</username> n'a de sp&eacute;cial que
le fait que vous devez lui donner un interpr&eacute;teur de
commandes Linux. Ajoutez
<literal>/compat/linux/bin/bash</literal> au fichier
<filename>/etc/shells</filename> et fixez l'interpr&eacute;teur
de commande du compte <username>oracle</username> &agrave;
<filename>/compat/linux/bin/bash</filename>.</para>
</sect3>
<sect3 id="linuxemu-environment">
<title>Environnement</title>
<para>En plus des variables d'environnement normales
d'<application>&oracle;</application> comme
<envar>ORACLE_HOME</envar> et <envar>ORACLE_SID</envar>
vous devez fixer les variables d'environnement
suivantes:</para>
<informaltable frame="none">
<tgroup cols="2">
<colspec colwidth="1*">
<colspec colwidth="2*">
<thead>
<row>
<entry>Variable</entry>
<entry>Valeur</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>Il est conseill&eacute; de d&eacute;finir toutes les
variables d'environnement dans le fichier
<filename>.profile</filename>. Un exemple complet est:</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>Installer &oracle;</title>
<para>En raison d'une particularit&eacute; de l'&eacute;mulateur
Linux, vous devez cr&eacute;er un r&eacute;pertoire appel&eacute;
<filename>.oracle</filename> dans <filename>/var/tmp</filename>
avant de lancer le programme d'installation. Donnez-y un
acc&egrave;s en &eacute;criture pour tout le monde ou faites
que l'utilisateur <username>oracle</username> en soit le
propri&eacute;taire. Vous devriez &ecirc;tre en mesure
d'installer <application>&oracle;</application> sans probl&egrave;me.
Si vous rencontrez cependant des probl&egrave;mes,
contr&ocirc;lez tout d'abord votre distribution
d'<application>&oracle;</application> et/ou configuration!
Apr&egrave;s avoir install&eacute; <application>&oracle;</application>,
appliquez les correctifs d&eacute;crits dans les deux
sous-sections suivantes.</para>
<para>Un probl&egrave;me fr&eacute;quent est que l'interface au
protocole TCP n'est pas correctement install&eacute;e.
Avec comme cons&eacute;quence l'impossibilit&eacute; d'&eacute;couter
le trafic TCP. Les op&eacute;rations suivantes aident
&agrave; r&eacute;soudre ce probl&egrave;me:</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>N'oubliez pas de lancer &agrave; nouveau
<filename>root.sh</filename>!</para>
<sect3 id="linuxemu-patch-root">
<title>Appliquer un correctif au fichier root.sh</title>
<para>Quand on installe <application>&oracle;</application>,
certaines op&eacute;rations, qui doivent &ecirc;tre
effectu&eacute;es en tant que <username>root</username>,
sont enregistr&eacute;es dans une proc&eacute;dure
d'interpr&eacute;teur de commandes appel&eacute;e
<filename>root.sh</filename>. Cette proc&eacute;dure se
trouve dans le r&eacute;pertoire <filename>orainst</filename>.
Appliquez le correctif suivant au fichier
<filename>root.sh</filename>, pour faire en sorte qu'il
utilise le chemin correct pour <command>chown</command>, ou
ex&eacute;cute une proc&eacute;dure sous un interpr&eacute;teur
de commandes Linux natif.</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>Quand vous n'installez pas
<application>&oracle;</application> &agrave; partir d'un CD,
vous pouvez modifier les sources de
<filename>root.sh</filename>. La proc&eacute;dure se nomme
<filename>rthd.sh</filename> et se trouve dans le
r&eacute;pertoire <filename>orainst</filename> dans l'arborescence
des sources.</para>
</sect3>
<sect3 id="linuxemu-patch-tcl">
<title>Patching genclntsh</title>
<para>La proc&eacute;dure <command>genclntsh</command>
est utilis&eacute;e pour cr&eacute;er une simple biblioth&egrave;que
partag&eacute;e cliente. Elle est utilis&eacute;e lors de la
construction des d&eacute;mos. Appliquez le correctif
suivant pour commenter la d&eacute;finition de la variable
d'environnement <envar>PATH</envar>:</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>Ex&eacute;cuter &oracle;</title>
<para>Apr&egrave;s avoir suivi les instructions
pr&eacute;c&eacute;dentes, vous devriez &ecirc;tre en mesure
d'ex&eacute;cuter <application>&oracle;</application> comme si
le programme tournait sous Linux.</para>
</sect2>
</sect1>
<sect1 id="sapr3">
<sect1info>
<authorgroup>
<author>
<firstname>Holger</firstname>
<surname>Kipp</surname>
<contrib>Contribution de </contrib>
</author>
</authorgroup>
<!-- holger.kipp@alogis.com -->
<authorgroup>
<author>
<firstname>Valentino</firstname>
<surname>Vaschetto</surname>
<contrib>Conversion en SGML par </contrib>
</author>
</authorgroup>
</sect1info>
<title>Installer &sap.r3;</title>
<indexterm>
<primary>applications</primary>
<secondary><application>&sap.r3;</application></secondary>
</indexterm>
<para>Les installations de syst&egrave;mes
<application>&sap;</application> sous &os; ne
seront pas support&eacute;es par l'&eacute;quipe de support de SAP
&mdash; ils n'assurent que le support pour des plateformes
ceritifi&eacute;es.</para>
<sect2 id="preface">
<title>Pr&eacute;face</title>
<para>Ce document d&eacute;crit une fa&ccedil;on d'installer un
syst&egrave;me <application>&sap.r3;</application>
avec la base de donn&eacute;es <application>&oracle;</application>
pour Linux sur une machine &os;, comprenant l'installation
de &os; et d'<application>&oracle;</application>. Deux
configurations diff&eacute;rentes seront d&eacute;crites:</para>
<itemizedlist>
<listitem>
<para><application>&sap.r3; 4.6B (IDES)</application> avec
<application>&oracle; 8.0.5</application> sous
&os;&nbsp;4.3-STABLE</para>
</listitem>
<listitem>
<para><application>&sap.r3; 4.6C</application> avec
<application>&oracle; 8.1.7</application> sous
&os;&nbsp;4.5-STABLE</para>
</listitem>
</itemizedlist>
<para>M&ecirc;me si ce document tente de d&eacute;crire toutes les
&eacute;tapes importantes de fa&ccedil;on d&eacute;taill&eacute;e,
il n'est pas destin&eacute; &agrave; remplacer les guides
d'installation d'<application>&oracle;</application> et
<application>&sap.r3;</application>.</para>
<para>Veuillez consulter la documentation fournie avec
la version Linux de <application>&sap.r3;</application>
et les questions sp&eacute;cifiques &agrave;
<application>&oracle;</application>, ainsi que les
ressources d'<application>&oracle;</application> et de
<application>&sap; OSS</application>.</para>
</sect2>
<sect2 id="software">
<title>Logiciels</title>
<para>Les CD-ROMs suivants ont &eacute;t&eacute; utilis&eacute;s pour
les installations de <application>&sap;</application>:</para>
<sect3 id="software-46b">
<title>&sap.r3; 4.6B, &oracle; 8.0.5</title>
<informaltable>
<tgroup cols=3>
<thead>
<row>
<entry>Nom</entry> <entry>Num&eacute;ro</entry> <entry>Description</entry>
</row>
</thead>
<tbody>
<row>
<entry>KERNEL</entry> <entry>51009113</entry> <entry>Noyau SAP Oracle /
Installation / 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 /
Disque 1 sur 6</entry>
</row>
<row>
<entry>EXPORT2</entry> <entry>51010209</entry> <entry>IDES / DB-Export /
Disque 2 sur 6</entry>
</row>
<row>
<entry>EXPORT3</entry> <entry>51010210</entry> <entry>IDES / DB-Export /
Disque 3 sur 6</entry>
</row>
<row>
<entry>EXPORT4</entry> <entry>51010211</entry> <entry>IDES / DB-Export /
Disque 4 sur 6</entry>
</row>
<row>
<entry>EXPORT5</entry> <entry>51010212</entry> <entry>IDES / DB-Export /
Disque 5 sur 6</entry>
</row>
<row>
<entry>EXPORT6</entry> <entry>51010213</entry> <entry>IDES / DB-Export /
Disque 6 sur 6</entry>
</row>
</tbody>
</tgroup>
</informaltable>
<para>De plus, nous avons utilis&eacute; le CD d'<application>&oracle; 8
Serveur</application> (version 8.0.5 de
pr&eacute;-production pour Linux, noyau 2.0.33) qui n'est pas
vraiment n&eacute;cessaire, et &os;&nbsp;4.3-STABLE (une version
plus vieille de quelques jours que la 4.3-RELEASE).</para>
</sect3>
<sect3 id="software-46c">
<title>&sap.r3; 4.6C SR2, &oracle; 8.1.7</title>
<informaltable>
<tgroup cols=3>
<thead>
<row>
<entry>Nom</entry> <entry>Num&eacute;ro</entry> <entry>Description</entry>
</row>
</thead>
<tbody>
<row>
<entry>KERNEL</entry> <entry>51014004</entry> <entry>Noyau SAP Oracle /
Noyau SAP Version 4.6D / 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>Version 4.6C SR2 / Export
/ Disque 1 sur 4</entry>
</row>
<row>
<entry>EXPORT1</entry> <entry>51013953</entry> <entry>Version 4.6C SR2 / Export
/ Disque 2 sur 4</entry>
</row>
<row>
<entry>EXPORT1</entry> <entry>51013953</entry> <entry>Version 4.6C SR2 / Export
/ Disque 3 sur 4</entry>
</row>
<row>
<entry>EXPORT1</entry> <entry>51013953</entry> <entry>Version 4.6C SR2 / Export
/ Disque 4 sur 4</entry>
</row>
<row>
<entry>LANG1</entry> <entry>51013954</entry> <entry>Version 4.6C SR2 /
Langue / DE, EN, FR / Disque 1 sur 3</entry>
</row>
</tbody>
</tgroup>
</informaltable>
<para>En fonction des langues que vous d&eacute;sirez
installer, des CDs propres &agrave; ces langues pourront &ecirc;tre
n&eacute;cessaires. Ici nous utilisons juste l'allemand (DE) et
l'anglais (EN), donc seul le premier CD propre aux langues
sera n&eacute;cessaire. Notez que le num&eacute;ro des quatre
CDs EXPORT est identique (c'est diff&eacute;rent du
num&eacute;rotage des CDs 4.6B IDES). Au moment
de l'&eacute;criture de ces lignes, cette installation utilise
&os;&nbsp;4.5-STABLE (du 20 mars 2002).</para>
</sect3>
</sect2>
<sect2 id="sap-notes">
<title>Notes concernant &sap;</title>
<para>Les notes suivantes devraient &ecirc;tre lues
avant d'installer <application>&sap.r3;</application>
et ont prouv&eacute; leur utilit&eacute; durant
l'installation:</para>
<sect3 id="sap-notes-46b">
<title>&sap.r3; 4.6B, &oracle; 8.0.5</title>
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>Num&eacute;ro</entry>
<entry>Titre</entry>
</row>
</thead>
<tbody>
<row>
<entry>0171356</entry> <entry>SAP sous Linux:
Remarques importantes</entry>
</row>
<row>
<entry>0201147</entry> <entry>INST: 4.6C R/3 Inst. sur
UNIX - Oracle</entry>
</row>
<row>
<entry>0373203</entry> <entry>Mise &agrave; jour / Migration
Oracle 8.0.5 --&gt;
8.0.6/8.1.6 LINUX</entry>
</row>
<row>
<entry>0072984</entry> <entry>Digital UNIX 4.0B pour
Oracle</entry>
</row>
<row>
<entry>0130581</entry> <entry>Fin de l'&eacute;tape
DIPGNTAB de R3SETUP</entry>
</row>
<row>
<entry>0144978</entry> <entry>Votre syst&egrave;me n'a pas
&eacute;t&eacute; install&eacute; correctement</entry>
</row>
<row>
<entry>0162266</entry> <entry>Questions et conseils pour
R3SETUP sous 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>
<tgroup cols="2">
<thead>
<row>
<entry>Num&eacute;ro</entry>
<entry>Titre</entry>
</row>
</thead>
<tbody>
<row>
<entry>0015023</entry> <entry>Initialisation de la
table TCPDB (RSXP0004) (EBCDIC)</entry>
</row>
<row>
<entry>0045619</entry> <entry>R/3 avec plusieurs langues
ou
languages or
typefaces</entry>
</row>
<row>
<entry>0171356</entry> <entry>SAP sous Linux: Remarques
importantes</entry>
</row>
<row>
<entry>0195603</entry> <entry>RedHat 6.1 version
entreprise: probl&egrave;mes connus</entry>
</row>
<row>
<entry>0212876</entry> <entry>Le nouvel outil d'archivage
SAPCAR</entry>
</row>
<row>
<entry>0300900</entry> <entry>Linux: mat&eacute;riel DELL</entry>
</row>
<row>
<entry>0377187</entry> <entry>RedHat 6.2: remarques
importantes</entry>
</row>
<row>
<entry>0387074</entry> <entry>INST: R/3 4.6C SR2
Installation sous UNIX</entry>
</row>
<row>
<entry>0387077</entry> <entry>INST: R/3 4.6C SR2 Inst. sous
UNIX - Oracle</entry>
</row>
<row>
<entry>0387078</entry> <entry>SAP sous UNIX: D&eacute;pendances
4.6C SR2</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</sect3>
</sect2>
<sect2 id="hardware-requirements">
<title>Mat&eacute;riel n&eacute;cessaire</title>
<para>L'&eacute;quipement suivant est suffisant
pour l'installation d'un syst&egrave;me
<application>&sap.r3;</application>. Bien s&ucirc;r
pour une utilisation en production, un choix
plus pointu du mat&eacute;riel est n&eacute;cessaire:</para>
<informaltable>
<tgroup cols="3">
<thead>
<row>
<entry>Composant</entry>
<entry>4.6B</entry>
<entry>4.6C</entry>
</row>
</thead>
<tbody>
<row>
<entry>Processeur</entry>
<entry>2 x 800MHz &pentium; III</entry>
<entry>2 x 800MHz &pentium; III</entry>
</row>
<row>
<entry>M&eacute;moire</entry>
<entry>1Go ECC</entry>
<entry>2Go ECC</entry>
</row>
<row>
<entry>Espace disque</entry>
<entry>50-60Go (IDES)</entry>
<entry>50-60Go (IDES)</entry>
</row>
</tbody>
</tgroup>
</informaltable>
<para>Pour une utilisation en production, des processeurs &xeon;
avec un cache important, un acc&egrave;s disque rapide (SCSI,
contr&ocirc;leur RAID mat&eacute;riel) et de la m&eacute;moire
ECC. L'espace disque n&eacute;cessaire est important en
raison du syst&egrave;me IDES pr&eacute;-configur&eacute;, qui
cr&eacute;&eacute; une base de donn&eacute;es de 27&nbsp;Go
durant l'installation. Cet espace est &eacute;galement
suffisant pour d&eacute;marrer des syst&egrave;mes
destin&eacute;s &agrave; la production.</para>
<sect3 id="hardware-46b">
<title>&sap.r3; 4.6B, &oracle; 8.0.5</title>
<para>Le mat&eacute;riel suivant fut utilis&eacute;: une carte
m&egrave;re bi-processeurs avec 2 processeurs &pentium;&nbsp;III
800&nbsp;MHz, une carte SCSI &adaptec; 29160 Ultra160
(pour utiliser un lecteur de bande 40/80&nbsp;Go DLT et un
lecteur de CDROM), une carte &mylex; &acceleraid; (2 canaux,
firmware 6.00-1-00 avec 32&nbsp;Mo de RAM). Au contr&ocirc;leur
RAID &mylex; sont reli&eacute;s deux disques durs de 17&nbsp;Go
(miroirs) et quatre disques de 36&nbsp;Go (RAID niveau
5).</para>
</sect3>
<sect3 id="hardware-46c">
<title>&sap.r3; 4.6C, &oracle; 8.1.7</title>
<para>Pour cette installation un &dell; &poweredge; 2500 a
&eacute;t&eacute; utilis&eacute;: une carte m&egrave;re
bi-processeurs avec deux processeurs &pentium;&nbsp;III
1000&nbsp;MHz (256&nbsp;Ko de cache), 2&nbsp;Go PC133 ECC
SDRAM, un contr&ocirc;leur PERC/3 DC PCI RAID avec
128&nbsp;Mo, et un lecteur DVD-ROM EIDE. Au contr&ocirc;leur
RAID sont reli&eacute;s deux disques durs 18&nbsp;Go (miroirs)
et quatre disques de 36&nbsp;Go (RAID niveau 5).</para>
</sect3>
</sect2>
<sect2 id="installation">
<title>Installation de &os;</title>
<para>Tout d'abord vous devez installer &os;. Il existe de
nombreuses mani&egrave;re d'installer &os; (&os;&nbsp;4.3 a
&eacute;t&eacute; install&eacute; via FTP, &os;&nbsp;4.5
directement &agrave; partir d'un CD), pour plus d'informations
consultez la <xref linkend="install-diff-media">.</para>
<sect3 id="disk-layout">
<title>Organisation des disques</title>
<para>Pour rester simple, la m&ecirc;me organisation des
disques a &eacute;t&eacute; utilis&eacute;e pour les
installations de <application>&sap.r3; 46B</application> et
<application>&sap.r3; 46C SR2</application>. Seuls les noms
de p&eacute;riph&eacute;riques ont chang&eacute;, comme les
installations ont &eacute;t&eacute; effectu&eacute;es sur du
mat&eacute;riel diff&eacute;rent
(<devicename>/dev/da</devicename> et
<devicename>/dev/amr</devicename> respectivement, aussi si
l'on utilise un contr&ocirc;leur AMI MegaRAID, on verra
<devicename>/dev/amr0s1a</devicename> &agrave; la place de
<devicename>/dev/da0s1a</devicename>):</para>
<informaltable>
<tgroup cols="4">
<thead>
<row>
<entry>Syst&egrave;me de fichiers</entry>
<entry>Taille (blocs de 1k)</entry>
<entry>Taille (Go)</entry>
<entry>Mont&eacute; sous</entry>
</row>
</thead>
<tbody>
<row>
<entry><devicename>/dev/da0s1a</devicename></entry>
<entry>1.016.303</entry>
<entry>1</entry>
<entry><filename role='directory'>/</filename></entry>
</row>
<row>
<entry><devicename>/dev/da0s1b</devicename></entry>
<entry> </entry>
<entry>6</entry>
<entry>swap</entry>
</row>
<row>
<entry><devicename>/dev/da0s1e</devicename></entry>
<entry>2.032.623</entry>
<entry>2</entry>
<entry><filename role='directory'>/var</filename></entry>
</row>
<row>
<entry><devicename>/dev/da0s1f</devicename></entry>
<entry>8.205.339</entry>
<entry>8</entry>
<entry><filename role='directory'>/usr</filename></entry>
</row>
<row>
<entry><devicename>/dev/da1s1e</devicename></entry>
<entry>45.734.361</entry>
<entry>45</entry>
<entry><filename role='directory'>/compat/linux/oracle</filename></entry>
</row>
<row>
<entry><devicename>/dev/da1s1f</devicename></entry>
<entry>2.032.623</entry>
<entry>2</entry>
<entry><filename role='directory'>/compat/linux/sapmnt</filename></entry>
</row>
<row>
<entry><devicename>/dev/da1s1g</devicename></entry>
<entry>2.032.623</entry>
<entry>2</entry>
<entry><filename role='directory'>/compat/linux/usr/sap</filename></entry>
</row>
</tbody>
</tgroup>
</informaltable>
<para>Configurez et initialisez les deux disques logiques
&agrave; l'avance avec les logiciels &mylex; ou PERC/3 RAID.
Ces logiciels peuvent &ecirc;tre lanc&eacute;s lors
de la phase de d&eacute;marrage du
<acronym>BIOS</acronym>.</para>
<para>Notez que l'organisation du disque diff&egrave;re
l&eacute;g&egrave;rement des recommandations de SAP, comme
SAP sugg&egrave;re de monter s&eacute;par&eacute;ment
les sous-r&eacute;pertoires d'<application>&oracle;</application>
(et d'autres) &mdash; nous avons d&eacute;cid&eacute; de
simplement cr&eacute;er de v&eacute;ritables sous-r&eacute;pertoires
directement.</para>
</sect3>
<sect3 id="makeworldandnewkernel">
<title>Utiliser <command>make world</command> et compiler
un nouveau noyau</title>
<para>T&eacute;l&eacute;chargez les sources -STABLE les plus
r&eacute;centes. Recompilez l'int&eacute;gralit&eacute; du
syst&egrave;me et votre noyau personnalis&eacute;
apr&egrave;s avoir configur&eacute; votre fichier de
configuration du noyau. L&agrave;, vous devriez
&eacute;galement ajouter les <link
linkend="kerneltuning">param&egrave;tres du noyau</link>
requis par <application>&sap.r3;</application> et
<application>&oracle;</application>.</para>
</sect3>
</sect2>
<sect2 id="installingthelinuxenviornment">
<title>Installer l'environnement Linux</title>
<sect3 id="installinglinuxbase-system">
<title>Installer le syst&egrave;me de base Linux</title>
<para>Tout d'abord le logiciel port&eacute;
<link linkend="linuxemu-libs-port">linux_base</link> doit
&ecirc;tre install&eacute; (en tant que super-utilisateur):</para>
<screen>&prompt.root; <userinput>cd /usr/ports/emulators/linux_base</userinput>
&prompt.root; <userinput>make install distclean</userinput></screen>
</sect3>
<sect3 id="installinglinuxdevelopment">
<title>Installer l'environnement de d&eacute;veloppement
Linux</title>
<para>L'environnement de d&eacute;veloppement Linux est
n&eacute;cessaire, si vous d&eacute;sirez installer
<application>&oracle;</application> sous &os; comme cela est
d&eacute;crit dans la <xref
linkend="linuxemu-oracle">:</para>
<screen>&prompt.root; <userinput>cd /usr/ports/devel/linux_devtools</userinput>
&prompt.root; <userinput>make install distclean</userinput></screen>
<para>L'environnement de d&eacute;veloppement Linux a
&eacute;t&eacute; install&eacute; en vue de l'installation
de <application>&sap.r3; 46B IDES</application>. Ce n'est
pas n&eacute;cessaire si <application>&oracle;
DB</application> n'est pas li&eacute;e sur un syst&egrave;me
&os;. C'est le cas si vous utilisez l'archive
<application>tar</application>
<application>&oracle;</application> en provenance d'un
syst&egrave;me Linux.</para>
</sect3>
<sect3 id="installingnecessaryrpms">
<title>Installer les RPMs n&eacute;cessaires</title>
<indexterm><primary>RPMs</primary></indexterm>
<para>Pour lancer le programme
<command>R3SETUP</command>, le support PAM est
n&eacute;cessaire. Lors de la premi&egrave;re installation de
<application>&sap;</application> sous &os;&nbsp;4.3-STABLE,
nous avons tent&eacute; d'installer PAM avec tous les
&ldquo;packages&rdquo; n&eacute;cessaires, et nous avons
finalement forc&eacute; l'installation du &ldquo;package&rdquo;
PAM, ce qui a fonctionn&eacute;. Pour
<application>&sap.r3; 4.6C SR2</application>, nous avons
directement forc&eacute; l'installation du
RPM PAM, ce qui fonctionne &eacute;galement, il semble donc
que les RPMs de d&eacute;pendance ne sont pas
n&eacute;cessaires:</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>Pour utiliser l'agent intelligent
d'<application>&oracle; 8.0.5</application>, nous devons
&eacute;galement installer la version RedHat de Tcl
<filename>tcl-8.0.5-30.i386.rpm</filename> (sinon l'&eacute;dition
de liens durant l'installation
d'<application>&oracle;</application> ne fonctionnera pas).
Il existe d'autres probl&egrave;mes &agrave; ce niveau, mais ils
concernent directement la version Linux
d'<application>&oracle;</application>, et ne sont donc pas
sp&eacute;cifiquent &agrave; &os;.</para>
</sect3>
<sect3 id="linuxprocandfallbackelfbrand">
<title>Quelques conseils suppl&eacute;mentaires</title>
<para>Cela peut &ecirc;tre une bonne id&eacute;e d'ajouter
<literal>linprocfs</literal> au fichier
<filename>/etc/fstab</filename>, pour plus d'informations
consultez la page de manuel &man.linprocfs.5;. Un autre
param&egrave;tre &agrave; positionner est
<literal>kern.fallback_elf_brand=3</literal>, ce qui
doit &ecirc;tre fait dans le fichier
<filename>/etc/sysctl.conf</filename>.</para>
</sect3>
</sect2>
<sect2 id="creatingsapr3env">
<title>Cr&eacute;er l'environnement SAP/R3</title>
<sect3 id="filesystemsandmountpoints">
<title>Cr&eacute;er les syst&egrave;mes de fichiers et points de
montage n&eacute;cessaires</title>
<para>Pour une simple installation, il est suffisant de
cr&eacute;er les syst&egrave;mes de fichiers suivants:</para>
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>point de montage</entry>
<entry>taille en Go</entry>
</row>
</thead>
<tbody>
<row>
<entry><filename role='directory'>/compat/linux/oracle</filename></entry>
<entry>45 Go</entry>
</row>
<row>
<entry><filename role='directory'>/compat/linux/sapmnt</filename></entry>
<entry>2 Go</entry>
</row>
<row>
<entry><filename role='directory'>/compat/linux/usr/sap</filename></entry>
<entry>2 Go</entry>
</row>
</tbody>
</tgroup>
</informaltable>
<para>Il est &eacute;galement n&eacute;cessaire de cr&eacute;er
certains liens. Sinon l'intalleur
<application>&sap;</application> se plaindra, lors du
contr&ocirc;le des liens cr&eacute;&eacute;s:</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>Un message d'erreur possible durant l'installation
(ici avec un syst&egrave;me <emphasis>PRD</emphasis>
l'installation de
<application>&sap.r3; 4.6C SR2</application>):</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>Cr&eacute;ation des utilisateurs et des
r&eacute;pertoires</title>
<para><application>&sap.r3;</application> a besoin de deux
utilisateurs et de trois groupes. Les noms d'utilisateurs
d&eacute;pendent du syst&egrave;me d'ID de
<application>&sap;</application> (SID) qui est compos&eacute;
de trois lettres. Certains de ces SIDs sont
r&eacute;serv&eacute;s par <application>&sap;</application>
(par exemple <literal>SAP</literal> et
<literal>NIX</literal>. Pour une liste compl&egrave;te
consultez la documentation de
<application>&sap;</application>). Pour l'installation IDES,
nous avons utilis&eacute; <literal>IDS</literal>, pour
l'installation 4.6C SR2 <literal>PRD</literal>, comme ce
syst&egrave;me &eacute;tait destin&eacute; &agrave; la
production. Nous avons cependant les groupes suivants (les
identifiants de groupe peuvent &ecirc;tre diff&eacute;rents,
ce sont seulement les valeurs que nous avons utilis&eacute;s
dans notre installation):</para>
<informaltable>
<tgroup cols="3">
<thead>
<row>
<entry>groupe ID</entry>
<entry>nom du groupe</entry>
<entry>description</entry>
</row>
</thead>
<tbody>
<row>
<entry>100</entry>
<entry>dba</entry>
<entry>Administrateur de la base de donn&eacute;es</entry>
</row>
<row>
<entry>101</entry>
<entry>sapsys</entry>
<entry>Syst&egrave;me &sap;</entry>
</row>
<row>
<entry>102</entry>
<entry>oper</entry>
<entry>Op&eacute;rateur de la base de donn&eacute;es</entry>
</row>
</tbody>
</tgroup>
</informaltable>
<para>Pour une installation
d'<application>&oracle;</application> par d&eacute;faut, seul le
groupe <groupname>dba</groupname> est utilis&eacute;.
Tout comme le groupe <groupname>oper</groupname>, certains
utilisent &eacute;galement le groupe <groupname>dba</groupname>
(Voir les documentations d'<application>&oracle;</application>
et de <application>&sap;</application> pour plus
d'information).</para>
<para>Nous avons &eacute;galement besoin des utilisateurs
suivants:</para>
<informaltable>
<tgroup cols="6">
<thead>
<row>
<entry>ID utilisateur</entry>
<entry>nom d'utilisateur</entry>
<entry>nom g&eacute;n&eacute;ric</entry>
<entry>groupe</entry>
<entry>groupes suppl&eacute;mentaires</entry>
<entry>description</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>Administrateur &sap;</entry>
</row>
<row>
<entry>1002</entry>
<entry>oraids/oraprd</entry>
<entry>ora<replaceable>sid</replaceable></entry>
<entry>dba</entry>
<entry>oper</entry>
<entry>Administrateur de la base de donn&eacute;es &oracle;</entry>
</row>
</tbody>
</tgroup>
</informaltable>
<para>L'ajout des utilisateurs avec la commande
&man.adduser.8; n&eacute;cessite les entr&eacute;es
suivantes (notez l'interpr&eacute;teur de commandes et le
r&eacute;pertoire utilisateur) pour l'&ldquo;Administrateur
&sap;&rdquo;:</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>et pour l'&ldquo;Administrateur de la base de
donn&eacute;es &oracle;&rdquo;:</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>Ceci devrait &eacute;galement inclure le groupe
<groupname>oper</groupname> au cas o&ugrave; vous utiliseriez
les deux groupes <groupname>dba</groupname> et
<groupname>oper</groupname>.</para>
</sect3>
<sect3 id="creatingdirectories">
<title>Cr&eacute;ation des r&eacute;pertoires</title>
<para>Ces r&eacute;pertoires sont g&eacute;n&eacute;ralement
cr&eacute;&eacute;s sous forme de syst&egrave;mes de
fichiers s&eacute;par&eacute;s. Cela d&eacute;pend
enti&egrave;rement de vous besoins. Nous avons choisi de
cr&eacute;er de simple r&eacute;pertoires, comme ils sont
plac&eacute;s sur le m&ecirc;me syst&egrave;me RAID
5:</para>
<para>Nous positionnerons tout d'abord les propri&eacute;taires
et les droits de certains r&eacute;pertoires (en tant que
<username>root</username>):</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>Ensuite nous cr&eacute;rons les r&eacute;pertoires en tant
qu'utilisateur
<username>ora<replaceable>sid</replaceable></username>. Ce
seront tous les r&eacute;pertoires du type
<filename role='directory'>/oracle/<replaceable>SID</replaceable></filename>:</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>Pour l'installation d'<application>&oracle; 8.1.7</application>
des r&eacute;pertoires suppl&eacute;mentaires sont
n&eacute;cessaires:</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>Le r&eacute;pertoire <filename
role='directory'>client/80x_32</filename> est
cr&eacute;&eacute; tel quel. Ne remplacez pas le
<emphasis>x</emphasis> par quelque chose
d'autre.</para></note>
<para>La derni&egrave;re &eacute;tape consiste &agrave;
cr&eacute;er les r&eacute;pertoires en tant qu'utilisateur
<username><replaceable>sid</replaceable>adm</username>:</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>Entr&eacute;es dans <filename>/etc/services</filename></title>
<para><application>&sap.r3;</application> a besoin de certaines
entr&eacute;es dans le fichier
<filename>/etc/services</filename>, qui ne seront pas
cr&eacute;&eacute;es durant son installation sous &os;.
Veuillez ajouter les entr&eacute;es suivantes (vous avez
besoin au moins des entr&eacute;es correspondant au
num&eacute;ro d'instance &mdash; dans notre cas,
<literal>00</literal>. Cela ne posera pas de
probl&egrave;me d'ajouter toutes les entr&eacute;es de
<literal>00</literal> &agrave; <literal>99</literal> pour
<literal>dp</literal>, <literal>gw</literal>,
<literal>sp</literal> et <literal>ms</literal>). Si vous
allez utiliser <application>SAProuter</application> ou vous
devez acc&eacute;der au <application>&sap;</application> OSS,
vous avez &eacute;galement besoin de l'entr&eacute;e
<literal>99</literal>, comme le port 3299 est
g&eacute;n&eacute;ralement utilis&eacute; par le processus
<application>SAProuter</application> sur le syst&egrave;me
cible:</para>
<programlisting>
sapdp00 3200/tcp # SAP Dispatcher. 3200 + Instance-Number
sapgw00 3300/tcp # SAP Gateway. 3300 + Instance-Number
sapsp00 3400/tcp # 3400 + Instance-Number
sapms00 3500/tcp # 3500 + Instance-Number
sapms<replaceable>SID</replaceable> 3600/tcp # SAP Message Server. 3600 + Instance-Number
sapgw00s 4800/tcp # SAP Secure Gateway 4800 + Instance-Number</programlisting>
</sect3>
<sect3 id="necessarylocales">
<title>&ldquo;Locales&rdquo; n&eacute;cessaires</title>
<indexterm><primary>locale</primary></indexterm>
<para><application>&sap;</application> n&eacute;cessite au moins
deux &ldquo;locales&rdquo; qui ne font pas partie de
l'installation RedHat par d&eacute;faut. SAP propose les
RPMs n&eacute;cessaires en t&eacute;l&eacute;chargement
&agrave; partir de leur serveur FTP (qui est uniquement
accessible si vous &ecirc;tes un client avec un acc&egrave;s
OSS). Consultez la note 0171356 pour la liste des RPMs dont
vous avez besoin.</para>
<para>Il est &eacute;galement possible de cr&eacute;er just
les appropri&eacute;s (par exemple &agrave; partir de
<emphasis>de_DE</emphasis> et <emphasis>en_US</emphasis>),
mais nous ne recommandons pas cela pour un syst&egrave;me
destin&eacute; &agrave; la production (bien que cela a
fonctionn&eacute; sans probl&egrave;me avec le
syst&egrave;me IDES). Les &ldquo;locales&rdquo; suivantes
sont n&eacute;cessaires:</para>
<programlisting>de_DE.ISO-8859-1
en_US.ISO-8859-1</programlisting>
<para>Cr&eacute;ez les liens comme suit:</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>S'ils n'existent pas, des probl&egrave;mes appara&icirc;trons
lors de l'installation. Si ces probl&egrave;mes sont
intentionnellement ignor&eacute;s (en fixant la valeur
de la variable <literal>STATUS</literal>
des &eacute;tapes pour lesquelles les probl&egrave;mes sont
apparus &agrave; la valeur <literal>OK</literal> dans le
fichier <filename>CENTRDB.R3S</filename>), il sera
impossible d'ouvrir une session sur le syst&egrave;me
<application>&sap;</application> sans effort
suppl&eacute;mentaire.</para>
</sect3>
<sect3 id="kerneltuning">
<title>Optimisation du noyau</title>
<indexterm><primary>optimisation du noyau</primary></indexterm>
<para>Les syst&egrave;mes <application>&sap.r3;</application>
demandent beaucoup de ressources. Nous avons donc
ajout&eacute; les param&egrave;tres suivants au fichier de
configuration du noyau:</para>
<programlisting># Set these for memory pigs (SAP and Oracle):
options MAXDSIZ="(1024*1024*1024)"
options DFLDSIZ="(1024*1024*1024)"
# System V options needed.
options SYSVSHM #SYSV-style shared memory
options SHMMAXPGS=262144 #max amount of shared mem. pages
#options SHMMAXPGS=393216 #use this for the 46C inst.parameters
options SHMMNI=256 #max number of shared memory ident if.
options SHMSEG=100 #max shared mem.segs per process
options SYSVMSG #SYSV-style message queues
options MSGSEG=32767 #max num. of mes.segments in system
options MSGSSZ=32 #size of msg-seg. MUST be power of 2
options MSGMNB=65535 #max char. per message queue
options MSGTQL=2046 #max amount of msgs in system
options SYSVSEM #SYSV-style semaphores
options SEMMNU=256 #number of semaphore UNDO structures
options SEMMNS=1024 #number of semaphores in system
options SEMMNI=520 #number of semaphore identifiers
options SEMUME=100 #number of UNDO keys</programlisting>
<para>Les valeurs minimales sont pr&eacute;cis&eacute;es dans
la documentation en provenance de SAP. Comme il n'y a pas
d'&eacute;l&eacute;ments concernant Linux, consultez la section
sur HP-UX (32bits) pour plus d'information. Comme le
syst&egrave;me utilis&eacute; pour l'installation de la
version 4.6C SR2 dispose de plus de m&eacute;moire principale,
les segments de m&eacute;moire partag&eacute;e (&ldquo;shared
segments&rdquo;) peuvent &ecirc;tre plus larges pour
<application>&sap;</application> et
<application>&oracle;</application>, cependant choisissez un
nombre plus important de page de m&eacute;moire
partag&eacute;e.</para>
<note><para>Avec l'installation par d&eacute;faut de &os;&nbsp;4.5
sur architecture &i386;, laissez <literal>MAXDSIZ</literal>
et <literal>DFLDSIZ</literal> &agrave; une valeur de
1&nbsp;Go maximum. Sinon, des erreurs &eacute;tranges comme
<errorname>ORA-27102: out of memory</errorname> et
<errorname>Linux Error: 12: Cannot allocate memory</errorname>
risquent d'appara&icirc;tre.</para></note>
</sect3>
</sect2>
<sect2 id="installingsapr3">
<title>Installer &sap.r3;</title>
<sect3 id="preparingsapcdroms">
<title>Pr&eacute;parer les CDROMs &sap;</title>
<para>Il y a de nombreux CDROMs &agrave; monter et
d&eacute;monter lors de l'installation. Si vous disposez de
suffisament de lecteurs de CDROMs, vous pouvez tout
simplement les monter tous. Nous avons d&eacute;cid&eacute;
de copier le contenu des CDROMs dans les r&eacute;pertoires
correspondant:</para>
<programlisting>/oracle/<replaceable>SID</replaceable>/sapreorg/<replaceable>nom-du-cd</replaceable></programlisting>
<para>o&ugrave; <replaceable>nom-du-cd</replaceable> est un nom
parmi <filename>KERNEL</filename>,
<filename>RDBMS</filename>, <filename>EXPORT1</filename>,
<filename>EXPORT2</filename>, <filename>EXPORT3</filename>,
<filename>EXPORT4</filename>, <filename>EXPORT5</filename> et
<filename>EXPORT6</filename> pour l'installation de la version
4.6B/IDES, et <filename>KERNEL</filename>,
<filename>RDBMS</filename>, <filename>DISK1</filename>,
<filename>DISK2</filename>, <filename>DISK3</filename>,
<filename>DISK4</filename> et <filename>LANG</filename> pour
l'installation de la version 4.6C SR2. Tous les noms
de fichiers sur les CDs mont&eacute;s devraient &ecirc;tre en
majuscules, sinon utilisez l'option <option>-g</option>
pour le montage. Utilisez donc les commandes
suivantes:</para>
<screen>&prompt.root; <userinput>mount_cd9660 -g /dev/cd0a /mnt</userinput>
&prompt.root; <userinput>cp -R /mnt/* /oracle/<replaceable>SID</replaceable>/sapreorg/<replaceable>nom-du-cd</replaceable></userinput>
&prompt.root; <userinput>umount /mnt</userinput></screen>
</sect3>
<sect3 id="runningtheinstall-script">
<title>Ex&eacute;cuter la proc&eacute;dure d'installation</title>
<para>Tout d'abord, vous devez pr&eacute;parer un r&eacute;pertoire
<filename role='directory'>install</filename>:</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>Ensuite la proc&eacute;dure d'installation est
lanc&eacute;e, qui copiera tous fichiers correspondant dans
le r&eacute;pertoire <filename
role='directory'>install</filename>:</para>
<screen>&prompt.root; <userinput>/oracle/<replaceable>SID</replaceable>/sapreorg/KERNEL/UNIX/INSTTOOL.SH</userinput></screen>
<para>L'installation IDES (4.6B) est fournie avec un
syst&egrave;me <application>&sap.r3;</application> de
d&eacute;monstration compl&egrave;tement configur&eacute;,
il y a donc six CDs EXPORT au lieu de juste trois CDs
EXPORT. A ce point la configuration par d&eacute;faut
d'installation <filename>CENTRDB.R3S</filename> est
destin&eacute; &agrave; l'installation d'une instance
centrale standard (<application>&r3;</application> et base de
donn&eacute;es), et non pas l'instance centrale standard
IDES, on doit donc copier le fichier
<filename>CENTRDB.R3S</filename> correspondant du
r&eacute;pertoire <filename
role='directory'>EXPORT1</filename>, sinon
<command>R3SETUP</command> ne demandera que trois CDs
EXPORT.</para>
<para>La nouvelle version <application>&sap; 4.6C
SR2</application> est fournie avec quatre CDs EXPORT. Le
fichier de param&egrave;tres qui contr&ocirc;le les
&eacute;tapes de l'installation est le fichier
<filename>CENTRAL.R3S</filename>. Contrairement aux
versions pr&eacute;c&eacute;dentes, il n'y a pas de
mod&egrave;le de configuration d'installation
s&eacute;par&eacute; pour une instance centrale avec ou sans
base de donn&eacute;es. <application>&sap;</application>
utilise un mod&egrave;le de configuration
s&eacute;par&eacute; pour l'installation de base de
donn&eacute;es. Pour relancer l'installation
post&eacute;rieurement, il suffit de la relancer avec le
fichier d'origine.</para>
<para>Pendant et apr&egrave;s l'installation,
<application>&sap;</application> a besoin que la commande
<command>hostname</command> renvoie uniquement le nom de la
machine et non pas le nom complet de la machine. Fixez donc
le nom de la machine en fonction, ou cr&eacute;ez un alias
avec <command>alias hostname='hostname -s'</command> pour
les utilisateurs
<username>ora<replaceable>sid</replaceable></username> et
<username><replaceable>sid</replaceable>adm</username> (et
pour le super-utilisateur <username>root</username> au moins
durant les &eacute;tapes de l'installation effectu&eacute;es
en tant que <username>root</username>). Il est
&eacute;galement possible d'ajuster les fichiers
<filename>.profile</filename> et <filename>.login</filename>
des deux utilisateurs qui sont install&eacute;s lors de
l'installation de <application>&sap;</application>.</para>
</sect3>
<sect3 id="startr3setup-46B">
<title>Ex&eacute;cuter <command>R3SETUP</command> 4.6B</title>
<para>Assurez-vous que la variable <envar>LD_LIBRARY_PATH</envar>
est correctement positionn&eacute;e:</para>
<screen>&prompt.root; <userinput>export LD_LIBRARY_PATH=/oracle/IDS/lib:/sapmnt/IDS/exe:/oracle/805_32/lib</userinput></screen>
<para>Lancez <command>R3SETUP</command> en tant que
<username>root</username> &agrave; partir du r&eacute;pertoire
d'installation:</para>
<screen>&prompt.root; <userinput>cd /oracle/IDS/sapreorg/install</userinput>
&prompt.root; <userinput>./R3SETUP -f CENTRDB.R3S</userinput></screen>
<para>La proc&eacute;dure pose ensuite un certain nombre de
questions (les valeurs par d&eacute;faut sont entre crochets,
suivies par les entr&eacute;es clavier):</para>
<informaltable>
<tgroup cols="3">
<thead>
<row>
<entry>Question</entry>
<entry>D&eacute;faut</entry>
<entry>Entr&eacute;e(s) clavier</entry>
</row>
</thead>
<tbody>
<row>
<entry>Enter SAP System ID</entry>
<entry>[C11]</entry>
<entry>IDS<keycap>Entr&eacute;e</keycap></entry>
</row>
<row>
<entry>Enter SAP Instance Number</entry>
<entry>[00]</entry>
<entry><keycap>Entr&eacute;e</keycap></entry>
</row>
<row>
<entry>Enter SAPMOUNT Directory</entry>
<entry>[/sapmnt]</entry>
<entry><keycap>Entr&eacute;e</keycap></entry>
</row>
<row>
<entry>Enter name of SAP central host</entry>
<entry>[troubadix.domain.de]</entry>
<entry><keycap>Entr&eacute;e</keycap></entry>
</row>
<row>
<entry>Enter name of SAP db host</entry>
<entry>[troubadix]</entry>
<entry><keycap>Entr&eacute;e</keycap></entry>
</row>
<row>
<entry>Select character set</entry>
<entry>[1] (WE8DEC)</entry>
<entry><keycap>Entr&eacute;e</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>Entr&eacute;e</keycap></entry>
</row>
<row>
<entry>Extract Oracle Client archive</entry>
<entry>[1] (Yes, extract)</entry>
<entry><keycap>Entr&eacute;e</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>Entr&eacute;e</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>Entr&eacute;e</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>Entr&eacute;e</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>Entr&eacute;e</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>Entr&eacute;e</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>Entr&eacute;e</keycap></entry>
</row>
<row>
<entry>Enter amount of RAM for SAP + DB</entry>
<entry> </entry>
<entry>850<keycap>Entr&eacute;e</keycap> (en m&eacute;gaoctets)</entry>
</row>
<row>
<entry>Service Entry Message Server</entry>
<entry>[3600]</entry>
<entry><keycap>Entr&eacute;e</keycap></entry>
</row>
<row>
<entry>Enter Group-ID of sapsys</entry>
<entry>[101]</entry>
<entry><keycap>Entr&eacute;e</keycap></entry>
</row>
<row>
<entry>Enter Group-ID of oper</entry>
<entry>[102]</entry>
<entry><keycap>Entr&eacute;e</keycap></entry>
</row>
<row>
<entry>Enter Group-ID of dba</entry>
<entry>[100]</entry>
<entry><keycap>Entr&eacute;e</keycap></entry>
</row>
<row>
<entry>Enter User-ID of <replaceable>sid</replaceable>adm</entry>
<entry>[1000]</entry>
<entry><keycap>Entr&eacute;e</keycap></entry>
</row>
<row>
<entry>Enter User-ID of ora<replaceable>sid</replaceable></entry>
<entry>[1002]</entry>
<entry><keycap>Entr&eacute;e</keycap></entry>
</row>
<row>
<entry>Number of parallel procs</entry>
<entry>[2]</entry>
<entry><keycap>Entr&eacute;e</keycap></entry>
</row>
</tbody>
</tgroup>
</informaltable>
<para>Si vous n'avez pas copi&eacute; les CDs en diff&eacute;rent
endroits, alors l'installeur <application>&sap;</application>
ne peut trouver le CD n&eacute;cessaire (identifi&eacute; par le
fichier <filename>LABEL.ASC</filename> sur le CD) et vous
demandera alors d'ins&eacute;rer, de monter le CD et de
confirmer ou d'entrer le chemin du point de montage.</para>
<para>Le fichier <filename>CENTRDB.R3S</filename> peut ne pas
&ecirc;tre exempt de probl&egrave;me. Dans notre cas, il demanda
&agrave; nouveau le CD EXPORT4 mais indiqua la cl&eacute;
correcte (6_LOCATION, puis 7_LOCATION, etc.), on peut donc
juste continuer &agrave; saisir les bonnes valeurs.</para>
<para>En dehors des probl&egrave;mes mentionn&eacute;s plus
bas, tout devrait &ecirc;tre assez direct jusqu'au moment
o&ugrave; la base de donn&eacute;es
<application>&oracle;</application> doit &ecirc;tre
install&eacute;e.</para>
</sect3>
<sect3 id="startr3setup-46C">
<title>Ex&eacute;cuter <command>R3SETUP</command> 4.6C SR2</title>
<para>Assurez-vous que la variable <envar>LD_LIBRARY_PATH</envar>
est correctement positionn&eacute;e. La valeur est
diff&eacute;rente de l'installation 4.6B avec
<application>&oracle; 8.0.5</application>:</para>
<screen>&prompt.root; <userinput>export LD_LIBRARY_PATH=/sapmnt/PRD/exe:/oracle/PRD/817_32/lib</userinput></screen>
<para>Lancez <command>R3SETUP</command> en tant que
<username>root</username> &agrave; partir du r&eacute;pertoire
d'installation:</para>
<screen>&prompt.root; <userinput>cd /oracle/PRD/sapreorg/install</userinput>
&prompt.root; <userinput>./R3SETUP -f CENTRAL.R3S</userinput></screen>
<para>La proc&eacute;dure pose ensuite un certain nombre de
questions (les valeurs par d&eacute;faut sont entre crochets,
suivies par les entr&eacute;es clavier):</para>
<informaltable>
<tgroup cols="3">
<thead>
<row>
<entry>Question</entry>
<entry>D&eacute;faut</entry>
<entry>Entr&eacute;e(s) clavier</entry>
</row>
</thead>
<tbody>
<row>
<entry>Enter SAP System ID</entry>
<entry>[C11]</entry>
<entry>PRD<keycap>Entr&eacute;e</keycap></entry>
</row>
<row>
<entry>Enter SAP Instance Number</entry>
<entry>[00]</entry>
<entry><keycap>Entr&eacute;e</keycap></entry>
</row>
<row>
<entry>Enter SAPMOUNT Directory</entry>
<entry>[/sapmnt]</entry>
<entry><keycap>Entr&eacute;e</keycap></entry>
</row>
<row>
<entry>Enter name of SAP central host</entry>
<entry>[majestix]</entry>
<entry><keycap>Entr&eacute;e</keycap></entry>
</row>
<row>
<entry>Enter Database System ID</entry>
<entry>[PRD]</entry>
<entry>PRD<keycap>Entr&eacute;e</keycap></entry>
</row>
<row>
<entry>Enter name of SAP db host</entry>
<entry>[majestix]</entry>
<entry><keycap>Entr&eacute;e</keycap></entry>
</row>
<row>
<entry>Select character set</entry>
<entry>[1] (WE8DEC)</entry>
<entry><keycap>Entr&eacute;e</keycap></entry>
</row>
<row>
<entry>Enter Oracle server version (2) Oracle 8.1.7</entry>
<entry> </entry>
<entry>2<keycap>Entr&eacute;e</keycap></entry>
</row>
<row>
<entry>Extract Oracle Client archive</entry>
<entry>[1] (Yes, extract)</entry>
<entry><keycap>Entr&eacute;e</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>Entr&eacute;e</keycap> (en m&eacute;gaoctets)</entry>
</row>
<row>
<entry>Service Entry Message Server</entry>
<entry>[3600]</entry>
<entry><keycap>Entr&eacute;e</keycap></entry>
</row>
<row>
<entry>Enter Group-ID of sapsys</entry>
<entry>[100]</entry>
<entry><keycap>Entr&eacute;e</keycap></entry>
</row>
<row>
<entry>Enter Group-ID of oper</entry>
<entry>[101]</entry>
<entry><keycap>Entr&eacute;e</keycap></entry>
</row>
<row>
<entry>Enter Group-ID of dba</entry>
<entry>[102]</entry>
<entry><keycap>Entr&eacute;e</keycap></entry>
</row>
<row>
<entry>Enter User-ID of <username>oraprd</username></entry>
<entry>[1002]</entry>
<entry><keycap>Entr&eacute;e</keycap></entry>
</row>
<row>
<entry>Enter User-ID of <username>prdadm</username></entry>
<entry>[1000]</entry>
<entry><keycap>Entr&eacute;e</keycap></entry>
</row>
<row>
<entry>LDAP support</entry>
<entry> </entry>
<entry>3<keycap>Entr&eacute;e</keycap> (pas de support)</entry>
</row>
<row>
<entry>Installation step completed</entry>
<entry>[1] (continue)</entry>
<entry><keycap>Entr&eacute;e</keycap></entry>
</row>
<row>
<entry>Choose installation service</entry>
<entry>[1] (DB inst,file)</entry>
<entry><keycap>Entr&eacute;e</keycap></entry>
</row>
</tbody>
</tgroup>
</informaltable>
<para>Jusqu'ici, la cr&eacute;ation d'utilisateurs donne une
erreur durant l'installation lors des phases
OSUSERDBSID_IND_ORA (pour la cr&eacute;ation de
l'utilisateur
<username>ora<replaceable>sid</replaceable></username>) et
OSUSERSIDADM_IND_ORA (cr&eacute;ation de l'utilisateur
<username><replaceable>sid</replaceable>adm</username>).</para>
<para>En dehors des probl&egrave;mes mentionn&eacute;s plus
bas, tout devrait &ecirc;tre assez direct jusqu'au moment
o&ugrave; la base de donn&eacute;es
<application>&oracle;</application> doit &ecirc;tre
install&eacute;e.</para>
</sect3>
</sect2>
<sect2 id="installingoracle805">
<title>Installer &oracle; 8.0.5</title>
<para>Consultez les notes &sap; et les
<filename>Readme</filename>s d'&oracle; concernant Linux et la
base de donn&eacute;es <application>&oracle;</application> pour
de possibles probl&egrave;mes. La plupart, si ce n'est pas
tous, de ces probl&egrave;mes proviennent de
biblioth&egrave;ques incompatibles.</para>
<para>Pour plus d'informations au sujet de l'installation
d'<application>&oracle;</application>,
r&eacute;f&eacute;rez-vous au chapitre sur l'<link
linkend="linuxemu-oracle">installation d'&oracle;.</link></para>
<sect3 id="installingtheoracle805withorainst">
<title>Installer &oracle; 8.0.5 avec <command>orainst</command></title>
<para>Si <application>&oracle; 8.0.5</application> doit
&ecirc;tre utilis&eacute;e, des biblioth&egrave;ques
suppl&eacute;mentaires sont n&eacute;cessaires pour une
&eacute;dition de liens couronn&eacute;e de succ&egrave;s,
comme <application>&oracle; 8.0.5</application> est
li&eacute;e avec une ancienne biblioth&egrave;que glibc
(RedHat 6.0), cependant RedHat 6.1 utilise
d&eacute;j&agrave; une nouvelle version de la
biblioth&egrave;que glibc. Vous devez donc installer les
&ldquo;packages&rdquo; suivants pour s'assurer que
l'&eacute;dition de liens fonctionnera:</para>
<para><filename>compat-libs-5.2-2.i386.rpm</filename></para>
<para><filename>compat-glibc-5.2-2.0.7.2.i386.rpm</filename></para>
<para><filename>compat-egcs-5.2-1.0.3a.1.i386.rpm</filename></para>
<para><filename>compat-egcs-c++-5.2-1.0.3a.1.i386.rpm</filename></para>
<para><filename>compat-binutils-5.2-2.9.1.0.23.1.i386.rpm</filename></para>
<para>Consultez les notes &sap; et les
<filename>Readme</filename>s d'&oracle; pour plus
d'informations. On pourra utiliser les binaires d'origine
(au moment de l'installation, nous n'avons pas eu le temps
de contr&ocirc;ler cela), ou utiliser directement les binaires
fraichement li&eacute;s d'un syst&egrave;me RedHat.</para>
<para>Pour la compilation de l'agent intelligent, la
version RedHat de Tcl doit &ecirc;tre install&eacute;e.
Si vous ne pouvez vous procurer
<filename>tcl-8.0.3-20.i386.rpm</filename>, un fichier plus
r&eacute;cent comme <filename>tcl-8.0.5-30.i386.rpm</filename> pour
RedHat 6.1 fera l'affaire.</para>
<para>En dehors de ce probl&egrave;me de liens, l'installation est
relativement directe:</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>Confirmez tous les &eacute;crans en appuyant sur
<keycap>Entr&eacute;e</keycap> jusqu'&agrave; l'installation
compl&egrave;te du logiciel, &agrave; l'exception de celui
qui permet de d&eacute;selectionner la &ldquo;visionneuse de
texte &oracle;&rdquo; (<emphasis>&oracle; On-Line Text
Viewer</emphasis>), comme cette derni&egrave;re n'est pas
disponible pour Linux. Ensuite
<application>&oracle;</application> veut faire
l'&eacute;dition de liens avec
<command>i386-glibc20-linux-gcc</command> &agrave; la place
des <command>gcc</command>, <command>egcs</command> ou
<command>i386-redhat-linux-gcc</command> disponibles.</para>
<para>En raison d'un manque de temps, nous avons
d&eacute;cid&eacute; d'utiliser les binaires d'une version
<application>&oracle; 8.0.5 PreProduction</application>,
apr&egrave;s que la premi&egrave;re tentative d'obtenir
&agrave; partir du CD RDBMS une version fonctionnant eut
&eacute;chou&eacute;, et que nous avons trouv&eacute;
qu'acc&eacute;der aux bons RPMs &eacute;tait alors un
v&eacute;ritable cauchemar.</para>
</sect3>
<sect3 id="installingtheoracle805preproduction">
<title>Installer la version &oracle; 8.0.5 Pre-production pour
Linux (noyau 2.0.33)</title>
<para>Cette installation est simple. Montez le CD, lancez
l'installeur. Il vous demandera l'emplacement du
r&eacute;pertoire utilisateur
<application>&oracle;</application>, et y copiera tous les
binaires. Nous n'avions, cependant, pas effac&eacute; les
restes de nos pr&eacute;c&eacute;dentes tentatives
d'installation RDBMS.</para>
<para>Apr&egrave;s cela, la base de donn&eacute;es
<application>&oracle;</application> put &ecirc;tre
install&eacute;e sans encombres.</para>
</sect3>
</sect2>
<sect2 id="installingoracle817">
<title>Installer l'archive tar d'&oracle; 8.1.7 pour Linux</title>
<para>Prennez l'archive <application>tar</application> que vous
avez produite &agrave; partir du r&eacute;pertoire
d'installation sur un syst&egrave;me Linux, et
d&eacute;sarchivez-la dans le r&eacute;pertoire <filename
role='directory'>/oracle/<replaceable>SID</replaceable>/817_32/</filename>.</para>
</sect2>
<sect2 id="continuewithsapr4installation">
<title>Poursuivre l'installation de &sap.r3;</title>
<para>Tout d'abord v&eacute;rifiez le param&eacute;trage des
environements des utilisateurs <username>idsamd</username>
(<replaceable>sid</replaceable>adm) et
<username>oraids</username>
(ora<replaceable>sid</replaceable>). Ils devraient avoir,
tous les deux, des fichiers <filename>.profile</filename>,
<filename>.login</filename> et <filename>.cshrc</filename> qui
utilisent la directement la commande
<command>hostname</command>. Si le nom de machine du
syst&egrave;me est un nom complet d'h&ocirc;te, vous devez
modifier <command>hostname</command> pour <command>hostname
-s</command> dans ces trois fichiers.</para>
<sect3 id="databaseload">
<title>Chargement de la base de donn&eacute;es</title>
<para>Ensuite, <command>R3SETUP</command> peut &ecirc;tre soit
relanc&eacute; ou poursuivi (tout d&eacute;pend si le
programme a &eacute;t&eacute; quitt&eacute; ou non).
<command>R3SETUP</command> cr&eacute;&eacute; ensuite les
tables pour les donn&eacute;es et charge ces donn&eacute;es
(pour 46B IDES, &agrave; partir des disques EXPORT1 &agrave;
EXPORT6, pour 46C &agrave; partir des disques DISK1 &agrave;
DISK4) avec <command>R3load</command> dans la base de
donn&eacute;es.</para>
<para>Quand le chargement de la base de donn&eacute;es
est achev&eacute; (cela peut prendre plusieurs heures), des
mots de passe sont demand&eacute;s. Pour les installations
de tests, on peut utiliser les mots de passe
par d&eacute;fauts connus (utilisez-en des diff&eacute;rents
si la s&eacute;curit&eacute; est importante):</para>
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>Question</entry>
<entry>Entr&eacute;e(s) clavier</entry>
</row>
</thead>
<tbody>
<row>
<entry>Enter Password for sapr3</entry>
<entry>sap<keycap>Entr&eacute;e</keycap></entry>
</row>
<row>
<entry>Confirum Password for sapr3</entry>
<entry>sap<keycap>Entr&eacute;e</keycap></entry>
</row>
<row>
<entry>Enter Password for sys</entry>
<entry>change_on_install<keycap>Entr&eacute;e</keycap></entry>
</row>
<row>
<entry>Confirm Password for sys</entry>
<entry>change_on_install<keycap>Entr&eacute;e</keycap></entry>
</row>
<row>
<entry>Enter Password for system</entry>
<entry>manager<keycap>Entr&eacute;e</keycap></entry>
</row>
<row>
<entry>Confirm Password for system</entry>
<entry>manager<keycap>Entr&eacute;e</keycap></entry>
</row>
</tbody>
</tgroup>
</informaltable>
<para>A ce point, nous avons eut quelques probl&egrave;mes
avec <command>dipgntab</command> durant l'installation de la
version 4.6B.</para>
</sect3>
<sect3 id="listener">
<title>Programme d'&eacute;coute</title>
<para>D&eacute;marrer le programme d'&eacute;coute
(&ldquo;listener&rdquo;) d'<application>&oracle;</application>
sous l'utilisateur
<username>ora<replaceable>sid</replaceable></username> comme
suit:</para>
<screen>&prompt.user; <userinput>umask 0; lsnrctl start</userinput></screen>
<para>Sinon vous risquez d'obtenir l'erreur
<errorcode>ORA-12546</errorcode> comme les
&ldquo;sockets&rdquo; n'auront pas les bonnes permissions.
Consultez la note &sap; 072984.</para>
</sect3>
<sect3 id="mnlstables">
<title>Mettre &agrave; jour les tables MNLS</title>
<para>Si vous projetez d'importer des donn&eacute;es utilisant
des langues non latin-1 dans le syst&egrave;me
<application>&sap;</application>, vous devez mettre &agrave;
jour les tables de support des langues internationales
(&ldquo;Multi National Language Support&rdquo; &mdash;
MNLS). Ceci est d&eacute;crit dans les notes &sap; OSS 15023
et 45619. Sinon, vous pouvez ignorer cette question lors de
l'installation de <application>&sap;</application>.</para>
<note><para>Si vous n'avez pas besoin des tables MNLS, il est
toujours n&eacute;cessaire de contr&ocirc;ler la table TCPDB
et l'initialiser si cela n'a pas d&eacute;j&agrave;
&eacute;t&eacute; fait. Consultez les notes 0015023 et
0045619 pour plus d'information.</para></note>
</sect3>
</sect2>
<sect2 id="postinstallationsteps">
<title>Etapes de post-installation</title>
<sect3 id="requestsapr3licensekey">
<title>Demander une cl&eacute; licence pour &sap.r3;</title>
<para>Vous devez demander votre cl&eacute;
<application>&sap.r3;</application>. Cette cl&eacute; est indispensable
&eacute;tant donn&eacute; que la licence temporaire qui a
&eacute;t&eacute; install&eacute;e lors de l'installation
n'est valide que pendant quatre semaines. Tout d'abord
r&eacute;cup&eacute;rez la cl&eacute; mat&eacute;rielle.
Ouvrez une session sous l'utilisateur
<username>idsadm</username> et lancez la commande
<command>saplicense</command>:</para>
<screen>&prompt.root; <userinput>/sapmnt/IDS/exe/saplicense
-get</userinput></screen>
<para>Appeler <command>saplicense</command> sans
param&egrave;tres affiche la liste des options disponibles.
Apr&egrave;s la r&eacute;ception de la cl&eacute;, elle peut
&ecirc;tre install&eacute;e en utilisant:</para>
<screen>&prompt.root; <userinput>/sapmnt/IDS/exe/saplicense -install</userinput></screen>
<para>Vous devez ensuite entrer les valeurs suivantes:</para>
<programlisting>SAP SYSTEM ID = <replaceable>SID, 3 chars</replaceable>
CUSTOMER KEY = <replaceable>hardware key, 11 chars</replaceable>
INSTALLATION NO = <replaceable>installation, 10 digits</replaceable>
EXPIRATION DATE = <replaceable>yyyymmdd, usually "99991231"</replaceable>
LICENSE KEY = <replaceable>license key, 24 chars</replaceable></programlisting>
</sect3>
<sect3 id="creatingusers">
<title>Cr&eacute;er les utilisateurs</title>
<para>Cr&eacute;ez un utilisateur sous le client 000
(certaines t&acirc;ches doivent &ecirc;tre effectu&eacute;es
sous le client 000, mais avec un utilisateur
diff&eacute;rent de <username>sap*</username> et
<username>ddic</username>). Comme nom d'utilisateur, nous
choisissons g&eacute;n&eacute;ralement
<username>wartung</username> (ou
<username>service</username> en fran&ccedil;ais). Les
profiles n&eacute;cessaires sont <literal>sap_new</literal>
et <literal>sap_all</literal>. Pour plus de
s&eacute;curit&eacute; les mots de passe des utilisateurs
par d&eacute;faut &agrave; l'int&eacute;rieur de tous les
clients devraient &ecirc;tre modifi&eacute;s (cela inclut
les utilisateurs <username>sap*</username> et
<username>ddic</username>).</para>
</sect3>
<sect3 id="configtranssysprofileopermodesetc">
<title>Configurer le syst&egrave;me de transport, les profils,
les modes d'op&eacute;ration, etc.</title>
<para>Dans le client 000, avec un utilisateur autre que
<username>ddic</username> et <username>sap*</username>,
faire, au moins, ce qui suit:</para>
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>T&acirc;che</entry>
<entry>Transaction</entry>
</row>
</thead>
<tbody>
<row>
<entry>Configurez le syst&egrave;me de transport, par
exemple <emphasis>entit&eacute; autonome de domaine
de transport</emphasis> (<emphasis>Stand-Alone
Transport Domain Entity</emphasis>)</entry>
<entry>STMS</entry>
</row>
<row>
<entry>Cr&eacute;ez / Editez le profil syst&egrave;me</entry>
<entry>RZ10</entry>
</row>
<row>
<entry>Maintenez les modes d'op&eacute;ration et les
instances</entry>
<entry>RZ04</entry>
</row>
</tbody>
</tgroup>
</informaltable>
<para>Cela et toutes les autres &eacute;tapes de
post-installation sont int&eacute;gralement d&eacute;crites
dans les guides d'installation
<application>&sap;</application>.</para>
</sect3>
<sect3 id="editintsidsap">
<title>Editer
<filename>init<replaceable>sid</replaceable>.sap</filename>
(<filename>initIDS.sap</filename>)</title>
<para>Le fichier
<filename>/oracle/IDS/dbs/initIDS.sap</filename> contient le
profil de sauvegarde <application>&sap;</application>. Ici la
taille de la bande &agrave; utiliser, le type de compression
et ainsi de suite doivent &ecirc;tre d&eacute;finis. Pour
garantir un fonctionnement avec les commandes
<command>sapdba</command>/<command>brbackup</command>, nous
avons modifi&eacute; les valeurs suivantes:</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>Explications:</para>
<para><varname>compress</varname>: la bande que nous utilisons
est une HP DLT1 qui fournie une compression
mat&eacute;rielle.</para>
<para><varname>archive_function</varname>: d&eacute;finie le
comportement par d&eacute;faut en ce qui concerne
l'archivage des fichiers journaux
d'<application>&oracle;</application>: les nouveaux journaux
sont sauvegard&eacute;s sur la bande, ceux
d&eacute;j&agrave; sauvegard&eacute;s le sont &agrave;
nouveau et sont ensuite effac&eacute;s. Cela &eacute;vite
de nombreux probl&egrave;mes si vous devez r&eacute;tablir
la base de donn&eacute;es, et qu'une des bandes de
sauvegarde est endommag&eacute;e.</para>
<para><varname>cpio_flags</varname>: l'indicateur par
d&eacute;faut est <option>-B</option> qui fixe la taille
d'un bloc &agrave; 5120 octets. Pour les bande DLT, HP
recommande une taille de bloc d'au moins 32Ko, aussi nous
avons utilis&eacute; <option>--block-size=128</option> pour
64Ko. L'option <option>--format=newc</option> est
n&eacute;cessaire car nous avons un nombre d'inodes
sup&eacute;rieur &agrave; 65535. La derni&egrave;re option,
<option>--quiet</option>, est n&eacute;cessaire sinon
<command>brbackup</command> se plaint d&egrave;s que
<command>cpio</command> donne le nombre de blocs
sauv&eacute;s.</para>
<para><varname>cpio_in_flags</varname>: indicateurs
n&eacute;cessaires pour charger les donn&eacute;es &agrave;
partir de bandes. Le format est reconnu
automatiquement.</para>
<para><varname>tape_size</varname>: cette variable donne la
capacit&eacute; brute de la bande. Pour des raisons de
s&eacute;curit&eacute; (nous utilisons une compression
mat&eacute;rielle), la valeur est l&eacute;g&egrave;rement
inf&eacute;rieure &agrave; la valeur r&eacute;elle.</para>
<para><varname>tape_address</varname>: le
p&eacute;riph&eacute;rique non rembobinable devant
&ecirc;tre utilis&eacute; avec
<command>cpio</command>.</para>
<para><varname>tape_address_rew</varname>: le
p&eacute;riph&eacute;rique rembobinable &agrave; utiliser
avec <command>cpio</command>.</para>
</sect3>
<sect3>
<title>Probl&egrave;mes de configuration apr&egrave;s
l'installation</title>
<para>Les param&egrave;tres <application>&sap;</application>
suivants devraient &ecirc;tre optimis&eacute;s apr&egrave;s
l'installation (exemples pour IDES 46B, 1&nbsp;Go de
m&eacute;moire):</para>
<informaltable frame="none">
<tgroup cols="2">
<thead>
<row>
<entry>Nom</entry>
<entry>Valeur</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>Note &sap; 0013026:</para>
<informaltable frame="none">
<tgroup cols="2">
<thead>
<row>
<entry>Nom</entry>
<entry>Valeur</entry>
</row>
<tbody>
<row>
<entry>ztta/dynpro_area</entry>
<entry>2500000</entry>
</row>
</tbody>
</tgroup>
</informaltable>
<para>Note &sap; 0157246:</para>
<informaltable frame="none">
<tgroup cols="2">
<thead>
<row>
<entry>Nom</entry>
<entry>Valeur</entry>
</row>
<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>Avec les param&egrave;tres donn&eacute;s ci-dessus,
sur un syst&egrave;me avec 1Go de m&eacute;moire, on pourra
avoir une utilisation de la m&eacute;moire similaire
&agrave;:</para>
<programlisting>Mem: 547M Active, 305M Inact, 109M Wired, 40M Cache, 112M Buf, 3492K Free</programlisting>
</note>
</sect3>
</sect2>
<sect2 id="problemsduringinstallation">
<title>Probl&egrave;mes lors de l'installation</title>
<sect3 id="restartr3setup">
<title>Relancer <command>R3SETUP</command> apr&egrave;s la correction
d'un probl&egrave;me</title>
<para><command>R3SETUP</command> s'arr&ecirc;te s'il rencontre
une erreur. Si vous avez examin&eacute; les fichiers
journaux correspondants et corrig&eacute; l'erreur, vous
devez relancer <command>R3SETUP</command> &agrave; nouveau,
habituellement en s&eacute;lectionnant
<option>REPEAT</option> comme option de la derni&egrave;re
&eacute;tape pour laquelle <command>R3SETUP</command> avait
rencontr&eacute; un probl&egrave;me.</para>
<para>Pour relancer <command>R3SETUP</command>,
ex&eacute;cutez-le avec le fichier <filename>R3S</filename>
correspondant:</para>
<screen>&prompt.root; <userinput>./R3SETUP -f CENTRDB.R3S</userinput></screen>
<para>pour la version 4.6B, ou avec</para>
<screen>&prompt.root; <userinput>./R3SETUP -f CENTRAL.R3S</userinput></screen>
<para>pour la version 4.6C, peu importe si l'erreur est
apparue avec <filename>CENTRAL.R3S</filename> ou
<filename>DATABASE.R3S</filename>.</para>
<note>
<para>A certains points, <command>R3SETUP</command> suppose
que la base de donn&eacute;es et le processus
<application>&sap;</application> sont en fonctionnement (comme
s'il avait d&eacute;j&agrave; compl&eacute;t&eacute; ces
&eacute;tapes). Au cas o&ugrave; les erreurs se
produiraient et que par exemple la base de donn&eacute;es ne
peut &ecirc;tre lanc&eacute;e, vous devez lancer la base de
donn&eacute;es et <application>&sap;</application> &agrave; la
main apr&egrave;s avoir corrig&eacute; les erreurs et avant
d'ex&eacute;cuter &agrave; nouveau
<command>R3SETUP</command>.</para>
<para>N'oubliez pas &eacute;galement de d&eacute;marrer le
programme d'&eacute;coute
d'<application>&oracle;</application> &agrave; nouveau (en
tant que
<username>ora<replaceable>sid</replaceable></username>
avec <command>umask 0; lsnrctl start</command>) s'il a
&eacute;galement &eacute;t&eacute; stopp&eacute; (par
exemple en raison d'un red&eacute;marrage du
syst&egrave;me).</para>
</note>
</sect3>
<sect3 id="indoraduringduringr3setup">
<title>Etape OSUSERSIDADM_IND_ORA lors de l'utilisation de
<command>R3SETUP</command></title>
<para>Si <command>R3SETUP</command> se plaint &agrave; ce stade,
&eacute;ditez le fichier mod&egrave;le utilis&eacute; par
<command>R3SETUP</command> &agrave; ce moment
(<filename>CENTRDB.R3S</filename> (4.6B) ou
<filename>CENTRAL.R3S</filename> ou
<filename>DATABASE.R3S</filename> (4.6C)). Localisez la
ligne <literal>[OSUSERSIDADM_IND_ORA]</literal> ou cherchez
l'unique entr&eacute;e <literal>STATUS=ERROR</literal> et
&eacute;ditez les valeurs suivantes:</para>
<programlisting>HOME=/home/<replaceable>sid</replaceable>adm (was empty)
STATUS=OK (had status ERROR)</programlisting>
<para>Vous pouvez ensuite relancer
<command>R3SETUP</command>.</para>
</sect3>
<sect3 id="indoraduringr3setup">
<title>Etape OSUSERDBSID_IND_ORA lors de l'utilisation de
<command>R3SETUP</command></title>
<para>Il est possible que <command>R3SETUP</command> se
plaigne &eacute;galement &agrave; ce stade. L'erreur ici
est similaire &agrave; celle durant la phase
OSUSERSIDADM_IND_ORA. Editez juste le fichier mod&egrave;le
utilis&eacute; par <command>R3SETUP</command> &agrave; ce
moment (<filename>CENTRDB.R3S</filename> (4.6B) ou
<filename>CENTRAL.R3S</filename> ou
<filename>DATABASE.R3S</filename> (4.6C)). Localisez la
ligne <literal>[OSUSERDBSID_IND_ORA]</literal> ou cherchez
l'unique entr&eacute;e <literal>STATUS=ERROR</literal> et
&eacute;ditez la valeur suivante dans la section:</para>
<programlisting>STATUS=OK</programlisting>
<para>Puis relancez <command>R3SETUP</command>.</para>
</sect3>
<sect3 id="oraviewvrffilenotfound">
<title>Erreur <errorname>oraview.vrf FILE NOT FOUND</errorname>
lors de l'installation d'&oracle;</title>
<para>Vous n'avez pas d&eacute;s&eacute;lectionn&eacute; la
<emphasis>visionneuse de texte en ligne d'&oracle;</emphasis>
avant de d&eacute;butter l'installation. Elle est
s&eacute;lectionn&eacute;e par d&eacute;faut m&ecirc;me si
cette option n'est actuellement pas disponible pour Linux.
D&eacute;s&eacute;lectionnez cet &eacute;l&eacute;ment dans
le menu d'installation d'<application>&oracle;</application>
et relancez l'installation.</para>
</sect3>
<sect3 id="textenvincalid">
<title>Erreur <errorname>TEXTENV_INVALID</errorname> lors du
lancement de <command>R3SETUP</command>, RFC ou SAPgui</title>
<para>Si cette erreur appara&icirc;t, la &ldquo;locale&rdquo;
correcte n'est pas pr&eacute;sente. La note &sap; 0171356
liste les RPMs n&eacute;cessaires (e.g.
<filename>saplocales-1.0-3</filename>,
<filename>saposcheck-1.0-1</filename> pour RedHat 6.1).
Dans le cas o&ugrave; vous avez ignor&eacute; toutes les
erreurs en rapport et modifi&eacute; la valeur du
<literal>STATUS</literal> correspondant de la valeur
<literal>ERROR</literal> vers la valeur
<literal>OK</literal> (dans
<filename>CENTRDB.R3S</filename>) &agrave; chaque fois que
<command>R3SETUP</command> s'est plaint et que vous avez
relanc&eacute; <command>R3SETUP</command>, le syst&egrave;me
<application>&sap;</application> ne sera pas correctement
configur&eacute; et vous ne serez pas en mesure de vous
connecter au syst&egrave;me avec
<application>SAPgui</application>, m&ecirc;me si le
syst&egrave;me peut &ecirc;tre lanc&eacute;. Tenter de se
connecter avec l'ancien <application>SAPgui</application>
Linux donna les messages suivants:</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>Ce comportement est d&ucirc; au fait que
<application>&sap.r3;</application> est incapable d'assigner
correctement une &ldquo;locale&rdquo; et n'est
lui-m&ecirc;me pas correctement configur&eacute;
(entr&eacute;es manquantes dans certaines tables de la base
de donn&eacute;es). Pour &ecirc;tre en mesure de se
connecter &agrave; <application>&sap;</application>, ajoutez
les entr&eacute;es suivantes au fichier
<filename>DEFAULT.PFL</filename> (voir la note
0043288):</para>
<programlisting>abap/set_etct_env_at_new_mode = 0
install/collate/active = 0
rscp/TCP0B = TCP0B</programlisting>
<para>Red&eacute;marrer le syst&egrave;me
<application>&sap;</application>. Vous pouvez maintenant vous
connecter au syst&egrave;me, m&ecirc;me si les
param&egrave;trages sp&eacute;cifiques &agrave; certaines
langues peuvent ne pas fonctionner comme attendu.
Apr&egrave;s la correction des param&eacute;trages de langue
(et apr&egrave;s avoir fourni les &ldquo;locales&rdquo;
correctes), ces entr&eacute;es peuvent &ecirc;tre
supprim&eacute;es du fichier
<filename>DEFAULT.PFL</filename> et le syst&egrave;me
<application>&sap;</application> peut &ecirc;tre
relanc&eacute;.</para>
</sect3>
<sect3 id="ora-00001">
<title>Erreur <errorcode>ORA-00001</errorcode></title>
<para>Cette erreur s'est produite uniquement avec
<application>&oracle; 8.1.7</application> sous &os;&nbsp;4.5.
La raison &eacute;tait que la base de donn&eacute;es
<application>&oracle;</application> ne pouvait pas
s'initialiser correctement et plantait, laissant des
s&eacute;maphores et de la m&eacute;moire partag&eacute;e
sur le syst&egrave;me. La tentative suivante de
d&eacute;marrer la base de donn&eacute;es retourna alors
l'erreur <errorcode>ORA-00001</errorcode>.</para>
<para>Retrouvez-les avec la commande <command>ipcs
-a</command> et d&eacute;truisez-les avec
<command>ipcrm</command>.</para>
</sect3>
<sect3 id="ora-00445pmon">
<title>Erreur <errorcode>ORA-00445</errorcode>
(le processus en t&acirc;che de fond PMON n'a pas
d&eacute;marr&eacute; &mdash; &ldquo;Background Process PMON Did Not
Start&rdquo;)</title>
<para>Cette erreur s'est produite avec <application>&oracle;
8.1.7</application>. Cette erreur est rapport&eacute;e si
la base de donn&eacute;es est d&eacute;marr&eacute;e avec la
proc&eacute;dure <command>startsap</command> habituelle (par
exemple <command>startsap_majestix_00</command>) en tant
qu'utilisateur <username>prdadm</username>.</para>
<para>Une solution possible est de d&eacute;marrer la base de
donn&eacute;es sous l'utilisateur
<username>oraprd</username> avec la commande
<command>svrmgrl</command>:</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>Erreur <errorcode>ORA-12546</errorcode> (Lancez le
programme d'&eacute;coute avec les droits corrects &mdash;
&ldquo;Start Listener with Correct
Permissions&rdquo;)</title>
<para>D&eacute;marrez le programme d'&eacute;coute
(&ldquo;listener&rdquo;) d'<application>&oracle;</application>
sous l'utilisateur <username>oraids</username> avec les
commandes suivantes:</para>
<screen>&prompt.root; <userinput>umask 0; lsnrctl start</userinput></screen>
<para>Sinon vous pourrez obtenir l'erreur
<errorcode>ORA-12546</errorcode> &eacute;tant donn&eacute; que les
&ldquo;sockets&rdquo; n'auront pas les bonnes permissions.
Consultez la note &sap; 0072984.</para>
</sect3>
<sect3 id="ora-27102">
<title>Erreur <errorcode>ORA-27102</errorcode> (M&eacute;moire
&eacute;puis&eacute;e &mdash; &ldquo;Out of Memory&rdquo;)</title>
<para>Cette erreur s'est produite quand nous avons essay&eacute;
des valeurs pour <literal>MAXDSIZ</literal> et
<literal>DFLDSIZ</literal> sup&eacute;rieures &agrave; 1&nbsp;Go
(1024x1024x1024). De plus, nous avons eu l'erreur
<errorname>Linux Error 12: Cannot allocate
memory</errorname>.</para>
</sect3>
<sect3 id="dipgntabindind">
<title>Erreur [DIPGNTAB_IND_IND] lors de l'utilisation de
<command>R3SETUP</command></title>
<para>En g&eacute;n&eacute;ral, vous devez consulter la note &sap;
0130581 (&ldquo;<command>R3SETUP</command> step
<literal>DIPGNTAB</literal> terminates&rdquo;). Lors de
l'installation d'IDES, pour certaines raisons le processus
d'installation n'a pas utilis&eacute; le nom correct pour le
syst&egrave;me <application>&sap;</application> &ldquo;IDS&rdquo;,
mais la cha&icirc;ne de carat&egrave;re <literal>""</literal>
&agrave; la place. Cela conduit &agrave; des probl&egrave;mes
mineurs d'acc&egrave;s aux r&eacute;pertoires, comme les chemins
sont g&eacute;n&eacute;r&eacute;s dynamiquement en utilisant
l'identifiant syst&egrave;me
<replaceable>SID</replaceable> (dans ce cas IDS). Aussi
au lieu d'acc&eacute;der par:</para>
<programlisting>/usr/sap/IDS/SYS/...
/usr/sap/IDS/DVMGS00</programlisting>
<para>les chemins suivants ont &eacute;t&eacute;
utilis&eacute;:</para>
<programlisting>/usr/sap//SYS/...
/usr/sap/D00</programlisting>
<para>Afin de poursuivre l'installation, nous avons
cr&eacute;&eacute; un lien et un r&eacute;pertoire
suppl&eacute;mentaire:</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 -> 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>Nous avons &eacute;galement trouv&eacute; des notes &sap;
(0029227 et 0008401) d&eacute;crivant ce comportement. Nous
n'avons pas rencontr&eacute; un seul de ces probl&egrave;mes
lors de l'installation de <application>SAP
4.6C</application>.</para>
</sect3>
<sect3 id="rfcrswboiniindind">
<title>Erreur [RFCRSWBOINI_IND_IND] lors de l'utilisation de
<command>R3SETUP</command></title>
<para>Lors de l'installation de
<application>SAP 4.6C</application>, cette erreur est juste
une cons&eacute;quence d'une autre erreur survenant plus
t&ocirc;t dans l'installation. Dans ce cas, vous devez
consulter les fichiers journaux correspondant et corriger
le v&eacute;ritable probl&egrave;me.</para>
<para>Si apr&egrave;s avoir cherch&eacute; dans les fichiers
journaux cette erreur est confirm&eacute;e (consultez les
notes &sap;), vous pouvez modifier la valeur du
<literal>STATUS</literal> de l'&eacute;tape posant
probl&egrave;me de la valeur <literal>ERROR</literal>
&agrave; la valeur <literal>OK</literal>. Apr&egrave;s
l'installation, vous devez ex&eacute;cuter le report
<literal>RSWBOINS</literal> &agrave; partir de la
transaction SE38. Lire la note &sap; 0162266 pour des
informations suppl&eacute;mentaires au sujet des phases
<literal>RFCRSWBOINI</literal> et
<literal>RFCRADDBDIF</literal>.</para>
</sect3>
<sect3 id="rfcraddbdifindind">
<title>Erreur [RFCRADDBDIF_IND_IND] lors de l'utilisation de
<command>R3SETUP</command></title>
<para>Ici les m&ecirc;me restrictions s'appliquent:
assurez-vous en consultant les fichiers journaux, que cette
erreur n'est pas caus&eacute;e par d'autres probl&egrave;mes
apparus pr&eacute;c&eacute;demment.</para>
<para>Si vous avez confirmation que la note &sap; 0162266
s'applique, modifiez juste la valeur du
<literal>STATUS</literal> de l'&eacute;tape posant
probl&egrave;me de la valeur <literal>ERROR</literal>
&agrave; la valeur <literal>OK</literal> (fichier
<filename>CENTRDB.R3S</filename>) et relancez
<command>R3SETUP</command>. Apr&egrave;s l'installation,
vous devez ex&eacute;cuter le report
<literal>RADDBDIF</literal> &agrave; partir de la
transaction SE38.</para>
</sect3>
<sect3 id="sigactionsig31">
<title>Erreur <errorcode>sigaction sig31: File size limit
exceeded</errorcode></title>
<para>Cette erreur s'est produite lors du lancement des
processus <application>&sap;</application>
<emphasis>disp+work</emphasis>. Si
<application>&sap;</application> est d&eacute;marr&eacute;
avec la proc&eacute;dure <command>startsap</command>, les
sous-processus sont alors lanc&eacute;s, et lancent les
autres processus <application>&sap;</application>. Cela a
pour r&eacute;sultat le fait que la proc&eacute;dure ne
remarquera pas si quelque chose se passe mal.</para>
<para>Pour contr&ocirc;ler si les processus
<application>&sap;</application> ont d&eacute;marr&eacute;
correctement, consultez l'&eacute;tat des processus avec la
commande <command>ps ax | grep
<replaceable>SID</replaceable></command>, qui vous donnera
une liste de tous les processus
<application>&oracle;</application> et
<application>&sap;</application>. S'il semble que certains
processus sont manquant ou que vous ne pouvez pas vous
connecter au syst&egrave;me <application>&sap;</application>,
consultez les fichiers journaux correspondants qui peuvent
&ecirc;tre trouv&eacute;s dans le r&eacute;pertoire
<filename
role='directory'>/usr/sap/<replaceable>SID</replaceable>/DVEBMGS<replaceable>nr</replaceable>/work/</filename>.
Les fichiers &agrave; consulter sont
<filename>dev_ms</filename> et
<filename>dev_disp</filename>.</para>
<para>Le signal 31 se produit ici si la quantit&eacute; de
m&eacute;moire partag&eacute;e utilis&eacute;e par
<application>&oracle;</application> et
<application>&sap;</application> d&eacute;passe celle
d&eacute;finie dans le fichier de configuration du noyau et
ce probl&egrave;me peut &ecirc;tre r&eacute;solu en
utilisant une valeur plus grande:</para>
<programlisting># larger value for 46C production systems:
options SHMMAXPGS=393216
# smaller value sufficient for 46B:
#options SHMMAXPGS=262144</programlisting>
</sect3>
<sect3 id="saposcolfails">
<title>Le lancement de <command>saposcol</command>
&eacute;choue</title>
<para>Il y a quelques probl&egrave;mes avec le programme
<command>saposcol</command> (version 4.6D). Le
syst&egrave;me &sap; utilise <command>saposcol</command> pour
collecter les donn&eacute;es concernant les performances du
syst&egrave;me. Ce programme n'est pas n&eacute;cessaire
pour utiliser le syst&egrave;me &sap;, aussi ce
probl&egrave;me peut &ecirc;tre consid&eacute;r&eacute;
comme mineur. Les anciennes versions (4.6B) fonctionnent,
mais ne r&eacute;cup&egrave;rent pas toutes les
donn&eacute;es (nombreux sont les appels qui retournent
juste 0, par exemple pour l'utilisation du CPU).</para>
</sect3>
</sect2>
</sect1>
<sect1 id="linuxemu-advanced">
<title>Sujets avanc&eacute;s</title>
<para>Si vous &ecirc;tes curieux de savoir comment la
compatibilit&eacute; binaire avec Linux fonctionne, cette
section est faite pour vous. La plupart de ce qui suit est
principalement bas&eacute; sur un courrier &eacute;lectronique
de Terry Lambert <email>tlambert@primenet.com</email>
envoy&eacute; &agrave; la &a.chat; (Message ID:
<literal>&lt;199906020108.SAA07001@usr09.primenet.com&gt;</literal>).</para>
<sect2>
<title>Comme &ccedil;a marche?</title>
<indexterm><primary>chargeur de classe d'ex&eacute;cution</primary></indexterm>
<para>&os; poss&egrave;de une abstraction appel&eacute;e
&ldquo;chargeur de classe d'ex&eacute;cution&rdquo;. C'est
une portion de l'appel syst&egrave;me &man.execve.2;.</para>
<para>Ce qui se passe est que &os; dispose d'une liste de
chargeurs, &agrave; la place d'un simple chargeur avec retour
(&ldquo;fallback&rdquo;) vers le chargeur
<literal>#!</literal> pour ex&eacute;cuter n'importe quel
interpr&eacute;teur de commandes ou proc&eacute;dure.</para>
<para>Historiquement, l'unique chargeur sur les plate-formes
&unix; examinait le nombre magique (g&eacute;n&eacute;ralement
les 4 ou 8 premiers octets du fichier) pour voir si
c'&eacute;tait un binaire connu par le syst&egrave;me, et si
c'&eacute;tait le cas, invoquait le chargeur binaire.</para>
<para>Si ce n'&eacute;tait pas le type de binaire du
syst&egrave;me, l'appel &man.execve.2; retournait un
&eacute;chec, et l'interpr&eacute;teur de commandes tentait de
l'ex&eacute;cuter comme une commande
d'interpr&eacute;teur.</para>
<para>Cette hypoth&egrave;se est celle par d&eacute;faut quelque
soit l'interpr&eacute;teur de commandes actuel.</para>
<para>Plus tard, une modification a &eacute;t&eacute; faite sur
&man.sh.1; pour examiner les deux premiers caract&egrave;res,
et s'ils &eacute;taient <literal>:\n</literal>, alors elle
invoquait l'interpr&eacute;teur de commandes &man.csh.1;
&agrave; la place (nous pensons que l'entreprise SCO fut la
premi&egrave;re &agrave; faire cette modification).</para>
<para>Ce que fait maintenant &os; est de parcourir une liste de
chargeurs, avec un chargeur <literal>#!</literal>
g&eacute;n&eacute;rique qui reconnait les noms des
interpr&eacute;teurs qui se trouvent apr&egrave;s le
caract&egrave;re espace suivant, puis avec un retour possible
vers <filename>/bin/sh</filename>.</para>
<indexterm><primary>ELF</primary></indexterm>
<para>Pour le support de l'ABI Linux, &os; voit le nombre
magique comme un binaire ELF (il ne fait pas la
diff&eacute;rence &agrave; ce niveau entre &os;, &solaris;,
Linux, ou tout autre syst&egrave;me d'exploitation qui dispose
d'un type d'image ELF).</para>
<indexterm><primary>Solaris</primary></indexterm>
<para>Le chargeur ELF recherche une <emphasis>marque</emphasis>
sp&eacute;cifique, qui se trouve dans une section de commentaire
dans l'image ELF, et qui n'est pas pr&eacute;sente dans les
binaires SVR4/&solaris; ELF.</para>
<para>Pour que les binaires Linux puissent fonctionner, ils
doivent &ecirc;tre <emphasis>marqu&eacute;s</emphasis> sous le
type <literal>Linux</literal> avec &man.brandelf.1;:</para>
<screen>&prompt.root; <userinput>brandelf -t Linux file</userinput></screen>
<para>Quand cela est fait, le chargeur ELF verra le marquage
<literal>Linux</literal> sur le fichier.</para>
<indexterm>
<primary>ELF</primary>
<secondary>marquage</secondary>
</indexterm>
<para>Lorsque le chargeur ELF voit le marquage
<literal>Linux</literal>, le chargeur remplace un pointeur
dans la structure <literal>proc</literal>. Tous les appels
syst&egrave;me sont ind&eacute;x&eacute;s par
l'interm&eacute;diaire de ce pointeur (dans un syst&egrave;me
&unix; traditionnel, cela serait la structure
<literal>sysent[]</literal>, contenant les appels
syst&egrave;me). De plus, le processus est marqu&eacute; pour
une gestion sp&eacute;ciale du vecteur d'interruption
(&ldquo;trap&rdquo;) pour le signal de code
&ldquo;trampoline&rdquo;, et plusieurs autres corrections
(mineures) qui sont g&eacute;r&eacute;es par le noyau
Linux.</para>
<para>Le vecteur d'appel syst&egrave;me Linux contient, entre
autres, une liste des entr&eacute;es
<literal>sysent[]</literal> dont les adresses r&eacute;sident
dans le noyau.</para>
<para>Quand un appel syst&egrave;me est effectu&eacute; par le
binaire Linux, le code &ldquo;trap&rdquo;
d&eacute;r&eacute;f&eacute;rence de la structure
<literal>proc</literal> le pointeur de la fonction de l'appel
syst&egrave;me, et utilise les points d'entr&eacute;e Linux,
et non pas &os;, de d'appel syst&egrave;me.</para>
<para>De plus, le mode Linux red&eacute;finit dynamiquement
l'origine des requ&ecirc;tes; c'est, en effet, ce qu'effectue
l'option <option>union</option> (<emphasis>pas</emphasis> le
type de syst&egrave;me de fichiers
<literal>unionfs</literal>!) de montage des syst&egrave;mes de
fichiers. Tout d'abord, une tentative est faite pour
rechercher le fichier dans le r&eacute;pertoire <filename
role='directory'>/compat/linux/<replaceable>chemin-origine</replaceable></filename>,
<emphasis>puis</emphasis> uniquement si cela &eacute;choue, la
recherche est effectu&eacute;e dans le r&eacute;pertoire
<filename
role='directory'>/<replaceable>chemin-origine</replaceable></filename>.
Cela permet de s'assurer que les binaires n&eacute;cessitant
d'autres binaires puissent s'ex&eacute;cuter (par exemple,
l'ensemble des outils Linux peuvent tourner sous l'ABI Linux).
Cela signifie &eacute;galement que les binaires Linux peuvent
charger et ex&eacute;cuter les binaires &os;, s'il n'y a pas
de binaires Linux correspondant pr&eacute;sents, et vous
pourriez placer une commande &man.uname.1; dans l'arborescence
<filename role='directory'>/compat/linux</filename> pour vous
assurer que les binaires Linux ne puissent pas dire qu'ils ne
tournent pas sous Linux.</para>
<para>En effet, il y a un noyau Linux dans le noyau &os;; les
diverses fonctions sous-jacentes qui impl&eacute;mentent tous
les services fournis par le noyau sont identiques entre les
deux tables d'entr&eacute;es des appels syst&egrave;mes &os;
et Linux: les op&eacute;rations sur les syst&egrave;mes de
fichiers, les op&eacute;rations sur la m&eacute;moire
virtuelle, la gestion des signaux, l'IPC System V, etc. La
seule diff&eacute;rence est que les binaires &os; utilisent
les fonctions <emphasis>glue</emphasis> de &os;, et les
binaires Linux celles de Linux (les plus anciens
syst&egrave;mes d'exploitation avaient uniquement leurs
propres fonctions de <emphasis>glue</emphasis>: les adresses
des fonctions dans une structure <literal>sysent[]</literal>
statique globale, au lieu des adresses des fonctions
d&eacute;r&eacute;f&eacute;renc&eacute;es d'un pointeur
initialis&eacute; dynamiquement pointant vers la structure
<literal>proc</literal> du processus faisant l'appel).</para>
<para>Laquelle est l'ABI native &os;? Cela n'a pas
d'importance. Basiquement, la seule diff&eacute;rence est que
(actuellement, cela pourrait facilement changer dans les
versions futures, et probablement apr&egrave;s cela) les
fonctions <emphasis>glue</emphasis> de &os; sont li&eacute;es
en statique dans le noyau, les fonctions
<emphasis>glue</emphasis> Linux peuvent &ecirc;tre
li&eacute;es statiquement, ou l'on peut y acc&eacute;der via
un module du noyau.</para>
<para>Oui, mais est-ce vraiment de l'&eacute;mulation? Non.
C'est l'impl&eacute;mentation d'une interface binaire pour les
applications (ABI). Il n'y a pas d'&eacute;mulateur (ou de
simulateur, pour couper court aux prochaines questions)
impliqu&eacute;.</para>
<para>Mais pourquoi appelle-t-on parfois cela
&ldquo;&eacute;mulation Linux&rdquo;? Pour rendre difficile
la vente des versions de &os;! S&eacute;rieusement, c'est
d&ucirc; au fait que l'impl&eacute;mentation historique a
&eacute;t&eacute; faite &agrave; une &eacute;poque o&ugrave;
il n'y avait pas vraiment d'autres mots pour d&eacute;crire ce
qui &eacute;tait en d&eacute;veloppement; dire que &os;
ex&eacute;cutait les binaires Linux n'&eacute;tait pas vrai si
vous n'aviez pas compil&eacute; le code ou charg&eacute; un
module, aussi un terme &eacute;tait n&eacute;cessaire pour
qualifier ce qui &eacute;tait charg&eacute; &mdash; donc
l'&ldquo;&eacute;mulateur Linux&rdquo;.</para>
</sect2>
</sect1>
</chapter>
<!--
Local Variables:
mode: sgml
sgml-declaration: "../chapter.decl"
sgml-indent-data: t
sgml-omittag: nil
sgml-always-quote-attributes: t
sgml-parent-document: ("../book.sgml" "part" "chapter")
End:
-->