doc/es_ES.ISO8859-1/books/handbook/linuxemu/chapter.sgml
J. Vicente Carrasco 20f467558b - Use %SOURCE% and %SRCID% tags to store the original revisions of the
translated files. In this way, we will be able to generate the
  list of the outdated files automatically.

Obtained from:  The FreeBSD Hungarian Documentation Project
Inspired by:    The FreeBSD Greek Documentation Project

- Being on that, s/Sinópsis/Sinopsis/g. One mistake
  repeated many times. Cosmetic change.
2008-11-03 02:19:25 +00:00

3523 lines
137 KiB
Text
Executable file

<!--
The FreeBSD Documentation Project
The FreeBSD Spanish Documentation Project
%SOURCE% en_US.ISO8859-1/books/handbook/linuxemu/chapter.sgml
%SRCID% 0.0
$FreeBSD$
-->
<chapter id="linuxemu">
<chapterinfo>
<authorgroup>
<author>
<firstname>Jim</firstname>
<surname>Mock</surname>
<contrib>Reestructurado y actualizado por </contrib>
</author>
<!-- 22 Mar 2000 -->
</authorgroup>
<authorgroup>
<author>
<firstname>Brian N.</firstname>
<surname>Handy</surname>
<contrib>Escrito por </contrib>
</author>
<author>
<firstname>Rich</firstname>
<surname>Murphey</surname>
</author>
</authorgroup>
</chapterinfo>
<title>Compatibilidad binaria con Linux</title>
<sect1 id="linuxemu-synopsis">
<title>Sinopsis</title>
<indexterm><primary>compatibilidad binaria con Linux</primary></indexterm>
<indexterm>
<primary>compatibilidad binaria</primary>
<secondary>Linux</secondary>
</indexterm>
<para>&os; proporciona compatibilidad de binarios con muchos otros
sistemas operativos tipo &unix;, incluyendo Linux.
Puede estarse preguntando &iquest;por qu&eacute; necesita
&os; ejecutar binarios de Linux? La
respuesta a esa pregunta es muy simple. Muchos desarrolladores y
compa&ntilde;&iacute;as desarrollan s&oacute;lo para Linux, ya
que &uacute;ltimamente es el blanco de todas las miradas dentro del
mundo de las tecnolog&iacute;s de la informaci&oacute;n.
Esto hace que la comunidad &os; tenga que exigir a esas
compa&ntilde;&iacute;as y desarrolladores que produzcan versiones
nativas de sus aplicaciones para &os;.
El problema es que la mayor&iacute;a de esas compa&ntilde;&iacute;as
no suelen saber realmente cu&aacute;nta gente utilizar&iacute;a
su producto si existieran esas versiones para &os;, y
la mayor&iacute;a contin&uacute;a desarrollando &uacute;nicamente
para Linux.
Vista la situaci&oacute;n &iquest;que puede hacer un usuario de &os?
Aqu&iacute; es donde entra en juego la compatibilidad binaria con
Linux.</para>
<para>Para expresarlo en pocas palabras, dicha compabitilidad permite
a los usuarios de &os; cerca del 90% de las aplicaciones de Linux sin
tener que modificarlas en absoluto. Entre estas est&aacute;
<application>&staroffice;</application>,
la versi&oacute;n Linux de <application>&netscape;</application>,
<application>&adobe;&nbsp;&acrobat;</application>,
<application><trademark class="registered">RealPlayer</trademark></application>,
<application><trademark>VMware</trademark></application>,
<application>&oracle;</application>,
<application><trademark class="registered">WordPerfect</trademark></application>, <application>Doom</application>,
<application>Quake</application> y muchas m&aacute;s. En determinados
casos los binarios Linux rinden mejor en &os; que en Linux.</para>
<para>Existen, por desgracia, ciertas caracter&iacute;sticas
espec&iacute;ficas de Linux que no funcionan en &os;.
Los binarios Linux no funcionar&aacute;n en &os; si recurren a
llamadas espec&iacute;ficas de &i386; como la activaci&oacute;n
del modo virtual 8086.</para>
<para>Tras leer este cap&iacute;tulo sabr&aacute;:</para>
<itemizedlist>
<listitem>
<para>c&oacute;mo activar la compatibilidad binaria con Linux en su
sistema.</para>
</listitem>
<listitem>
<para>c&oacute;mo instalar bibliotecas compartidas de Linux que pueda
necesitar.
</para>
</listitem>
<listitem>
<para>c&oacute;mo instalar aplicaciones de Linux en su sistema &os;.</para>
</listitem>
<listitem>
<para>cu&aacute;les son los detalles de la implementaci&oacute;n de
compatibilidad binaria con Linux en &os;.</para>
</listitem>
</itemizedlist>
<para>Antes de leer este cap&iacute;tulo es necesario que sepa:</para>
<itemizedlist>
<listitem>
<para>c&oacute;mo instalar software de
terceros (<xref linkend="ports">).</para>
</listitem>
</itemizedlist>
</sect1>
<sect1 id="linuxemu-lbc-install">
<title>Instalaci&oacute;n</title>
<indexterm><primary>KLD (objeto cargable del kernel)</primary></indexterm>
<para>La compatibilidad binaria con Linux no est&aacute; activada
por defecto. La forma m&aacute;s sencilla de habilitarla
es cargar el KLD (<quote>objeto cargable en el kernel</quote>)
<literal>linux</literal>. Como usuario
<username>root</username> proceda del siguiente modo:</para>
<screen>&prompt.root; <userinput>kldload linux</userinput></screen>
<para>Si quiere que la compatibilidad con Linux est&eacute;
siempre activada tendr&aacute; que a&ntilde;adir la siguiente
l&iacute;nea en <filename>/etc/rc.conf</filename>:</para>
<programlisting>linux_enable="YES"</programlisting>
<para>Utilice &man.kldstat.8; para verificar que el KLD
est&eacute; cargado:</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>kernel options</primary>
<secondary>LINUX</secondary>
</indexterm>
<para>Si por alguna raz&oacute;n no desea o no puede cargar el KLD,
entonces puede enlazar estaticamente la compatibilidad de binarios
Linux en el kernel agregando <literal>options COMPAT_LINUX</literal>
a su archivo de configuraci&oacute;n del kernel. Entonces instale
su nuevo kernel como se describe en
<xref linkend="kernelconfig">.</para>
<sect2>
<title>Instalaci&oacute;n de bibliotecas de ejecuci&oacute;n Linux</title>
<indexterm>
<primary>Linux</primary>
<secondary>instalaci&oacute;n de bibliotecas Linux</secondary>
</indexterm>
<para>Puede hacerse de dos maneras, ya sea usando
el port <link linkend="linuxemu-libs-port">linux_base</link>,
o instal&aacute;ndolas
<link linkend="linuxemu-libs-manually">de forma manual</link>.</para>
<sect3 id="linuxemu-libs-port">
<title>Instalaci&oacute;n usando el port linux_base</title>
<indexterm><primary>colecci&oacute;n de ports</primary></indexterm>
<para>Este es con mucho el m&eacute;todo mas sencillo
para instalar bibliotecas de ejecuci&oacute;n. Es como
instalar cualquier otro port desde la
<ulink type="html" url="file://localhost/usr/ports/">colecci&oacute;n
de ports</ulink>. Es tan sencillo como esto:</para>
<screen>&prompt.root; <userinput>cd /usr/ports/emulators/linux_base</userinput>
&prompt.root; <userinput>make install distclean</userinput></screen>
<para>Hecho esto deber&iacute;a disponer de compatibilidad binaria con
Linux. Algunos programas pueden <quote>quejarse</quote> por
la presencia de versiones antiguas de algunas bibliotecas del
sistema. En general esto no es un problema muy grave.</para>
<note><para>Pueden existir m&uacute;ltiples versiones
del port <filename role="package">emulators/linux_base</filename>
disponibles correspondientes a distintas versiones de diversas
distribuciones de Linux. Tendr&aacute; que instalar el port
que m&aacute;s se ajuste a las necesidades de las aplicaciones
de Linux que quiera instalar.</para></note>
</sect3>
<sect3 id="linuxemu-libs-manually">
<title>Instalaci&oacute;n manual de bibliotecas</title>
<para>Si, por el motivo que fuese, no tiene instalada
la colecci&oacute;n de ports puede instalar las bibliotecas
que necesite de forma manual.
Necesitar&aacute; las bibliotecas compartidas Linux de
las que depende el programa y el enlazador en tiempo de
ejecuci&oacute;n (<quote>runtime linker</quote>).
Necesitar&aacute; tambi&eacute;n
crear un directorio
<filename>/compat/linux</filename> donde alojar las bibliotecas
Linux en su sistema &os; Cualquier biblioteca compartida a la
que haya recurrido un programa de Linux ejecutado en &os;
buscar&aacute; en primer lugar en dicho directorio.
Por lo tanto, si se carga un
programa Linux, por ejemplo <filename>/lib/libc.so</filename>,
&os; intentar&aacute; en primer lugar abrir
<filename>/compat/linux/lib/libc.so</filename> y, si no
existe, lo intentar&aacute; con
<filename>/lib/libc.so</filename>. Las bibliotecas
compartidas deben instalarse en
<filename>/compat/linux/lib</filename> en lugar de las rutas que
el <command>ld.so</command> de Linux proporcione.</para>
<para>En general, necesitar&aacute; buscar las bibliotecas
compartidas de las que los binarios Linux dependen
s&oacute;lamente las primeras veces que instale un programa
Linux en su &os;. M&aacute;s adelante tendr&aacute; un conjunto
suficiente de bibliotecas compartidas Linux en su sistema
para poder ejecutar binarios Linux sin que tenga que hacer nada
m&aacute;s.</para>
</sect3>
<sect3>
<title>C&oacute;mo instalar bibliotecas compartidas adicionales</title>
<indexterm><primary>bibliotecas compartidas</primary></indexterm>
<para>&iquest;Que pasar&iacute;a si instalara el port
<filename>linux_base</filename> y su aplicaci&oacute;n
todav&iacute;a tuviera problemas debido a bibliotecas compartidas
que no encuentra en el sistema?
&iquest;C&oacute;mo saber qu&eacute; bibliotecas compartidas
necesitan los binarios Linux? B&aacute;sicamente hay dos
posibilidades (para poder ejecutar las siguientes instrucciones
necesitar&aacute; estar como <username>root</username>.
</para>
<para>Si tiene acceso a un sistema Linux busque en &eacute;l
qu&eacute; bibliotecas necesita la aplicaci&oacute;n, y
c&oacute;pielas a su sistema &os;. Veamos unos ejemplos:
</para>
<informalexample>
<para>Asumiremos que utiliz&oacute; FTP para conseguir los
binarios Linux de <application>Doom</application>, y los
puso en un sistema Linux.
Para ver qu&eacute; bibliotecas compartidas necesitar&aacute;
ejecute <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>enlaces simb&oacute;licos</primary></indexterm>
<para>Necesitar&iacute;a todos los ficheros de la
segunda columna, y tendr&aacute; que ponerlos en
<filename>/compat/linux</filename> con los nombres de
la primera columna como enlaces
simb&oacute;licos apuntando hacia ellos. De este modo
tendr&iacute;a en su sistema &os; los siguientes ficheros:
</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>Recuerde que si ya tiene una biblioteca
compartida Linux con un n&uacute;mero de versi&oacute;n
mayor que coincida con la primera columna de la salida de
<command>ldd</command> no necesitar&aacute; copiar el
fichero que aparece en la &uacute;ltima columna;
el que tiene deber&iacute;a funcionar, aunque se aconseja
copiar la biblioteca compartida de todas maneras
si es una nueva versi&oacute;n. Puede eliminar la vieja
siempre que haga que el enlace simb&oacute;lico apunte
a la nueva. Si tiene estas bibliotecas
en su sistema:</para>
<screen>/compat/linux/lib/libc.so.4.6.27
/compat/linux/lib/libc.so.4 -&gt; libc.so.4.6.27</screen>
<para>y un binario requiere
una versi&oacute;n m&aacute;s reciente (como indica la
siguiente salida de <command>ldd</command>):</para>
<screen>libc.so.4 (DLL Jump 4.5pl26) -&gt; libc.so.4.6.29</screen>
<para>si solo ve una o dos versiones desfasadas en los
&uacute;ltimos d&iacute;gitos no se preocupe
de copiar <filename>/lib/libc.so.4.6.29</filename>,
el programa deber&iacute;a funcionar
bien con una versi&oacute;n ligeramente antigua.
De todas formas, si as&iacute; lo prefiere, puede reemplazar
<filename>libc.so</filename>, y el resultado ser&iacute;a
este:</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>El mecanismo de enlazado simb&oacute;lico
<emphasis>s&oacute;lamente</emphasis> es necesario con
binarios Linux. El enlazador en tiempo de ejecuci&oacute;n
de &os; se encarga de buscar &eacute;l mismo las versiones
correctas, as&iacute; que no tendr&aacute; que preocuparse
usted de hacerlo.</para>
</note>
</blockquote>
</informalexample>
</sect3>
</sect2>
<sect2>
<title>Instalar binarios ELF Linux</title>
<indexterm>
<primary>Linux</primary>
<secondary>binarios ELF</secondary>
</indexterm>
<para>Los binarios ELF algunas veces requieren un paso extra de
<quote>marcado</quote>. Si trata de ejecutar un binario ELF no
marcado, recibir&aacute; un mensaje de error como el siguiente:</para>
<screen>&prompt.user; <userinput>./mi-binario-elf</userinput>
ELF binary type not known
Abort</screen>
<para>Para ayudar al kernel de FreeBSD a distinguir entre un binario
ELF de &os; y uno de Linux, utilice &man.brandelf.1;.</para>
<screen>&prompt.user; <userinput>brandelf -t Linux mi-binario-elf-de-linux</userinput></screen>
<indexterm><primary>GNU toolchain</primary></indexterm>
<para>Las herramientas GNU se encargan de ubicar autom&aacute;ticamente
la marca apropiada en los binarios ELF, por lo tanto este
paso ser&aacute; innecesario en un futuro pr&oacute;ximo.</para>
</sect2>
<sect2>
<title>Configuraci&oacute;n de la resoluci&oacute;n de nombres de
equipos</title>
<para>Si el DNS no funciona u obtiene este mensaje:</para>
<screen>resolv+: "bind" is an invalid keyword resolv+:
"hosts" is an invalid keyword</screen>
<para>Necesitar&aacute; un fichero
<filename>/compat/linux/etc/host.conf</filename>
con el siguiente contenido:</para>
<programlisting>order hosts, bind
multi on</programlisting>
<para>Significa que
<filename>/etc/hosts</filename> ser&aacute;analizado en primer lugar
y despu&eacute;s se usar&aacute; DNS.
Si <filename>/compat/linux/etc/host.conf</filename> no
est&aacute; instalado, las aplicaciones Linux usan el
<filename>/etc/host.conf</filename> de &os; y chocan con la
sintaxis (incompatible) de &os;. Borre
<literal>bind</literal> de su <filename>/etc/resolv.conf</filename>
si no tiene configurado un servidor de nombres.</para>
</sect2>
</sect1>
<sect1 id="linuxemu-mathematica">
<sect1info>
<authorgroup>
<author>
<firstname>Murray</firstname>
<surname>Stokely</surname>
<contrib>Actualizado para Mathematica 4.X por </contrib>
</author>
</authorgroup>
<authorgroup>
<author>
<firstname>Bojan</firstname>
<surname>Bistrovic</surname>
<contrib>Fusionado con textos de </contrib>
</author>
</authorgroup>
</sect1info>
<title>Instalaci&oacute;n de &mathematica;</title>
<indexterm>
<primary>aplicaciones</primary>
<secondary><application>Mathematica</application></secondary>
</indexterm>
<para>Este documento describe el proceso de instalaci&oacute;n
de la versi&oacute;n para Linux de
<application>&mathematica; 4.X</application> en un sistema &os;.
</para>
<para>La versi&oacute;n para Linux de
<application>&mathematica;</application> funciona perfectamente bajo
&os;, aunque los binarios liberados por Wolfram
necesitan <quote>marcarse</quote> para que &os; sepa que tiene
que utilizar la ABI Linux para ejecutarlos.</para>
<para>La versi&oacute;n para Linux de
<application>&mathematica;</application> o
la versi&oacute;n de
<application>&mathematica; para estudiantes</application> puede
pedirse a Wolfram en su sitio web,
<ulink url="http://www.wolfram.com/"></ulink>.</para>
<sect2>
<title>Marcado de los binarios Linux</title>
<para>Los binarios Linux est&aacute;n en el directorio
<filename>Unix</filename> del CDROM de
<application>&mathematica;</application> que distribuye Wolfram.
Debe copiar este &aacute;rbol de directorios a su disco duro
para m&aacute;s tarde marcar los binarios Linux con
&man.brandelf.1; y as&iacute; poder ejecutar el instalador:</para>
<screen>&prompt.root; <userinput>mount /cdrom</userinput>
&prompt.root; <userinput>cp -rp /cdrom/Unix/ /directorio_local/</userinput>
&prompt.root; <userinput>brandelf -t Linux /directorio_local/Files/SystemFiles/Kernel/Binaries/Linux/*</userinput>
&prompt.root; <userinput>brandelf -t Linux /directorio_local/Files/SystemFiles/FrontEnd/Binaries/Linux/*</userinput>
&prompt.root; <userinput>brandelf -t Linux /directorio_local/Files/SystemFiles/Installation/Binaries/Linux/*</userinput>
&prompt.root; <userinput>brandelf -t Linux /directorio_local/Files/SystemFiles/Graphics/Binaries/Linux/*</userinput>
&prompt.root; <userinput>brandelf -t Linux /directorio_local/Files/SystemFiles/Converters/Binaries/Linux/*</userinput>
&prompt.root; <userinput>brandelf -t Linux /directorio_local/Files/SystemFiles/LicenseManager/Binaries/Linux/mathlm</userinput>
&prompt.root; <userinput>cd /directorio_local/Installers/Linux/</userinput>
&prompt.root; <userinput>./MathInstaller</userinput></screen>
<para>Tambi&eacute;n puede activar el marcado por defecto
de binarios ELF a Linux para todos los binarios no marcados
procediendo del siguiente modo:</para>
<screen>&prompt.root; <userinput>sysctl kern.fallback_elf_brand=3</userinput></screen>
<para>Esto har&aacute; que &os; asuma que los binarios
ELF utilicen la ABI Linux y por lo tanto podr&aacute; ejecutar
el instalador directamente desde el CDROM.</para>
</sect2>
<sect2>
<title>C&oacute;mo obtener una contrase&ntilde;a de &mathematica;</title>
<para>Antes de que pueda ejecutar <application>&mathematica;</application>
necesitar&aacute; que Wolfram le facilite una contrase&ntilde;, que
se corresponder&aacute; con la <quote>ID de su m&aacute;quina</quote>.</para>
<indexterm>
<primary>Ethernet</primary>
<secondary>direcci&oacute;n MAC</secondary>
</indexterm>
<para>Una vez que haya instalado las bibliotecas de compatibilidad
en tiempo de ejecuci&oacute;n y descomprimido
<application>&mathematica;</application>
ejecute <command>mathinfo</command> en el directorio de
instalaci&oacute;n; &eacute;l buscar&aacute; el
<quote>ID de su m&aacute;quina</quote>.
Este ID de m&aacute;quina es en realidad
la direcci&oacute;n MAC de su primera tarjeta de red.</para>
<screen>&prompt.root; <userinput>cd /directorio_local/Files/SystemFiles/Installation/Binaries/Linux</userinput>
&prompt.root; <userinput>mathinfo</userinput>
disco.ejemplo.com 7115-70839-20412</screen>
<para>Al registrarse en Wolfram, ya sea por correo, tel&eacute;fono
o fax, le proporcionar&aacute;n la <quote>ID de m&aacute;quina</quote>
y le responder&aacute;n con la correspondiente contrase&ntilde;a,
compuesta por grupos de n&uacute;meros. Use estos n&uacute;meros
cuando ejecute <application>&mathematica;</application>
por primera vez, exactamente como lo har&iacute;a en
cualquier otra plataforma de
<application>&mathematica;</application>.</para>
</sect2>
<sect2>
<title>Ejecuci&oacute;n del Frontend de &mathematica; a trav&eacute;s de la red</title>
<para><application>&mathematica;</application> utiliza algunas
fuentes especiales para mostrar ciertos caracteres que no
suelen estar presentes en otros conjuntos de fuentes est&aacute;ndar
(integrales, sumatorias, letras griegas, etc). El protocolo X
requiere que estas fuentes se instalen <emphasis>en local</emphasis>.
Tendr&aacute; que copiar estas fuentes desde
el CDROM o desde un equipo donde ya haya instalado
<application>&mathematica;</application>
a su m&aacute;quina local. Estas fuentes suelen estar en
<filename>/cdrom/Unix/Files/SystemFiles/Fonts</filename> en
el CDROM, o
<filename>/usr/local/mathematica/SystemFiles/Fonts</filename>
en su disco duro. Las fuentes que necesitaremos est&aacute;n en
los subdirectorios <filename>Type1</filename> y
<filename>X</filename>.
Hay varias formas de utilizarlas, tal y como se describe m&aacute;s
adelante.</para>
<para>La primera manera es copiarlas a uno de los directorios de
fuentes en <filename>/usr/X11R6/lib/X11/fonts</filename>.
Esto implica tener que editar <filename>fonts.dir</filename> y
a&ntilde;adir los nombres de las fuentes, sin olvidar cambiar el
n&uacute;mero de fuentes en la primera l&iacute;nea. Tambi&eacute;n
puede hacerlo de otro modo: ejecute &man.mkfontdir.1; en
el directorio donde haya copiado las fuentes.</para>
<para>La segunda manera de hacerlo es copiar los directorios
a <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>A&ntilde;ada los nuevos directorios de fuentes a su ruta
de fuentes:</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 utiliza el servidor <application>&xorg;</application>, puede
hacer que estos directorios de fuentes se carguen
autom&aacute;ticamente
a&ntilde;adi&eacute;ndolos a su fichero <filename>xorg.conf</filename>.</para>
<note><para>Si usa <application>&xfree86;</application>,
el fichero de configuraci&oacute;n es <filename>XF86Config</filename>.</para></note>
<indexterm><primary>fuentes</primary></indexterm>
<para>Si todav&iacute;a <emphasis>no</emphasis> tiene un directorio
<filename>/usr/X11R6/lib/X11/fonts/Type1</filename>,
puede cambiar el nombre del directorio <filename>MathType1</filename>
(que aparece en el ejemplo de arriba) a <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>Escrito por </contrib>
</author>
</authorgroup>
<authorgroup>
<author>
<firstname>Robert</firstname>
<surname>Getschmann</surname>
<!-- <address><email>rob@getschmann.org</email></address>-->
<contrib>Gracias a </contrib>
</author>
</authorgroup>
</sect1info>
<title>Instalaci&oacute;n de &maple;</title>
<indexterm>
<primary>aplicaciones</primary>
<secondary><application>Maple</application></secondary>
</indexterm>
<para><application>&maple;</application> es un programa comercial de matem&aacute;ticas
similar a <application>&mathematica;</application>. Puede adquirir
este software en
<ulink url="http://www.maplesoft.com/"></ulink>; tras registrarlo
recibir&aacute; un fichero de licencia. Si quiere instalar este
software en &os; siga los siguienes pasos:</para>
<procedure>
<step><para>Ejecute el <quote>script</quote> de shell
<filename>INSTALL</filename>
desde el lugar de instalaci&oacute;n del producto. Elija
la opci&oacute;n <quote>RedHat</quote> cuando
le pregunte el programa de instalaci&oacute;n. Un
t&iacute;pico directorio de instalaci&oacute;n
puede ser <filename
class="directory">/usr/local/maple</filename>.</para></step>
<step><para>Si no lo ha hecho ya, pida una licencia para <application>&maple;</application>
a Maple Waterloo Software (<ulink url="http://register.maplesoft.com/"></ulink>)
y c&oacute;piela a
<filename>/usr/local/maple/license/license.dat</filename>.</para></step>
<step><para>Instale el gestor de licencias <application>FLEXlm</application>
ejecutando el <quote>script</quote> de shell de instalaci&oacute;n
<filename>INSTALL_LIC</filename>
que viene con <application>&maple;</application>. Introduzca
el nombre de su m&aacute;quina (el servidor de licencias
lo necesita).</para></step>
<step><para>Parch&eacute;e el fichero
<filename>/usr/local/maple/bin/maple.system.type</filename>
con lo siguiente:</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>Por favor, tenga presente que despu&eacute;s de
<literal>"FreeBSD"|\</literal>
no debe haber ning&uacute;n espacio en blanco.</para>
<para>Este parche le dice a <application>&maple;</application>
que tome a <quote>FreeBSD</quote> como un tipo de sistema
Linux. El <quote>script</quote> de shell
<filename>bin/maple</filename>
llama al <quote>script</quote> de shell
<filename>bin/maple.system.type</filename>,
que a su vez recurre a <command>uname -a</command> para
saber el nombre del sistema operativo. Dependiendo de
&eacute;ste sabr&aacute; qu&eacute; binarios
utilizar.</para></step>
<step><para>Inicio del servidor de licencias.</para>
<para>El siguiente <quote>script</quote>, sito en
<filename>/usr/local/etc/rc.d/lmgrd.sh</filename>, le
permitir&aacute; arrancar <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>Prueba de arranque de <application>&maple;</application>:</para>
<screen>&prompt.user; <userinput>cd /usr/local/maple/bin</userinput>
&prompt.user; <userinput>./xmaple</userinput></screen>
<para>Deber&iacute;a funcionar perfectamente. Si es as&iacute;
a&uacute;n le queda un &uacute;ltimo paso: escribir a
Maplesoft y decirles que ser&iacute;a genial una versi&oacute;n
nativa para &os;.</para></step>
</procedure>
<sect2>
<title>Problemas frecuentes</title>
<itemizedlist>
<listitem><para>El gestor de licencias <application>FLEXlm</application> puede
ser una herramienta dif&iacute;cil de usar. Si la necesita, tiene
m&aacute;s informaci&oacute;n sobre &eacute;l en
<ulink url="http://www.globetrotter.com/"></ulink>.</para></listitem>
<listitem><para><command>lmgrd</command> tiene una reconocida fama de
ser muy meticuloso en todo lo relacionado con el fichero de
licencia; suele generar volcados de memoria si se encuentra con
alg&uacute;n problema. Un fichero de licencia correcto tiene
que parecerse mucho a este:</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>El n&uacute;mero de serie y la clave han sido
sobreescritos con X.
<hostid>chillig</hostid> es el nombre de un equipo.</para></note>
<para>Puede editar el fichero de licencia siempre que no
toque la l&iacute;nea <quote>FEATURE</quote> (que est&aacute;
protegida por la clave de la licencia).</para></listitem>
</itemizedlist>
</sect2>
</sect1>
<sect1 id="linuxemu-matlab">
<sect1info>
<authorgroup>
<author>
<firstname>Dan</firstname>
<surname>Pelleg</surname>
<contrib>Escrito por </contrib>
</author>
<!-- daniel+handbook@pelleg.org -->
</authorgroup>
</sect1info>
<title>Instalaci&oacute;n de &matlab;</title>
<indexterm>
<primary>aplicaciones</primary>
<secondary><application>MATLAB</application></secondary>
</indexterm>
<para>Este documento describe el proceso de instalaci&oacute;n de
la versi&oacute;n para Linux de
<application>&matlab; version 6.5</application>
en un sistema &os;. En general funciona bastante bien, excepci&oacute;n
hecha de <application>&java.virtual.machine;</application>
(consulte la <xref linkend="matlab-jre">).</para>
<para>La versi&oacute;n Linux de <application>&matlab;</application>
puede pedirse directamente en el sitio de The MathWorks,
<ulink url="http://www.mathworks.com"></ulink>. Tiene que
recibir tambi&eacute;n el fichero de licencia o instrucciones
de c&oacute;mo crearlo. Al hacer su pedido aproveche para decirles
que deber&iacute;an pensar en una versi&oacute;n nativa de su
software para &os;.</para>
<sect2>
<title>Instalaci&oacute;n de &matlab;</title>
<para>Para instalar <application>&matlab;</application>
haga los siguiente:</para>
<procedure>
<step>
<para>Inserte el CD de instalaci&oacute;n y m&oacute;ntelo.
Convi&eacute;rtase en <username>root</username> e
inicie la de instalaci&oacute;n:</para>
<screen>&prompt.root; <userinput>/compat/linux/bin/sh /cdrom/install</userinput></screen>
<tip>
<para>El instalador es gr&aacute;fico. Si obtiene errores
acerca de no ser capaz de abrir un display, tecl&eacute;e
<command>setenv HOME ~<replaceable>USUARIO</replaceable></command>,
donde <replaceable>USUARIO</replaceable> es el nombre del
usuario con el que hizo &man.su.1;.</para>
</tip>
</step>
<step>
<para>Tecl&eacute;e
<userinput>/compat/linux/usr/local/matlab</userinput>
donde el instalador le pida el directorio ra&iacute;z de
<application>&matlab;</application>.</para>
<tip>
<para>Esto le facilitar&aacute; la entrada de datos durante
el resto de la instalaci&oacute;n. Introduzca lo siguiente
en el <quote>prompt</quote> de su shell:
<command>set MATLAB=/compat/linux/usr/local/matlab</command></para>
</tip>
</step>
<step>
<para>Edite el fichero de licencia tal y como consta en las
instrucciones de la licencia de <application>&matlab;</application>.</para>
<tip>
<para>Puede tenerlo ya editado y copiado a
<filename>$MATLAB/license.dat</filename> desde antes de que
el instalador se lo pida.</para>
</tip>
</step>
<step>
<para>Complete el proceso de instalaci&oacute;n.</para>
</step>
</procedure>
<para>La instalaci&oacute;n <application>&matlab;</application>
ha finalizado. Los siguientes pasos aplicar&aacute;n el
<quote>pegamento</quote> necesario para conectarlo a su
sistema &os;.</para>
</sect2>
<sect2>
<title>Inicio del administrador de licencias</title>
<procedure>
<step>
<para>Cr&eacute;e los enlaces simb&oacute;licos que necesitan los
<quote>scripts</quote> del administrador
de licencias:</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;e un fichero de inicio en
<filename>/usr/local/etc/rc.d/flexlm.sh</filename>.
El siguiente ejemplo es una versi&oacute;n modificada del
<filename>$MATLAB/etc/rc.lm.glnx86</filename> que viene con
la distribuci&oacute;n de <application>&matlab;</application>.
Los cambios que se han hecho en &eacute;l obedecen a la
ubicaci&oacute;n de los ficheros y el arranque del
administrador de licencias bajo emulaci&oacute;n de 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>username</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>El fichero debe ser ejecutable:</para>
<screen>&prompt.root; <userinput>chmod +x /usr/local/etc/rc.d/flexlm.sh</userinput></screen>
<para>Tendr&aacute; que reemplazar el
<replaceable>nombre de usuario</replaceable> que se ha
incluido en nuestro ejemplo por un nombre de usuario
v&aacute;lido en su sistema
(que no sea <username>root</username>).</para>
</important>
</step>
<step>
<para>Arranque el administrador de licencias:</para>
<screen>&prompt.root; <userinput>/usr/local/etc/rc.d/flexlm.sh start</userinput></screen>
</step>
</procedure>
</sect2>
<sect2 id="matlab-jre">
<title>Enlace el entorno de ejecuci&oacute;n &java;</title>
<para>Cambie el enlace del entorno de ejecuci&oacute;n
<application>&java;</application>
(JRE) a uno que funcione bajo &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>Creaci&oacute;n de un <quote>script</quote> de arranque para &matlab;</title>
<procedure>
<step>
<para>Coloque el siguiente <quote>script</quote> de arranque en
<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>Escriba
<command>chmod +x /usr/local/bin/matlab</command>.</para>
</step>
</procedure>
<tip>
<para>Dependiendo de su versi&oacute;n de
<filename role="package">emulators/linux_base</filename> tal
vez obtenga errores al ejecutar este <quote>script</quote>.
Para evitarlo edite
<filename>/compat/linux/usr/local/matlab/bin/matlab</filename>
y cambie la l&iacute;nea en la que aparece:</para>
<programlisting>if [ `expr "$lscmd" : '.*-&gt;.*'` -ne 0 ]; then</programlisting>
<para>(en la versi&oacute;n 13.0.1 es en la l&iacute;nea 410) por
esta otra l&iacute;nea:</para>
<programlisting>if test -L $newbase; then</programlisting>
</tip>
</sect2>
<sect2>
<title>Creaci&oacute;n de un <quote>script</quote> para detener &matlab;</title>
<para>Dicho <quote>script</quote> solucionar&aacute; el problema
existente con las dificultades para detener &matlab;
correctamente.</para>
<procedure>
<step>
<para>Cr&eacute;e un fichero llamado
<filename>$MATLAB/toolbox/local/finish.m</filename> y
ponga en &eacute;l una sola l&iacute;nea:</para>
<programlisting>! $MATLAB/bin/finish.sh</programlisting>
<note><para><literal>$MATLAB</literal> debe escribirse
literalmente.</para></note>
<tip>
<para>En el mismo directorio encontrar&aacute; los
ficheros <filename>finishsav.m</filename> y
<filename>finishdlg.m</filename>, que le
permiten guardar su trabajo antes de
salir de la aplicaci&oacute;n. Si quiere usar alguno de ellos,
inserte la l&iacute;nea de arriba inmediatamente
despu&eacute;s del comando
<literal>save</literal>.</para></tip>
</step>
<step>
<para>Cr&eacute;e un fichero
<filename>$MATLAB/bin/finish.sh</filename> con el siguiente
contenido:</para>
<programlisting>#!/usr/compat/linux/bin/sh
(sleep 5; killall -1 matlab_helper) &
exit 0</programlisting>
</step>
<step>
<para>El fichero tiene que ser ejecutable:</para>
<screen>&prompt.root; <userinput>chmod +x $MATLAB/bin/finish.sh</userinput></screen>
</step>
</procedure>
</sect2>
<sect2 id="matlab-using">
<title>Uso de &matlab;</title>
<para>Desde este momento est&aacute; usted en disposici&oacute;n
de teclear <command>matlab</command> y empezar a
usarlo.</para>
</sect2>
</sect1>
<sect1 id="linuxemu-oracle">
<sect1info>
<authorgroup>
<author>
<firstname>Marcel</firstname>
<surname>Moolenaar</surname>
<contrib>Escrito por </contrib>
</author>
<!-- marcel@cup.hp.com -->
</authorgroup>
</sect1info>
<title>Instalaci&oacute;n de &oracle;</title>
<indexterm>
<primary>aplicaciones</primary>
<secondary><application>Oracle</application></secondary>
</indexterm>
<sect2>
<title>Prefacio</title>
<para>Este texto describe el proceso de instalaci&oacute;n de
<application>&oracle; 8.0.5</application>
y <application>&oracle; 8.0.5.1 Enterprise Edition</application>
para Linux en una
m&aacute;quina &os;.</para>
</sect2>
<sect2>
<title>Instalaci&oacute;n del entorno Linux</title>
<para>Debe tener instalados los ports
<filename role='package'>emulators/linux_base</filename>
y <filename role='package'>devel/linux_devtools</filename> desde
Si tiene dificultades con estos ports es posible que tenga que
usar los paquetes o quiz&aacute;s versiones m&aacute;s antiguas
de dichas aplicaciones que encontrar&aacute; en la colecci&oacute;n
de ports.</para>
<para>Si quiere usar el agente inteligente tambi&eacute;n
tendr&aacute; que instalar el paquete Tcl de Red Hat,
<filename>tcl-8.0.3-20.i386.rpm</filename>. El comando
gen&eacute;rico para instalar paquetes con el port oficial
<application>RPM</application>
(<filename role='package'>archivers/rpm</filename>) es:</para>
<screen>&prompt.root; <userinput>rpm -i --ignoreos --root /compat/linux --dbpath /var/lib/rpm <replaceable>paquete</replaceable></userinput></screen>
<para>La instalaci&oacute;n de dicho <replaceable>paquete</replaceable> no debe generar ning&uacute;n error.</para>
</sect2>
<sect2>
<title>Creaci&oacute;n del entorno &oracle;</title>
<para>Antes de instalar <application>&oracle;</application>,
tendr&aacute; que configurar un entorno apropiado. Este documento
solamente explica lo que hay que hacer
<emphasis>especialmente</emphasis> para utilizaa la versi&oacute;n
de Linux para <application>&oracle;</application> en &os;, no
lo que figura en la gu&iacute;a de instalaci&oacute;n de
<application>&oracle;</application>.</para>
<sect3 id="linuxemu-kernel-tuning">
<title>Personalizaci&oacute;n del kernel</title>
<indexterm><primary>personalizaci&oacute;n del kernel</primary></indexterm>
<para>Tal y como consta en la gu&iacute;a de instalaci&oacute;n de
<application>&oracle;</application>, debe configurar
la cantidad m&aacute;ximo de memoria compartida.
No utilice <literal>SHMMAX</literal> en &os;.
<literal>SHMMAX</literal> se calcula a partir de
<literal>SHMMAXPGS</literal> y <literal>PGSIZE</literal>,
as&iacute; que defina <literal>SHMMAXPGS</literal>. Todas
las dem&aacute;s opciones pueden usarse tal y como se describe
en la gu&iacute;a. Por ejemplo:</para>
<programlisting>options SHMMAXPGS=10000
options SHMMNI=100
options SHMSEG=10
options SEMMNS=200
options SEMMNI=70
options SEMMSL=61</programlisting>
<para>Configure estas opciones para que se ajusten al uso que
pretenda darle a
<application>&oracle;</application>.</para>
<para>Aseg&uacute;rese tambi&eacute;n de las siguientes
opciones est&aacute;n en el fichero de configuraci&oacute;n de
su kernel:</para>
<programlisting>options SYSVSHM #SysV shared memory
options SYSVSEM #SysV semaphores
options SYSVMSG #SysV interprocess communication</programlisting>
</sect3>
<sect3 id="linuxemu-oracle-account">
<title>Cuenta &oracle;</title>
<para>Cr&eacute;e una cuenta <username>oracle</username> seg&uacute;n
el procedimiento habitual de creaci&oacute;n de usuarios.
La cuenta <username>oracle</username>, empero, tiene algo
especial, puesto que debe teer una shell <emphasis>de</emphasis>
Linux. A&ntilde;ada
<literal>/compat/linux/bin/bash</literal> a
<filename>/etc/shells</filename> y asigne a la
cuenta <username>oracle</username> lo siguiente
<filename>/compat/linux/bin/bash</filename> como shell
por defecto.</para>
</sect3>
<sect3 id="linuxemu-environment">
<title>Entorno</title>
<para>Adem&aacute;s de las variables normales para
<application>&oracle;</application>,
como <envar>ORACLE_HOME</envar> y <envar>ORACLE_SID</envar>, debe
configurar las siguientes variables de entorno:</para>
<informaltable frame="none" pgwide="1">
<tgroup cols="2">
<colspec colwidth="1*">
<colspec colwidth="2*">
<thead>
<row>
<entry>Variable</entry>
<entry>Valor</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>Le aconsejamos configurar todas las variables de entorno
en <filename>.profile</filename>. Veamos un ejemplo completo:</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>Instalaci&oacute;n de &oracle;</title>
<para>Debido a una peque&ntilde;a inconsistencia en el emulador
Linux tendr&aacute; que crear un directorio llamado
<filename>.oracle</filename>
en <filename>/var/tmp</filename> antes de iniciar el instalador.
Haga que sea propiedad del usuario <username>oracle</username>.
Ahora deber&iacute; poder instalar <application>&oracle;</application>
sin ning&uacute;n problema. Si no es as&iacute;
<emphasis>revise su distribuci&oacute;n</emphasis>
<application>&oracle;</application> y/o su
configuraci&oacute;n. Una vez finalizada la instalaci&oacute;n de
<application>&oracle;</application>, aplique los parches
que se detallan en las dos siguientes subsecciones.</para>
<para>Un problema que se da con una cierta frecuencia es que el
adaptador del protocolo TCP
no est&aacute; correctamente instalado. Como consecuencia, no
puede iniciarse ning&uacute;n escucha TCP. Esto le ayudar&aacute; a
resolver el problema:</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><emphasis>No se olvide de ejecutar <filename>root.sh</filename>
de nuevo</emphasis></para>
<sect3 id="linuxemu-patch-root">
<title>C&oacute;mo parchear root.sh</title>
<para>Durante la instalaci&oacute;n de
<application>&oracle;</application> algunas
acciones que requieren ser ejecutadas como
<username>root</username> deben almacenarse en un
<quote>script</quote> de shell llamado
<filename>root.sh</filename>. Dicho <quote>script</quote>
est&aacute; en el directorio <filename>orainst</filename>.
Aplique el siguiente parche a <filename>root.sh</filename> para que
utilice la ruta correcta de <command>chown</command> o
ejecute el <quote>script</quote> bajo una shell nativa
de Linux.</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>Si no est&aacute; instalando
<application>&oracle;</application> desde un CD puede parchear
las fuentes de <filename>root.sh</filename>. Es
<filename>rthd.sh</filename> y est&aacute; en el directorio
<filename>orainst</filename>, en el &aacute;rbol de fuentes.
</para>
</sect3>
<sect3 id="linuxemu-patch-tcl">
<title>C&oacute;mo parchear genclntsh</title>
<para>El <quote>script</quote> <command>genclntsh</command> se usa
para crear una biblioteca de cliente compartida y para
construir los demos. Al aplicar el siguiente parche
comentar&aacute; la definici&oacute;n de <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>Ejecuci&oacute;n de &oracle;</title>
<para>Una vez seguidas estas instrucciones podr&aacute; ejecutar
<application>&oracle;</application> como si la hubiera instalado
Linux.</para>
</sect2>
</sect1>
<sect1 id="sapr3">
<sect1info>
<authorgroup>
<author>
<firstname>Holger</firstname>
<surname>Kipp</surname>
<contrib>Escrito por </contrib>
</author>
</authorgroup>
<!-- holger.kipp@alogis.com -->
<authorgroup>
<author>
<firstname>Valentino</firstname>
<surname>Vaschetto</surname>
<contrib>Versi&oacute;n original convertida a SGML por </contrib>
</author>
</authorgroup>
</sect1info>
<title>Instalaci&oacute;n de &sap.r3;</title>
<indexterm>
<primary>aplicaciones</primary>
<secondary><application>SAP R/3</application></secondary>
</indexterm>
<para>Las instalaciones de sistemas <application>&sap;</application>
en &os; no tienen soportadas de &sap;. &sap; s&oacute;lamente
ofrece soporte para plataformas certificadas.</para>
<sect2 id="preface">
<title>Introducci&oacute;n</title>
<para>Este texto expone una forma de instalar
un <application>&sap.r3; System</application> con
una <application>&oracle; Database</application>
para Linux en una m&aacute;quina &os;, incluyendo la
instalaci&oacute;n de &os; y <application>&oracle;</application>.
Se muestran dos configuraciones diferentes:</para>
<itemizedlist>
<listitem>
<para><application>&sap.r3; 4.6B (IDES)</application> con
<application>&oracle; 8.0.5</application> en FreeBSD 4.3-STABLE</para>
</listitem>
<listitem>
<para><application>&sap.r3; 4.6C</application> con
<application>&oracle; 8.1.7</application> en FreeBSD 4.5-STABLE</para>
</listitem>
</itemizedlist>
<para>Aunque este documento trate de describir todos
los pasos importantes con detalle no ha sido escrito como
sustituto de las gu&iacute;as de instalaci&oacute;n de
<application>&oracle;</application> y
<application>&sap.r3;</application>.</para>
<para>Por favor, consulte la documentaci&oacute;n de
<application>&sap.r3;</application>
que se incluye en la edici&oacute;n para Linux de
<application>&sap;</application>
y las preguntas espec&iacute;ficas sobre
<application>&oracle;</application>,
as&iacute; como los recursos que est&eacute;n a su disposici&oacute;n
sobre <application>&oracle;</application>
y <application>&sap; OSS</application>.</para>
</sect2>
<sect2 id="software">
<title>Software</title>
<para>Durante la instalaci&oacute;n de <application>&sap;</application>
se han utilizado los siguientes CD-ROM:</para>
<sect3 id="software-46b">
<title>&sap.r3; 4.6B, &oracle; 8.0.5</title>
<informaltable frame="none" pgwide="1">
<tgroup cols=3>
<thead>
<row>
<entry>Nombre</entry> <entry>N&uacute;mero</entry> <entry>Descripci&oacute;n</entry>
</row>
</thead>
<tbody>
<row>
<entry>KERNEL</entry> <entry>51009113</entry> <entry>SAP Kernel 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 /
Disco 1 de 6</entry>
</row>
<row>
<entry>EXPORT2</entry> <entry>51010209</entry> <entry>IDES / DB-Export /
Disco 2 de 6</entry>
</row>
<row>
<entry>EXPORT3</entry> <entry>51010210</entry> <entry>IDES / DB-Export /
Disco 3 de 6</entry>
</row>
<row>
<entry>EXPORT4</entry> <entry>51010211</entry> <entry>IDES / DB-Export /
Disco 4 de 6</entry>
</row>
<row>
<entry>EXPORT5</entry> <entry>51010212</entry> <entry>IDES / DB-Export /
Disco 5 de 6</entry>
</row>
<row>
<entry>EXPORT6</entry> <entry>51010213</entry> <entry>IDES / DB-Export /
Disco 6 de 6</entry>
</row>
</tbody>
</tgroup>
</informaltable>
<para>Tambi&eacute;n utilizamos el CD de <application>&oracle; 8
Server</application> (versi&oacute;n pre-producci&oacute;n
8.0.5 para Linux, versi&oacute;n de kernel 2.0.33), que
no es realmente necesario y FreeBSD 4.3-STABLE (a unos cuantos
d&iacute;as de la liberaci&oacute;n de 4.3-RELEASE).</para>
</sect3>
<sect3 id="software-46c">
<title>&sap.r3; 4.6C SR2, &oracle; 8.1.7</title>
<informaltable frame="none" pgwide="1">
<tgroup cols=3>
<thead>
<row>
<entry>Nombre</entry> <entry>N&uacute;mero</entry> <entry>Descripci&oacute;n</entry>
</row>
</thead>
<tbody>
<row>
<entry>KERNEL</entry> <entry>51014004</entry> <entry>SAP Kernel Oracle /
SAP Kernel 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>Release 4.6C SR2 / Export
/ Disco 1 de 4</entry>
</row>
<row>
<entry>EXPORT1</entry> <entry>51013953</entry> <entry>Release 4.6C SR2 / Export
/ Disco 2 de 4</entry>
</row>
<row>
<entry>EXPORT1</entry> <entry>51013953</entry> <entry>Release 4.6C SR2 / Export
/ Disco 3 de 4</entry>
</row>
<row>
<entry>EXPORT1</entry> <entry>51013953</entry> <entry>Release 4.6C SR2 / Export
/ Disco 4 de 4</entry>
</row>
<row>
<entry>LANG1</entry> <entry>51013954</entry> <entry>Release 4.6C SR2 /
Language / DE, EN, FR / Disco 1 de 3</entry>
</row>
</tbody>
</tgroup>
</informaltable>
<para>Seg&uacute;n los idiomas que quiera usar es posible que
necesite otros CD de idiomas. S&oacute;lo hemos utilizado DE y
EN, as&iacute; que nos bast&oacute; con el primer CD.
Para su informaci&oacute;n, los n&uacute;meros de los cuatro CD
EXPORT son id&eacute;nticos. Los tres CD de idiomas tambi&eacute;n
tienen el mismo n&uacute;mero, aunque esto es distinto en los CD de
la versi&oacute;n 4.6B IDES. Al escribir este texto
(20.03.2002) ejecutamos la instalaci&oacute;n en FreeBSD
4.5-STABLE (20.03.2002).</para>
</sect3>
</sect2>
<sect2 id="sap-notes">
<title>Notas &sap;</title>
<para>Las siguientes notas han resultado ser muy &uacute;tiles
durante la instalaci&oacute;n, as&iacute; que le recomendamos
encarecidamente que las lea antes de instalar
<application>&sap.r3;</application>:</para>
<sect3 id="sap-notes-46b">
<title>&sap.r3; 4.6B, &oracle; 8.0.5</title>
<informaltable frame="none" pgwide="1">
<tgroup cols="2">
<thead>
<row>
<entry>N&uacute;mero</entry>
<entry>T&iacute;tulo</entry>
</row>
</thead>
<tbody>
<row>
<entry>0171356</entry> <entry>Software SAP en Linux: Comentarios
esenciales</entry>
</row>
<row>
<entry>0201147</entry> <entry>INST: 4.6C R/3 Inst. en UNIX -
Oracle</entry>
</row>
<row>
<entry>0373203</entry> <entry>Actualizaci&oacute;n / Migraci&oacute;n Oracle 8.0.5 --&gt;
8.0.6/8.1.6 LINUX</entry>
</row>
<row>
<entry>0072984</entry> <entry>Versi&oacute;n de Digital UNIX 4.0B para
Oracle</entry>
</row>
<row>
<entry>0130581</entry> <entry>R3SETUP step DIPGNTAB terminates</entry>
</row>
<row>
<entry>0144978</entry> <entry>Su sistema no ha sido instalado
correctamente</entry>
</row>
<row>
<entry>0162266</entry> <entry>Preguntas y consejos para R3SETUP en Windows
NT / W2K</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</sect3>
<sect3 id="sap-notes-46c">
<title>&sap.r3; 4.6C, &oracle; 8.1.7</title>
<informaltable frame="none" pgwide="1">
<tgroup cols="2">
<thead>
<row>
<entry>N&uacute;mero</entry>
<entry>T&iacute;tulo</entry>
</row>
</thead>
<tbody>
<row>
<entry>0015023</entry> <entry>Inicializar tabla TCPDB (RSXP0004)
(EBCDIC)</entry>
</row>
<row>
<entry>0045619</entry> <entry>R/3 y diversos idiomas o tipos de
letra</entry>
</row>
<row>
<entry>0171356</entry> <entry>Software SAP en Linux: Comentarios
esenciales</entry>
</row>
<row>
<entry>0195603</entry> <entry>RedHat 6.1 Enterprise version:
Problemas habituales</entry>
</row>
<row>
<entry>0212876</entry> <entry>La nueva herramienta de archivado SAPCAR</entry>
</row>
<row>
<entry>0300900</entry> <entry>Linux: Released DELL Hardware</entry>
</row>
<row>
<entry>0377187</entry> <entry>RedHat 6.2: Observaciones importantes</entry>
</row>
<row>
<entry>0387074</entry> <entry>INST: R/3 4.6C SR2 Instalaci&oacute;n en
UNIX</entry>
</row>
<row>
<entry>0387077</entry> <entry>INST: R/3 4.6C SR2 Inst. en UNIX -
Oracle</entry>
</row>
<row>
<entry>0387078</entry> <entry>Software SAP en UNIX: Dependencias de OS
4.6C SR2</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</sect3>
</sect2>
<sect2 id="hardware-requirements">
<title>Requisitos de hardware</title>
<para>El siguiente equipo es suficiente para la instalaci&oacute;n
de un <application>sistema &sap.r3;</application>. Si pretende darle
uso de producci&oacute;n necesitar&aacute; un estudio m&aacute;s
detallado:</para>
<informaltable frame="none" pgwide="1">
<tgroup cols="3">
<thead>
<row>
<entry>Componente</entry>
<entry>4.6B</entry>
<entry>4.6C</entry>
</row>
</thead>
<tbody>
<row>
<entry>Procesador</entry>
<entry>&pentium; III 800MHz x 2</entry>
<entry>&pentium; III 800MHz x 2</entry>
</row>
<row>
<entry>Memoria</entry>
<entry>1GB ECC</entry>
<entry>2GB ECC</entry>
</row>
<row>
<entry>Espacio en disco</entry>
<entry>50-60GB (IDES)</entry>
<entry>50-60GB (IDES)</entry>
</row>
</tbody>
</tgroup>
</informaltable>
<para>Para su uso en producci&oacute;n le recomendamos procesadores
&xeon; con una cach&eacute; grande, discos de alta
velocidad (SCSI, controlador de RAID por hardware), USV y
ECC-RAM. Un espacio en disco tan grande se debe al sistema
IDES preconfigurado, que crea ficheros de base de datos de
27&nbsp;GB durante la instalaci&oacute;n. Este espacio
tambi&eacute;n es suficiente para sistemas de producci&oacute;n
iniciales y datos de aplicaci&oacute;n.</para>
<sect3 id="hardware-46b">
<title>&sap.r3; 4.6B, &oracle; 8.0.5</title>
<para>Este es el hardware que utilizamos al escribir este texto:
placa base dual
con 2 procesadores &pentium;&nbsp;III a 800&nbsp;MHz, adaptador
SCSI &adaptec; 29160 Ultra160 (para acceder a una unidad de cinta
40/80&nbsp;GB DLT y CDROM), &mylex; &acceleraid; (2 canales,
firmware 6.00-1-00 con 32&nbsp;MB RAM). La controladora &mylex; RAID
tiene conectados dos discos duros de 17&nbsp;GB
(replicados) y cuatro discos duros de 36&nbsp;GB (RAID nivel 5).</para>
</sect3>
<sect3 id="hardware-46c">
<title>&sap.r3; 4.6C, &oracle; 8.1.7</title>
<para>Para esta instalaci&oacute;n se us&oacute; un &dell; &poweredge;
2500: placa base dual con 2 procesadores &pentium;&nbsp;III
a 1000&nbsp;MHz (256&nbsp;kB de Cach&eacute;), 2&nbsp;GB PC133 ECC
SDRAM, controladora RAID PERC/3 DC PCI con 128&nbsp;MB y una unidad
EIDE DVD-ROM. La controladora RAID tiene conectados dos discos
duros 18&nbsp;GB (replicados) y cuatro discos duros de
36&nbsp;GB (RAID nivel 5).</para>
</sect3>
</sect2>
<sect2 id="installation">
<title>Instalaci&oacute;n de &os;</title>
<para>Lo primero que tiene que hacer es instalar &os;. Hay muchas
formas de hacerlo. Nosotros instalamos &os; 4.3 desde un FTP y
FreeBSD&nbsp;4.5 desde el CD de la distribuci&oacute;n. Si necesita
m&aacute;s informaci&oacute;n sobre los medios de instalaci&oacute;n
de &os; consulte la
<xref linkend="install-diff-media">.</para>
<sect3 id="disk-layout">
<title>Esquema de disco</title>
<para>Quisimos hacer el proceso lo m&aacute;s simple posible,
as&iacute; que usamos el esquema de disco de
<application>&sap.r3; 46B</application> y <application>&sap.r3; 46C
SR2</application>. S&oacute;lo cambiamos los nombres
de dispositivos debido a que las instalaciones tuvieron lugar en
en hardware diferente (<filename>/dev/da</filename> y
<filename>/dev/amr</filename> respectivamente. Si
se utiliza una AMI &megaraid;, ver&iacute;a en pantalla
<filename>/dev/amr0s1a</filename> en lugar de
<filename>/dev/da0s1a</filename>):</para>
<informaltable frame="none" pgwide="1">
<tgroup cols="4">
<thead>
<row>
<entry>Sistema de ficheros</entry>
<entry>Tama&ntilde;o (bloques de 1k)</entry>
<entry>Tama&ntilde;o (GB)</entry>
<entry>Montado en</entry>
</row>
</thead>
<tbody>
<row>
<entry><filename>/dev/da0s1a</filename></entry>
<entry>1.016.303</entry>
<entry>1</entry>
<entry><filename>/</filename></entry>
</row>
<row>
<entry><filename>/dev/da0s1b</filename></entry>
<entry> </entry>
<entry>6</entry>
<entry>swap</entry>
</row>
<row>
<entry><filename>/dev/da0s1e</filename></entry>
<entry>2.032.623</entry>
<entry>2</entry>
<entry><filename>/var</filename></entry>
</row>
<row>
<entry><filename>/dev/da0s1f</filename></entry>
<entry>8.205.339</entry>
<entry>8</entry>
<entry><filename>/usr</filename></entry>
</row>
<row>
<entry><filename>/dev/da1s1e</filename></entry>
<entry>45.734.361</entry>
<entry>45</entry>
<entry><filename>/compat/linux/oracle</filename></entry>
</row>
<row>
<entry><filename>/dev/da1s1f</filename></entry>
<entry>2.032.623</entry>
<entry>2</entry>
<entry><filename>/compat/linux/sapmnt</filename></entry>
</row>
<row>
<entry><filename>/dev/da1s1g</filename></entry>
<entry>2.032.623</entry>
<entry>2</entry>
<entry><filename>/compat/linux/usr/sap</filename></entry>
</row>
</tbody>
</tgroup>
</informaltable>
<para>Configure e inicialice antes que nada las dos unidades
l&oacute;gicas con el software &mylex; o PERC/3 RAID.
El software puede iniciarse durante la fase
de arranque del <acronym>BIOS</acronym>.</para>
<para>Por favor, tenga en cuenta que el esquema de disco que
utilizamos difiere ligeramente de las recomendaciones de
&sap;, ya que &sap; sugiere montar los subdirectorios
<application>&oracle;</application>
(y algunos otros) por separado. Decidimos
crearlos como subdirectorios reales para simplificar.
</para>
</sect3>
<sect3 id="makeworldandnewkernel">
<title><command>make world</command> y un nuevo Kernel</title>
<para>Descargue las fuentes -STABLE m&aacute;s recientes.
Ejecute <command>make world</command> y genere su kernel
personalizado. Recuerde incluir en &eacute;l tanto los
<link linkend="kerneltuning">par&aacute;metros del kernel</link>
requeridos por <application>&sap.r3;</application>
como por <application>&oracle;</application>.</para>
</sect3>
</sect2>
<sect2 id="installingthelinuxenviornment">
<title>Instalaci&oacute;n del entorno Linux</title>
<sect3 id="installinglinuxbase-system">
<title>Instalaci&oacute;n del sistema base Linux</title>
<para>Primero instale el port
<link linkend="linuxemu-libs-port">linux_base</link>
(como <username>root</username>):</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>Instalaci&oacute;n del entorno de desarrollo Linux</title>
<para>El entorno de desarrollo Linux es imprescindible si quiere
instalar
<application>&oracle;</application> en &os; seg&uacute;n se explica
en 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>El entorno de desarrollo Linux s&oacute;lo ha de ser instalado
si sigue el proceso para instalar
<application>&sap.r3; 46B IDES</application>.
No es necesario si <application>&oracle; DB</application>
no est&aacute; reenlazado (relinked) con el sistema &os;.
Este ser&iacute;a su caso si est&aacute; usa el fichero comprimido
tar de <application>&oracle;</application> de un sistema Linux.</para>
</sect3>
<sect3 id="installingnecessaryrpms">
<title>Instalaci&oacute;n los RPM necesarios</title>
<indexterm><primary>RPM</primary></indexterm>
<para>Necesitar&aacute; soporte PAM para iniciar el programa
<command>R3SETUP</command>.
Durante la primera instalaci&oacute;n de
<application>&sap;</application>
en FreeBSD 4.3-STABLE intentamos instalar PAM con todas
las dependencias y finalmente forzamos la
instalaci&oacute;n del paquete PAM, y funcion&oacute;.
En <application>&sap.r3; 4.6C SR2</application> forzamos
la instalaci&oacute;n del RPM PAM, que tambi&eacute;n
funcion&oacute;, as&iacute; que parece que las dependencias
no lo son tanto:</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>Para que <application>&oracle; 8.0.5</application> pueda
lanzar el agente inteligente, tambi&eacute;n tendremos que
instalar el paquete Tcl de RedHat
<filename>tcl-8.0.5-30.i386.rpm</filename> (si no,
en reenlazado durante la instalaci&oacute;n de
<application>&oracle;</application> no funcionar&aacute;).
Existen otros aspectos relacionados con el
reenlazado de <application>&oracle;</application> a tener en
cuenta durante la instalaci&oacute;n, pero
esos ata&ntilde;en a la versi&oacute;n para Linux de
<application>&oracle;</application> y no son espec&iacute;ficos
de &os;.</para>
</sect3>
<sect3 id="linuxprocandfallbackelfbrand">
<title>Sugerencias</title>
<para>Seguramente es una buena idea a&ntilde;adir
<literal>linprocfs</literal> a <filename>/etc/fstab</filename>.
Consulte &man.linprocfs.5; para m&aacute;s informaci&oacute;n.
Otro par&aacute;metro que deber&iacute;a configurar es
<literal>kern.fallback_elf_brand=3</literal> en
<filename>/etc/sysctl.conf</filename>.</para>
</sect3>
</sect2>
<sect2 id="creatingsapr3env">
<title>Creaci&oacute;n del ambiente &sap.r3;</title>
<sect3 id="filesystemsandmountpoints">
<title>Creaci&oacute;n de los sistemas de ficheros y puntos de montaje necesarios</title>
<para>Para una instalaci&oacute;n sencilla es suficiente con
crear los siguientes sistemas de ficheros:</para>
<informaltable frame="none" pgwide="1">
<tgroup cols="2">
<thead>
<row>
<entry>punto de montaje</entry>
<entry>tama&ntilde;o en GB</entry>
</row>
</thead>
<tbody>
<row>
<entry><filename>/compat/linux/oracle</filename></entry>
<entry>45 GB</entry>
</row>
<row>
<entry><filename>/compat/linux/sapmnt</filename></entry>
<entry>2 GB</entry>
</row>
<row>
<entry><filename>/compat/linux/usr/sap</filename></entry>
<entry>2 GB</entry>
</row>
</tbody>
</tgroup>
</informaltable>
<para>Tambi&eacute;n es necesario crear algunos enlaces. Si no,
el instalador <application>&sap;</application>
se tendr&aacute; problemas, ya que buscar&aacute; los siguientes
enlaces:</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>Veamos unos cuantos errores que es posible que se le presenten
durante la instalaci&oacute;n (en este caso
con el sistema <emphasis>PRD</emphasis> y la instalaci&oacute;n
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>Creaci&oacute;n de usuarios y directorios</title>
<para><application>&sap.r3;</application> necesita dos usuarios
y tres grupos. Los nombres de usuario dependen del
<quote><application>&sap;</application> system ID</quote>
(SID), y consisten en tres letras.
Algunos de estos SID
est&aacute;n reservados por <application>&sap;</application>
(por ejemplo <literal>SAP</literal> y <literal>NIX</literal>.
Tiene una lista completa de ellos en la documentaci&oacute;n
de <application>&sap;</application>).
Para la instalaci&oacute;n de IDES usamos <literal>IDS</literal>
y para la instalaci&oacute;n de 4.6C SR2 <literal>PRD</literal>,
dado que ese sistema est&aacute; pensado para un uso de
producci&oacute;n. Tenemos por lo tanto los siguientes
grupos (Los ID de grupo pueden ser diferentes, estos son
s&oacute;lamente los valores que utilizamos en nuestra
instalaci&oacute;n):</para>
<informaltable frame="none" pgwide="1">
<tgroup cols="3">
<thead>
<row>
<entry>ID de grupo</entry>
<entry>nombre de grupo</entry>
<entry>descripci&oacute;n</entry>
</row>
</thead>
<tbody>
<row>
<entry>100</entry>
<entry>dba</entry>
<entry>Administrador de base de datos</entry>
</row>
<row>
<entry>101</entry>
<entry>sapsys</entry>
<entry>Sistema &sap;</entry>
</row>
<row>
<entry>102</entry>
<entry>oper</entry>
<entry>Operador de base de datos</entry>
</row>
</tbody>
</tgroup>
</informaltable>
<para>En una instalaci&oacute;n por defecto de
<application>&oracle;</application>, solo se usa el
grupo <groupname>dba</groupname>.
Puede usarse el grupo
<groupname>oper</groupname> como grupo
el grupo <groupname>dba</groupname> (consulte la
documentaci&oacute;n de
<application>&oracle;</application> y
<application>&sap;</application>
para m&aacute;s informaci&oacute;n).</para>
<para>Tambi&eacute;n necesitaremos los siguientes usuarios:</para>
<informaltable frame="none" pgwide="1">
<tgroup cols="6">
<thead>
<row>
<entry>ID de usuario</entry>
<entry>nombre de usuario</entry>
<entry>nombre gen&eacute;rico</entry>
<entry>grupo</entry>
<entry>grupos adicionales</entry>
<entry>descripci&oacute;n</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>Administrador &sap;</entry>
</row>
<row>
<entry>1002</entry>
<entry>oraids/oraprd</entry>
<entry>ora<replaceable>sid</replaceable></entry>
<entry>dba</entry>
<entry>oper</entry>
<entry>Administrador &oracle;</entry>
</row>
</tbody>
</tgroup>
</informaltable>
<para>Al a&ntilde;adir dichos usuarios mediante
&man.adduser.8; tenga en cuenta que debe incluir
las siguientes entradas (observe la shell y el
directorio home) al crear el
<quote>administrador &sap;</quote>:</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>y para el <quote>Administrador &oracle;</quote>:</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>Esto tambi&eacute;n incluye al grupo
<groupname>oper</groupname> en caso de que est&eacute;
usando el grupo <groupname>dba</groupname> y
el grupo <groupname>oper</groupname>.</para>
</sect3>
<sect3 id="creatingdirectories">
<title>Creaci&oacute;n de directorios</title>
<para>Estos directorios se crean como sistemas de ficheros
independientes. Esto depende totalmente de sus necesidades.
Nosotros decidimos crearlos como directorios ya que todos
est&aacute;n en el mismo RAID 5:</para>
<para>Primero vamos a configurar los propietarios y los
derechos de algunos directorios (como
<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>Luego vamos a crear directorios como el
usuario <username>ora<replaceable>sid</replaceable></username>.
Estos ser&aacute;n todos subdirectorios de
<filename>/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>Para la instalaci&oacute;n de
<application>&oracle; 8.1.7</application>
tendr&aacute; que crear unos cuantos directorios m&aacute;s:</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>El directorio <filename>client/80x_32</filename> tiene
que tener exactamente este nombre. No sustituya la
<emphasis>x</emphasis>
por alg&uacute;n n&uacute;mero o algo cualquier otra
cosa.</para></note>
<para>En el tercer paso creamos directorios como usuario
<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>Entradas en <filename>/etc/services</filename></title>
<para><application>&sap.r3;</application> requiere algunas entradas
en <filename>/etc/services</filename> que es posible que
no est&eacute;n correctamente activadas durante
la instalalaci&oacute;n. A&ntilde;ada
las siguientes entradas (necesita al menos las entradas
correspondientes al n&uacute;mero de instancia, en
este caso, <literal>00</literal>. No har&aacute; ning&uacute;n
da&ntilde;o a&ntilde;adir todas las entradas de
<literal>00</literal> hasta <literal>99</literal> para
<literal>dp</literal>, <literal>gw</literal>, <literal>sp</literal>
y <literal>ms</literal>). Si va a utilizar un
<application>SAProuter</application>
o necesita acceder a
<application>&sap;</application> OSS, tambi&eacute;n
necesitar&aacute; <literal>99</literal>, ya que el puerto 3299
se usa generalmente para el proceso
<application>SAProuter</application>
en el sistema destino:</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>Locales necesarios</title>
<indexterm><primary>locales</primary></indexterm>
<para><application>&sap;</application> requiere al menos dos locales
que no forman parte de la instalaci&oacute;n por defecto de
RedHat. &sap; dispone de los paquetes RPMs que pueda necesitar;
puede descargalos desde su FTP, aunque &eacute;ste s&oacute;lo
es accesible para clientes con acceso OSS). Consulte la nota
0171356, que contiene una lista de los RPM que necesitar&aacute;.
</para>
<para>Tambi&eacute;n es posible crear enlaces
(por ejemplo desde <emphasis>de_DE</emphasis> y
<emphasis>en_US</emphasis> ), pero no se lo recomendamos si
pretende configurar un sistema de producci&oacute;n (no obstante,
hemos de reconocer que a nosotros nos ha funcionado con
el sistema IDES sin ning&uacute;n problema). Los
siguientes locales son necesarias:</para>
<programlisting>de_DE.ISO-8859-1
en_US.ISO-8859-1</programlisting>
<para>Haga los enlaces de esta manera:</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>Si no est&aacute;n, habr&aacute; algunos
problemas durante la instalaci&oacute;n. Si se ignoran
(es decir, si configura el <literal>STATUS</literal>
de los pasos relacionados con esos locales a
<literal>OK</literal> en el fichero
<filename>CENTRDB.R3S</filename>) ser&aacute; imposible
entrar al sistema <application>&sap;</application> sin
tener que recurrir a ciertas triqui&ntilde;uelas.</para>
</sect3>
<sect3 id="kerneltuning">
<title>Personalizaci&oacute;n del kernel</title>
<indexterm><primary>Personalizaci&oacute;n del kernel</primary></indexterm>
<para>Los sistemas <application>&sap.r3;</application> necesitan muchos
recursos, por eso hemos a&ntilde;adido los siguientes
par&aacute;metros al fichero de configuraci&oacute;n de su
kernel:</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>Puede consultar los valores m&iacute;nimos en la
documentaci&oacute;n de &sap;. Como no hay detalles
sobre Linux, consulte para mayor informaci&oacute;n
la secci&oacute;n de HP-UX (32-bit).
El sistema de instalaci&oacute;n 4.6C SR2 tiene m&aacute;s
memoria principal, as&iacute;n que los segmentos compartidos
pueden ser m&aacute;s extensos tanto para
<application>&sap;</application> como para
<application>&oracle;</application>; elija, por tanto,
un n&uacute;mero mayor de p&aacute;ginas
de memoria compartida.</para>
<note><para>En la instalaci&oacute;n por defecto para
FreeBSD&nbsp;4.5 en &i386;, configure <literal>MAXDSIZ</literal>
y <literal>DFLDSIZ</literal> como m&aacute;ximo a 1&nbsp;GB.
Si no lo hacel, podr&iacute;an tener lugar errores extra&ntilde;os
como <errorname>ORA-27102: out of memory</errorname>
y <errorname>Linux Error: 12: Cannot allocate memory</errorname>.</para></note>
</sect3>
</sect2>
<sect2 id="installingsapr3">
<title>Instalaci&oacute;n de &sap.r3;</title>
<sect3 id="preparingsapcdroms">
<title>Preparaci&oacute;n de los CDROM</title>
<para>Tendr&aacute; que montar y desmontar muchos CD-ROM durante la
instalaci&oacute;n. Si tiene suficientes unidades
de CDROM, podr&iacute;a montarlos todos. Nosotros decidimos
copiar el contenido de los CD-ROM a los directorios
correspondientes:</para>
<programlisting>/oracle/<replaceable>SID</replaceable>/sapreorg/<replaceable>nombre-cd</replaceable></programlisting>
<para>Donde <replaceable>nombre-cd</replaceable> era <filename>KERNEL</filename>,
<filename>RDBMS</filename>, <filename>EXPORT1</filename>,
<filename>EXPORT2</filename>, <filename>EXPORT3</filename>,
<filename>EXPORT4</filename>, <filename>EXPORT5</filename> y
<filename>EXPORT6</filename> para la instalaci&oacute;n 4.6B/IDES, y
<filename>KERNEL</filename>, <filename>RDBMS</filename>,
<filename>DISK1</filename>, <filename>DISK2</filename>,
<filename>DISK3</filename>, <filename>DISK4</filename> y
<filename>LANG</filename> para la instalaci&oacute;n 4.6C SR2.
Todos los nombres de fichero en los CDs montados deben estar
en may&uacute;sculas; si no es as&iacute; use la opci&oacute;n
<option>-g</option> al montar. Utilice lo siguiente:
</para>
<screen>&prompt.root; <userinput>mount_cd9660 -g /dev/cd0a /mnt</userinput>
&prompt.root; <userinput>cp -R /mnt/* /oracle/<replaceable>SID</replaceable>/sapreorg/<replaceable>nombre-cd</replaceable></userinput>
&prompt.root; <userinput>umount /mnt</userinput></screen>
</sect3>
<sect3 id="runningtheinstall-script">
<title>Ejecuci&oacute;n del <quote>script</quote> de
instalaci&oacute;n</title>
<para>Primero tendr&aacute; que preparar un directorio
<filename class="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>Una vez arrancado el <quote>script</quote> de instalaci&oacute;n
copiar&aacute; casi todos los ficheros relevantes en el directorio
<filename class="directory">install</filename>:</para>
<screen>&prompt.root; <userinput>/oracle/<replaceable>SID</replaceable>/sapreorg/KERNEL/UNIX/INSTTOOL.SH</userinput></screen>
<para>La instalaci&oacute;n IDES (4.6B) incluye un sistema de
demostraci&oacute;n &sap.r3; totalmente personalizado, as&iacute;
que hay seis CD EXPORT en lugar de solo tres.
La plantilla de instalaci&oacute;n
<filename>CENTRDB.R3S</filename> est&aacute; pensada para
una instancia central est&aacute;ndar
(<application>&r3;</application> y
base de datos), no la instancia central IDES, as&iacute; que
es necesario copiar el <filename>CENTRDB.R3S</filename>
correspondiente del directorio
<filename class="directory">EXPORT1</filename>.
Si no lo hace <command>R3SETUP</command> solo pedir&aacute;
tres CD EXPORT.</para>
<para>La nueva versi&oacute;n de
<application>&sap; 4.6C SR2</application>
incluye cuatro CDs EXPORT. El fichero de par&aacute;metros
que controla los pasos de la instalaci&oacute;n es
<filename>CENTRAL.R3S</filename>. A diferencia de versiones
versiones anteriores, no existen patrones de instalaci&oacute;n
por separado para una instancia central con o sin base de datos.
<application>&sap;</application> utiliza un patr&oacute;n separado
para la instalaci&oacute;n de la base
de datos. Para reiniciar la instalaci&oacute;n despu&eacute;s es
suficiente reiniciarla con el fichero original.</para>
<para>Durante y despu&eacute;s de la instalaci&oacute;n,
<application>&sap;</application>
requiere que <command>hostname</command> devuelva
<emphasis>s&oacute;lamente</emphasis> el nombre del sistema,
no el nombre cualificado de dominio. Configure el nombre
del equipo de ese modo, o active un alias mediante
<command>alias hostname='hostname -s'</command> para
<username>ora<replaceable>sid</replaceable></username>
y para <username><replaceable>sid</replaceable>adm</username>
(y para <username>root</username> al menos durante los
pasos de la instalaci&oacute;n realizados como
<username>root</username>). Tambi&eacute;n puede configurar
los ficheros <filename>.profile</filename> y
<filename>.login</filename> de los usuarios que se crean durante
la instalaci&oacute;n <application>&sap;</application>.</para>
</sect3>
<sect3 id="startr3setup-46B">
<title>Inicio de <command>R3SETUP</command> 4.6B</title>
<para>Aseg&uacute;rese de que <envar>LD_LIBRARY_PATH</envar>
est&eacute; configurada correctamente:</para>
<screen>&prompt.root; <userinput>export LD_LIBRARY_PATH=/oracle/IDS/lib:/sapmnt/IDS/exe:/oracle/805_32/lib</userinput></screen>
<para>Inicie <command>R3SETUP</command> como <username>root</username>
desde el directorio de instalaci&oacute;n:</para>
<screen>&prompt.root; <userinput>cd /oracle/IDS/sapreorg/install</userinput>
&prompt.root; <userinput>./R3SETUP -f CENTRDB.R3S</userinput></screen>
<para>El <quote>script</quote> le preguntar&aacute; algunas cosas;
le mostramos aqu&iacute; entre corchetes la respuesta por
defecto, y despu&eacute;s la respuesta que nosotros
introdujimos:</para>
<informaltable frame="none" pgwide="1">
<tgroup cols="3">
<thead>
<row>
<entry>Pregunta</entry>
<entry>Por defecto</entry>
<entry>Entrada</entry>
</row>
</thead>
<tbody>
<row>
<entry>Enter SAP System ID</entry>
<entry>[C11]</entry>
<entry>IDS<keycap>Enter</keycap></entry>
</row>
<row>
<entry>Enter SAP Instance Number</entry>
<entry>[00]</entry>
<entry><keycap>Enter</keycap></entry>
</row>
<row>
<entry>Enter SAPMOUNT Directory</entry>
<entry>[/sapmnt]</entry>
<entry><keycap>Enter</keycap></entry>
</row>
<row>
<entry>Enter name of SAP central host</entry>
<entry>[troubadix.domain.de]</entry>
<entry><keycap>Enter</keycap></entry>
</row>
<row>
<entry>Enter name of SAP db host</entry>
<entry>[troubadix]</entry>
<entry><keycap>Enter</keycap></entry>
</row>
<row>
<entry>Select character set</entry>
<entry>[1] (WE8DEC)</entry>
<entry><keycap>Enter</keycap></entry>
</row>
<row>
<entry>Enter Oracle server version (1) Oracle 8.0.5, (2) Oracle 8.0.6, (3) Oracle 8.1.5, (4) Oracle 8.1.6</entry>
<entry> </entry>
<entry>1<keycap>Enter</keycap></entry>
</row>
<row>
<entry>Extract Oracle Client archive</entry>
<entry>[1] (Yes, extract)</entry>
<entry><keycap>Enter</keycap></entry>
</row>
<row>
<entry>Enter path to KERNEL CD</entry>
<entry>[/sapcd]</entry>
<entry>/oracle/IDS/sapreorg/KERNEL</entry>
</row>
<row>
<entry>Enter path to RDBMS CD</entry>
<entry>[/sapcd]</entry>
<entry>/oracle/IDS/sapreorg/RDBMS</entry>
</row>
<row>
<entry>Enter path to EXPORT1 CD</entry>
<entry>[/sapcd]</entry>
<entry>/oracle/IDS/sapreorg/EXPORT1</entry>
</row>
<row>
<entry>Directory to copy EXPORT1 CD</entry>
<entry>[/oracle/IDS/sapreorg/CD4_DIR]</entry>
<entry><keycap>Enter</keycap></entry>
</row>
<row>
<entry>Enter path to EXPORT2 CD</entry>
<entry>[/sapcd]</entry>
<entry>/oracle/IDS/sapreorg/EXPORT2</entry>
</row>
<row>
<entry>Directory to copy EXPORT2 CD</entry>
<entry>[/oracle/IDS/sapreorg/CD5_DIR]</entry>
<entry><keycap>Enter</keycap></entry>
</row>
<row>
<entry>Enter path to EXPORT3 CD</entry>
<entry>[/sapcd]</entry>
<entry>/oracle/IDS/sapreorg/EXPORT3</entry>
</row>
<row>
<entry>Directory to copy EXPORT3 CD</entry>
<entry>[/oracle/IDS/sapreorg/CD6_DIR]</entry>
<entry><keycap>Enter</keycap></entry>
</row>
<row>
<entry>Enter path to EXPORT4 CD</entry>
<entry>[/sapcd]</entry>
<entry>/oracle/IDS/sapreorg/EXPORT4</entry>
</row>
<row>
<entry>Directory to copy EXPORT4 CD</entry>
<entry>[/oracle/IDS/sapreorg/CD7_DIR]</entry>
<entry><keycap>Enter</keycap></entry>
</row>
<row>
<entry>Enter path to EXPORT5 CD</entry>
<entry>[/sapcd]</entry>
<entry>/oracle/IDS/sapreorg/EXPORT5</entry>
</row>
<row>
<entry>Directory to copy EXPORT5 CD</entry>
<entry>[/oracle/IDS/sapreorg/CD8_DIR]</entry>
<entry><keycap>Enter</keycap></entry>
</row>
<row>
<entry>Enter path to EXPORT6 CD</entry>
<entry>[/sapcd]</entry>
<entry>/oracle/IDS/sapreorg/EXPORT6</entry>
</row>
<row>
<entry>Directory to copy EXPORT6 CD</entry>
<entry>[/oracle/IDS/sapreorg/CD9_DIR]</entry>
<entry><keycap>Enter</keycap></entry>
</row>
<row>
<entry>Enter amount of RAM for SAP + DB</entry>
<entry> </entry>
<entry>850<keycap>Enter</keycap> (en Megabytes)</entry>
</row>
<row>
<entry>Service Entry Message Server</entry>
<entry>[3600]</entry>
<entry><keycap>Enter</keycap></entry>
</row>
<row>
<entry>Enter Group-ID of sapsys</entry>
<entry>[101]</entry>
<entry><keycap>Enter</keycap></entry>
</row>
<row>
<entry>Enter Group-ID of oper</entry>
<entry>[102]</entry>
<entry><keycap>Enter</keycap></entry>
</row>
<row>
<entry>Enter Group-ID of dba</entry>
<entry>[100]</entry>
<entry><keycap>Enter</keycap></entry>
</row>
<row>
<entry>Enter User-ID of <replaceable>sid</replaceable>adm</entry>
<entry>[1000]</entry>
<entry><keycap>Enter</keycap></entry>
</row>
<row>
<entry>Enter User-ID of ora<replaceable>sid</replaceable></entry>
<entry>[1002]</entry>
<entry><keycap>Enter</keycap></entry>
</row>
<row>
<entry>Number of parallel procs</entry>
<entry>[2]</entry>
<entry><keycap>Enter</keycap></entry>
</row>
</tbody>
</tgroup>
</informaltable>
<para>Si no ha copiado los CD a su disco duro el instalador
<application>&sap;</application> no podr&aacute; encontrar
el CD que necesite (identifica los contenidos en base al
fichero <filename>LABEL.ASC</filename> de cada CD) y por lo
tanto le pedir&aacute; que introduzca y monte el CD, o que
confirme o introduzca la ruta de montaje.</para>
<para><filename>CENTRDB.R3S</filename> puede contener alg&uacute;n
error. En nuestro caso, solicit&oacute;
el CD EXPORT4 m&aacute;s de una vez, pero se le indic&oacute;
la clave correcta (6_LOCATION, luego 7_LOCATION, etc),
as&iacute; que pudimos continuar introduciendo
los valores correctos.</para>
<para>Aparte de algunos problemas que se detallan m&aacute;s
adelante, deber&iacute;amos ir llegando a la instalaci&oacute;n
del software de base de datos &oracle;.</para>
</sect3>
<sect3 id="startr3setup-46C">
<title>Iniciar <command>R3SETUP</command> 4.6C SR2</title>
<para>Aseg&uacute;rese de que <envar>LD_LIBRARY_PATH</envar> est&eacute;
correctamente configurada. Tenga en cuenta de que es un valor
diferente de la instalaci&oacute;n 4.6B con
<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>Arranque <command>R3SETUP</command> como el usuario
<username>root</username>
desde el directorio de instalaci&oacute;n:</para>
<screen>&prompt.root; <userinput>cd /oracle/PRD/sapreorg/install</userinput>
&prompt.root; <userinput>./R3SETUP -f CENTRAL.R3S</userinput></screen>
<para>El <quote>script</quote> le preguntar&aacute; algunas cosas.
Le presentamos la respuesta por defecto entre corchetes, y tras
esto nuestra respuesta):</para>
<informaltable frame="none" pgwide="1">
<tgroup cols="3">
<thead>
<row>
<entry>Pregunta</entry>
<entry>Por omisi&oacute;n</entry>
<entry>Entrada</entry>
</row>
</thead>
<tbody>
<row>
<entry>Enter SAP System ID</entry>
<entry>[C11]</entry>
<entry>PRD<keycap>Enter</keycap></entry>
</row>
<row>
<entry>Enter SAP Instance Number</entry>
<entry>[00]</entry>
<entry><keycap>Enter</keycap></entry>
</row>
<row>
<entry>Enter SAPMOUNT Directory</entry>
<entry>[/sapmnt]</entry>
<entry><keycap>Enter</keycap></entry>
</row>
<row>
<entry>Enter name of SAP central host</entry>
<entry>[majestix]</entry>
<entry><keycap>Enter</keycap></entry>
</row>
<row>
<entry>Enter Database System ID</entry>
<entry>[PRD]</entry>
<entry>PRD<keycap>Enter</keycap></entry>
</row>
<row>
<entry>Enter name of SAP db host</entry>
<entry>[majestix]</entry>
<entry><keycap>Enter</keycap></entry>
</row>
<row>
<entry>Select character set</entry>
<entry>[1] (WE8DEC)</entry>
<entry><keycap>Enter</keycap></entry>
</row>
<row>
<entry>Enter Oracle server version (2) Oracle 8.1.7</entry>
<entry> </entry>
<entry>2<keycap>Enter</keycap></entry>
</row>
<row>
<entry>Extract Oracle Client archive</entry>
<entry>[1] (Yes, extract)</entry>
<entry><keycap>Enter</keycap></entry>
</row>
<row>
<entry>Enter path to KERNEL CD</entry>
<entry>[/sapcd]</entry>
<entry>/oracle/PRD/sapreorg/KERNEL</entry>
</row>
<row>
<entry>Enter amount of RAM for SAP + DB</entry>
<entry>2044</entry>
<entry>1800<keycap>Enter</keycap> (in Megabytes)</entry>
</row>
<row>
<entry>Service Entry Message Server</entry>
<entry>[3600]</entry>
<entry><keycap>Enter</keycap></entry>
</row>
<row>
<entry>Enter Group-ID of sapsys</entry>
<entry>[100]</entry>
<entry><keycap>Enter</keycap></entry>
</row>
<row>
<entry>Enter Group-ID of oper</entry>
<entry>[101]</entry>
<entry><keycap>Enter</keycap></entry>
</row>
<row>
<entry>Enter Group-ID of dba</entry>
<entry>[102]</entry>
<entry><keycap>Enter</keycap></entry>
</row>
<row>
<entry>Enter User-ID of <username>oraprd</username></entry>
<entry>[1002]</entry>
<entry><keycap>Enter</keycap></entry>
</row>
<row>
<entry>Enter User-ID of <username>prdadm</username></entry>
<entry>[1000]</entry>
<entry><keycap>Enter</keycap></entry>
</row>
<row>
<entry>LDAP support</entry>
<entry> </entry>
<entry>3<keycap>Enter</keycap> (no support)</entry>
</row>
<row>
<entry>Installation step completed</entry>
<entry>[1] (continue)</entry>
<entry><keycap>Enter</keycap></entry>
</row>
<row>
<entry>Choose installation service</entry>
<entry>[1] (DB inst,file)</entry>
<entry><keycap>Enter</keycap></entry>
</row>
</tbody>
</tgroup>
</informaltable>
<para>La creaci&oacute;n de usuarios da un
error durante la instalaci&oacute;n en las fases
OSUSERDBSID_IND_ORA (al crear al usuario
<username>ora<replaceable>sid</replaceable></username>) y
OSUSERSIDADM_IND_ORA (al crear el usuario
<username><replaceable>sid</replaceable>adm</username>).</para>
<para>Salvo de algunos problemas mencionados m&aacute;s
adelante, hemos llegado al momento de instalar el software
de base de datos &oracle;.</para>
</sect3>
</sect2>
<sect2 id="installingoracle805">
<title>Instalaci&oacute;n de &oracle; 8.0.5</title>
<para>Consulte las notas correspondientes en los
<filename>Readme</filename>s
de &sap; y &oracle; sobre Linux y
<application>&oracle; DB</application>. La mayor&iacute;a de los
problemas, por no decir todos, tienen su origen en bibliotecas
incompatibles.</para>
<para>Para mayor informaci&oacute;n sobre la instalaci&oacute;n
de <application>&oracle;</application> dir&iacute;jase al
<link linkend="linuxemu-oracle">cap&iacute;tulo de
instalaci&oacute;n de &oracle;.</link></para>
<sect3 id="installingtheoracle805withorainst">
<title>Instalaci&oacute;n de &oracle; 8.0.5 con <command>orainst</command></title>
<para>Si quiere instalar <application>&oracle; 8.0.5</application>
necesitar&aacute; unas cuantas bibliotecas para el enlazado,
ya que <application>&oracle; 8.0.5</application>
fu&eacute; enlazado con una glibc antigua (la de RedHat 6.0),
pero RedHat 6.1 usa una nueva glibc. Tendr&aacute; que
instalar los siguientes paquetes para
asegurarse que el reenlazado funcione:</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>Para m&aacute;s informaci&oacute;n consulte las notas
correspondientes de &sap; o el <filename>Readme</filename>
de &oracle;. Si no es posible (durante la instalaci&oacute;n
no tuvimos tiempo suficiente para ello), se
podr&iacute;an utilizar los binarios originales, o
los binarios reenlazados de un sistema original RedHat.</para>
<para>Instale el paquete Tcl de RedHat para compilar el agente
inteligente. Si no puede conseguir
<filename>tcl-8.0.3-20.i386.rpm</filename> deber&iacute;a
funcionar una versi&oacute;n m&aacute;s reciente, por ejemplo
<filename>tcl-8.0.5-30.i386.rpm</filename> para RedHat.</para>
<para>Aparte del reenlazado, la instalaci&oacute;n
es muy sencilla:</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>Confirme todas las pantallas con <keycap>Enter</keycap> hasta
que el software est&eacute; instalado; todas excepto en la que
tiene deseleccionar el <emphasis>visualizador de
textos &oracle; en l&iacute;nea</emphasis>, ya que no
existe para Linux. <application>&oracle;</application>
intentar&aacute;, gracias a esto, reenlazar con
<command>i386-glibc20-linux-gcc</command>
en lugar de <command>gcc</command>,
<command>egcs</command> o
<command>i386-redhat-linux-gcc</command>.</para>
<para>Debido a la falta de tiempo decidimos usar los binarios
de una versi&oacute;n
<application>&oracle; 8.0.5 PreProduction</application>,
despu&eacute;s que nuestro primer intento de que funcionara la
versi&oacute;n del CD RDBMS fallara, viendo que encontrar y
utilizar los RPM correctos hubiera sido una pesadilla.</para>
</sect3>
<sect3 id="installingtheoracle805preproduction">
<title>Instalaci&oacute;n de &oracle; 8.0.5 <quote>Pre-production
Release</quote> para Linux (Kernel 2.0.33)</title>
<para>Esta instalaci&oacute;n es bastante f&aacute;cil.
Monte el CD e inicie el instalador. Le preguntar&aacute;
por la ubicaci&oacute;n del directorio home de &oracle;,
y copiar&aacute; en &eacute;l todos los binarios. (Nosotros
no eliminamos los restos de una instalaci&oacute;n
RDBMS previa fallida.</para>
<para>Tras esto, la base de datos <application>&oracle;</application>
puede arrancarse sin mayor problema.</para>
</sect3>
</sect2>
<sect2 id="installingoracle817">
<title>Instalaci&oacute;n desde el fichero comprimido de Linux &oracle; 8.1.7</title>
<para>Descomprima el fichero comprimido
<filename>oracle81732.tgz</filename> que produjo desde el directorio
de instalaci&oacute;n en un sistema Linux y descompr&iacute;malo en
<filename>/oracle/<replaceable>SID</replaceable>/817_32/</filename>.</para>
</sect2>
<sect2 id="continuewithsapr4installation">
<title>Continue con la instalaci&oacute;n &sap.r3;</title>
<para>Revise las configuraciones del entorno de los usuarios
<username>idsamd</username>
(<replaceable>sid</replaceable>adm) y
<username>oraids</username> (ora<replaceable>sid</replaceable>).
Ambos deben tener los ficheros
<filename>.profile</filename>, <filename>.login</filename> y
<filename>.cshrc</filename> con
<command>hostname</command> correctamente configurado. En caso
que el nombre del sistema sea el nombre cualificado completo
tendr&aacute; que cambiar <command>hostname</command> a
<command>hostname -s</command> en los tres ficheros anteriormente
citados.</para>
<sect3 id="databaseload">
<title>Carga de la base de datos</title>
<para>Hecho esto <command>R3SETUP</command> puede ser iniciar o
volver a iniciar la instalaci&oacute;n
(dependiendo si se eligi&oacute; salir o no).
<command>R3SETUP</command>
crea las tablas y carga los datos (para 46B IDES,
desde EXPORT1 hasta EXPORT6, para 46C desde DISK1 hasta DISK4)
mediante <command>R3load</command>.</para>
<para>Cuando se termina la carga de la base de datos (esto puede
llevar un par de horas) se le pedir&aacute;n algunas
contrase&ntilde;as. En una instalaci&oacute;n de prueba puede
usar las contrase&ntilde;as por defecto.
(<emphasis>use una contrase&ntilde;a de verdad si le preocupa
siquiera ligeramente la seguridad</emphasis>):</para>
<informaltable frame="none" pgwide="1">
<tgroup cols="2">
<thead>
<row>
<entry>Pregunta</entry>
<entry>Entrada</entry>
</row>
</thead>
<tbody>
<row>
<entry>Enter Password for sapr3</entry>
<entry>sap<keycap>Enter</keycap></entry>
</row>
<row>
<entry>Confirum Password for sapr3</entry>
<entry>sap<keycap>Enter</keycap></entry>
</row>
<row>
<entry>Enter Password for sys</entry>
<entry>change_on_install<keycap>Enter</keycap></entry>
</row>
<row>
<entry>Confirm Password for sys</entry>
<entry>change_on_install<keycap>Enter</keycap></entry>
</row>
<row>
<entry>Enter Password for system</entry>
<entry>manager<keycap>Enter</keycap></entry>
</row>
<row>
<entry>Confirm Password for system</entry>
<entry>manager<keycap>Enter</keycap></entry>
</row>
</tbody>
</tgroup>
</informaltable>
<para>Aqu&iacute; tuvimos problemas con
<command>dipgntab</command> en la instalaci&oacute;n de
4.6B.</para>
</sect3>
<sect3 id="listener">
<title>Escucha</title>
<para>Inicie el escucha de <application>&oracle;</application> desde
el usuario <username>ora<replaceable>sid</replaceable></username>
de la siguiente manera:</para>
<screen>&prompt.user; <userinput>umask 0; lsnrctl start</userinput></screen>
<para>Si no lo hace as&iacute; recibir&aacute; un error
<errorcode>ORA-12546</errorcode>,
ya que los sockets no tendr&aacute;n los permisos correctos.
Consulte la nota 072984 de &sap;.</para>
</sect3>
<sect3 id="mnlstables">
<title>Actualizaci&oacute;n de tablas MNLS</title>
<para>Si tiene previsto importar idiomas que no sean Latin-1
en <application>&sap;</application>, tiene que actualizar
las tablas <quote>Multi National Language Support</quote>.
Tiene m&aacute;s informaci&oacute;n sobre esto en las notas de
&sap; OSS 15023 y 45619 de &sap;. Si no es su caso puede saltarse
esta parte de la instalaci&oacute;n de <application>&sap;</application>.</para>
<note><para>Aunque no necesite soporte MNLS, sigue siendo necesario
que revise la tabla TCPDB y que la inicialice si no lo ha hecho ya.
Consulte las notas 0015023 y 0045619 de &sap; para m&aacute;s
informaci&oacute;n.</para></note>
</sect3>
</sect2>
<sect2 id="postinstallationsteps">
<title>Pasos para despu&eacute;s de la instalaci&oacute;n</title>
<sect3 id="requestsapr3licensekey">
<title>Solicitar una licencia &sap.r3;</title>
<para>Tiene que solicitar una licencia de
<application>&sap.r3;</application>. No tendr&aacute; m&aacute;s
remedio, puesto que la licencia temporal que se usa durante la
instalaci&oacute;n tiene un l&iacute;mite de validez de
cuatro semanas. Primero necesitar&aacute; la llave
hardware. Entre al sistema como el usuario
<username>idsadm</username>
y ejecute <command>saplicense</command>:</para>
<screen>&prompt.root; <userinput>/sapmnt/IDS/exe/saplicense -get</userinput></screen>
<para>Si ejecuta <command>saplicense</command> sin par&aacute;metros
ver&aacute; una lista de opciones. Una vez que tenga la licencia
en su poder la podr&aacute; instalar del siguiente modo:
</para>
<screen>&prompt.root; <userinput>/sapmnt/IDS/exe/saplicense -install</userinput></screen>
<para>Se le solicitar&aacute; que introduzca los siguientes
valores:</para>
<programlisting>SAP SYSTEM ID = <replaceable>SID, 3 caracteres</replaceable>
CUSTOMER KEY = <replaceable>llave hardware, 11 caracteres</replaceable>
INSTALLATION NO = <replaceable>instalaci&oacute;n, 10 caracteres</replaceable>
EXPIRATION DATE = <replaceable>yyyymmdd, normalmente "99991231"</replaceable>
LICENSE KEY = <replaceable>licencia, 24 caracteres</replaceable></programlisting>
</sect3>
<sect3 id="creatingusers">
<title>Crear usuarios</title>
<para>Cree un usuario dentro del cliente 000 (esto es necesario
para algunas tareas que requieren hacerse dentro del cliente 000,
pero con un usuario que no sea ni
<username>sap*</username>
ni <username>ddic</username>). Nosotros solemos elegir
para este usuario el nombre de <username>wartung</username>
(o <username>service</username>, ambos
<quote>servicio</quote> en castellano).
Los perfiles son <literal>sap_new</literal> y
<literal>sap_all</literal>. Para mayor seguridad
las contrase&ntilde;as para usuarios por defecto dentro de
todos los clientes deben cambiarse (esto
incluye usuarios <username>sap*</username> y
<username>ddic</username>).</para>
</sect3>
<sect3 id="configtranssysprofileopermodesetc">
<title>Configurar sistema de transporte, perfil, modos de operaci&oacute;n, etc.</title>
<para>Dentro del cliente 000, con un usuario que no sea
<username>ddic</username>
ni <username>sap*</username>, haga al menos lo siguiente:</para>
<informaltable frame="none" pgwide="1">
<tgroup cols="2">
<thead>
<row>
<entry>Tarea</entry>
<entry>Transacci&oacute;n</entry>
</row>
</thead>
<tbody>
<row>
<entry>Configurar sistema de transporte, por ejemplo como
<emphasis>Stand-Alone
Transport Domain Entity</emphasis></entry>
<entry>STMS</entry>
</row>
<row>
<entry>Crear / editar perfil para el sistema</entry>
<entry>RZ10</entry>
</row>
<row>
<entry>Mantener modos de operaci&oacute;n e instancias</entry>
<entry>RZ04</entry>
</row>
</tbody>
</tgroup>
</informaltable>
<para>Todos estos (y muchos m&aacute;s) pasos para ejecutar
despu&eacute;s de la instalaci&oacute;n se explican de forma
detallada en las gu&iacute;as de instalaci&oacute;n de
<application>&sap;</application>.</para>
</sect3>
<sect3 id="editintsidsap">
<title>Editar <filename>init<replaceable>sid</replaceable>.sap</filename> (<filename>initIDS.sap</filename>)</title>
<para>El fichero <filename>/oracle/IDS/dbs/initIDS.sap</filename>
contiene el perfil de respaldo <application>&sap;</application>.
Aqu&iacute; es donde debe definir el tama&ntilde;o de la cinta a
utilizar, tipo de conpresi&oacute;n, etc. Las siguientes
modificaciones nos permitir&iacute;an ejecutar
<command>sapdba</command> /
<command>brbackup</command>:</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>Explicaci&oacute;n:</para>
<para><varname>compress</varname>: La cinta que usamos es una
HP DLT1 que tiene compresi&oacute;n por hardware.</para>
<para><varname>archive_function</varname>: Esto define el
comportamiento por defecto del almacenaje de los ficheros
de log de &oracle;: los nuevos ficheros de log se guardan en cinta,
los ficheros de log que ya han sido guardados
se guardan de nuevo y luego se borran. Esto evita
muchos problemas si necesita recuperar la base de datos y
uno de las cintas est&aacute; da&ntilde;ada.</para>
<para><varname>cpio_flags</varname>: por defecto se usa
<option>-B</option>, que asigna un tama&ntilde;o de bloque de
5120&nbsp;Bytes. HP recomienda un tama&ntilde;o de bloque de
32&nbsp;K como m&iacute;nimo; usamos
<option>--block-size=128</option> para que sea de
64&nbsp;K. Necesitaremos usar <option>--format=newc</option>
porque tenemos n&uacute;meros de inodo mayores a 65535. La
&uacute;ltima opci&oacute;n (<option>--quiet</option>) se necesita
ya que <command>brbackup</command> se queja en cuanto
<command>cpio</command> imprime los n&uacute;meros de bloque
guardados.</para>
<para><varname>cpio_in_flags</varname>: Banderas necesarias
para cargar datos desde la cinta. El formato es
es reconocido automaticamente.</para>
<para><varname>tape_size</varname>: Esto da la
capacidad de almacenaje de la cinta. Por razones
de seguridad (nosotros usamos compresi&oacute;n por
hardware), el valor es ligeramente menor que el valor
real.</para>
<para><varname>tape_address</varname>: El dispositivo
(que no permite el rebobinado) que se usar&aacute; con
<command>cpio</command>.</para>
<para><varname>tape_address_rew</varname>: El dispositivo
(que permite el rebobinado) que se usar&aacute; con
<command>cpio</command>.</para>
</sect3>
<sect3>
<title>Detalles de configuraci&oacute;n despu&eacute;s
de la instalaci&oacute;n</title>
<para>Los siguientes par&aacute;metros <application>&sap;</application>
deben personalizarse una vez conclu&iacute;da la
instalaci&oacute;n (los ejemplos son para IDES 46B,
1&nbsp;GB de memoria):</para>
<informaltable frame="none" pgwide="1">
<tgroup cols="2">
<thead>
<row>
<entry>Nombre</entry>
<entry>Valor</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>&sap; Note 0013026:</para>
<informaltable frame="none" pgwide="1">
<tgroup cols="2">
<thead>
<row>
<entry>Nombre</entry>
<entry>Valor</entry>
</row>
</thead>
<tbody>
<row>
<entry>ztta/dynpro_area</entry>
<entry>2500000</entry>
</row>
</tbody>
</tgroup>
</informaltable>
<para>&sap; Note 0157246:</para>
<informaltable frame="none" pgwide="1">
<tgroup cols="2">
<thead>
<row>
<entry>Nombre</entry>
<entry>Valor</entry>
</row>
</thead>
<tbody>
<row>
<entry>rdisp/ROLL_MAXFS</entry>
<entry>16000</entry>
</row>
<row>
<entry>rdisp/PG_MAXFS</entry>
<entry>30000</entry>
</row>
</tbody>
</tgroup>
</informaltable>
<note>
<para>En un sistema con 1&nbsp;GB de memoria y los par&aacute;metros
arriba expuestos puede esperarse encontrar un consumo de
memoria similar al siguiente:</para>
<programlisting>Mem: 547M Active, 305M Inact, 109M Wired, 40M Cache, 112M Buf, 3492K Free</programlisting>
</note>
</sect3>
</sect2>
<sect2 id="problemsduringinstallation">
<title>Problemas durante la instalaci&oacute;n</title>
<sect3 id="restartr3setup">
<title>Reiniciar <command>R3SETUP</command> una vez arreglado
el problema</title>
<para><command>R3SETUP</command> se detiene si encuentra un error.
Si ha revisado los logs y ha corregido el error reinicie
<command>R3SETUP</command>; h&aacute;galo seleccionando
la opci&oacute;n REPEAT en el paso donde
<command>R3SETUP</command> se detuvo.</para>
<para>Cuando quiera reiniciar <command>R3SETUP</command>
in&iacute;cielo con el fichero <filename>R3S</filename>
correspondiente:</para>
<screen>&prompt.root; <userinput>./R3SETUP -f CENTRDB.R3S</userinput></screen>
<para>en el caso de 4.6B, o con</para>
<screen>&prompt.root; <userinput>./R3SETUP -f CENTRAL.R3S</userinput></screen>
<para>en 4.6C; no importa si el error ocurri&oacute;
con <filename>CENTRAL.R3S</filename> o con
<filename>DATABASE.R3S</filename>.</para>
<note><para>En algunas etapas, <command>R3SETUP</command> asume que la
base de datos y los procesos
<application>&sap;</application> est&aacute;n en marcha
(como aquellos en los cuales se completaron los pasos)
Si tienen lugar errores y por ejemplo la base de datos no se
puede iniciar, tendr&aacute; que arrancar la base de datos y
<application>&sap;</application> manualmente una vez haya
corregido los errores, y antes de iniciar
<command>R3SETUP</command> nuevamente.</para>
<para>No olvide iniciar tambi&eacute;n el escucha de
<application>&oracle;</application>
(como <username>ora<replaceable>sid</replaceable></username> con
<command>umask 0; lsnrctl start</command>) si tambi&eacute;n
tuvo que detenerlo (si, por ejemplo, hubo de reiniciar el
sistema).</para>
</note>
</sect3>
<sect3 id="indoraduringduringr3setup">
<title>OSUSERSIDADM_IND_ORA durante <command>R3SETUP</command></title>
<para>Si <command>R3SETUP</command> se queja en este etapa, edite
la plantilla <command>R3SETUP</command> que est&eacute; usando
ese momento (<filename>CENTRDB.R3S</filename> (en 4.6B) o
<filename>CENTRAL.R3S</filename> o
<filename>DATABASE.R3S</filename> (en 4.6C)).
Ubique <literal>[OSUSERSIDADM_IND_ORA]</literal> o busque la
&uacute;nica entrada <literal>STATUS=ERROR</literal> y
edite los siguientes valores:</para>
<programlisting>HOME=/home/<replaceable>sid</replaceable>adm (estaba vac&iacute;o)
STATUS=OK (ten&iacute;a status ERROR)
</programlisting>
<para>Hecho esto, reinicie <command>R3SETUP</command>.</para>
</sect3>
<sect3 id="indoraduringr3setup">
<title>OSUSERDBSID_IND_ORA durante <command>R3SETUP</command></title>
<para>Posiblemente <command>R3SETUP</command> se queje tambi&eacute;n
en esta etapa. El error aqu&iacute; es similar al de la fase
OSUSERSIDADM_IND_ORA. Edite la plantilla
<command>R3SETUP</command> que est&eacute; usando
(<filename>CENTRDB.R3S</filename> (en 4.6B) o
<filename>CENTRAL.R3S</filename> o
<filename>DATABASE.R3S</filename> (en 4.6C)).
Ubique <literal>[OSUSERDBSID_IND_ORA]</literal> o busque la
&uacute;nica entrada <literal>STATUS=ERROR</literal> y
edite los siguientes valores en esa secci&oacute;n:</para>
<programlisting>STATUS=OK</programlisting>
<para>Hecho esto, reinicie <command>R3SETUP</command>.</para>
</sect3>
<sect3 id="oraviewvrffilenotfound">
<title><errorname>oraview.vrf FILE NOT FOUND</errorname> durante la instalaci&oacute;n de &oracle;</title>
<para>No ha deseleccionado el
<emphasis>visualizador de texto en l&iacute;nea
de &oracle;</emphasis> antes de iniciar la instalaci&oacute;n.
Est&aacute; seleccionado para ser instalado, aunque esta
opci&oacute;n no existe para Linux. Deseleccione este producto
en el men&uacute; de instalaci&oacute;n de
<application>&oracle;</application> y reinicie la
instalaci&oacute;n.</para>
</sect3>
<sect3 id="textenvincalid">
<title><errorname>TEXTENV_INVALID</errorname> durante <command>R3SETUP</command>, o inicio de RFC o SAPgui</title>
<para>Si se encuentra con este error significa que falta el locale
correcto. La nota 0171356 de &sap; contiene una lista de RPM que
deben instalarse (p.ej. <filename>saplocales-1.0-3</filename>,
<filename>saposcheck-1.0-1</filename> para RedHat 6.1).
En caso de que ignore todos los errores relacionados y
configure los <literal>STATUS</literal> correspondientes
de <literal>ERROR</literal> a <literal>OK</literal>
(en <filename>CENTRDB.R3S</filename>) cada vez que
<command>R3SETUP</command> se queje y simplemente reinicie
<command>R3SETUP</command>, el sistema
<application>&sap;</application>
no estar&aacute; configurado correctamente y no podr&aacute;
conectarse al sistema con <application>SAPgui</application>,
aunque el sistema pueda arrancar. Si intenta conectar con el
antiguo <application>SAPgui</application> de Linux recibir&aacute;
los siguientes mensajes:</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>Este comportamiento se debe a que
<application>&sap.r3;</application>
es incapaz de asignar correctamente un locale y tampoco
puede configurarse a s&iacute; mismo correctamente (faltan
entradas en algunas tablas de la base de datos).
A&ntilde;ada las siguientes entradas al fichero
<filename>DEFAULT.PFL</filename> y podr&aacute; conectarse a
<application>&sap;</application>
(vea la nota 0043288):</para>
<programlisting>abap/set_etct_env_at_new_mode = 0
install/collate/active = 0
rscp/TCP0B = TCP0B</programlisting>
<para>Reinicie el sistema <application>&sap;</application>.
Puede conectar al sistema, aunque la configuraci&oacute;n
de idioma o de pa&iacute;s puede que no funcione como se
espera de ella. Una vez corregidas las configuraciones de
pa&iacute;s (y proporcionados los locales adecuados)
puede eliminar estas entradas
de <filename>DEFAULT.PFL</filename> y el sistema
<application>&sap;</application> puede reiniciarse.</para>
</sect3>
<sect3 id="ora-00001">
<title><errorcode>ORA-00001</errorcode></title>
<para>Este error solo aparece con
<application>&oracle; 8.1.7</application> en FreeBSD&nbsp;4.5.
Se debe a que la base de datos <application>&oracle;</application>
no puede inicializarse correctamente y se viene abajo, dejando
sem&aacute;foros y memoria compartida en el sistema. El
siguiente intento de iniciar la base de datos produce
el error <errorcode>ORA-00001</errorcode>.</para>
<para>Encu&eacute;ntrelos con <command>ipcs -a</command> y
elim&iacute;nelos
con <command>ipcrm</command>.</para>
</sect3>
<sect3 id="ora-00445pmon">
<title><errorcode>ORA-00445</errorcode> (Brackground Process PMON
Did Not Start)</title>
<para>Este error tuvo lugar ; con
<application>&oracle; 8.1.7</application>. Aparece si
se arranca la base de datos con el <quote>script</quote>
<command>startsap</command>
(por ejemplo <command>startsap_majestix_00</command>)
con el usuario <username>prdadm</username>.</para>
<para>Una posible soluci&oacute;n es iniciar la base de
datos con el usuario <username>oraprd</username> en
lugar de hacerlo con <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><errorcode>ORA-12546</errorcode> (Start Listener with Correct
Permissions)</title>
<para>Inicie el escucha de <application>&oracle;</application> como
usuario <username>oraids</username> con el siguiente comando:</para>
<screen>&prompt.root; <userinput>umask 0; lsnrctl start</userinput></screen>
<para>De no ser as&iacute; puede encontrarse con el error
<errorcode>ORA-12546</errorcode>, ya que los sockets no
tendr&aacute;n los permisos adecuados. Consulte la nota
de &sap; 0072984.</para>
</sect3>
<sect3 id="ora-27102">
<title><errorcode>ORA-27102</errorcode> (Out of Memory)</title>
<para>Este error ocurre al tratar de usar valores mayores
a 1&nbsp;GB (1024x1024x1024) en <literal>MAXDSIZ</literal>
y <literal>DFLDSIZ</literal>. Recibiremos, adem&aacute;s este
otro error:
<errorname>Linux Error 12: Cannot allocate memory</errorname>.</para>
</sect3>
<sect3 id="dipgntabindind">
<title>[DIPGNTAB_IND_IND] during <command>R3SETUP</command></title>
<para>Consulte la nota de &sap; 0130581 de
(<command>R3SETUP</command> step
(<literal>DIPGNTAB</literal> terminates). Por alguna raz&oacute;n,
Durante la instalaci&oacute;n espec&iacute;fica IDES, el proceso
de instalaci&oacute;n no usaba el nobre de sistema correcto
<application>&sap;</application> <quote>IDS</quote>
sino la cadena vac&iacute;a <literal>""</literal>.
Esto provocaba algunos errores menores en el acceso a directorios,
ya que las rutas se generan din&aacute;micamente en base a dicho
<replaceable>SID</replaceable> (en este caso IDS).
En lugar de ejecutar los accesos del siguiente modo :</para>
<programlisting>/usr/sap/IDS/SYS/...
/usr/sap/IDS/DVMGS00</programlisting>
<para>se usaron las siguientes rutas:</para>
<programlisting>/usr/sap//SYS/...
/usr/sap/D00</programlisting>
<para>Para continuar con la instalaci&oacute;n creamos un
enlace y un directorio adicional:</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>Encontramos una descripci&oacute;n de este comportamiento
en las notas de &sap;. (0029227 y 0008401).
En la instalaci&oacute;n de
<application>&sap; 4.6C</application> no tuvimos estos
problemas.</para>
</sect3>
<sect3 id="rfcrswboiniindind">
<title>[RFCRSWBOINI_IND_IND] during <command>R3SETUP</command></title>
<para>Durante la instalaci&oacute;n de
<application>&sap; 4.6C</application> nos encontramos con
este error, cuyo origen est&aacute; en un error que tuvo lugar
anteriormente durante la propia instalaci&oacute;n.
Busque en sus ficheros de log y corrija el problema.</para>
<para>Si despues de buscar en los logs el error resulta ser
el correcto (revise las notas de &sap;), puede poner el
<literal>STATUS</literal> del paso donde se produce el error de
<literal>ERROR</literal> a <literal>OK</literal>
(en el fichero <filename>CENTRDB.R3S</filename>) y reiniciar
<command>R3SETUP</command>. Una vez finalizada la instalaci&oacute;n,
tiene que ejecutar el informe <literal>RSWBOINS</literal>
de la transacci&oacute;n SE38. Consulte la nota &sap; 0162266
para m&aacute;s informaci&oacute;n sobre las fases
<literal>RFCRSWBOINI</literal> y
<literal>RFCRADDBDIF</literal>.</para>
</sect3>
<sect3 id="rfcraddbdifindind">
<title>[RFCRADDBDIF_IND_IND] during <command>R3SETUP</command></title>
<para>Aqu&iacute; sucede lo mismo de antes, aseg&uacute;rese,
revisando los logs, de que la causa de este error no est&eacute;
en alg&uacute;n problema previo.</para>
<para>Si en la nota de &sap; 0162266 est&aacute; la soluci&oacute;n
ponga el <literal>STATUS</literal> del paso donde se
produce el error de
<literal>ERROR</literal> a <literal>OK</literal>
(en el fichero <filename>CENTRDB.R3S</filename>) y reinicie
<command>R3SETUP</command>. Una vez finalizada la
instalaci&oacute;n ejecute el informe
<literal>RADDBDIF</literal> desde la transacci&oacute;n SE38.</para>
</sect3>
<sect3 id="sigactionsig31">
<title><errorcode>sigaction sig31: File size limit exceeded</errorcode></title>
<para>Este error ocurri&oacute; durante el inicio del proceso
<application>&sap;</application>
<emphasis>disp+work</emphasis>. Si inicia
<application>&sap;</application>
con el <quote>script</quote> <command>startsap</command>
se inician los subprocesos que se separan y hacen el
<quote>trabajo sucio</quote> de iniciar el resto de procesos de
<application>&sap;</application>, pero es importante saber que
el propio <quote>script</quote> no notar&aacute; si algo ha
ido mal.</para>
<para>Puede revisar si los procesos <application>&sap;</application>
se iniciaron correctamente con
<command>ps ax | grep <replaceable>SID</replaceable></command>, que
le proporcionar&aacute; una lista de todos los procesos de
<application>&oracle;</application> y de
<application>&sap;</application>.
Si parece que algunos procesos no est&aacute;n, o si no puede conectar
al sistema <application>&sap;</application> revise los logs
que encontrar&aacute; en
<filename>/usr/sap/<replaceable>SID</replaceable>/DVEBMGS<replaceable>nr</replaceable>/work/</filename>.
Los ficheros que debe revisar son <filename>dev_ms</filename> y
<filename>dev_disp</filename>.</para>
<para>La se&ntilde;al 31 tiene lugar si la cantidad de memoria
compartida asignada a
<application>&oracle;</application> y <application>&sap;</application>
supera la definida dentro del fichero de configuraci&oacute;n del
kernel y puede resolverse usando un valor mayor:</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>Start of <command>saposcol</command> Failed</title>
<para>Hay algunos problemas con el programa
<command>saposcol</command> (version 4.6D).
El sistema <application>&sap;</application> utiliza
<command>saposcol</command> para recoger datos del
rendimiento del sistema. Este programa no es necesario para
usar el sistema <application>&sap;</application>, as&iacute;
que el problema puede considerarse como poco importante.
La versi&oacute;n m&aacute;s antigua (4.6B) funciona, pero
no recoge todos los datos (muchas llamadas devolver&aacute;n
un 0, por ejemplo el uso de CPU).</para>
</sect3>
</sect2>
</sect1>
<sect1 id="linuxemu-advanced">
<title>Temas avanzados</title>
<para>Pendiente de traducci&oacute;n</para>
<!--
<sect2>
</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:
-->