<!-- Ôï Åã÷åéñßäéï ôïõ FreeBSD: Óõìâáôüôçôá ìå ÅêôåëÝóéìá ôïõ Linux The FreeBSD Greek Documentation Project $FreeBSD$ %SOURCE% en_US.ISO8859-1/books/handbook/linuxemu/chapter.sgml %SRCID% 1.136 --> <chapter id="linuxemu"> <chapterinfo> <authorgroup> <author> <firstname>Jim</firstname> <surname>Mock</surname> <contrib>ÁíáäïìÞèçêå êáé ìÝñç ôïõ áíáíåþèçêáí áðü ôïí </contrib> </author> <!-- 22 Mar 2000 --> </authorgroup> <authorgroup> <author> <firstname>Brian N.</firstname> <surname>Handy</surname> <contrib>Áñ÷éêÞ óõíåéóöïñÜ áðü ôïí </contrib> </author> <author> <firstname>Rich</firstname> <surname>Murphey</surname> </author> </authorgroup> </chapterinfo> <title>Óõìâáôüôçôá ìå ÅêôåëÝóéìá ôïõ Linux</title> <sect1 id="linuxemu-synopsis"> <title>Óýíïøç</title> <indexterm> <primary>Óõìâáôüôçôá ìå åêôåëÝóéìá (binary) Linux</primary> </indexterm> <indexterm> <primary>binary óõìâáôüôçôá</primary> <secondary>Linux</secondary> </indexterm> <indexterm> <primary>óõìâáôüôçôá åêôåëÝóéìùí Linux</primary> </indexterm> <indexterm> <primary>óõìâáôüôçôá åêôåëÝóéìùí</primary> <secondary>Linux</secondary> </indexterm> <para>Ôï &os; ðáñÝ÷åé binary óõìâáôüôçôá (åêôåëÝóéìùí) ìå áñêåôÜ Üëëá ëåéôïõñãéêÜ ôýðïõ &unix;, óõìðåñéëáìâáíïìÝíïõ êáé ôïõ Linux. Óå áõôü ôï óçìåßï, ìðïñåß íá áíáñùôéÝóôå ãéáôß áêñéâþò ÷ñåéÜæåôáé ôï &os; íá ìðïñåß íá ôñÝîåé åêôåëÝóéìá Linux; H áðÜíôçóç óå áõôÞ ôçí åñþôçóç åßíáé áñêåôÜ áðëÞ. ÐïëëÝò åôáéñßåò êáé ðñïãñáììáôéóôÝò áíáðôýóóïõí åöáñìïãÝò ìüíï ãéá Linux, ìéá êáé åßíáé ðïëý <quote>ôçò ìüäáò</quote> óôï êüóìï ôùí õðïëïãéóôþí. Áõôü áíáãêÜæåé åìÜò ôïõò õðüëïéðïõò, ðïõ ÷ñçóéìïðïéïýìå ôï &os;, íá ðéÝæïõìå ôéò ßäéåò áõôÝò åôáéñßåò êáé ðñïãñáììáôéóôÝò íá äçìéïõñãÞóïõí êáíïíéêÝò åêäüóåéò ôùí åöáñìïãþí ôïõò ãéá &os;. Ôï ðñüâëçìá åßíáé, üôé ïé ðåñéóóüôåñåò áðü áõôÝò ôéò åôáéñßåò äåí áíôéëáìâÜíïíôáé ðñáãìáôéêÜ ðüóïé ðåñéóóüôåñïé Üíèñùðïé èá ÷ñçóéìïðïéïýóáí ôï ðñïúüí ôïõò áí åß÷áí åêäüóåéò êáé ãéá &os;, êáé ïé ðåñéóóüôåñåò óõíå÷ßæïõí íá áíáðôýóóïõí ìüíï ãéá Linux. ¶ñá ôé ìðïñåß íá êÜíåé Ýíáò ÷ñÞóôçò ôïõ &os;; Åäþ Ýñ÷åôáé íá âïçèÞóåé ç binary óõìâáôüôçôá ôïõ &os; ìå ôï Linux.</para> <para>Åí óõíôïìßá, ç óõìâáôüôçôá åðéôñÝðåé óôïõò ÷ñÞóôåò ôïõ &os; íá åêôåëÝóïõí ðåñßðïõ ôï 90% üëùí ôùí Linux åöáñìïãþí ÷ùñßò ìåôáôñïðÝò. Áõôü ðåñéëáìâÜíåé åöáñìïãÝò üðùò ôï <application>&staroffice;</application>, ôçí Linux Ýêäïóç ôïõ <application>&netscape;</application>, <application>&adobe; &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>, êáé ðåñéóóüôåñá. ¸÷åé åðßóçò áíáöåñèåß üôé óå êÜðïéåò ðåñéðôþóåéò, ôá åêôåëÝóéìá ôïõ Linux Ý÷ïõí êáëýôåñç áðüäïóç óôï &os; áðü üôé óôï Linux.</para> <para>ÕðÜñ÷ïõí ùóôüóï êÜðïéá óõãêåêñéìÝíá ãéá ôï Linux óôïé÷åßá ôïõ ëåéôïõñãéêïý ðïõ äåí õðïóôçñßæïíôáé óôï &os;. Ôá åêôåëÝóéìá ôïõ Linux äåí èá äïõëÝøïõí óôï &os; áí ÷ñçóéìïðïéïýí ðïëëÝò åîåéäéêåõìÝíåò êëÞóåéò &i386;, üðùò ãéá ðáñÜäåéãìá ôçí åíåñãïðïßçóç ôçò åéêïíéêÞò êáôÜóôáóçò 8086.</para> <para>Áöïý äéáâÜóåôå áõôü ôï êåöÜëáéï, èá îÝñåôå:</para> <itemizedlist> <listitem> <para>Ðùò íá åíåñãïðïéÞóåôå ôçí óõìâáôüôçôá åêôåëÝóéìùí ìå ôï Linux óôï óýóôçìá óáò.</para> </listitem> <listitem> <para>Ðùò íá åãêáôáóôÞóåôå ðñüóèåôåò êïéíü÷ñçóôåò âéâëéïèÞêåò ôïõ Linux.</para> </listitem> <listitem> <para>Ðùò íá åãêáôáóôÞóåôå åöáñìïãÝò ôïõ Linux óôï &os;.</para> </listitem> <listitem> <para>Ôéò ëåðôïìÝñåéåò ôçò õëïðïßçóçò ôçò óõìâáôüôçôáò ìå ôï Linux óôï &os;.</para> </listitem> </itemizedlist> <para>Ðñéí äéáâÜóåôå áõôü ôï êåöÜëáéï, èá ðñÝðåé:</para> <itemizedlist> <listitem> <para>Íá ãíùñßæåôå ðùò èá åãêáôáóôÞóåôå ðñüóèåôï ëïãéóìéêü ôñßôïõ êáôáóêåõáóôÞ (<xref linkend="ports">).</para> </listitem> </itemizedlist> </sect1> <sect1 id="linuxemu-lbc-install"> <title>ÅãêáôÜóôáóç</title> <indexterm><primary>KLD (kernel loadable object)</primary></indexterm> <para>Ç óõìâáôüôçôá ìå åêôåëÝóéìá ôïõ Linux äåí åßíáé åíåñãÞ åî' áñ÷Þò. Ï åõêïëüôåñïò ôñüðïò ãéá íá åíåñãïðïéÞóåôå áõôÞ ôç ëåéôïõñãßá åßíáé íá öïñôþóåôå ôï KLD (Üñèñùìá) <literal>linux</literal> (<quote>Kernel LoaDable object</quote>). Ìðïñåßôå íá öïñôþóåôå áõôü ôï Üñèñùìá óôïí ðõñÞíá äßíïíôáò ôç ðáñáêÜôù åíôïëÞ ùò <username>root</username>:</para> <screen>&prompt.root; <userinput>kldload linux</userinput></screen> <para>Áí èÝëåôå íá Ý÷åôå ðÜíôá åíåñãïðïéçìÝíç ôç óõìâáôüôçôá ìå Linux, ôüôå èá ÷ñåéáóôåß íá ðñïóèÝóåôå ôç ðáñáêÜôù ãñáììÞ óôï <filename>/etc/rc.conf</filename>:</para> <programlisting>linux_enable="YES"</programlisting> <para>Ç åíôïëÞ &man.kldstat.8; ìðïñåß íá ÷ñçóéìïðïéçèåß ãéá íá åëåã÷èåß áí ôï KLD åßíáé öïñôùìÝíï:</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>COMPAT_LINUX</secondary> </indexterm> <para>Áí ãéá êÜðïéï ëüãï äåí èÝëåôå Þ äå ìðïñåßôå íá öïñôþóåôå ôï KLD, ôüôå ìðïñåßôå íá óõíäÝóåôå óôáôéêÜ ôçí õðïóôÞñéîç åêôåëÝóéìùí ôïõ Linux óôïí ðõñÞíá ìå ôï íá ðñïóèÝóåôå ôçí åðéëïãÞ <literal>options COMPAT_LINUX</literal> óôï áñ÷åßùí ñõèìßóåùí ôïõ ðõñÞíá. Óôç óõíÝ÷åéá ìðïñåßôå íá åãêáôáóôÞóåôå ôïí íÝï ðõñÞíá üðùò ðåñéãñÜöåôáé óôï <xref linkend="kernelconfig">.</para> <sect2> <title>ÅãêáôÜóôáóç ôùí Linux Runtime Libraries</title> <indexterm> <primary>Linux</primary> <secondary>åãêáôÜóôáóç âéâëéïèçêþí Linux</secondary> </indexterm> <para>Áõôü ìðïñåß íá ãßíåé ìå äýï ôñüðïõò. Åßôå ìå ôç ÷ñÞóç ôïõ <link linkend="linuxemu-libs-port">linux_base</link> port, Þ ìå <link linkend="linuxemu-libs-manually">÷åéñïêßíçôç</link> åãêáôÜóôáóç ôïõò.</para> <sect3 id="linuxemu-libs-port"> <title>ÅãêáôÜóôáóç ìÝóù ôïõ linux_base Port</title> <indexterm><primary>Ports Collection</primary></indexterm> <para>Áõôüò åßíáé êáôÜ ãåíéêÞ ïìïëïãßá ï åõêïëüôåñïò ôñüðïò ãéá ôçí åãêáôÜóôáóç ôùí runtime libraries. Åßíáé ç ßäéá äéáäéêáóßá åãêáôÜóôáóçò ðïõ áêïëïõèåßôáé êáé ãéá ïðïéïäÞðïôå Üëëï port áðü ôç <ulink type="html" url="file://localhost/usr/ports/">ÓõëëïãÞ ôùí Ports</ulink>. ÁðëÜ êÜíôå ôï ðáñáêÜôù:</para> <screen>&prompt.root; <userinput>cd /usr/ports/emulators/linux_base-fc4</userinput> &prompt.root; <userinput>make install distclean</userinput></screen> <para>Èá ðñÝðåé ôþñá íá Ý÷åôå êáíïíéêÞ óõìâáôüôçôá ìå åêôåëÝóéìá ôïõ Linux. ÌåñéêÜ ðñïãñÜììáôá ðáñáðïíéïýíôáé üôé ïé âéâëéïèÞêåò óõóôÞìáôïò (system libraries) äåí åßíáé óôç ôåëåõôáßá ôïõò Ýêäïóç. ÃåíéêÜ üìùò, áõôü äåí áðïôåëåß êáíÝíá ðñüâëçìá.</para> <note><para>Ìðïñïýí íá õðÜñ÷ïõí ðïëëáðëÝò åêäüóåéò ôïõ <filename role="package">emulators/linux_base</filename>, ðïõ íá áíôéóôïé÷ïýí óôéò äéáöïñåôéêÝò åêäüóåéò ôùí äéáíïìþí Linux. Èá ðñÝðåé íá êÜíåôå åãêáôÜóôáóç ôùí ports ðïõ ðñïáðáéôïýíôáé áðü ôéò åöáñìïãÝò Linux ôéò ïðïßåò èÝëåôå íá åãêáôáóôÞóåôå.</para></note> </sect3> <sect3 id="linuxemu-libs-manually"> <title>×åéñïêßíçôç åãêáôÜóôáóç ôùí Libraries</title> <para>Áí äåí Ý÷åôå åãêáôáóôÞóåé ôçí óõëëïãÞ ôùí <quote>ports</quote>, ìðïñåßôå íá åãêáôáóôÞóåôå ôéò âéâëéïèÞêåò ÷åéñïêßíçôá. Èá ÷ñåéáóôåßôå ôá Linux shared libraries ôá ïðïßá áðáéôåß ôï ðñüãñáììá. Åðßóçò, èá ÷ñåéáóôåß íá äçìéïõñãÞóåôå êáé Ýíáí êáôÜëïãï <quote>shadow root</quote>, <filename>/compat/linux</filename>, ãéá ôéò âéâëéïèÞêåò Linux ðïõ èá õðÜñ÷ïõí óôï &os;. ÏðïéáäÞðïôå êïéíÝò âéâëéïèÞêåò (shared libraries) ïé ïðïßåò ÷ñçóéìïðïéïýíôáé áðü åöáñìïãÝò Linux êáé åêôåëïýíôáé óôï &os; èá êïéôÜîïõí ðñþôá óå áõôüí ôïí êáôÜëïãï. ÅðïìÝíùò, áí ìéá åöáñìïãÞ Linux öïñôþóåé ãéá ðáñÜäåéãìá ôï <filename>/lib/libc.so</filename>, ôï &os; èá ðñïóðáèÞóåé íá öïñôþóåé ðñþôá ôï <filename>/compat/linux/lib/libc.so</filename>, êáé áí áõôü äåí õðÜñ÷åé, ôüôå èá ðñïóðáèÞóåé íá öïñôþóåé ôï <filename>/lib/libc.so</filename>. Ôá shared libraries èá ðñÝðåé íá åãêáôáóôáèïýí óôï shadow tree <filename>/compat/linux/lib</filename> áíôß ãéá ôéò ôïðïèåóßåò ðïõ áíáöÝñåé ôï <command>ld.so</command> óôï Linux.</para> <para>ÃåíéêÜ, ôïõëÜ÷éóôïí óôéò ðñþôåò óáò åãêáôáóôÜóåéò åöáñìïãþí Linux, èá ÷ñåéáóôåß íá øÜîåôå ãéá ôéò êïéíÝò âéâëéïèÞêåò áðü ôá áíôßóôïé÷á åêôåëÝóéìá. ÌåôÜ áðü êÜðïéï äéÜóôçìá èá Ý÷åôå Ýíá éêáíïðïéçôéêü áñéèìü Linux shared libraries óôï óýóôçìÜ óáò êáé ðëÝïí äå èá ÷ñåéÜæåôáé åðéðëÝïí åñãáóßá ðÝñá áðü ôçí åãêáôÜóôáóç ôçò åöáñìïãÞò.</para> </sect3> <sect3> <title>ÅãêáôÜóôáóç Ðñüóèåôùí Shared Libraries</title> <indexterm><primary>shared libraries</primary></indexterm> <para>Êáé ôé ãßíåôáé óôç ðåñßðôùóç ðïõ Ý÷åôå åãêáôáóôÞóåé ôï <filename>linux_base</filename> port êáé ïé åöáñìïãÝò óáò áêüìç ðáñáðïíéïýíôáé ãéá shared libraries ðïõ ëåßðïõí; Ðþò ìðïñåßôå íá îÝñåôå ðïéá shared libraries ÷ñåéÜæåôáé êÜðïéá åöáñìïãÞ, êáé ðïõ ìðïñåßôå íá ôá âñåßôå; ÂáóéêÜ, õðÜñ÷ïõí 2 åðéëïãÝò (ãéá íá áêïëïõèÞóåôå ôéò ðáñáêÜôù ïäçãßåò èá ðñÝðåé íá åßóôå <username>root</username> óôï óýóôçìÜ óáò).</para> <para>Áí Ý÷åôå ðñüóâáóç óå êÜðïéï ìç÷Üíçìá Linux, ñßîôå ìéá ìáôéÜ óôá shared libraries ðïõ ÷ñåéÜæåôáé ìéá åöáñìïãÞ, êáé áíôéãñÜøôå ôá óôï &os;. Äåßôå ôï ðáñáêÜôù ðáñÜäåéãìá:</para> <informalexample> <para>Áò õðïèÝóïõìå üôé êáôåâÜóáôå ìÝóù FTP ôï åêôåëÝóéìï ôïõ <application>Doom</application> ãéá ôï Linux, êáé ôï âÜëáôå óôï Linux óýóôçìá óôï ïðïßï Ý÷åôå ðñüóâáóç. Ìðïñåßôå óôç óõíÝ÷åéá íá åëÝãîåôå ðïéá shared libraries ÷ñåéÜæåôáé ç åöáñìïãÞ ìå ôçí åíôïëÞ <command>ldd linuxdoom</command>, üðùò:</para> <screen>&prompt.user; <userinput>ldd linuxdoom</userinput> libXt.so.3 (DLL Jump 3.1) => /usr/X11/lib/libXt.so.3.1.0 libX11.so.3 (DLL Jump 3.1) => /usr/X11/lib/libX11.so.3.1.0 libc.so.4 (DLL Jump 4.5pl26) => /lib/libc.so.4.6.29</screen> <indexterm><primary>symbolic links</primary></indexterm> <para>Èá ÷ñåéáóôåß íá ðÜñåôå üëá ôá áñ÷åßá áðü ôç ôåëåõôáßá óôÞëç, êáé íá ôá áíôéãñÜøåôå óôïí êáôÜëïãï <filename>/compat/linux</filename>, êáé íá äçìéïõñãÞóåôå ðñïò áõôÜ ôïõò áíôßóôïé÷ïõò óõìâïëéêïýò äåóìïýò (symbolic links) ìå ôá ïíüìáôá ôçò ðñþôçò óôÞëçò. Áõôü óçìáßíåé üôé ðñáêôéêÜ, èá Ý÷åôå áõôÜ ôá áñ÷åßá óôï óýóôçìá óáò:</para> <screen>/compat/linux/usr/X11/lib/libXt.so.3.1.0 /compat/linux/usr/X11/lib/libXt.so.3 -> libXt.so.3.1.0 /compat/linux/usr/X11/lib/libX11.so.3.1.0 /compat/linux/usr/X11/lib/libX11.so.3 -> libX11.so.3.1.0 /compat/linux/lib/libc.so.4.6.29 /compat/linux/lib/libc.so.4 -> libc.so.4.6.29</screen> <blockquote> <note> <para>Óçìåéþóôå üôé áí Ý÷åôå Þäç êÜðïéï Linux shared library ðïõ ï áñéèìüò Ýêäïóçò åßíáé ï ßäéïò ìå áõôüí ôçò ðñþôçò óôÞëçò ôïõ <command>ldd</command>, äå èá ÷ñåéáóôåß íá áíôéãñÜøåôå ôï áñ÷åßï üðùò áõôü ïíïìÜæåôáé óôç ôåëåõôáßá óôÞëç, ôá õðÜñ÷ïíôá áñ÷åßá èá ðñÝðåé íá êÜíïõí ôç äïõëåéÜ ôïõò. Óáò óõìâïõëåýïõìå üìùò íá áíôéãñÜøåôå ôï shared library áí åßíáé êÜðïéá íåüôåñç Ýêäïóç. Ìðïñåßôå íá äéáãñÜøåôå ôá ðáëéÜ áñ÷åßá, áñêåß üìùò íá áíáíåþóåôå ôïõò óõìâïëéêïýò äåóìïýò þóôå íá ïäçãïýí óôá íÝá áñ÷åßá. ÅðïìÝíùò, áí Ý÷åôå ôéò ðáñáêÜôù âéâëéïèÞêåò óôï óýóôçìÜ óáò:</para> <screen>/compat/linux/lib/libc.so.4.6.27 /compat/linux/lib/libc.so.4 -> libc.so.4.6.27</screen> <para>êáé âñåßôå ìéá åöáñìïãÞ ç ïðïßá æçôÜåé ìéá íåüôåñç Ýêäïóç ìÝóù ôïõ <command>ldd</command>: </para> <screen>libc.so.4 (DLL Jump 4.5pl26) -> libc.so.4.6.29</screen> <para>Áí ç äéáöïñÜ ôçò Ýêäïóçò óôï ôåëåõôáßá øçößï åßíáé ìüíï ìßáò Þ äýï åêäüóåùí, ôüôå ìçí óáò áðáó÷ïëåß ç áíôéãñáöÞ ôïõ <filename>/lib/libc.so.4.6.29</filename>, ãéáôß ôï ðñüãñáììá èá ðñÝðåé íá ôñÝ÷åé êáíïíéêÜ êáé ìå ôç ëßãï ðáëáéüôåñç Ýêäïóç. Ðáñ' üëá áõôÜ, áí èÝëåôå, ìðïñåßôå íá áíôéêáôáóôÞóåôå ôï <filename>libc.so</filename> êáé Ýôóé èá Ý÷åôå ôï ðáñáêÜôù: </para> <screen>/compat/linux/lib/libc.so.4.6.29 /compat/linux/lib/libc.so.4 -> libc.so.4.6.29</screen> </note> </blockquote> <blockquote> <note> <para>Ï ìç÷áíéóìüò ôùí óõìâïëéêþí óõíäÝóìùí ÷ñåéÜæåôáé <emphasis>ìüíï</emphasis> ãéá ôéò åöáñìïãÝò ôïõ Linux. Ï runtime linker ôïõ &os; êïéôÜåé ìüíïò ôïõ ãéá ôéò ðéï ðñüóöáôåò åêäüóåéò ôùí âéâëéïèçêþí êáé Ýôóé äå ÷ñåéÜæåôáé íá óáò áðáó÷ïëåß. </para> </note> </blockquote> </informalexample> </sect3> </sect2> <sect2> <title>ÅãêáôÜóôáóç ôùí Linux ELF Binaries</title> <indexterm> <primary>Linux</primary> <secondary>ELF binaries</secondary> </indexterm> <para>Ôá ELF binaries ÷ñåéÜæïíôáé ìåñéêÝò öïñÝò Ýíá áêüìá âÞìá, ôï <quote>branding</quote>. Áí ðñïóðáèÞóåôå íá ôñÝîåôå Ýíá åêôåëÝóéìï ELF ÷ùñßò branding, ôüôå èá óáò åìöáíéóôåß ôï ðáñáêÜôù óöÜëìá:</para> <screen>&prompt.user; <userinput>./my-linux-elf-binary</userinput> ELF binary type not known Abort</screen> <para>Ãéá íá âïçèÞóåôå ôïí ðõñÞíá ôïõ &os; íá îå÷ùñßóåé Ýíá ELF ôïõ &os; áðü Ýíá ôïõ Linux, ÷ñçóéìïðïéÞóåôå ôçí åíôïëÞ &man.brandelf.1;. </para> <screen>&prompt.user; <userinput>brandelf -t Linux my-linux-elf-binary</userinput></screen> <indexterm><primary>GNU toolchain</primary></indexterm> <para>To GNU toolchain, ïìÜäá ðñüãñáììá GNU, ôïðïèåôåß ðëÝïí áõôüìáôá ôá êáôÜëëçëá ÷áñáêôçñéóôéêÜ óôá åêôåëÝóéìá ELF, åðïìÝíùò ôï ðáñáðÜíù âÞìá èá ÷ñåéÜæåôáé üëï êáé ëéãüôåñï óôï ìÝëëïí. </para> </sect2> <sect2> <title>Ñýèìéóç ôïõ Hostname Resolver</title> <para>Áí ôï DNS äå äïõëåýåé Þ áí óáò åìöáíßæåôáé ôï ðáñáêÜôù óöÜëìá:</para> <screen>resolv+: "bind" is an invalid keyword resolv+: "hosts" is an invalid keyword</screen> <para>Èá ÷ñåéáóôåß íá ñõèìßóåôå ôï <filename>/compat/linux/etc/host.conf</filename> þóôå íá ðåñéÝ÷åé: </para> <programlisting>order hosts, bind multi on</programlisting> <para>Ç óåéñÜ åäþ äçëþíåé üôé áñ÷éêÜ åëÝã÷åôáé ôï áñ÷åßï <filename>/etc/hosts</filename> êáé óôç óõíÝ÷åéá ï DNS server. ¼ôáí ôï <filename>/compat/linux/etc/host.conf</filename> äåí åßíáé äéáèÝóéìï, ïé åöáñìïãÝò Linux ÷ñçóéìïðïéïýí ôï <filename>/etc/host.conf</filename> ôïõ &os; êáé ðáñáðïíéïýíôáé üôé ç óýíôáîç ôïõ áñ÷åßïõ äåí åßíáé óùóôÞ. Èá ðñÝðåé íá áöáéñÝóåôå ôçí áíáöïñÜ óôï <literal>bind</literal> áí äåí Ý÷åôå ñõèìßóåé Ýíá name server ìÝóù ôïõ <filename>/etc/resolv.conf</filename>.</para> </sect2> </sect1> <sect1 id="linuxemu-mathematica"> <sect1info> <authorgroup> <author> <firstname>Boris</firstname> <surname>Hollas</surname> <contrib>Áíáíåþèçêå ãéá ôï Mathematica 5.X áðü ôïí </contrib> </author> </authorgroup> </sect1info> <title>Åãêáèéóôþíôáò ôï &mathematica;</title> <indexterm> <primary>applications</primary> <secondary><application>Mathematica</application></secondary> </indexterm> <para>Ôï êåßìåíï áõôü ðåñéãñÜöåé ôç äéáäéêáóßá åãêáôÜóôáóçò ôçò Ýêäïóçò Linux ôïõ <application>&mathematica; 5.X</application> óå Ýíá óýóôçìá &os;.</para> <para>Ìðïñåßôå íá áãïñÜóåôå ôçí êáíïíéêÞ Þ ìáèçôéêÞ Ýêäïóç ôïõ <application>&mathematica;</application> ãéá Linux, áðåõèåßáò áðü ôç Wolfram óôï <ulink url="http://www.wolfram.com/"></ulink>.</para> <sect2> <title>Ôï Ðñüãñáììá ÅãêáôÜóôáóçò ôïõ &mathematica;</title> <para>Áñ÷éêÜ, èá ðñÝðåé íá ðåßôå óôï &os; üôé ôá åêôåëÝóéìá ãéá Linux ôïõ <application>&mathematica;</application> êÜíïõí ÷ñÞóç ôïõ Linux ABI. Ï åõêïëüôåñïò ôñüðïò ãéá íá ôï êÜíåôå áõôü åßíáé íá ïñßóåôå ôïí ôýðï ôïõ ELF ùò Linux óå üëåò ôéò åöáñìïãÝò ðïõ äåí åßíáé Þäç branded, êÜíïíôáò ÷ñÞóç ôçò åíôïëÞò:</para> <screen>&prompt.root; <userinput>sysctl kern.fallback_elf_brand=3</userinput></screen> <para>Áõôü èá êÜíåé ôï &os; íá õðïèÝóåé üôé ôá åêôåëÝóéìá ELF ðïõ äåí åßíáé branded, êÜíïõí ÷ñÞóç ôïõ Linux ABI êáé Ýôóé èá ìðïñåßôå íá ôñÝîåôå ôï ðñüãñáììá ôçò åãêáôÜóôáóçò áðåõèåßáò áðü ôï CDROM.</para> <para>Ôþñá, áíôéãñÜøôå ôï áñ÷åßï <filename>MathInstaller</filename> óôïí óêëçñü óáò äßóêï:</para> <screen>&prompt.root; <userinput>mount /cdrom</userinput> &prompt.root; <userinput>cp /cdrom/Unix/Installers/Linux/MathInstaller /localdir/</userinput></screen> <para>Áíïßîôå ôï áñ÷åßï êáé áíôéêáôáóôÞóôå ôï <literal>/bin/sh</literal> óôç ðñþôç ãñáììÞ ìå ôï <literal>/compat/linux/bin/sh</literal>. Áõôü èá óéãïõñÝøåé üôé ôï ðñüãñáììá åãêáôÜóôáóçò èá ôñÝ÷åé ìå ôçí Ýêäïóç &man.sh.1; ãéá Linux. Óôç óõíÝ÷åéá, áíôéêáôáóôÞóôå üëåò ôéò åããñáöÝò <literal>Linux)</literal> ìå <literal>&os;)</literal> ÷ñçóéìïðïéþíôáò Ýíáí óõíôÜêôç êåéìÝíïõ Þ ìå ôï ðáñáêÜôù script óôçí åðüìåíç åíüôçôá. Áõôü èá ðåé óôï ðñüãñáììá åãêáôÜóôáóçò ôïõ <application>&mathematica;</application>, ôï ïðïßï ôñÝ÷åé ôçí åíôïëÞ <command>uname -s</command> ãéá íá äéáðéóôþóåé ôï ëåéôïõñãéêü óýóôçìá, íá áíôéìåôùðßóåé ôï &os; óáí Ýíá ëåéôïõñãéêü ðáñåìöåñÝò ìå ôï Linux. Ç åêôÝëåóç ôïõ <command>MathInstaller</command> èá îåêéíÞóåé ôþñá ôçí åãêáôÜóôáóç ôïõ <application>&mathematica;</application>.</para> </sect2> <sect2> <title>Ôñïðïðïéþíôáò ôá ÅêôåëÝóéìá ôïõ &mathematica;</title> <para>Ôá shell scripts ôá ïðïßá äçìéïõñãåß ôï <application>&mathematica;</application> êáôÜ ôç äéáäéêáóßá ôçò åãêáôÜóôáóçò ðñÝðåé íá ôñïðïðïéçèïýí ðñéí ÷ñçóéìïðïéçèïýí. Áí åðéëÝîåôå ôï <filename class="directory">/usr/local/bin</filename> ùò ôïí êáôÜëïãï ãéá ôá åêôåëÝóéìá ôïõ <application>&mathematica;</application>, èá âñåßôå åêåß óõìâïëéêïýò äåóìïýò (symlinks) ðñïò ôá áñ÷åßá <filename>math</filename>, <filename>mathematica</filename>, <filename>Mathematica</filename>, êáé <filename>MathKernel</filename>. Óå êÜèå ðåñßðôùóç áðü ôéò ðáñáðÜíù, áíôéêáôáóôÞóôå ôéò åããñáöÝò <literal>Linux)</literal> ìå <literal>&os;)</literal> ìå êÜðïéïí óõíôÜêôç êåéìÝíïõ Þ ìå ôï ðáñáêÜôù shell script:</para> <programlisting>#!/bin/sh cd /usr/local/bin for i in math mathematica Mathematica MathKernel do sed 's/Linux)/&os;)/g' $i > $i.tmp sed 's/\/bin\/sh/\/compat\/linux\/bin\/sh/g' $i.tmp > $i rm $i.tmp chmod a+x $i done</programlisting> </sect2> <sect2> <title>Áðïêôþíôáò Êùäéêü ãéá ôï &mathematica;</title> <indexterm> <primary>Ethernet</primary> <secondary>MAC address</secondary> </indexterm> <para>¼ôáí åêêéíÞóåôå ôï <application>&mathematica;</application> ãéá ðñþôç öïñÜ, èá åñùôçèåßôå ãéá Ýíáí êùäéêü. Áí äåí Ý÷åôå êÜðïéïí êùäéêü óå áõôü ôï óôÜäéï, ôñÝîôå ôï ðñüãñáììá <command>mathinfo</command> ðïõ âñßóêåôáé óôïí êáôÜëïãï åãêáôÜóôáóçò ãéá íá óáò äïèåß ôï <quote>machine ID</quote>. Ôï "machine ID" åßíáé åî' ïëïêëÞñïõ âáóéóìÝíï óôç äéåýèõíóç MAC ôçò êÜñôáò äéêôýïõ ðïõ Ý÷åôå. Áõôü óçìáßíåé üôé äåí ìðïñåßôå íá ôñÝîåôå ôï <application>&mathematica;</application> óå Üëëïõò õðïëïãéóôÝò. </para> <para>¼ôáí åããñáöåßôå óôç Wolfram, ìå e-mail, ôçëÝöùíï Þ fax, èá ÷ñåéáóôåß íá äþóåôå ôï <quote>machine ID</quote> êáé èá óáò áðáíôÞóïõí ìå Ýíáí áíôßóôïé÷ï êùäéêü ðïõ èá áðïôåëåßôáé áðü ìéá óåéñÜ áñéèìþí. </para> </sect2> <sect2> <title>ÔñÝ÷ïíôáò ôï &mathematica; Frontend ìÝóù Äéêôýïõ</title> <para>Ôï <application>&mathematica;</application> êÜíåé ÷ñÞóç êÜðïéùí åéäéêþí ãñáììáôïóåéñþí ãéá íá åìöáíßóåé ÷áñáêôÞñåò ïé ïðïßïé äåí õðÜñ÷ïõí óôá óõíçèéóìÝíá óåô (ïëïêëçñþìáôá, áèñïßóìáôá, ÅëëçíéêÜ ãñÜììáôá, êëð). To ðñùôüêïëëï X áðáéôåß áõôÝò ïé ãñáììáôïóåéñÝò íá õðÜñ÷ïõí óôï <emphasis>ôïðéêü</emphasis> óýóôçìá. Áõôü óçìáßíåé üôé èá ÷ñåéáóôåß íá áíôéãñÜøåôå ôéò ãñáììáôïóåéñÝò áõôÝò áðü ôï CDROM Þ áðü áðü êÜðïéïí Üëëïí õðïëïãéóôÞ ðïõ Ý÷åé ôï <application>&mathematica;</application>. ÓõíÞèùò áõôÝò ïé ãñáììáôïóåéñÝò ìðïñïýí íá âñåèïýí ìÝóá óôï êáôÜëïãï <filename>/cdrom/Unix/Files/SystemFiles/Fonts</filename> ôïõ CDROM, Þ óôïí êáôÜëïãï <filename>/usr/local/mathematica/SystemFiles/Fonts</filename> óôïí ôïðéêü óêëçñü äßóêï. Ïé ðñáãìáôéêÝò ãñáììáôïóåéñÝò âñßóêïíôáé óå õðïêáôáëüãïõò üðùò <filename>Type1</filename> êáé <filename>X</filename>. ÕðÜñ÷ïõí áñêåôïß ôñüðïé íá ôéò ÷ñçóéìïðïéÞóåôå, ïé ïðïßïé ðåñéãñÜöïíôáé óôç óõíÝ÷åéá.</para> <para>Ï ðñþôïò ôñüðïò åßíáé íá ôéò áíôéãñÜøåôå ìÝóá óå Ýíáí õðÜñ÷ïíôá êáôÜëïãï óôï <filename>/usr/X11R6/lib/X11/fonts</filename>. Èá ÷ñåéáóôåß üìùò íá ôñïðïðïéÞóåôå ôï áñ÷åßï <filename>fonts.dir</filename>, þóôå íá ðñïóèÝóåôå ôá ïíüìáôá ôùí ãñáììáôïóåéñþí ìÝóá óå áõôü, êáé íá áëëÜîåôå ôïí áñéèìü ôùí ãñáììáôïóåéñþí óôç ðñþôç ãñáììÞ. ÅíáëëáêôéêÜ, åßíáé óõíÞèùò áñêåôü íá åêôåëÝóåôå áðëþò ôçí åíôïëÞ &man.mkfontdir.1; ìÝóá óôïí êáôÜëïãï ðïõ Ý÷åôå áíôéãñÜøåé ôéò ãñáììáôïóåéñÝò. </para> <para>Ï äåýôåñïò ôñüðïò åßíáé íá áíôéãñÜøåôå ôïõò ðáñáðÜíù êáôáëüãïõò ìÝóá óôï <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>Ôþñá ðñïóèÝóôå ôïõò íÝïõò êáôáëüãïõò ìå ôéò ãñáììáôïóåéñÝò óôï font path:</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>Áí ÷ñçóéìïðïéåßôå ôï <application>&xorg;</application>, ìðïñåßôå íá öïñôþíåôå ôéò ãñáììáôïóåéñÝò áõôÝò áõôüìáôá, ðñïóèÝôïíôáò ôïõò íÝïõò êáôáëüãïõò óôï áñ÷åßï <filename>xorg.conf</filename>. </para> <note><para>Ãéá ôïí åîõðçñåôçôÞ <application>&xfree86;</application>, ôï áñ÷åßï ñõèìßóåùí åßíáé ôï <filename>XF86Config</filename>.</para> </note> <indexterm><primary>fonts</primary></indexterm> <para>Áí <emphasis>äåí</emphasis> Ý÷åôå Þäç Ýíáí êáôÜëïãï ìå ôï üíïìá <filename>/usr/X11R6/lib/X11/fonts/Type1</filename>, ìðïñåßôå íá áëëÜîåôå ôï üíïìá ôïõ <filename>MathType1</filename> áðü ôï ðáñáðÜíù ðáñÜäåéãìá óå <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>ÓõíåéóöïñÜ ôïõ </contrib> </author> </authorgroup> <authorgroup> <author> <firstname>Robert</firstname> <surname>Getschmann</surname> <!-- <address><email>rob@getschmann.org</email></address> --> <contrib>Åõ÷áñéóôßåò óôïí </contrib> </author> </authorgroup> </sect1info> <title>Åãêáèéóôþíôáò ôï &maple;</title> <indexterm> <primary>applications</primary> <secondary><application>Maple</application></secondary> </indexterm> <para>Ôï <application>&maple;</application> åßíáé ìßá åìðïñéêÞ åöáñìïãÞ ìáèçìáôéêþí ðáñüìïéá ìå ôï <application>&mathematica;</application>. Èá ðñÝðåé íá áãïñÜóåôå ôï ëïãéóìéêü áðü ôï <ulink url="http://www.maplesoft.com/"></ulink> êáé óôç óõíÝ÷åéá íá êÜíåôå áßôçóç ãéá ìéá Üäåéá ÷ñÞóçò. Ãéá íá åãêáôáóôÞóåôå ôï ëïãéóìéêü óôï &os;, áêïëïõèÞóôå ôá ðáñáêÜôù áðëÜ âÞìáôá. </para> <procedure> <step> <para>ÅêôåëÝóôå ôï <filename>INSTALL</filename> shell script áðü ôï ìÝóï åãêáôÜóôáóçò ðïõ Ý÷åôå. ÅðéëÝîôå <quote>RedHat</quote> üôáí åñùôçèåßôå áðü ôï ðñüãñáììá åãêáôÜóôáóçò. Ï ôõðéêüò êáôÜëïãïò åßíáé ï <filename class="directory">/usr/local/maple</filename>. </para> </step> <step> <para>Áí äåí Ý÷åôå áãïñÜóåé áêüìç êÜðïéá Üäåéá ãéá ôï <application>&maple;</application>, áãïñÜóôå ìßá áðü ôï Maple Waterloo Software (<ulink url="http://register.maplesoft.com/"></ulink>) êáé áíôéãñÜøôå ôï áñ÷åßï ðïõ èá óáò äïèåß óôï <filename>/usr/local/maple/license/license.dat</filename>. </para> </step> <step> <para>ÅãêáôáóôÞóåôå ôï <application>FLEXlm</application> license manager åêôåëþíôáò ôï <filename>INSTALL_LIC</filename> shell script ôï ïðïßá ðáñÝ÷åôáé ìáæß ìå ôï <application>&maple;</application>. Äþóôå ôï âáóéêü üíïìá ôïõ õðïëïãéóôÞ óáò ôï ïðïßï áðáéôåßôáé áðü ôïí åîõðçñåôçôÞ äéá÷åßñéóçò ôùí áäåéþí (license server).</para> </step> <step> <para>×ñçóéìïðïéÞóôå ôï ðáñáêÜôù patch óôï áñ÷åßï <filename>/usr/local/maple/bin/maple.system.type</filename>: </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>Óçìåéþóôå üôé ìåôÜ ôï <literal>"FreeBSD"|\</literal> äåí ðñÝðåé íá åìöáíßæåôáé Üëëï êåíü äéÜóôçìá.</para> <para>Ôï patch áõôü ïäçãåß ôï <application>&maple;</application> íá áíáãíùñßóåé ôï <quote>&os;</quote> óáí Ýíá óýóôçìá Linux. Ôï <filename>bin/maple</filename> shell script êáëåß ôï <filename>bin/maple.system.type</filename> shell script, ôï ïðïßï ìå ôç óåéñÜ ôïõ êáëåß ôçí åíôïëÞ <command>uname -a</command> ðñïêåéìÝíïõ íá åíôïðéóôåß ôï üíïìá ôïõ ëåéôïõñãéêïý óõóôÞìáôïò. Áíáëüãùò ìå ôï ðïéï ëåéôïõñãéêü âñåèåß, èá ÷ñçóéìïðïéçèïýí êáé ôá áíôßóôïé÷á åêôåëÝóéìá áñ÷åßá.</para> </step> <step> <para>ÅêêéíÞóôå ôïí license server.</para> <para>¸íáò âïëéêüò ôñüðïò ãéá íá åêêéíÞóåôå ôï<command>lmgrd</command> åßíáé ôï áêüëïõèï script ðïõ âñßóêåôáé óôï <filename>/usr/local/etc/rc.d/lmgrd.sh</filename>:</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>ÄïêéìÞ ôïõ <application>&maple;</application>:</para> <screen>&prompt.user; <userinput>cd /usr/local/maple/bin</userinput> &prompt.user; <userinput>./xmaple</userinput></screen> <para>Óå áõôü ôï óçìåßï èá ðñÝðåé íá åßíáé üëá Ýôïéìá êáé íá ìçí Ý÷åôå êáíÝíá ðñüâëçìá. Ìçí îå÷Üóåôå üìùò íá óôåßëåôå Ýíá e-mail óôç Maplesoft êáé íá ôïõò ðåßôå üôé èÝëåôå ìéá Ýêäïóç ðïõ íá õðïóôçñßæåôáé åðßóçìá óôï &os;.</para> </step> </procedure> <sect2> <title>ÓõíçèéóìÝíá ÐñïâëÞìáôá</title> <itemizedlist> <listitem> <para>ºóùò äõóêïëåõôåßôå ìå ôçí ëåéôïõñãßá ôïõ <application>FLEXlm</application> license manager. ÅðéðëÝïí ôåêìçñßùóç ìðïñåßôå íá âñåßôå óôï <ulink url="http://www.globetrotter.com/"></ulink>. </para></listitem> <listitem> <para>Ôï <command>lmgrd</command> åßíáé ãíùóôü üôé èÝëåé ôï áñ÷åßï ôçò Üäåéáò íá Ý÷åé óõãêåêñéìÝíç ìïñöÞ áëëéþò ç åêôÝëåóç ôïõ èá áðïôý÷åé. ¸íá óùóôü áñ÷åßï Üäåéáò ÷ñÞóçò ðñÝðåé åßíáé óå ãåíéêÝò ãñáììÝò üðùò ôï ðáñáêÜôù:</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>Ï óåéñéáêüò áñéèìüò êáé ôï êëåéäß öáßíïíôáé åäþ ìå 'X'. Ôï <hostid>chillig</hostid> åßíáé ôï üíïìá ôïõ óõóôÞìáôïò.</para> </note> <para>Ìðïñåßôå íá ôñïðïðïéÞóåôå ôï áñ÷åßï ôçò Üäåéáò ÷ñÞóçò, áñêåß íá ìçí áëëÜîåôå ôçí ãñáììÞ <quote>FEATURE</quote> (ç ïðïßá ðñïóôáôåýåôáé áðü ôï êëåéäß ôçò Üäåéáò).</para> </listitem> </itemizedlist> </sect2> </sect1> <sect1 id="linuxemu-matlab"> <sect1info> <authorgroup> <author> <firstname>Dan</firstname> <surname>Pelleg</surname> <contrib>ÓõíåéóöïñÜ ôïõ </contrib> </author> <!-- daniel+handbook@pelleg.org --> </authorgroup> </sect1info> <title>Åãêáèéóôþíôáò ôï &matlab;</title> <indexterm> <primary>applications</primary> <secondary><application>MATLAB</application></secondary> </indexterm> <para>Ôï êåßìåíï áõôü ðåñéãñÜöåé ôç äéáäéêáóßá åãêáôÜóôáóçò ôçò Linux Ýêäïóçò ôïõ <application>&matlab; 6.5</application> óå Ýíá óýóôçìá &os;. Äïõëåýåé áñêåôÜ êáëÜ, ìå åîáßñåóç ôï <application>&java.virtual.machine;</application> (äåßôå óôï <xref linkend="matlab-jre">).</para> <para>Ç Linux Ýêäïóç ôïõ <application>&matlab;</application> ìðïñåß íá áãïñáóôåß áðåõèåßáò áðü ôçí åôáéñåßá The MathWorks óôï <ulink url="http://www.mathworks.com"></ulink>. Óéãïõñåõôåßôå üôé ðÞñáôå êáé ôï áñ÷åßï ðïõ ðåñéÝ÷åé ôçí Üäåéá ÷ñÞóçò Þ ïäçãßåò ãéá ôï ðùò íá ôï äçìéïõñãÞóåôå. Ìéá êáé èá åðéêïéíùíÞóåôå ìå ôçí åôáéñåßá, ðåßôå ôïõò üôé èá èÝëáôå íá õðÜñ÷åé åðßóçò õðïóôÞñéîç ãéá ôï &os;. </para> <sect2> <title>ÅãêáôÜóôáóç ôïõ &matlab;</title> <para>Ãéá íá åãêáôáóôÞóåôå ôï <application>&matlab;</application>, êÜíôå ôá ðáñáêÜôù:</para> <procedure> <step> <para>ÅéóÜãåôå ôï CD êáé ðñïóáñôÞóôå ôï óôï óýóôçìá óáò. Óõíäåèåßôå ùò ÷ñÞóôçò <username>root</username>, üðùò óõíéóôÜ ôï script ôçò åãêáôÜóôáóçò. Ãéá íá îåêéíÞóåôå ôï script ôçò åãêáôÜóôáóçò äþóôå ôçí åíôïëÞ:</para> <screen>&prompt.root; <userinput>/compat/linux/bin/sh /cdrom/install</userinput></screen> <tip> <para>Ôï ðñüãñáììá ôçò åãêáôÜóôáóçò åßíáé óå ãñáöéêü ðåñéâÜëëïí. Áí ëáìâÜíåôå óöÜëìáôá ó÷åôéêÜ ìå ôçí ïèüíç, äþóôå ôçí åíôïëÞ: <command>setenv HOME ~<replaceable>USER</replaceable></command>, üðïõ <replaceable>USER</replaceable> åßíáé ï ÷ñÞóôçò áðü üðïõ äþóáôå ôçí åíôïëÞ &man.su.1;.</para> </tip> </step> <step> <para> ¼ôáí åñùôçèåßôå ãéá ôïí êáôÜëïãï ôïõ <application>&matlab;</application>, äþóôå: <userinput>/compat/linux/usr/local/matlab</userinput>.</para> <tip> <para>Ãéá åõêïëüôåñç äéáäéêáóßá åãêáôÜóôáóçò, ïñßóôå ôï ðáñáêÜôù: <command>set MATLAB=/compat/linux/usr/local/matlab</command> óôç ãñáììÞ åíôïëþí ôïõ êåëýöïõò óáò.</para> </tip> </step> <step> <para>ÔñïðïðïéÞóåôå ôï áñ÷åßï ôçò Üäåéáò (license file) óýìöùíá ìå ôéò ïäçãßåò ðïõ ëÜâáôå ìå ôçí Üäåéá ôïõ <application>&matlab;</application>.</para> <tip> <para>Ìðïñåßôå íá åôïéìÜóåôå åê ôùí ðñïôÝñùí ôï áñ÷åßï áõôü êáé íá ôï áíôéãñÜøåôå óôï <filename>$MATLAB/license.dat</filename>, ðñéí êáí óáò ðåé ôï ðñüãñáììá åãêáôÜóôáóçò íá ôï ôñïðïðïéÞóåôå.</para> </tip> </step> <step> <para>ÏëïêëÞñùóç ôçò ÅãêáôÜóôáóçò</para> </step> </procedure> <para>Óå áõôü ôï óçìåßï, ç åãêáôÜóôáóç ôïõ <application>&matlab;</application> Ý÷åé ïëïêëçñùèåß. Ôá åðüìåíá âÞìáôá ÷ñåéÜæïíôáé ãéá íá ìðïñÝóåôå íá ôï äïõëÝøåôå óùóôÜ ìå ôï &os;.</para> </sect2> <sect2> <title>Åêêßíçóç ôïõ License Manager</title> <procedure> <step> <para>Äçìéïõñãßá óõìâïëéêþí óõíäÝóìùí ãéá ôá scripts ôïõ license manager:</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>ÄçìéïõñãÞóôå ôï áñ÷åßï åêêßíçóçò <filename>/usr/local/etc/rc.d/flexlm.sh</filename>. Ôï ðáñÜäåéãìá ðáñáêÜôù åßíáé ìéá ôñïðïðïéçìÝíç Ýêäïóç ôïõ <filename>$MATLAB/etc/rc.lm.glnx86</filename>. Ïé áëëáãÝò åßíáé óôéò ôïðïèåóßåò ôùí áñ÷åßùí, êáé óôçí åêêßíçóç ôïõ license manager óôï ðåñéâÜëëïí åîïìïßùóçò Linux ôïõ &os; .</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> && echo 'MATLAB_lmgrd' fi ;; stop) if [ -f /usr/local/etc/lmdown_TMW ]; then /compat/linux/bin/sh /usr/local/etc/lmdown_TMW > /dev/null 2>&1 fi ;; *) echo "Usage: $0 {start|stop}" exit 1 ;; esac exit 0</programlisting> <important> <para>Ôï áñ÷åßï ðñÝðåé íá åßíáé åêôåëÝóéìï:</para> <screen>&prompt.root; <userinput>chmod +x /usr/local/etc/rc.d/flexlm.sh</userinput></screen> <para>ÐñÝðåé åðßóçò íá áíôéêáôáóôÞóåôå ôï ðáñáðÜíù <replaceable>username</replaceable> ìå Ýíá õðáñêôü üíïìá ÷ñÞóôç ôïõ óõóôÞìáôïò óáò (êáé íá ìçí åßíáé ï <username>root</username>).</para> </important> </step> <step> <para>ÅêêéíÞóôå ôïí license manager ìå ôçí åíôïëÞ:</para> <screen>&prompt.root; <userinput>/usr/local/etc/rc.d/flexlm.sh start</userinput></screen> </step> </procedure> </sect2> <sect2 id="matlab-jre"> <title>Óýíäåóç ìå ôï ÐåñéâÜëëïí ôïõ &java; Runtime Environment</title> <para>ÁëëÜîôå ôïí óýíäåóìï ôïõ<application>&java;</application> Runtime Environment (JRE) óå Ýíáí ï ïðïßïò èá äïõëåýåé óôï &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>ÄçìéïõñãÞóôå ôï Script Åêêßíçóçò ôïõ &matlab; </title> <procedure> <step> <para>ÔïðïèåôÞóôå ôï ðáñáêÜôù script óôï <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>Óôç óõíÝ÷åéá äþóôå ôçí åíôïëÞ <command>chmod +x /usr/local/bin/matlab</command>.</para> </step> </procedure> <tip> <para>ÁíÜëïãá ìå ôçí Ýêäïóç ôïõ <filename role="package">emulators/linux_base</filename>, ðïõ Ý÷åôå, ìðïñåß íá åìöáíéóôïýí ìåñéêÜ óöÜëìáôá üôáí ôñÝîåôå ôï script. Ãéá íá ôï áðïöýãåôå áõôü, ôñïðïðïéÞóôå ôï áñ÷åßï <filename>/compat/linux/usr/local/matlab/bin/matlab</filename>, êáé áëëÜîôå ôç ãñáììÞ ðïõ ëÝåé:</para> <programlisting>if [ `expr "$lscmd" : '.*->.*'` -ne 0 ]; then</programlisting> <para>(óôçí Ýêäïóç 13.0.1 âñßóêåôáé óôç ãñáììÞ 410) óå áõôÞ ôç ãñáììÞ:</para> <programlisting>if test -L $newbase; then</programlisting> </tip> </sect2> <sect2> <title>Äçìéïõñãßá Script Ôåñìáôéóìïý ôïõ &matlab; </title> <para>Ôá åðüìåíá âÞìáôá ÷ñåéÜæïíôáé ãéá íá ëýóåôå Ýíá ðñüâëçìá ðïõ õðÜñ÷åé ìå ôïí ôåñìáôéóìü ôïõ &matlab;.</para> <procedure> <step> <para>ÄçìéïõñãÞóôå ôï áñ÷åßï <filename>$MATLAB/toolbox/local/finish.m</filename>, êáé ìÝóá óå áõôü ðñïóèÝóôå ìüíï ôç ãñáììÞ:</para> <programlisting>! $MATLAB/bin/finish.sh</programlisting> <note> <para>To <literal>$MATLAB</literal> ãñÜøôå ôï áêñéâþò üðùò ôï âëÝðåôå.</para> </note> <tip> <para>Óôïí ßäéï êáôÜëïãï, èá âñåßôå ôá áñ÷åßá <filename>finishsav.m</filename> êáé <filename>finishdlg.m</filename>, ôá ïðïßá èá óáò äßíïõí ôç äõíáôüôçôá íá óþæåôå ôçí åñãáóßá óáò ðñéí êëåßóåôå ôï ðñüãñáììá. Áí ðñüêåéôáé íá ÷ñçóéìïðïéÞóåôå êÜðïéï áðü áõôÜ, ðñïóèÝóôå ôïõ ôçí ðáñáðÜíù ãñáììÞ áìÝóùò ìåôÜ ôçí åíôïëÞ <literal>save</literal> .</para></tip> </step> <step> <para>ÄçìéïõñãÞóôå ôï áñ÷åßï <filename>$MATLAB/bin/finish.sh</filename>, ôï ïðïßï èá ðåñéÝ÷åé ôá ðáñáêÜôù:</para> <programlisting>#!/usr/compat/linux/bin/sh (sleep 5; killall -1 matlab_helper) & exit 0</programlisting> </step> <step> <para>ÊÜíôå ôï áñ÷åßï åêôåëÝóéìï:</para> <screen>&prompt.root; <userinput>chmod +x $MATLAB/bin/finish.sh</userinput></screen> </step> </procedure> </sect2> <sect2 id="matlab-using"> <title>×ñçóéìïðïéþíôáò ôï &matlab;</title> <para>Óå áõôü ôï óçìåßï èá ðñÝðåé íá åßóôå Ýôïéìïé íá äþóåôå ôçí åíôïëÞ <command>matlab</command> êáé íá áñ÷ßóåôå íá ÷ñçóéìïðïéåßôå ôçí åöáñìïãÞ.</para> </sect2> </sect1> <sect1 id="linuxemu-oracle"> <sect1info> <authorgroup> <author> <firstname>Marcel</firstname> <surname>Moolenaar</surname> <contrib>ÓõíåéóöïñÜ ôïõ </contrib> </author> <!-- marcel@cup.hp.com --> </authorgroup> </sect1info> <title>ÅãêáôÜóôáóç ôçò &oracle;</title> <indexterm> <primary>applications</primary> <secondary><application>Oracle</application></secondary> </indexterm> <sect2> <title>ÅéóáãùãÞ</title> <para>Ôï êåßìåíï áõôü ðåñéãñÜöåé ôç äéáäéêáóßá åãêáôÜóôáóçò ôùí <application>&oracle; 8.0.5</application> êáé <application>&oracle; 8.0.5.1 Enterprise Edition</application> ãéá Linux óå Ýíá óýóôçìá &os;.</para> </sect2> <sect2> <title>ÅãêáôÜóôáóç ôïõ ÐåñéâÜëëïíôïò Linux</title> <para>Óéãïõñåõôåßôå üôé Ý÷åôå åãêáôáóôÞóåé ôá <filename role='package'>emulators/linux_base</filename> êáé <filename role='package'>devel/linux_devtools</filename> áðü ôç óõëëïãÞ ôùí Ports. Áí áíôéìåôùðßæåôå äõóêïëßåò ìå ôá ðáñáðÜíù, ßóùò ÷ñåéáóôåß íá ôá åãêáôáóôÞóåôå áðü ðáêÝôá Þ áðü ðáëéüôåñåò åêäüóåéò ôçò óõëëïãÞò ôùí Ports.</para> <para>Áí èÝëåôå íá ôñÝîåôå ôïí intelligent agent, èá ÷ñåéáóôåß íá åãêáôáóôÞóåôå êáé ôï ðáêÝôï Red Hat Tcl: <filename>tcl-8.0.3-20.i386.rpm</filename>. Ç åíôïëÞ ãéá ôçí åãêáôÜóôáóç ìÝóù ôïõ åðßóçìïõ <application>RPM</application> port (<filename role='package'>archivers/rpm</filename>) åßíáé:</para> <screen>&prompt.root; <userinput>rpm -i --ignoreos --root /compat/linux --dbpath /var/lib/rpm <replaceable>package</replaceable></userinput></screen> <para>Ç åãêáôÜóôáóç ôïõ <replaceable>package</replaceable> èá ðñÝðåé íá ãßíåé ïìáëÜ êáé ÷ùñßò ðñïâëÞìáôá.</para> </sect2> <sect2> <title>Ñõèìßæïíôáò ôï ÐåñéâÜëëïí ãéá ôçí &oracle; </title> <para>Ðñéí ôçí åãêáôÜóôáóç ôçò <application>&oracle;</application>, èá ðñÝðåé íá ñõèìßóåôå óùóôÜ ôï ðåñéâÜëëïí ôïõ óõóôÞìáôüò óáò. Ôï ðáñáêÜôù êåßìåíï ðåñéãñÜöåé ôé <emphasis>áêñéâþò</emphasis> ðñÝðåé íá êÜíåôå ãéá íá åêôåëÝóåôå ôçí <application>&oracle;</application> ãéá Linux óôï &os;, êáé äåí ðåñéãñÜöåé üôé õðÜñ÷åé Þäç óôïí ïäçãü åãêáôÜóôáóçò ôçò <application>&oracle;</application>.</para> <sect3 id="linuxemu-kernel-tuning"> <title>Ñýèìéóç ôïõ ÐõñÞíá</title> <indexterm><primary>kernel tuning</primary></indexterm> <para>¼ðùò ðåñéãñÜöåé ï ïäçãüò åãêáôÜóôáóçò ôçò <application>&oracle;</application>, èá ðñÝðåé íá ïñßóåôå ôéò ôéìÝò ôçò shared memory óôï ìÝãéóôï. Ìçí ÷ñçóéìïðïéÞóåôå ôï <literal>SHMMAX</literal> óôï &os;. Ôï <literal>SHMMAX</literal> õðïëïãßæåôáé áðëþò áðü ôï <literal>SHMMAXPGS</literal> êáé ôï <literal>PGSIZE</literal>. ÅðïìÝíùò êáèïñßóôå ôï <literal>SHMMAXPGS</literal>. ¼ëåò ïé Üëëåò åðéëïãÝò ìðïñïýí íá ïñéóôïýí üðùò ðåñéãñÜöåôáé óôïí ïäçãü. Ãéá ðáñÜäåéãìá:</para> <programlisting>options SHMMAXPGS=10000 options SHMMNI=100 options SHMSEG=10 options SEMMNS=200 options SEMMNI=70 options SEMMSL=61</programlisting> <para>Ïñßóôå ôéò ôéìÝò ôùí åðéëïãþí Ýôóé þóôå íá ôáéñéÜæïõí óôç ÷ñÞóç ôçò <application>&oracle;</application> ðïõ èÝëåôå íá êÜíåôå.</para> <para>Åðßóçò, åðéâåâáéþóôå üôé Ý÷åôå åíåñãïðïéÞóåé ôéò ðáñáêÜôù åðéëïãÝò óôéò ñõèìßóåéò ôïõ ðõñÞíá:</para> <programlisting>options SYSVSHM #SysV shared memory options SYSVSEM #SysV semaphores options SYSVMSG #SysV interprocess communication</programlisting> </sect3> <sect3 id="linuxemu-oracle-account"> <title>Ï ×ñÞóôçò &oracle;</title> <para>ÄçìéïõñãÞóôå Ýíá ÷ñÞóôç óõóôÞìáôïò ìå üíïìá <username>oracle</username>, ìå ôïí ßäéï ôñüðï ðïõ èá äçìéïõñãïýóáôå êáé ïðïéïíäÞðïôå Üëëïí ÷ñÞóôç. Ôï ìüíï éäéáßôåñï ÷áñáêôçñéóôéêü ôïõ ÷ñÞóôç <username>oracle</username> åßíáé üôé ÷ñåéÜæåôáé íá ôïõ äþóåôå Ýíá êÝëõöïò Linux. ÐñïóèÝóôå ôï <literal>/compat/linux/bin/bash</literal> óôï <filename>/etc/shells</filename> êáé ïñßóôå ôï êÝëõöïò ôïõ ÷ñÞóôç <username>oracle</username> óå <filename>/compat/linux/bin/bash</filename>.</para> </sect3> <sect3 id="linuxemu-environment"> <title>Ôï ÐåñéâÜëëïí</title> <para>Åêôüò ôùí óõíçèéóìÝíùí ìåôáâëçôþí ôçò <application>&oracle;</application>, üðùò ïé <envar>ORACLE_HOME</envar> êáé <envar>ORACLE_SID</envar> èá ðñÝðåé íá ïñßóåôå êáé ôéò áêüëïõèåò ìåôáâëçôÝò ðåñéâÜëëïíôïò:</para> <informaltable frame="none" pgwide="1"> <tgroup cols="2"> <colspec colwidth="1*"> <colspec colwidth="2*"> <thead> <row> <entry>ÌåôáâëçôÞ</entry> <entry>ÔéìÞ</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>Óáò óõíéóôïýìå íá ïñßóåôå üëåò ôéò ìåôáâëçôÝò ðåñéâÜëëïíôïò óôï áñ÷åßï <filename>.profile</filename>. ¸íá ïëïêëçñùìÝíï ðáñÜäåéãìá åßíáé ôï ðáñáêÜôù:</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>ÅãêáôÜóôáóç ôçò &oracle;</title> <para>Ëüãù ìéá ìéêñÞò Ýëëåéøçò óôïí åîïìïéùôÞ ôïõ Linux, èá ÷ñåéáóôåß íá äçìéïõñãÞóåôå Ýíáí êáôÜëïãï ìå ôï üíïìá <filename>.oracle</filename> ìÝóá óôï <filename>/var/tmp</filename>, ðñéí îåêéíÞóåôå ôï ðñüãñáììá åãêáôÜóôáóçò. Ï êáôÜëïãïò áõôüò èá ðñÝðåé íá áíÞêåé óôïí ÷ñÞóôç <username>oracle</username>. Èá ðñÝðåé ôþñá íá ðñáãìáôïðïéÞóåôå ôçí åãêáôÜóôáóç ôçò <application>&oracle;</application> äß÷ùò êáíÝíá ðñüâëçìá. Áí áíôéìåôùðßæåôå üìùò áêüìç ðñïâëÞìáôá, åëÝãîôå ôçí Ýêäïóç ôçò <application>&oracle;</application> ðïõ Ý÷åôå Þ/êáé ôéò ñõèìßóåéò óáò! Áöüôïõ Ý÷åôå ðñáãìáôïðïéÞóåé ôçí åãêáôÜóôáóç ôçò <application>&oracle;</application>, åöáñìüóôå ôá patches ðïõ ðåñéãñÜöïíôáé óôéò äýï ðáñáêÜôù åíüôçôåò.</para> <para>¸íá óõ÷íü ðñüâëçìá åßíáé üôé äåí ãßíåôáé óùóôÞ åãêáôÜóôáóç ôïõ ðñïóáñìïãÝá ôïõ ðñùôïêüëëïõ TCP. Áõôü Ý÷åé ùò áðïôÝëåóìá íá ìçí ìðïñåßôå íá îåêéíÞóåôå ôïõò TCP listeners. Ïé áêüëïõèåò ïäçãßåò èá óáò âïçèÞóïõí íá ëýóåôå áõôü ôï ðñüâëçìá.:</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>Ìç îå÷Üóåôå íá ôñÝîåôå îáíÜ ôï <filename>root.sh</filename></para> <sect3 id="linuxemu-patch-root"> <title>Äéüñèùóç ôïõ root.sh</title> <para>¼ôáí åãêáèéóôÜôå ôçí <application>&oracle;</application>, êÜðïéåò åíÝñãåéåò, ïé ïðïßåò ÷ñåéÜæïíôáé íá ãßíïõí ùò <username>root</username>, êáôáãñÜöïíôáé óå Ýíá shell script ðïõ ëÝãåôáé <filename>root.sh</filename>. Ôï script áõôü äçìéïõñãåßôáé óôïí êáôÜëïãï <filename>orainst</filename>. Åöáñìüóôå ôï ðáñáêÜôù patch óôï <filename>root.sh</filename>, ãéá íá ìðïñÝóåé íá âñåé êáé íá ÷ñçóéìïðïéÞóåé ôï <command>chown</command>. ÅíáëëáêôéêÜ, ôñÝîôå ôï script ìÝóá áðü Ýíá êÝëõöïò 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>¼ôáí äåí êÜíåôå ÷ñÞóç ôïõ CD ãéá ôçí åãêáôÜóôáóç, ìðïñåßôå íá ðåñÜóåôå ôï patch ãéá ôï <filename>root.sh</filename>, óôçí ðçãÞ åãêáôÜóôáóçò. To áñ÷åßï ïíïìÜæåôáé <filename>rthd.sh</filename> êáé âñßóêåôáé óôïí êáôÜëïãï <filename>orainst</filename>.</para> </sect3> <sect3 id="linuxemu-patch-tcl"> <title>Äéüñèùóç ôïõ genclntsh</title> <para>To script <command>genclntsh</command> ÷ñçóéìïðïéåßôáé ãéá íá äçìéïõñãÞóåé ìéá shared client library. ÔñÝîôå ôï ðáñáêÜôù patch ãéá íá óâÞóåôå ôï êáèïñéóìÝíï <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>ÅêôÝëåóç ôçò &oracle;</title> <para>Áöïý Ý÷åôå áêïëïõèÞóåé áõôÝò ôéò ïäçãßåò, èá ðñÝðåé íá ìðïñåßôå íá åêôåëÝóåôå ôçí <application>&oracle;</application> óáí íá âñéóêüóáóôáí óå Ýíá óýóôçìá Linux. </para> </sect2> </sect1> <sect1 id="sapr3"> <sect1info> <authorgroup> <author> <firstname>Holger</firstname> <surname>Kipp</surname> <contrib>ÓõíåéóöïñÜ ôïõ </contrib> </author> </authorgroup> <!-- holger.kipp@alogis.com --> <authorgroup> <author> <firstname>Valentino</firstname> <surname>Vaschetto</surname> <contrib>Áñ÷éêÞ ìåôáôñïðÞ óå SGML áðü ôïí </contrib> </author> </authorgroup> </sect1info> <title>ÅãêáôÜóôáóç ôïõ &sap.r3;</title> <indexterm> <primary>applications</primary> <secondary><application>SAP R/3</application></secondary> </indexterm> <para>Ç åãêáôÜóôáóç óõóôçìÜôùí <application>&sap;</application> ÷ñçóéìïðïéþíôáò ôï &os; äåí õðïóôçñßæåôáé áðü ôçí ïìÜäá õðïóôÞñéîçò ôçò &sap; — õðïóôÞñéîç ðáñÝ÷åôáé ìüíï óå óõãêåêñéìÝíåò, õðïóôçñéæüìåíåò, ðëáôöüñìåò.</para> <sect2 id="preface"> <title>ÅéóáãùãÞ</title> <para>Ôï êåßìåíï áõôü ðåñéãñÜöåé Ýíá ðéèáíü ôñüðï ãéá ôçí åãêáôÜóôáóç ôïõ <application>&sap.r3; System</application> ìå ìßá âÜóç äåäïìÝíùí <application>&oracle;</application> ãéá Linux óå Ýíá óýóôçìá &os;, ðåñéëáìâÜíïíôáò ôçí åãêáôÜóôáóç ôïõ &os; êáé ôçò <application>&oracle;</application>. Èá ðåñéãñÜøïõìå äýï äéáöïñåôéêÜ åßäç ñõèìßóåùí:</para> <itemizedlist> <listitem> <para><application>&sap.r3; 4.6B (IDES)</application> ìå <application>&oracle; 8.0.5</application> óå &os; 4.3-STABLE</para> </listitem> <listitem> <para><application>&sap.r3; 4.6C</application> ìå <application>&oracle; 8.1.7</application> óå &os; 4.5-STABLE</para> </listitem> </itemizedlist> <para>Ðáñ' üëï ðïõ áõôü ôï êåßìåíï ðñïóðáèåß íá ðåñéãñÜøåé ìå ëåðôïìÝñåéåò üëá ôá áðáñáßôçôá âÞìáôá, äåí èá ðñÝðåé íá èåùñçèåß ùò áíôéêáôáóôÜôçò ôùí ïäçãþí åãêáôÜóôáóçò ôçò <application>&oracle;</application> êáé ôïõ <application>&sap.r3;</application>.</para> <para>Äåßôå ôïí ïäçãü ôïõ <application>&sap.r3;</application> ãéá Linux ãéá åñùôÞóåéò ó÷åôéêÜ ìå ôï <application>&sap;</application> êáé ôçí <application>&oracle;</application>, êáé ãéá ðçãÝò áðü ôçí <application>&oracle;</application> êáé ôï <application>&sap; OSS</application>.</para> </sect2> <sect2 id="software"> <title>Ëïãéóìéêü</title> <para>Ôá áêüëïõèá CD-ROMs Ý÷ïõí ÷ñçóéìïðïéçèåß ãéá ôçí åãêáôÜóôáóç ôïõ <application>&sap;</application>:</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>¼íïìá</entry> <entry>Áñßèìçóç</entry> <entry>ÐåñéãñáöÞ</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 / Disc 1 of 6</entry> </row> <row> <entry>EXPORT2</entry> <entry>51010209</entry> <entry>IDES / DB-Export / Disc 2 of 6</entry> </row> <row> <entry>EXPORT3</entry> <entry>51010210</entry> <entry>IDES / DB-Export / Disc 3 of 6</entry> </row> <row> <entry>EXPORT4</entry> <entry>51010211</entry> <entry>IDES / DB-Export / Disc 4 of 6</entry> </row> <row> <entry>EXPORT5</entry> <entry>51010212</entry> <entry>IDES / DB-Export / Disc 5 of 6</entry> </row> <row> <entry>EXPORT6</entry> <entry>51010213</entry> <entry>IDES / DB-Export / Disc 6 of 6</entry> </row> </tbody> </tgroup> </informaltable> <para>ÅðéðëÝïí, ÷ñçóéìïðïéÞóáìå ôï <application>&oracle; 8 Server</application> (Pre-production version 8.0.5 ãéá Linux, Kernel Version 2.0.33) CD ôï ïðïßï äåí åßíáé áðáñáßôçôï, êáé ôï &os; 4.3-STABLE (Ýíá óôéãìéüôõðï ëßãåò ìüíï ìÝñåò ìåôÜ ôçí Ýêäïóç 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>¼íïìá</entry> <entry>Áñßèìçóç</entry> <entry>ÐåñéãñáöÞ</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 / Disc 1 of 4</entry> </row> <row> <entry>EXPORT1</entry> <entry>51013953</entry> <entry>Release 4.6C SR2 / Export / Disc 2 of 4</entry> </row> <row> <entry>EXPORT1</entry> <entry>51013953</entry> <entry>Release 4.6C SR2 / Export / Disc 3 of 4</entry> </row> <row> <entry>EXPORT1</entry> <entry>51013953</entry> <entry>Release 4.6C SR2 / Export / Disc 4 of 4</entry> </row> <row> <entry>LANG1</entry> <entry>51013954</entry> <entry>Release 4.6C SR2 / Language / DE, EN, FR / Disc 1 of 3 </entry> </row> </tbody> </tgroup> </informaltable> <para>Áíáëüãùò ìå ôéò ãëþóóåò ðïõ èÝëåôå íá åãêáôáóôÞóåôå, èá ÷ñåéáóôåßôå åðéðëÝïí ôá áíôßóôïé÷á CDs. Åìåßò ÷ñçóéìïðïéïýìå ÃåñìáíéêÜ (DE) êáé ÁããëéêÜ (EN), ïðüôå ÷ñåéáæüìáóôå ìüíï ôï ðñþôï CD. Ìéá ìéêñÞ óçìåßùóç, ç áñßèìçóç ôùí EXPORT CDs åßíáé áêñéâþò ç ßäéá. ¼ëá ôá CDs ôùí ãëùóóþí Ý÷ïõí ôçí ßäéá áñßèìçóç (áõôü äéáöÝñåé óå ó÷Ýóç ìå ôçí áñßèìçóç ôçò Ýêäïóçò 4.6B IDES). Ôçí þñá ðïõ ãñÜöïíôáé áõôÝò ïé ãñáììÝò, ç åãêáôÜóôáóç ëåéôïõñãåß óå &os; 4.5-STABLE (20.03.2002).</para> </sect3> </sect2> <sect2 id="sap-notes"> <title>Óçìåéþóåéò &sap;</title> <para>Ïé áêüëïõèåò óçìåéþóåéò èá ðñÝðåé íá äéáâáóôïýí ðñéí ôçí åãêáôÜóôáóç ôïõ <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>Áñßèìçóç</entry> <entry>Ôßôëïò</entry> </row> </thead> <tbody> <row> <entry>0171356</entry> <entry>SAP Software on Linux: Essential Comments</entry> </row> <row> <entry>0201147</entry> <entry>INST: 4.6C R/3 Inst. on UNIX - Oracle</entry> </row> <row> <entry>0373203</entry> <entry>Update / Migration Oracle 8.0.5 --> 8.0.6/8.1.6 LINUX</entry> </row> <row> <entry>0072984</entry> <entry>Release of Digital UNIX 4.0B for Oracle</entry> </row> <row> <entry>0130581</entry> <entry>R3SETUP step DIPGNTAB terminates</entry> </row> <row> <entry>0144978</entry> <entry>Your system has not been installed correctly</entry> </row> <row> <entry>0162266</entry> <entry>Questions and tips for R3SETUP on Windows NT / W2K</entry> </row> </tbody> </tgroup> </informaltable> </sect3> <sect3 id="sap-notes-46c"> <title>&sap.r3; 4.6C, &oracle; 8.1.7</title> <informaltable frame="none" pgwide="1"> <tgroup cols="2"> <thead> <row> <entry>Áñßèìçóç</entry> <entry>Ôßôëïò</entry> </row> </thead> <tbody> <row> <entry>0015023</entry> <entry>Initializing table TCPDB (RSXP0004) (EBCDIC)</entry> </row> <row> <entry>0045619</entry> <entry>R/3 with several languages or typefaces</entry> </row> <row> <entry>0171356</entry> <entry>SAP Software on Linux: Essential Comments</entry> </row> <row> <entry>0195603</entry> <entry>RedHat 6.1 Enterprise version: Known problems</entry> </row> <row> <entry>0212876</entry> <entry>The new archiving tool SAPCAR</entry> </row> <row> <entry>0300900</entry> <entry>Linux: Released DELL Hardware</entry> </row> <row> <entry>0377187</entry> <entry>RedHat 6.2: important remarks</entry> </row> <row> <entry>0387074</entry> <entry>INST: R/3 4.6C SR2 Installation on UNIX</entry> </row> <row> <entry>0387077</entry> <entry>INST: R/3 4.6C SR2 Inst. on UNIX - Oracle</entry> </row> <row> <entry>0387078</entry> <entry>SAP Software on UNIX: OS Dependencies 4.6C SR2</entry> </row> </tbody> </tgroup> </informaltable> </sect3> </sect2> <sect2 id="hardware-requirements"> <title>ÁðáéôÞóåéò ÓõóôÞìáôïò</title> <para>Ï áêüëïõèïò åîïðëéóìüò åßíáé áñêåôüò ãéá ìéá ôõðéêÞ åãêáôÜóôáóç ôïõ <application>&sap.r3; System</application>. Ãéá ìç÷áíÞìáôá ðáñáãùãÞò èá ÷ñåéáóôåßôå öõóéêÜ êáëýôåñç åêôßìçóç ôùí áðáéôÞóåùí óáò:</para> <informaltable frame="none" pgwide="1"> <tgroup cols="3"> <thead> <row> <entry>ÅîÜñôçìá</entry> <entry>4.6B</entry> <entry>4.6C</entry> </row> </thead> <tbody> <row> <entry>ÅðåîåñãáóôÞò</entry> <entry>2 x 800MHz &pentium; III</entry> <entry>2 x 800MHz &pentium; III</entry> </row> <row> <entry>ÌíÞìç</entry> <entry>1GB ECC</entry> <entry>2GB ECC</entry> </row> <row> <entry>Óêëçñüò Äßóêïò</entry> <entry>50-60GB (IDES)</entry> <entry>50-60GB (IDES)</entry> </row> </tbody> </tgroup> </informaltable> <para>Ãéá ÷ñÞóç óå ðáñáãùãÞ, èá ÷ñåéáóôåßôå åðåîåñãáóôÝò &xeon; ìå ìåãÜëç ìíÞìç cache, äßóêïõò õøçëÞò ôá÷ýôçôáò (SCSI, ìå hardware åëåãêôÞ RAID), USV êáé ECC-RAM. Ôï ìåãÜëï ìÝãåèïò ôïõ óêëçñïý äßóêïõ, ïöåßëåôáé óôï ðñïñõèìéóìÝíï óýóôçìá IDES, ðïõ äçìéïõñãåß 27 GB áñ÷åßá âÜóçò äåäïìÝíùí êáôÜ ôç äéÜñêåéá ôçò åãêáôÜóôáóçò. Ï ÷þñïò áõôüò åðáñêåß åðßóçò ãéá ôá äåäïìÝíá ôçò åöáñìïãÞò óå Ýíá áñ÷éêü óýóôçìá ðáñáãùãÞò.</para> <sect3 id="hardware-46b"> <title>&sap.r3; 4.6B, &oracle; 8.0.5</title> <para>×ñçóéìïðïéÞèçêáí ôá áêüëïõèá êïéíÜ åîáñôÞìáôá: ìçôñéêÞ ãéá äýï åðåîåñãáóôÝò ìå 2 &pentium; III óôá 800 MHZ, åëåãêôÞ SCSI &adaptec; 29160 Ultra160 (ãéá ðñüóâáóç óå ïäçãü ôáéíßáò 40/80 GB DLT êáé óôï CDROM), &mylex; &acceleraid; (2 êáíáëéþí, firmware 6.00-1-00 ìå 32 MB RAM). Óôï &mylex; RAID controller åßíáé óõíäåäåìÝíïé äýï óêëçñïß äßóêïé ôùí 17 GB (mirrored) êáé ôÝóóåñéò ôùí 36 GB (RAID level 5). </para> </sect3> <sect3 id="hardware-46c"> <title>&sap.r3; 4.6C, &oracle; 8.1.7</title> <para>Óå áõôÞ ôçí åãêáôÜóôáóç ÷ñçóéìïðïéÞóáìå Ýíáí &dell; &poweredge; 2500: ìçôñéêÞ ìå äýï åðåîåñãáóôÝò &pentium; III óôá 1000 MHz (256 kB Cache), 2 GB PC133 ECC SDRAM, PERC/3 DC PCI RAID Controller ìå 128 MB, êáé ïäçãü EIDE DVD-ROM. Óôï RAID controller åßíáé óõíäåäåìÝíïé äýï óêëçñïß äßóêïé ôùí 18 GB (mirrored) êáé ôÝóóåñéò ôùí 36 GB (RAID level 5).</para> </sect3> </sect2> <sect2 id="installation"> <title>ÅãêáôÜóôáóç ôïõ &os;</title> <para>Áñ÷éêÜ ðñÝðåé íá åãêáôáóôÞóåôå ôï &os;. Áõôü ìðïñåß íá ãßíåé ìå äéÜöïñïõò ôñüðïõò, ãéá ðåñéóóüôåñåò ðëçñïöïñßåò äåßôå óôï <xref linkend="install-diff-media">.</para> <sect3 id="disk-layout"> <title>ÄéÜôáîç Äßóêïõ</title> <para>Ãéá íá êñáôÞóïõìå ôç äéáäéêáóßá áðëÞ, ÷ñçóéìïðïéÞóáìå ôçí ßäéá äéÜôáîç äßóêïõ, ôüóï óôï <application>&sap.r3; 46B</application> üóï êáé óôï <application>&sap.r3; 46C SR2</application>. Ìüíï ôá ïíüìáôá ôùí óõóêåõþí Üëëáîáí, êáèþò ç êÜèå åãêáôÜóôáóç Ýãéíå óå äéáöïñåôéêü ìç÷Üíçìá. (<filename>/dev/da</filename> êáé <filename>/dev/amr</filename> áíôßóôïé÷á, ïðüôå áí ÷ñçóéìïðïéåßôå Ýíáí AMI &megaraid;, èá äåßôå ôï <filename>/dev/amr0s1a</filename> áíôß ôïõ <filename>/dev/da0s1a</filename>):</para> <informaltable frame="none" pgwide="1"> <tgroup cols="4"> <thead> <row> <entry>Óýóôçìá áñ÷åßùí</entry> <entry>ÌÝãåèïò (1k-blocks)</entry> <entry>ÌÝãåèïò (GB)</entry> <entry>ÐñïóÜñôçóç óôï</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>Ñõèìßóôå áðü ðñéí ôïõò äýï äßóêïõò ìå ôï ëïãéóìéêü &mylex; Þ ôï PERC/3 RAID. Ìðïñåßôå íá åéóÝëèåôå óå áõôü êáôÜ ôç öÜóç åêêßíçóçò ôïõ <acronym>BIOS</acronym>.</para> <para> ÐñïóÝîôå åäþ üôé ç äéÜôáîç ôïõ äßóêïõ äéáöÝñåé ëßãï ùò ðñïò ôç óõíéóôþìåíç áðü ôç &sap;, êáèþò ç &sap; ðñïôåßíåé íá ðñïóáñôÞóåôå ôïõò õðïêáôáëüãïõò ôçò <application>&oracle;</application> (êáé êÜðïéïõò Üëëïõò) îå÷ùñéóôÜ — åìåßò ðñïôéìÞóáìå, ãéá ëüãïõò áðëüôçôáò, íá äçìéïõñãÞóïõìå êáíïíéêïýò êáôáëüãïõò.</para> </sect3> <sect3 id="makeworldandnewkernel"> <title><command>make world</command> êáé ÍÝïò ÐõñÞíáò</title> <para>ÊáôåâÜóôå ôïí ðçãáßï êþäéêá ôïõ ôåëåõôáßïõ ðõñÞíá -STABLE. Ìåôáãëùôôßóôå ôï world (âáóéêü óýóôçìá) êáé ôïí ðõñÞíá óáò áöïý äçìéïõñãÞóåôå ðñþôá Ýíá ðñïóáñìïóìÝíï áñ÷åßï ñõèìßóåùí ðõñÞíá. Åäþ èá ðñÝðåé íá óõìðåñéëÜâåôå êáé ôéò <link linkend="kerneltuning">ðáñáìÝôñïõò ðõñÞíá (kernel parameters)</link> ïé ïðïßåò ÷ñåéÜæïíôáé ôüóï ãéá ôï <application>&sap.r3;</application> üóï êáé ôçí <application>&oracle;</application>.</para> </sect3> </sect2> <sect2 id="installingthelinuxenviornment"> <title>ÅãêáôÜóôáóç ôïõ ÐåñéâÜëëïíôïò Linux</title> <sect3 id="installinglinuxbase-system"> <title>ÅãêáôÜóôáóç ôïõ Linux Base System</title> <para>Áñ÷éêÜ ÷ñåéÜæåôáé íá Ý÷åôå åãêáôáóôÞóåé ôï <link linkend="linuxemu-libs-port">linux_base</link> port (ùò ÷ñÞóôçò <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>ÅãêáôÜóôáóç ôïõ ÐåñéâÜëëïíôïò ÁíÜðôõîçò Linux</title> <para>Ôï ðåñéâÜëëïí áíÜðôõîçò Linux ÷ñåéÜæåôáé áí èÝëåôå íá åãêáôáóôÞóåôå ôçí <application>&oracle;</application> óôï &os; üðùò ðåñéãñÜöåôáé óôï <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>ÅãêáôáóôÞóáìå ôï ðåñéâÜëëïí áíÜðôõîçò Linux ìüíï ãéá ôçí åãêáôÜóôáóç ôïõ <application>&sap.r3; 46B IDES</application>. Áí Ý÷åôå åãêáôáóôÞóåé ôçí <application>&oracle; DB</application> áðü ôçí <application>&oracle;</application> ãéá óõóôÞìáôá Linux, ôüôå äåí ÷ñåéÜæåôáé íá óáò áðáó÷ïëåß.</para> </sect3> <sect3 id="installingnecessaryrpms"> <title>ÅãêáôÜóôáóç ôùí Áðáñáßôçôùí RPMs</title> <indexterm><primary>RPMs</primary></indexterm> <para>Ãéá íá îåêéíÞóåé ôï ðñüãñáììá <command>R3SETUP</command>, ÷ñåéÜæåôáé íá õðÜñ÷åé õðïóôÞñéîç PAM. ÊáôÜ ôç äéÜñêåéá ôçò ðñþôçò åãêáôÜóôáóçò ôïõ <application>&sap;</application> óôï &os; 4.3-STABLE, ðñïóðáèÞóáìå íá åãêáôáóôÞóïõìå ôï PAM ìå üëá ôá áðáñáßôçôá ðáêÝôá êáé ôåëéêÜ åîáíáãêÜóáìå ôçí åãêáôÜóôáóç ôïõ ðáêÝôïõ PAM, ôï ïðïßï êáé äïýëåøå. Ãéá ôï <application>&sap.r3; 4.6C SR2</application> åîáíáãêÜóáìå Üìåóá ôçí åãêáôÜóôáóç ôïõ ðáêÝôïõ PAM, ôï ïðïßï åðßóçò äïýëåøå, ðñÜãìá ðïõ óçìáßíåé üôé ôá ðáêÝôá ðïõ áíáöÝñïíôáé ùò åîáñôÞóåéò ôïõ, äåí ÷ñåéÜæïíôáé:</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>Ãéá ôïí intelligent agent ôïõ <application>&oracle; 8.0.5</application>, Ýðñåðå íá åãêáôáóôÞóïõìå ôï ðáêÝôï Tcl ôçò RedHat <filename>tcl-8.0.5-30.i386.rpm</filename> (äéáöïñåôéêÜ ç åðáíáóýíäåóç êáôÜ ôç äéÜñêåéá ôçò åãêáôÜóôáóçò ôçò <application>&oracle;</application> äåí èá Þôáí åöéêôÞ). ÕðÜñ÷ïõí êáé êÜðïéá Üëëá ðñïâëÞìáôá ó÷åôéêÜ ìå ôç åðáíáóýíäåóç ôçò <application>&oracle;</application>, áëëÜ áõôü åßíáé èÝìá ôçò <application>&oracle;</application> ãéá Linux, êáé ü÷é ôïõ &os;.</para> </sect3> <sect3 id="linuxprocandfallbackelfbrand"> <title>ÅðéðëÝïí ÓõìâïõëÝò</title> <para>ºóùò åßíáé åðßóçò êáëÞ éäÝá íá ðñïóèÝóåôå ôï <literal>linprocfs</literal> óôï <filename>/etc/fstab</filename>. Ãéá ðåñéóóüôåñåò ðëçñïöïñßåò, äåßôå ôç óåëßäá manual &man.linprocfs.5;. Ìéá Üëëç ðáñÜìåôñïò ðïõ ìðïñåßôå íá ïñßóåôå åßíáé ç <literal>kern.fallback_elf_brand=3</literal> ç ïðïßá ïñßæåôáé óôï áñ÷åßï <filename>/etc/sysctl.conf</filename>.</para> </sect3> </sect2> <sect2 id="creatingsapr3env"> <title>Äçìéïõñãßá ôïõ ÐåñéâÜëëïíôïò &sap.r3;</title> <sect3 id="filesystemsandmountpoints"> <title>Äçìéïõñãßá ôùí ÁðáñáéôÞôùí ÓõóôçìÜôùí Áñ÷åßùí êáé ÐñïóáñôÞóåùí</title> <para>Ãéá ìéá áðëÞ åãêáôÜóôáóç, áñêåß íá äçìéïõñãÞóåôå ôá ðáñáêÜôù óõóôÞìáôá áñ÷åßùí êáé ðñïóáñôÞóåéò:</para> <informaltable frame="none" pgwide="1"> <tgroup cols="2"> <thead> <row> <entry>óçìåßï ðñïóÜñôçóçò</entry> <entry>ìÝãåèïò óå 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>Åßíáé åðßóçò áðáñáßôçôï íá äçìéïõñãÞóåôå êáé ìåñéêïýò óõíäÝóìïõò. ÄéáöïñåôéêÜ ôï ðñüãñáììá åãêáôÜóôáóçò ôïõ <application>&sap;</application> èá ðáñáðïíåèåß:</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>¸íá ðéèáíü ìÞíõìá óöÜëìáôïò êáôÜ ôç äéÜñêåéá ôçò åãêáôÜóôáóçò (åäþ ìå System <emphasis>PRD</emphasis> êáé åãêáôÜóôáóç ôïõ <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>Äçìéïõñãßá ×ñçóôþí êáé Êáôáëüãùí</title> <para>Ôï <application>&sap.r3;</application> ÷ñåéÜæåôáé äýï ÷ñÞóôåò êáé ôñåéò ïìÜäåò (groups). Ôá ïíüìáôá ôùí ÷ñçóôþí åîáñôþíôáé áðü ôï <application>&sap;</application> system ID (SID) ôï ïðïßï áðïôåëåßôáé áðü ôñßá ãñÜììáôá. ÌåñéêÜ áðü áõôÜ ôá SIDs åßíáé äåóìåõìÝíá áðü ôï <application>&sap;</application> (ãéá ðáñÜäåéãìá ôá <literal>SAP</literal> êáé <literal>NIX</literal>. Ãéá ðëÞñç ëßóôá äåßôå ôçí ôåêìçñßùóç ôïõ <application>&sap;</application>). Ãéá ôçí åãêáôÜóôáóç IDES, ÷ñçóéìïðïéÞóáìå <literal>IDS</literal>, ãéá ôçí åãêáôÜóôáóç óôï óýóôçìá 4.6C SR2 ÷ñçóéìïðïéÞóáìå <literal>PRD</literal>, êáèþò áõôü ôï óýóôçìá ðñïïñßæåôáé ãéá ÷ñÞóç ðáñáãùãÞò. ÅðïìÝíùò, ÷ñåéáóôÞêáìå ôéò áêüëïõèåò ïìÜäåò (ôá ID ôùí ïìÜäùí ìðïñïýí íá äéáöÝñïõí, áõôÝò åßíáé áðëþò ïé ôéìÝò ðïõ ÷ñçóéìïðïéÞóáìå óôç äéêÞ ìáò åãêáôÜóôáóç):</para> <informaltable frame="none" pgwide="1"> <tgroup cols="3"> <thead> <row> <entry>ID ïìÜäáò</entry> <entry>üíïìá ïìÜäáò</entry> <entry>ðåñéãñáöÞ</entry> </row> </thead> <tbody> <row> <entry>100</entry> <entry>dba</entry> <entry>Data Base Administrator (Äéá÷åéñéóôÞò ÂÜóçò ÄåäïìÝíùí)</entry> </row> <row> <entry>101</entry> <entry>sapsys</entry> <entry>&sap; System</entry> </row> <row> <entry>102</entry> <entry>oper</entry> <entry>Data Base Operator (×åéñéóôÞò ÂÜóçò ÄåäïìÝíùí)</entry> </row> </tbody> </tgroup> </informaltable> <para>Ãéá ôç ôõðéêÞ åãêáôÜóôáóç ôçò <application>&oracle;</application>, èá ÷ñåéáóôåßôå ìüíï ôçí ïìÜäá <groupname>dba</groupname> (äåßôå ôç ôåêìçñßùóç ôçò <application>&oracle;</application> êáé ôïõ <application>&sap;</application> ãéá ðåñéóóüôåñåò ðëçñïöïñßåò).</para> <para>Èá ÷ñåéáóôïýìå åðßóçò ôïõò áêüëïõèïõò ÷ñÞóôåò:</para> <informaltable frame="none" pgwide="1"> <tgroup cols="6"> <thead> <row> <entry>ID ÷ñÞóôç</entry> <entry>üíïìá ÷ñÞóôç</entry> <entry>ãåíéêü üíïìá</entry> <entry>áñ÷éêÞ ïìÜäá</entry> <entry>åðéðëÝïí ïìÜäåò</entry> <entry>ðåñéãñáöÞ</entry> </row> </thead> <tbody> <row> <entry>1000</entry> <entry>idsadm/prdadm</entry> <entry><replaceable>sid</replaceable>adm</entry> <entry>sapsys</entry> <entry>oper</entry> <entry>&sap; Administrator (Äéá÷åéñéóôÞò)</entry> </row> <row> <entry>1002</entry> <entry>oraids/oraprd</entry> <entry>ora<replaceable>sid</replaceable></entry> <entry>dba</entry> <entry>oper</entry> <entry>&oracle; Administrator (Äéá÷åéñéóôÞò)</entry> </row> </tbody> </tgroup> </informaltable> <para>Ç ðñïóèÞêç ôùí ÷ñçóôþí ìå ôçí åíôïëÞ &man.adduser.8; áðáéôåß ôéò áêüëïõèåò êáôá÷ùñÞóåéò ãéá ôïí <quote>&sap; Administrator</quote> (ðñïóÝîôå ôï shell êáé ôïí êáôÜëïãï home):</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>êáé ãéá ôïí <quote>&oracle; Administrator</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>Èá ðñÝðåé íá ðåñéëÜâåôå êáé ôçí ïìÜäá <groupname>oper</groupname> óå ðåñßðôùóç ðïõ ÷ñçóéìïðïéÞóåôå êáé ôéò äýï ïìÜäåò <groupname>dba</groupname> êáé <groupname>oper</groupname>.</para> </sect3> <sect3 id="creatingdirectories"> <title>Äçìéïõñãßá Êáôáëüãùí</title> <para>Ïé ðáñáêÜôù êáôÜëïãïé äçìéïõñãïýíôáé óõíÞèùò ùò îå÷ùñéóôÜ óõóôÞìáôá áñ÷åßùí. Áõôü üìùò åîáñôÜôáé áðü ôéò áðáéôÞóåéò óáò. Åìåßò åðéëÝîáìå íá ôïõò äçìéïõñãÞóïõìå ùò áðëïýò êáôáëüãïõò, êáèþò üëïé ôïõò âñßóêïíôáé óôï ßäéï RAID 5:</para> <para>Áñ÷éêÜ èá ÷ñåéáóôåß íá ïñßóïõìå éäéïêôÞôåò êáé Üäåéåò óå êÜðïéïõò êáôáëüãïõò (ùò ÷ñÞóôçò <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>Óå äåýôåñç öÜóç èá äçìéïõñãÞóïõìå ôïõò êáôáëüãïõò ùò ÷ñÞóôçò <username>ora<replaceable>sid</replaceable></username>. ¼ëïé áõôïß ïé êáôÜëïãïé õðÜãïíôáé óôïí <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>Ãéá ôçí åãêáôÜóôáóç ôçò <application>&oracle; 8.1.7</application>, èá ÷ñåéáóôïýí ìåñéêïß êáôÜëïãïé áêüìç:</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>Ï êáôÜëïãïò <filename>client/80x_32</filename> ÷ñçóéìïðïéåßôáé ìå áõôü áêñéâþò ôï üíïìá. Ìçí áíôéêáôáóôÞóåôå ôï <emphasis>x</emphasis> ìå êÜðïéïí áñéèìü Þ êÜôé Üëëï.</para></note> <para>Óôï ôñßôï âÞìá äçìéïõñãïýìå ôïõò êáôáëüãïõò ùò ÷ñÞóôçò <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>ÅããñáöÝò óôï <filename>/etc/services</filename></title> <para>Ôï <application>&sap.r3;</application> ÷ñåéÜæåôáé ìåñéêÝò åããñáöÝò óôï áñ÷åßï <filename>/etc/services</filename>, ïé ïðïßåò äåí åéóÜãïíôáé êáôÜ ôç äéÜñêåéá ôçò åãêáôÜóôáóçò ôïõ &os;. ÐñïóèÝóôå ôéò ðáñáêÜôù åããñáöÝò (èá ÷ñåéáóôåßôå ôïõëÜ÷éóôïí ôéò åããñáöÝò ðïõ áíôéóôïé÷ïýí óôï instance ôçò åöáñìïãÞò ðïõ ôñÝ÷åôå — óôç ðåñßðôùóç ìáò, ôï <literal>00</literal>. Äåí èá õðÜñîåé êáíÝíá ðñüâëçìá áí ðñïóèÝóåôå üëåò ôéò åããñáöÝò áðü ôï <literal>00</literal> ùò ôï <literal>99</literal> ãéá ôá <literal>dp</literal>, <literal>gw</literal>, <literal>sp</literal> êáé <literal>ms</literal>). Áí ðñüêåéôáé íá ÷ñçóéìïðïéÞóåôå <application>SAProuter</application> Þ ÷ñåéÜæåóôå ðñüóâáóç óôï <application>&sap;</application> OSS, èá ÷ñåéáóôåßôå êáé ôçí åããñáöÞ <literal>99</literal>, ìéá êáé ç èýñá 3299 ÷ñçóéìïðïéåßôáé óõ÷íÜ áðü ôçí äéåñãáóßá ôïõ <application>SAProuter</application>:</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>Áðáñáßôçôåò ÔïðéêÝò Ñõèìßóåéò</title> <indexterm><primary>locale</primary></indexterm> <para>Ôï <application>&sap;</application> áðáéôåß ôïõëÜ÷éóôïí äýï ôïðéêÝò ñõèìßóåéò (locales) ðïõ äåí áíÞêïõí óôéò ðñïåðéëåãìÝíåò ðïõ åãêáèéóôÜ ôï RedHat. Ôï &sap; ðñïóöÝñåé ôá áðáéôïýìåíá RPMs ãéá íá ôá êáôåâÜóåôå áðü ôïí äéêü ôïõò äéáêïìéóôÞ FTP (ï ïðïßïò åßíáé äéáèÝóéìïò ìüíï áí åßóôå ðåëÜôçò ìå ðñüóâáóç OSS). Äåßôå ôç óçìåßùóç 0171356 ãéá ôç ëßóôá áðü ðáêÝôá RPMs ðïõ ÷ñåéÜæåóôå.</para> <para>Åßíáé åðßóçò åöéêôü íá äçìéïõñãÞóåôå áðëþò ôïõò êáôÜëëçëïõò óõíäÝóìïõò (ãéá ðáñÜäåéãìá áðü ôá <emphasis>de_DE</emphasis> êáé <emphasis>en_US</emphasis>), áëëÜ ðñïôåßíïõìå íá ìç êÜíåôå êÜôé ôÝôïéï áí ðñüêåéôáé ãéá ìç÷Üíçìá ðáñáãùãÞò (ùóôüóï áõôü Ý÷åé ìÝ÷ñé óôéãìÞò äïõëÝøåé ÷ùñßò ðñüâëçìá óå óýóôçìá IDES). Èá ÷ñåéáóôåßôå ôéò áêüëïõèåò ôïðéêÝò ñõèìßóåéò:</para> <programlisting>de_DE.ISO-8859-1 en_US.ISO-8859-1</programlisting> <para>Ïé óýíäåóìïé ìðïñïýí íá äçìéïõñãçèïýí ìå ôïí áêüëïõèï ôñüðï: </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>Áí ïé óýíäåóìïé äåí õðÜñ÷ïõí, èá äçìéïõñãçèïýí ðñïâëÞìáôá êáôÜ ôçí åãêáôÜóôáóç. Áí áãíïÞóåôå áõôÜ ôá ðñïâëÞìáôá, (ïñßæïíôáò ôï <literal>STATUS</literal> ôùí ðñïâëçìáôéêþí âçìÜôùí óå <literal>OK</literal> óôï áñ÷åßï <filename>CENTRDB.R3S</filename>), ßóùò åßíáé áäýíáôï íá óõíäåèåßôå óôï <application>&sap;</application> ÷ùñßò êÜðïéá åðéðëÝïí ðñïóðÜèåéá êáé óðáôÜëç ÷ñüíïõ.</para> </sect3> <sect3 id="kerneltuning"> <title>Ñýèìéóç ôïõ ÐõñÞíá</title> <indexterm><primary>kernel tuning</primary></indexterm> <para>Ôï <application>&sap.r3;</application> ÷ñåéÜæåôáé áñêåôïýò ðüñïõò áðü ôï óýóôçìÜ óáò. Ãéá áõôü ôï ëüãï ïñßóáìå ôéò ðáñáêÜôù ðáñáìÝôñïõò óôéò ñõèìßóåéò ôïõ ðõñÞíá:</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>Ïé åëÜ÷éóôåò ôéìÝò ðïõ èÝôïõìå ðñïÝñ÷ïíôáé áðü ôç ôåêìçñßùóç ôïõ &sap;. Ìéá êáé äåí õðÜñ÷ïõí ïäçãßåò ãéá Linux, ãéá ðåñéóóüôåñåò ðëçñïöïñßåò, ñßîôå ìéá ìáôéÜ óå áõôÝò ãéá ôï HP-UX (32-bit). Ìéá êáé ôï óýóôçìá ãéá ôçí åãêáôÜóôáóç ôïõ 4.6C SR2 Ý÷åé ðåñéóóüôåñç ìíÞìç, ôá äéáìïéñáæüìåíá ôìÞìáôá ìðïñïýí íá åßíáé ìåãáëýôåñá, ôüóï ãéá ôï <application>&sap;</application> üóï êáé ãéá ôçí <application>&oracle;</application>. ÅðïìÝíùò, åðéëÝîôå Ýíáí ìåãáëýôåñï áñéèìü ãéá ôá shared memory pages.</para> <note> <para>Ìå ôçí ðñïåðéëåãìÝíç åãêáôÜóôáóç ôïõ &os; óå &i386;, áöÞóôå ôá <literal>MAXDSIZ</literal> êáé <literal>DFLDSIZ</literal> óôï 1 GB ôï ðïëý. ÄéáöïñåôéêÜ, ìðïñåß íá äåßôå íá åìöáíßæïíôáé ðåñßåñãá óöÜëìáôá üðùò <errorname>ORA-27102: out of memory</errorname> êáé <errorname>Linux Error: 12: Cannot allocate memory</errorname> </para> </note> </sect3> </sect2> <sect2 id="installingsapr3"> <title>ÅãêáôÜóôáóç ôïõ &sap.r3;</title> <sect3 id="preparingsapcdroms"> <title>ÐñïåôïéìÜæïíôáò ôá &sap; CDROMs</title> <para>Óôç äéáäéêáóßá ôçò åãêáôÜóôáóçò åìðëÝêïíôáé áñêåôÜ CDROMs. Áí Ý÷åôå áñêåôïýò ïäçãïýò, èá ìðïñÝóåôå íá ôá ðñïóáñôÞóåôå üëá ìå ìéáò óôï óýóôçìá óáò. Åìåßò áðïöáóßóáìå íá áíôéãñÜøïõìå ôï ðåñéå÷üìåíï ôùí CDROMs óôïõò áíôßóôïé÷ïõò êáôáëüãïõò:</para> <programlisting>/oracle/<replaceable>SID</replaceable>/sapreorg/<replaceable>cd-name</replaceable></programlisting> <para>üðïõ <replaceable>cd-name</replaceable> áíôéóôïé÷åß óå Ýíá áðü ôá <filename>KERNEL</filename>, <filename>RDBMS</filename>, <filename>EXPORT1</filename>, <filename>EXPORT2</filename>, <filename>EXPORT3</filename>, <filename>EXPORT4</filename>, <filename>EXPORT5</filename> êáé <filename>EXPORT6</filename> ãéá ôçí åãêáôÜóôáóç óå 4.6B/IDES, êáé <filename>KERNEL</filename>, <filename>RDBMS</filename>, <filename>DISK1</filename>, <filename>DISK2</filename>, <filename>DISK3</filename>, <filename>DISK4</filename> êáé <filename>LANG</filename> ãéá ôçí åãêáôÜóôáóç ôïõ 4.6C SR2. ¼ëá ôá ïíüìáôá ôùí áñ÷åßùí óôá ðñïóáñôçìÝíá CDs èá ðñÝðåé íá åßíáé ìå êåöáëáßá, äéáöïñåôéêÜ êÜíôå ÷ñÞóç ôçò åðéëïãÞò <option>-g</option> êáôÜ ôçí ðñïóÜñôçóç. ×ñçóéìïðïéåßóôå ëïéðüí ôéò ðáñáêÜôù åíôïëÝò:</para> <screen>&prompt.root; <userinput>mount_cd9660 -g /dev/cd0a /mnt</userinput> &prompt.root; <userinput>cp -R /mnt/* /oracle/<replaceable>SID</replaceable>/sapreorg/<replaceable>cd-name</replaceable></userinput> &prompt.root; <userinput>umount /mnt</userinput></screen> </sect3> <sect3 id="runningtheinstall-script"> <title>ÔñÝîôå ôï Script ôçò ÅãêáôÜóôáóçò</title> <para>Áñ÷éêÜ ðñÝðåé íá ðñïåôïéìÜóåôå ôïí êáôÜëïãï <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>Óôç óõíÝ÷åéá îåêéíÞóôå ôï script ôçò åãêáôÜóôáóçò, ôï ïðïßï èá áíôéãñÜøåé üëá ôá ó÷åôéêÜ áñ÷åßá ìÝóá óôïí êáôÜëïãï <filename class="directory">install</filename>:</para> <screen>&prompt.root; <userinput>/oracle/<replaceable>SID</replaceable>/sapreorg/KERNEL/UNIX/INSTTOOL.SH</userinput></screen> <para>Ç åãêáôÜóôáóç ôïõ IDES (4.6B) Ýñ÷åôáé ìå Ýíá ðëÞñùò ðñïóáñìïóìÝíï óýóôçìá åðßäåéîçò ôïõ &sap.r3;, Ýôóé õðÜñ÷ïõí Ýîé CD EXPORT áíôß ãéá ôñßá. Óå áõôü ôï óçìåßï ôï ðñüôõðï áñ÷åßï åãêáôÜóôáóçò <filename>CENTRDB.R3S</filename> ðñïïñßæåôáé ãéá ôçí åãêáôÜóôáóç ôïõ âáóéêïý óõóôÞìáôïò (ôï ßäéï ôï <application>&r3;</application> êáé ôç âÜóç äåäïìÝíùí), ü÷é ôçí êåíôñéêÞ åöáñìïãÞ IDES, Ýôóé ÷ñåéÜæåôáé íá áíôéãñÜøåôå êáé ôï áíôßóôïé÷ï <filename>CENTRDB.R3S</filename> áðü ôïí êáôÜëïãï <filename class="directory">EXPORT1</filename>, äéáöïñåôéêÜ ôï <command>R3SETUP</command> èá æçôÞóåé ìüíï ôá ôñßá EXPORT CDs. </para> <para>Ç íåüôåñç Ýêäïóç <application>&sap; 4.6C SR2</application> ðåñéÝ÷åé ôÝóóåñá EXPORT CD. Ôï áñ÷åßï ôï ïðïßï åëÝã÷åé ôá âÞìáôá ôçò åãêáôÜóôáóçò åßíáé ôï <filename>CENTRAL.R3S</filename>. Óå áíôßèåóç ìå ôéò ðñïçãïýìåíåò åêäüóåéò, äåí õðÜñ÷ïõí äéáöïñåôéêÝò ìïñöÝò åãêáôÜóôáóçò, ãéá êåíôñéêÞ åãêáôÜóôáóç ìå Þ ÷ùñßò âÜóç äåäïìÝíùí. Ôï <application>&sap;</application> ÷ñçóéìïðïéåß ðëÝïí ìéá äéáöïñåôéêÞ äéáäéêáóßá ãéá ôçí åãêáôÜóôáóç ôçò âÜóçò äåäïìÝíùí. Áí èÝëåôå üìùò íá åðáíåêêéíÞóåôå ôçí åãêáôÜóôáóç áñãüôåñá, áñêåß íá ÷ñçóéìïðïéÞóåôå îáíÜ ôï áñ÷éêü áñ÷åßï.</para> <para>Ôüóï êáôÜ ôç äéÜñêåéá üóï êáé ìåôÜ ôçí åãêáôÜóôáóç, ôï <application>&sap;</application> áðáéôåß ç åíôïëÞ <command>hostname</command> íá åðéóôñÝöåé ìüíï ôï üíïìá ôïõ óõóôÞìáôïò óáò êáé ü÷é ôï ðëÞñåò üíïìá (ìå ôïí ôïìÝá). ÅðïìÝíùò, åßôå ñõèìßóôå ôï üíïìá ìå áõôü ôïí ôñüðï, Þ ÷ñçóéìïðïéÞóôå êÜðïéï alias äßíïíôáò <command>alias hostname='hostname -s'</command> ôüóï ãéá ôïí ÷ñÞóôç <username>ora<replaceable>sid</replaceable></username> üóï êáé ãéá ôïí ÷ñÞóôç <username><replaceable>sid</replaceable>adm</username> (êáé ãéá ôïí <username>root</username> ôïõëÜ÷éóôïí êáôÜ ôçí åãêáôÜóôáóç, ìéáò êáé üëá ôá âÞìáôá ãßíïíôáé ùò<username>root</username>). Åßíáé åðßóçò ðéèáíü íá ôñïðïðïéÞóåôå ôá áñ÷åßá <filename>.profile</filename> êáé <filename>.login</filename> ôùí äýï ÷ñçóôþí ðïõ äçìéïõñãÞèçêáí êáôÜ ôç äéÜñêåéá åãêáôÜóôáóçò ôïõ <application>&sap;</application>.</para> </sect3> <sect3 id="startr3setup-46B"> <title>Åêêßíçóç ôïõ <command>R3SETUP</command> 4.6B</title> <para>Âåâáéùèåßôå üôé ôï <envar>LD_LIBRARY_PATH</envar> Ý÷åé ïñéóôåß óùóôÜ:</para> <screen>&prompt.root; <userinput>export LD_LIBRARY_PATH=/oracle/IDS/lib:/sapmnt/IDS/exe:/oracle/805_32/lib</userinput></screen> <para>ÎåêéíÞóôå ôï <command>R3SETUP</command> ùò <username>root</username> áðü ôïí êáôÜëïãï åãêáôÜóôáóçò:</para> <screen>&prompt.root; <userinput>cd /oracle/IDS/sapreorg/install</userinput> &prompt.root; <userinput>./R3SETUP -f CENTRDB.R3S</userinput></screen> <para>Ôï script èá óáò êÜíåé ìåñéêÝò åñùôÞóåéò (ïé ðñïåðéëïãÝò öáßíïíôáé óå áãêýëåò,êáé áêïëïõèïýíôáé áðü ôçí ôéìÞ ðïõ äüèçêå ùò åßóïäïò):</para> <informaltable frame="none" pgwide="1"> <tgroup cols="3"> <thead> <row> <entry>Åñþôçóç</entry> <entry>ÐñïåðéëïãÞ</entry> <entry>Åßóïäïò äåäïìÝíùí</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> (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>[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>Áí äåí Ý÷åôå áíôéãñÜøåé ôá CDs óå äéáöïñåôéêïýò êáôáëüãïõò, ôüôå ôï ðñüãñáììá åãêáôÜóôáóçò ôïõ <application>&sap;</application> äå èá ìðïñÝóåé íá âñåé ôá CD ôá ïðïßá ÷ñåéÜæåôáé (êáé ôá ïðïßá áíáãíùñßæïíôáé áðü ôï áñ÷åßï <filename>LABEL.ASC</filename> ðïõ âñßóêåôáé ìÝóá óå áõôÜ) êáé èá óáò æçôçèåß íá åéóÜãåôå êáé ðñïóáñôÞóåôå ôá CD êáé íá åðéâåâáéþóåôå ôï óçìåßï ðñïóÜñôçóçò.</para> <para>Ôï <filename>CENTRDB.R3S</filename> ìðïñåß üìùò íá ðáñÜãåé ìåñéêÜ óöÜëìáôá. Óôç ðåñßðôùóÞ ìáò, ìáò æÞôçóå îáíÜ ôï EXPORT4 CD áëëÜ ìáò Ýäåéîå ôï óùóôü êëåéäß (6_LOCATION, ìåôÜ 7_LOCATION êëð.), êáé Ýôóé ìðïñåßôå íá óõíå÷ßóåôå âÜæïíôáò ôéò óùóôÝò ôéìÝò. </para> <para>Åêôüò áðü êÜðïéá ðñïâëÞìáôá ðïõ áíáöÝñïíôáé ðáñáêÜôù, ç åãêáôÜóôáóç èá ðñÝðåé íá êõëßóåé ïìáëÜ, ìÝ÷ñé ôï óçìåßï ðïõ èá ÷ñåéáóôåß íá åãêáôáóôÞóåôå ôç âÜóç äåäïìÝíùí ôçò &oracle;.</para> </sect3> <sect3 id="startr3setup-46C"> <title>Åêêßíçóç ôïõ <command>R3SETUP</command> 4.6C SR2</title> <para>Âåâáéùèåßôå üôé Ý÷åôå ïñßóåé óùóôÜ ôï <envar>LD_LIBRARY_PATH</envar>. Ç ôéìÞ ôçò ìåôáâëçôÞò åßíáé äéáöïñåôéêÞ áðü ôçí áíôßóôïé÷ç ôçò åãêáôÜóôáóçò ôïõ 4.6B ìå ôçí <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>ÎåêéíÞóôå ôï <command>R3SETUP</command> ùò <username>root</username> áðü ôïí êáôÜëïãï åãêáôÜóôáóçò:</para> <screen>&prompt.root; <userinput>cd /oracle/PRD/sapreorg/install</userinput> &prompt.root; <userinput>./R3SETUP -f CENTRAL.R3S</userinput></screen> <para>Tï script èá óáò êÜíåé ìåñéêÝò åñùôÞóåéò (ïé ðñïåðéëïãÝò öáßíïíôáé óå áãêýëåò êáé áêïëïõèïýíôáé áðü ôçí ðñáãìáôéêÞ åßóïäï):</para> <informaltable frame="none" pgwide="1"> <tgroup cols="3"> <thead> <row> <entry>Åñþôçóç</entry> <entry>ÐñïåðéëïãÞ</entry> <entry>ÅéóáãùãÞ äåäïìÝíùí</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>ÌÝ÷ñé óôéãìÞò, ç äçìéïõñãßá ÷ñçóôþí åìöáíßæåé Ýíá óöÜëìá êáôÜ ôç äéÜñêåéá ôçò åãêáôÜóôáóçò, óôéò öÜóåéò ôùí OSUSERDBSID_IND_ORA (ãéá ôç äçìéïõñãßá ôïõ ÷ñÞóôç <username>ora<replaceable>sid</replaceable></username>) êáé OSUSERSIDADM_IND_ORA (ãéá ôç äçìéïõñãßá ôïõ ÷ñÞóôç <username><replaceable>sid</replaceable>adm</username>). </para> <para>Åêôüò áðü ìåñéêÜ ðñïâëÞìáôá ðïõ áíáöÝñïíôáé ðáñáêÜôù, üëá èá ðñÝðåé íá êõëÞóïõí Þñåìá ìÝ÷ñé ôçí åãêáôÜóôáóç ôçò âÜóçò äåäïìÝíùí &oracle;.</para> </sect3> </sect2> <sect2 id="installingoracle805"> <title>ÅãêáôÜóôáóç ôçò &oracle; 8.0.5</title> <para>Ðáñáêáëïýìå, íá äåßôå ôéò áíôßóôïé÷åò óçìåéþóåéò ôùí &sap; êáé &oracle; <filename>Readme</filename> ó÷åôéêÜ ìå ôá ðñïâëÞìáôá ðïõ ìðïñåß íá ðñïêýøïõí êáôÜ ôçí åãêáôÜóôáóç ôïõ <application>&oracle; DB</application> óôï Linux. Ôá ðåñéóóüôåñá, áí ü÷é üëá, Ý÷ïõí íá êÜíïõí ìå áóõìâáôüôçôá âéâëéïèçêþí.</para> <para>Ãéá ðåñéóóüôåñåò ðëçñïöïñßåò ó÷åôéêÜ ìå ôçí åãêáôÜóôáóç ôçò <application>&oracle;</application>, äåßôå ôï <link linkend="linuxemu-oracle">êåöÜëáéï åãêáôÜóôáóçò ôçò &oracle;.</link></para> <sect3 id="installingtheoracle805withorainst"> <title>ÅãêáôÜóôáóç ôïõ &oracle; 8.0.5 ìå ôï <command>orainst</command></title> <para>Áí ðñüêåéôáé íá êÜíåôå ÷ñÞóç ôçò <application>&oracle; 8.0.5</application>, èá ÷ñåéáóôåßôå êÜðïéåò åðéðëÝïí âéâëéïèÞêåò ãéá åðéôõ÷Þ åðáíáóýíäåóç (relinking), êáèþò ç <application>&oracle; 8.0.5</application> åßíáé linked ìå ôçí ðáëéÜ Ýêäïóç ôïõ glibc (RedHat 6.0), áëëÜ Þäç áðü ôï RedHat 6.1 ÷ñçóéìïðïéåßôáé ìéá íÝá Ýêäïóç. ÅðïìÝíùò ÷ñåéÜæåôáé íá åãêáôáóôÞóåôå åðéðñüóèåôá ôá åðüìåíá ðáêÝôá ãéá íá âåâáéùèåßôå üôé ïé óýíäåóìïé èá äïõëÝøïõí:</para> <itemizedlist> <listitem><para><filename>compat-libs-5.2-2.i386.rpm</filename></para></listitem> <listitem><para><filename>compat-glibc-5.2-2.0.7.2.i386.rpm</filename></para></listitem> <listitem><para><filename>compat-egcs-5.2-1.0.3a.1.i386.rpm</filename></para></listitem> <listitem><para><filename>compat-egcs-c++-5.2-1.0.3a.1.i386.rpm</filename></para></listitem> <listitem><para><filename>compat-binutils-5.2-2.9.1.0.23.1.i386.rpm</filename></para></listitem> </itemizedlist> <para>Ãéá ðåñéóóüôåñåò ðëçñïöïñßåò äåßôå ôá áíôßóôïé÷á &sap; Notes Þ &oracle; <filename>Readme</filename>. Áí üìùò äåí Ý÷åôå áõôÞ ôçí åðéëïãÞ (êáôÜ ôç äéÜñêåéá ôçò åãêáôÜóôáóçò äåí åß÷áìå áñêåôü ÷ñüíï íá ôï åëÝãîïõìå), ìðïñåßôå íá ÷ñçóéìïðïéÞóåôå ôá áñ÷éêÜ åêôåëÝóéìá Þ åêôåëÝóéìá ôá ïðïßá Ý÷ïõí ãßíåé relink óå Ýíá êáíïíéêü óýóôçìá RedHat.</para> <para>Ãéá íá ìåôáãëùôôßóåôå ôïí intelligent agent, ðñÝðåé íá Ý÷åôå åãêáôåóôçìÝíï ôï ðáêÝôï RedHat Tcl. Áí äåí ìðïñåßôå íá âñåßôå ôï <filename>tcl-8.0.3-20.i386.rpm</filename>, ôüôå ôï íåüôåñï <filename>tcl-8.0.5-30.i386.rpm</filename> ãéá RedHat 6.1 èá ðñÝðåé åðßóçò íá äïõëÝøåé.</para> <para>Ìå åîáßñåóç ôï relinking, ç äéáäéêáóßá åãêáôÜóôáóçò åßíáé ó÷åôéêÜ áðëÞ:</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>Åðéâåâáéþóôå üëá ôá ìçíýìáôá ðáôþíôáò <keycap>Enter</keycap> Ýùò üôïõ ôï ëïãéóìéêü åãêáôáóôáèåß. Äåí èá ðñÝðåé íá åðéëÝîåôå üìùò ôï <emphasis>&oracle; On-Line Text Viewer</emphasis>, ìéáò êáé äåí åßíáé äéáèÝóéìï ãéá Linux. Óôçí ðåñßðôùóç áõôÞ, ç <application>&oracle;</application> ðñïóðáèåß íá êÜíåé relink ìå ôï <command>i386-glibc20-linux-gcc</command> áíôß ôïõ äéáèÝóéìïõ <command>gcc</command>, <command>egcs</command> Þ <command>i386-redhat-linux-gcc</command>.</para> <para>Ëüãù Ýëëåéøçò ÷ñüíïõ, áðïöáóßóáìå íá ÷ñçóéìïðïéÞóïõìå ôá Ýôïéìá åêôåëÝóéìá ôçò Ýêäïóçò <application>&oracle; 8.0.5 PreProduction</application>, ìåôÜ áðü ìéá áðïôõ÷çìÝíç ðñïóðÜèåéá íá êÜíïõìå ôçí Ýêäïóç áðü ôï RDBMS CD íá äïõëÝøåé, êáé ç åýñåóç êáé ðñüóâáóç óôá óùóôÜ RPMs åêåßíç ôç óôéãìÞ Þôáí óêÝôïò åöéÜëôçò. </para> </sect3> <sect3 id="installingtheoracle805preproduction"> <title>ÅãêáôÜóôáóç ôïõ &oracle; 8.0.5 Pre-production Release ãéá Linux (Kernel 2.0.33)</title> <para>ÁõôÞ ç åãêáôÜóôáóç åßíáé ó÷åôéêÜ åýêïëç. ÐñïóáñôÞóôå ôï CD êáé îåêéíÞóôå ôï ðñüãñáììá åãêáôÜóôáóçò. Èá åñùôçèåßôå óôç óõíÝ÷åéá ãéá ôïí áñ÷éêü (home) êáôÜëïãï ôçò &oracle;, üðïõ êáé èá áíôéãñáöïýí üëá ôá åêôåëÝóéìá. Ùóôüóï äåí äéáãñÜøáìå üôé áðÝìåéíå áðü ôéò ðñïçãïýìåíåò áðüðåéñåò ìáò åãêáôÜóôáóçò ôïõ RDBMS.</para> <para>Óôç óõíÝ÷åéá, ç âÜóç äåäïìÝíùí <application>&oracle;</application> èá ðñÝðåé íá îåêéíÞóåé äß÷ùò ðñïâëÞìáôá.</para> </sect3> </sect2> <sect2 id="installingoracle817"> <title>ÅãêáôÜóôáóç &oracle; 8.1.7 ãéá Linux áðü ÓõìðéåóìÝíï Áñ÷åßï </title> <para>ÐÜñôå ôï óõìðéåóìÝíï áñ÷åßï <filename>oracle81732.tgz</filename> ôï ïðïßï äçìéïõñãÞóáôå áðü ôïí êáôÜëïãï åãêáôÜóôáóçò åíüò óõóôÞìáôïò Linux, êáé áðïóõìðéÝóôå ôï óôï <filename>/oracle/<replaceable>SID</replaceable>/817_32/</filename>. </para> </sect2> <sect2 id="continuewithsapr4installation"> <title>ÓõíÝ÷åéá ôçò ÅãêáôÜóôáóçò ôïõ &sap.r3;</title> <para>Áñ÷éêÜ åëÝãîôå ôéò ñõèìßóåéò ðåñéâÜëëïíôïò ôùí ÷ñçóôþí <username>idsamd</username> (<replaceable>sid</replaceable>adm) êáé <username>oraids</username> (ora<replaceable>sid</replaceable>). Èá ðñÝðåé ôþñá íá Ý÷ïõí êáé ïé äýï ÷ñÞóôåò ôá áñ÷åßá <filename>.profile</filename>, <filename>.login</filename> êáé <filename>.cshrc</filename> ôá ïðïßá üëá ÷ñçóéìïðïéïýí ôï <command>hostname</command>. Óå ðåñßðôùóç ðïõ ôï üíïìá ôïõ óõóôÞìáôïò ðåñéëáìâÜíåé êáé ôï domain, áíôéêáôáóôÞóôå ôï <command>hostname</command> ìå ôï <command>hostname -s</command> óå üëá ôá áñ÷åßá.</para> <sect3 id="databaseload"> <title>Öüñôùóç ôçò ÂÜóçò ÄåäïìÝíùí</title> <para>Óôç óõíÝ÷åéá, áíÜëïãá ìå ôï áí åß÷áôå ðñéí åðéëÝîåé Ýîïäï Þ ü÷é, ìðïñåßôå åßôå íá îåêéíÞóåôå ôï <command>R3SETUP</command> áðü ôçí áñ÷Þ, Þ íá óõíå÷ßóåôå ôçí åêôÝëåóç ôïõ. Ôï <command>R3SETUP</command> èá äçìéïõñãÞóåé êáé èá öïñôþóåé ôá áñ÷éêÜ äåäïìÝíá ôçò âÜóçò (ãéá 46B IDES, áðü ôá EXPORT1 óå EXPORT6, ãéá 46C áðü DISK1 óå DISK4) êÜíïíôáò ÷ñÞóç ôïõ <command>R3load</command>.</para> <para>¼ôáí ç öüñôùóç ôçò âÜóçò äåäïìÝíùí ïëïêëçñùèåß (ìðïñåß íá ÷ñåéáóôïýí ìåñéêÝò þñåò), èá ÷ñåéáóôåß íá ïñßóåôå ìåñéêïýò êùäéêïýò. Ãéá äïêéìáóôéêÝò åãêáôáóôÜóåéò, ìðïñåßôå íá ÷ñçóéìïðïéÞóåôå ôïõò ãíùóôïýò ðñïåðéëåãìÝíïõò êùäéêïýò (áí õðÜñ÷åé èÝìá áóöÜëåéáò, ÷ñçóéìïðïéÞóôå äéáöïñåôéêïýò!): </para> <informaltable frame="none" pgwide="1"> <tgroup cols="2"> <thead> <row> <entry>Åñþôçóç</entry> <entry>Åßóïäïò äåäïìÝíùí</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>Óå áõôü ôï óçìåßï åß÷áìå ìåñéêÜ ðñïâëÞìáôá ìå ôçí åíôïëÞ <command>dipgntab</command> êáôÜ ôçí åãêáôÜóôáóç ôïõ 4.6B.</para> </sect3> <sect3 id="listener"> <title>Listener</title> <para>ÎåêéíÞóôå ôïí <application>&oracle;</application> Listener ùò ÷ñÞóôçò <username>ora<replaceable>sid</replaceable></username> ìå ôïí áêüëïõèï ôñüðï:</para> <screen>&prompt.user; <userinput>umask 0; lsnrctl start</userinput></screen> <para>Áí äå ôï êÜíåôå, ìðïñåß íá óáò åìöáíéóôåß ôï óöÜëìá <errorcode>ORA-12546</errorcode> êáèþò óôá sockets äåí èá Ý÷ïõí ïñéóôåß ïé êáôÜëëçëåò Üäåéåò. Äåßôå ôçí Óçìåßùóç 072984 ôïõ &sap;.</para> </sect3> <sect3 id="mnlstables"> <title>Áíáíåþíïíôáò ôïõò Ðßíáêåò MNLS</title> <para>Áí Ý÷åôå óêïðü íá åéóÜãåôå ãëþóóåò åêôüò ôùí Latin-1 óôï <application>&sap;</application>, èá ðñÝðåé íá áíáíåþóåôå ôïõò ðßíáêåò Multi National Language Support. Áôü ðåñéãñÜöåôáé óôá &sap; OSS Notes 15023 êáé 45619. Ìðïñåßôå üìùò áí èÝëåôå íá ðáñáêÜìøåôå áõôü ôï âÞìá êáôÜ ôçí åãêáôÜóôáóç ôïõ <application>&sap;</application>.</para> <note> <para>Áêüìç êáé áí äåí ÷ñåéÜæåóôå ôï MNLS, èá ÷ñåéáóôåß íá åëÝãîåôå ôïí ðßíáêá TCPDB êáé íá ôïí áñ÷éêïðïéÞóåôå, áí áõôü äåí Ý÷åé Þäç ãßíåé. Äåßôå óôï &sap; ôéò óçìåéþóåéò 0015023 êáé 0045619 ãéá ðåñéóóüôåñåò ðëçñïöïñßåò.</para> </note> </sect3> </sect2> <sect2 id="postinstallationsteps"> <title>ÂÞìáôá ÌåôÜ ôçí ÅãêáôÜóôáóç</title> <sect3 id="requestsapr3licensekey"> <title>¶äåéá ÷ñÞóçò ãéá ôï &sap.r3;</title> <para>Èá ðñÝðåé íá æçôÞóåôå Ýíá Êëåéäß ¶äåéáò - License Key - ãéá ôï <application>&sap.r3;</application>. Ôï ÷ñåéÜæåóôå, ìéáò êáé ç ðñïóùñéíÞ Üäåéá ðïõ ÷ñçóéìïðïéÞóáôå êáôÜ ôçí åãêáôÜóôáóç, Ý÷åé éó÷ý ìüíï ãéá ôÝóóåñéò åâäïìÜäåò. ÐñÝðåé ðñþôá íá áðïêôÞóåôå ôï hardware key. Óõíäåèåßôå ùò ÷ñÞóôçò <username>idsadm</username> êáé åêôåëÝóôå ôï <command>saplicense</command>:</para> <screen>&prompt.root; <userinput>/sapmnt/IDS/exe/saplicense -get</userinput></screen> <para>Åêôåëþíôáò ôï <command>saplicense</command> ÷ùñßò ðáñáìÝôñïõò, óáò äßíåé ìéá ëßóôá åðéëïãþí. ¼ôáí ëÜâåôå ôï êëåéäß Üäåéáò, ìðïñåßôå íá ôï åãêáôáóôÞóåôå ìå ôïí ðáñáêÜôù ôñüðï:</para> <screen>&prompt.root; <userinput>/sapmnt/IDS/exe/saplicense -install</userinput></screen> <para>Óôç óõíÝ÷åéá, èá ÷ñåéáóôåß íá åéóÜãåôå ôéò áêüëïõèåò ôéìÝò: </para> <programlisting>SAP SYSTEM ID = <replaceable>SID, 3 chars</replaceable> CUSTOMER KEY = <replaceable>hardware key, 11 chars</replaceable> INSTALLATION NO = <replaceable>installation, 10 digits</replaceable> EXPIRATION DATE = <replaceable>yyyymmdd, usually "99991231"</replaceable> LICENSE KEY = <replaceable>license key, 24 chars</replaceable></programlisting> </sect3> <sect3 id="creatingusers"> <title>Äçìéïõñãßá ×ñçóôþí</title> <para>ÄçìéïõñãÞóôå Ýíáí íÝï ÷ñÞóôç óôï client 000 (ãéá ìåñéêÝò åñãáóßåò ðïõ ÷ñåéÜæåôáé íá ãßíïõí ìÝóá óôï client 000, áëëÜ ìå ÷ñÞóôç äéáöïñåôéêü áðü ôïõò <username>sap*</username> êáé <username>ddic</username>). Ùò üíïìá ÷ñÞóôç óõíÞèùò åðéëÝãïõìå ôï <username>wartung</username> (Þ <username>service</username> óôá ÁããëéêÜ). Ôá ðñïößë ðïõ ÷ñåéÜæïíôáé åßíáé ôá <literal>sap_new</literal> êáé <literal>sap_all</literal>. Ãéá åðéðëÝïí áóöÜëåéá, ïé êùäéêïß ôùí ðñïåðéëåãìÝíùí ÷ñçóôþí óå üëïõò ôïõò clients èá ðñÝðåé íá áëëá÷èïýí (áõôü ðåñéëáìâÜíåé êáé ôïõò ÷ñÞóôåò <username>sap*</username> êáé <username>ddic</username>). </para> </sect3> <sect3 id="configtranssysprofileopermodesetc"> <title>Ñýèìéóç ôùí Transport System, Profile, Operation Modes, êëð. </title> <para>ÌÝóá óôï client 000, ÷ñÞóôåò åêôüò ôùí <username>ddic</username> êáé <username>sap*</username>, ìðïñïýí íá êÜíïõí ôïõëÜ÷éóôïí ôá áêüëïõèá:</para> <informaltable frame="none" pgwide="1"> <tgroup cols="2"> <thead> <row> <entry>Åñãáóßá</entry> <entry>Transaction (ÓõíáëëáãÞ)</entry> </row> </thead> <tbody> <row> <entry>Ñýèìéóç ôïõ Transport System, ð.÷. ùò <emphasis>Stand-Alone Transport Domain Entity</emphasis></entry> <entry>STMS</entry> </row> <row> <entry>Äçìéïõñãßá / ôñïðïðïßçóç ôïõ Profile ÓõóôÞìáôïò</entry> <entry>RZ10</entry> </row> <row> <entry>ÓõíôÞñçóç Operation Modes êáé Instances</entry> <entry>RZ04</entry> </row> </tbody> </tgroup> </informaltable> <para>Áõôü êáé üëá ôá õðüëïéðá âÞìáôá ó÷åôéêÜ ìå ôéò ñõèìßóåéò ìåôÜ ôçí åãêáôÜóôáóç ðåñéãñÜöïíôáé óôïõò ïäçãïýò åãêáôÜóôáóçò ôïõ <application>&sap;</application>.</para> </sect3> <sect3 id="editintsidsap"> <title>Ôñïðïðïßçóç ôïõ <filename>init<replaceable>sid</replaceable>.sap</filename> (<filename>initIDS.sap</filename>)</title> <para>Ôï áñ÷åßï <filename>/oracle/IDS/dbs/initIDS.sap</filename> ðåñéÝ÷åé ôï áíôßãñáöï áóöáëåßáò ôïõ ðñïößë ôïõ <application>&sap;</application>. Åäþ ÷ñåéÜæåôáé íá ïñßóåôå ôï ìÝãåèïò ôçò ôáéíßáò ðïõ èá ÷ñçóéìïðïéçèåß, ôïí ôýðï óõìðßåóçò êáé üëá ôá ó÷åôéêÜ. Ãéá íá ìðïñÝóïõìå íá ôï åêôåëÝóïõìå ìå ôï <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>ÅðåîçãÞóåéò:</para> <para><varname>compress</varname>: Ç ôáéíßá ðïõ ÷ñçóéìïðïéïýìå åßíáé ìßá HP DLT1 ç ïðïßá ðáñÝ÷åé óõìðßåóç ìÝóù õëéêïý.</para> <para><varname>archive_function</varname>: Áõôü ïñßæåé ôïí ðñïåðéëåãìÝíï ôñüðï ìå ôïí ïðïßï èá áðïèçêåýïíôáé ôá áñ÷åéïèåôçìÝíá logs ôçò &oracle;: ôá íÝá logs áðïèçêåýïíôáé óôçí ôáéíßá, ôá Þäç áðïèçêåõìÝíá áðïèçêåýïíôáé îáíÜ êáé óôç óõíÝ÷åéá äéáãñÜöïíôáé. Áõôü óáò óþæåé áðü ôç ôáëáéðùñßá áí ÷ñåéáóôåß íá áíáêôÞóåôå ôç âÜóç äåäïìÝíùí óå ðåñßðôùóç ðïõ ìéá áðü ôéò ôáéíßåò Ý÷åé ðñüâëçìá.</para> <para><varname>cpio_flags</varname>: ÐñïåðéëåãìÝíç åßíáé ç ÷ñÞóç ôïõ <option>-B</option> ôï ïðïßï ïñßæåé ôï ìÝãåèïò êÜèå block óôá 5120 Bytes. Ãéá ôáéíßåò DLT, ç HP ðñïôåßíåé ôï ëéãüôåñï 32 K ìÝãåèïò block, ïðüôå êé åìåßò äþóáìå <option>--block-size=128</option> ãéá 64 K. Ôï <option>--format=newc</option> ÷ñåéÜæåôáé äéüôé Ý÷ïõìå inode ìå áñßèìçóç ìåãáëýôåñç áðü 65535. Ç ôåëåõôáßá ðáñÜìåôñïò <option>--quiet</option> ÷ñåéÜæåôáé ãéáôß äéáöïñåôéêÜ ôï <command>brbackup</command> èá ðáñáðïíåèåß ìå ðïõ ôï <command>cpio</command> åìöáíßóåé ôïí áñéèìü ôùí blocks ðïõ Ý÷ïõí áðïèçêåõôåß.</para> <para><varname>cpio_in_flags</varname>: Ôá Flags ÷ñåéÜæïíôáé ðñïêåéìÝíïõ íá öïñôùèïýí ôá äåäïìÝíá áðü ôç ôáéíßá. Ç ìïñöÞ áíé÷íåýåôáé áõôüìáôá.</para> <para><varname>tape_size</varname>: Ç ðáñÜìåñïò áõôÞ äßíåé ÷ïíôñéêÜ ôï ìÝãåèïò ÷ùñçôéêüôçôáò ôçò ôáéíßáò. Ãéá ëüãïõò áóöÜëåéáò (÷ñçóéìïðïéïýìå hardware óõìðßåóç), ç ôéìÞ ôçò ðáñáìÝôñïõ åßíáé ëßãï ìéêñüôåñç áðü ôï ðñáãìáôéêü ìÝãåèïò.</para> <para><varname>tape_address</varname>: Ôï üíïìá óõóêåõÞò (÷ùñßò äõíáôüôçôá åðáíáôýëéîçò ôçò ôáéíßáò) ðïõ èá ÷ñçóéìïðïéçèåß ìå ôï <command>cpio</command>.</para> <para><varname>tape_address_rew</varname>: Ôï üíïìá óõóêåõÞò (ìå äõíáôüôçôá åðáíáôýëéîçò ôçò ôáéíßáò) ðïõ èá ÷ñçóéìïðïéçèåß ìå ôï <command>cpio</command>.</para> </sect3> <sect3> <title>Ñõèìßóåéò ÌåôÜ ôçí ÅãêáôÜóôáóç</title> <para>Ïé áêüëïõèïé ðáñÜìåôñïé ôïõ <application>&sap;</application> èá ðñÝðåé íá ñõèìéóôïýí ìåôÜ ôçí åãêáôÜóôáóç (ðáñáäåßãìáôá ãéá IDES 46B, êáé ìíÞìç 1 GB):</para> <informaltable frame="none" pgwide="1"> <tgroup cols="2"> <thead> <row> <entry>¼íïìá</entry> <entry>ÔéìÞ</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; Óçìåßùóç 0013026:</para> <informaltable frame="none" pgwide="1"> <tgroup cols="2"> <thead> <row> <entry>¼íïìá</entry> <entry>ÔéìÞ</entry> </row> </thead> <tbody> <row> <entry>ztta/dynpro_area</entry> <entry>2500000</entry> </row> </tbody> </tgroup> </informaltable> <para>&sap; Óçìåßùóç 0157246:</para> <informaltable frame="none" pgwide="1"> <tgroup cols="2"> <thead> <row> <entry>¼íïìá</entry> <entry>ÔéìÞ</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>Ìå ôéò ðáñáðÜíù ðáñáìÝôñïõò óå Ýíá óýóôçìá ìå 1 gigabyte ìíÞìçò, ìðïñåß íá äåßôå êÜôé óáí ôï ðáñáêÜôù üóï áöïñÜ ôçí êáôáíÜëùóç ìíÞìçò:</para> <programlisting>Mem: 547M Active, 305M Inact, 109M Wired, 40M Cache, 112M Buf, 3492K Free</programlisting> </note> </sect3> </sect2> <sect2 id="problemsduringinstallation"> <title>ÐñïâëÞìáôá êáôÜ ôçí ÅãêáôÜóôáóç</title> <sect3 id="restartr3setup"> <title>Åðáíåêêßíçóç ôïõ <command>R3SETUP</command> ìåôÜ ôç Äéüñèùóç ÐñïâëÞìáôïò</title> <para>Ôï <command>R3SETUP</command> èá óôáìáôÞóåé áí áíôéëçöèåß êÜðïéï óöÜëìá. Áí êïéôÜîåôå êáëÜ ôá logfiles êáé äéïñèþóåôå ôï óöÜëìá, èá ðñÝðåé íá îåêéíÞóåôå ôï <command>R3SETUP</command> áðü ôçí áñ÷Þ, óõíÞèùò åðéëÝãïíôáò REPEAT óôï ôåëåõôáßï âÞìá ãéá ôï ïðïßï ðáñáðïíÝèçêå ôï <command>R3SEÔUP</command>.</para> <para>Ãéá íá åðáíåêêéíÞóåôå ôï <command>R3SETUP</command>, áðëþò äþóôå ôç ðáñáêÜôù åíôïëÞ ìå ôï áíôßóôïé÷ï áñ÷åßï <filename>R3S</filename>:</para> <screen>&prompt.root; <userinput>./R3SETUP -f CENTRDB.R3S</userinput></screen> <para>ãéá ôçí Ýêäïóç 4.6B, Þ ôçí åíôïëÞ</para> <screen>&prompt.root; <userinput>./R3SETUP -f CENTRAL.R3S</userinput></screen> <para>ãéá ôçí Ýêäïóç 4.6C, ÷ùñßò íá Ý÷åé óçìáóßá áí ôï óöÜëìá ðñïêëÞèçêå áðü ôï <filename>CENTRAL.R3S</filename> Þ ôï <filename>DATABASE.R3S</filename>.</para> <note> <para>Óå êÜðïéá óôÜäéá, ôï <command>R3SETUP</command> õðïèÝôåé üôé ôüóï ç âÜóç äåäïìÝíùí üóï êáé ôï <application>&sap;</application> Ý÷ïõí îåêéíÞóåé êáé åêôåëïýíôáé êáíïíéêÜ (êáèþò ðñüêåéôáé ãéá âÞìáôá ðïõ Ý÷ïõí Þäç ïëïêëçñùèåß). Áí ðñïêýøïõí ëÜèç, êáé ãéá ðáñÜäåéãìá äåí ìðüñåóå íá îåêéíÞóåé ç âÜóç, îåêéíÞóôå ôç âÜóç êáé ôï <application>&sap;</application> ìå ôï ÷Ýñé, áöïý äéïñèþóåôå ôá ëÜèç êáé ðñéí åêôåëÝóåôå îáíÜ ôï <command>R3SETUP</command>. </para> <para>Ìç îå÷Üóåôå åðßóçò íá åêêéíÞóåôå ôï <application>&oracle;</application> listener (åêôåëÝóôå ôï ùò ÷ñÞóôçò <username>ora<replaceable>sid</replaceable></username> ìå <command>umask 0; lsnrctl start</command>) áí åß÷å äéáêïðåß êáé áõôü (ãéá ðáñÜäåéãìá óå ìéá áíáãêáßá åðáíåêêßíçóç ôïõ óõóôÞìáôïò).</para> </note> </sect3> <sect3 id="indoraduringduringr3setup"> <title>OSUSERSIDADM_IND_ORA êáôÜ ôï <command>R3SETUP</command></title> <para>Áí ôï <command>R3SETUP</command> ðáñáðïíéÝôáé óå áõôü ôï óçìåßï, ôñïðïðïéÞóôå ôï ðñüôõðï áñ÷åßï ôïõ <command>R3SETUP</command> ðïõ ÷ñçóéìïðïéåßôáé åêåßíç ôç óôéãìÞ (ôï <filename>CENTRDB.R3S</filename> (4.6B) Þ êÜðïéï áðü ôá <filename>CENTRAL.R3S</filename> Þ ôï <filename>DATABASE.R3S</filename> (4.6C)). Âñåßôå ôï <literal>[OSUSERSIDADM_IND_ORA]</literal> Þ øÜîôå ìÝóá óôï áñ÷åßï ãéá ôç ìïíáäéêÞ åããñáöÞ <literal>STATUS=ERROR</literal> êáé ðñïóèÝóôå ôá ðáñáêÜôù:</para> <programlisting>HOME=/home/<replaceable>sid</replaceable>adm (was empty) STATUS=OK (had status ERROR) </programlisting> <para>Óôç óõíÝ÷åéá ìðïñåßôå íá îåêéíÞóåôå êáé ðÜëé ôï <command>R3SETUP</command>.</para> </sect3> <sect3 id="indoraduringr3setup"> <title>OSUSERDBSID_IND_ORA êáôÜ ôï <command>R3SETUP</command></title> <para>Ðéèáíü åßíáé íá õðÜñ÷åé ðñüâëçìá êáé óå áõôü ôï âÞìá ìå ôï <command>R3SETUP</command>. Ôï ðñüâëçìá åäþ åßíáé ðáñüìïéï ìå ôï ðñïçãïýìåíï, ôïõ OSUSERSIDADM_IND_ORA. ÁðëÜ ôñïðïðïéÞóôå ôï áñ÷åßï ðñïôýðïõ ðïõ ÷ñçóéìïðïéåßôå ìå ôï <command>R3SETUP</command> (<filename>CENTRDB.R3S</filename> (4.6B) Þ êÜðïéï áðü ôá <filename>CENTRAL.R3S</filename> Þ <filename>DATABASE.R3S</filename> (4.6C)). Âñåßôå ôï <literal>[OSUSERDBSID_IND_ORA]</literal> Þ øÜîôå ìÝóá óôï áñ÷åßï ãéá ôçí ìïíáäéêÞ åããñáöÞ <literal>STATUS=ERROR</literal> êáé ðñïóèÝóôå ôá ðáñáêÜôù:</para> <programlisting>STATUS=OK</programlisting> <para>Ôþñá ôñÝîôå îáíÜ ôï <command>R3SETUP</command>.</para> </sect3> <sect3 id="oraviewvrffilenotfound"> <title><errorname>oraview.vrf FILE NOT FOUND</errorname> êáôÜ ôç äéÜñêåéá ÅãêáôÜóôáóçò ôçò &oracle;</title> <para>Ôï óöÜëìá áõôü óçìáßíåé üôé Ý÷åôå åðéëÝîåé ôï <emphasis>&oracle; On-Line Text Viewer</emphasis> ðñéí îåêéíÞóåôå ôçí åãêáôÜóôáóç. Ç åðéëïãÞ áõôÞ åßíáé ðñïåðéëåãìÝíç, ðáñ' üëï ðïõ äåí åßíáé äéáèÝóéìç óôï Linux. ÁöáéñÝóôå ëïéðüí áõôÞ ôçí åðéëïãÞ áðü ôï ìåíïý åãêáôÜóôáóçò êáé îåêéíÞóôå îáíÜ.</para> </sect3> <sect3 id="textenvincalid"> <title><errorname>TEXTENV_INVALID</errorname> êáôÜ ôçí ÅêôÝëåóç <command>R3SETUP</command>, ôïõ RFC Þ ôïõ SAPgui</title> <para>Áí âñåèåßôå áíôéìÝôùðïé ìå áõôü ôï óöÜëìá, ôüôå äåí Ý÷åôå ôéò óùóôÝò ôïðéêÝò ñõèìßóåéò. Ç óçìåßùóç 0171356 ôïõ &sap; áíáöÝñåé üëá ôá RPMs ðïõ ÷ñåéÜæïíôáé íá åãêáôáóôáèïýí (ð.÷. <filename>saplocales-1.0-3</filename>, <filename>saposcheck-1.0-1</filename> ãéá RedHat 6.1). Óôçí ðåñßðôùóç ðïõ áãíïÞóáôå üëá ôá ó÷åôéêÜ ëÜèç, êáé áí áêüìç Ý÷åôå ïñßóåé ôï <literal>STATUS</literal> áðü <literal>ERROR</literal> óå <literal>OK</literal> (óôï <filename>CENTRDB.R3S</filename>) êÜèå öïñÜ ðïõ ðáñáðïíéüôáí ôï <command>R3SETUP</command> êáé áðëþò ôï îåêéíïýóáôå áðü ôçí áñ÷Þ, ôï <application>&sap;</application> äåí èá ñõèìéóôåß óùóôÜ êáé äåí èá ìðïñåßôå íá óõíäåèåßôå óôï óýóôçìá ìÝóù ôïõ <application>SAPgui</application>, áêüìç êáé áí ôï óýóôçìá óáò Ý÷åé îåêéíÞóåé. Ðñïóðáèþíôáò íá óõíäåèïýìå ìå ôï ðáëéü <application>SAPgui</application> Linux, åìöáíßóôçêå ôï ðáñáêÜôù óöÜëìá:</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>Ç óõìðåñéöïñÜ áõôÞ ïöåßëåôáé óôï üôé ôï <application>&sap.r3;</application> äåí ìðïñåß íá ïñßóåé óùóôÜ ôéò ôïðéêÝò ñõèìßóåéò êáé äåí ìðïñåß óôç óõíÝ÷åéá íá ñõèìßóåé ôïí åáõôü ôïõ (åëëåéðÞ äåäïìÝíá óôç âÜóç äåäïìÝíùí). Ãéá íá ìðïñÝóåôå íá óõíäåèåßôå ðñïóèÝóôå ôéò ðáñáêÜôù êáôá÷ùñÞóåéò óôï <filename>DEFAULT.PFL</filename> (äåßôå Óçìåßùóç 0043288):</para> <programlisting>abap/set_etct_env_at_new_mode = 0 install/collate/active = 0 rscp/TCP0B = TCP0B</programlisting> <para>ÎåêéíÞóôå îáíÜ ôï <application>&sap;</application>. Ôþñá ìðïñåßôå íá óõíäåèåßôå áêüìç êáé áí ïé ñõèìßóåéò ÷þñáò êáé ãëþóóáò äå äïõëåýïõí üðùò èá Ýðñåðå. Áöïý äéïñèþóåôå ôéò ñõèìßóåéò ôçò ÷þñáò (êáé ïñßóåôå ôéò óùóôÝò ôïðéêÝò ñõèìßóåéò), ìðïñåßôå íá áöáéñÝóåôå ôá ðáñáðÜíù áðü ôï <filename>DEFAULT.PFL</filename> êáé íá åêôåëÝóåôå ôï <application>&sap;</application> áðü ôçí áñ÷Þ. </para> </sect3> <sect3 id="ora-00001"> <title><errorcode>ORA-00001</errorcode></title> <para>Ôï óöÜëìá áõôü ôï óõíáíôÞóáìå ìüíï ìå ôï <application>&oracle; 8.1.7</application> óôï &os;. Ï ëüãïò Þôáí üôé ç âÜóç <application>&oracle;</application> äåí ìðïñïýóå íá ïñßóåé ôéò óùóôÝò ðáñáìÝôñïõò ãéá ôçí åêêßíçóÞ ôçò ìå áðïôÝëåóìá íá êïëëÜåé, áöÞíïíôáò óçìáôïöïñåßò êáé êïéíü÷ñçóôç ìíÞìç óôï óýóôçìá. Ç åðüìåíç ðñïóðÜèåéá íá îåêéíÞóïõìå ôç âÜóç äåäïìÝíùí ìáò åìöÜíéóå ôï óöÜëìá <errorcode>ORA-00001</errorcode>.</para> <para>Âñåßôå ôïõò ìå ôçí åíôïëÞ <command>ipcs -a</command> êáé áöáéñÝóôå ôïõò ìå ôçí <command>ipcrm</command>.</para> </sect3> <sect3 id="ora-00445pmon"> <title><errorcode>ORA-00445</errorcode> (Background Process PMON Did Not Start)</title> <para>Ôï óöÜëìá áõôü ìðïñåß íá åìöáíéóôåß ìå ôï <application>&oracle; 8.1.7</application> üôáí ç âÜóç äåäïìÝíùí Ý÷åé åêêéíçèåß ìå ôï script <command>startsap</command> (ãéá ðáñÜäåéãìá <command>startsap_majestix_00</command>) êáé óáí ÷ñÞóôçò <username>prdadm</username>.</para> <para>Ìéá ðéèáíÞ ëýóç åßíáé íá îåêéíÞóåôå ôç âÜóç ùò ÷ñÞóôçò <username>oraprd</username> êáé ìÝóù ôïõ <command>svrmgrl</command>:</para> <screen>&prompt.user; <userinput>svrmgrl</userinput> SVRMGR> <userinput>connect internal;</userinput> SVRMGR> <userinput>startup</userinput>; SVRMGR> <userinput>exit</userinput></screen> </sect3> <sect3 id="ora-12546"> <title><errorcode>ORA-12546</errorcode> (ÎåêéíÞóôå ôïí Listener ìå ôéò ÓùóôÝò ¶äåéåò)</title> <para>ÎåêéíÞóôå ôïí <application>&oracle;</application> listener ùò ÷ñÞóôçò <username>oraids</username>, ìå ôéò áêüëïõèåò åíôïëÝò: </para> <screen>&prompt.root; <userinput>umask 0; lsnrctl start</userinput></screen> <para>ÄéáöïñåôéêÜ ìðïñåß íá åìöáíéóôåß ôï óöÜëìá <errorcode>ORA-12546</errorcode> ðïõ óçìáßíåé üôé ôá sockets äåí Ý÷ïõí óùóôÝò Üäåéåò. Äåßôå ôç óçìåßùóç 0072984 ôïõ &sap;.</para> </sect3> <sect3 id="ora-27102"> <title><errorcode>ORA-27102</errorcode> (¸ëëåéøç ìíÞìçò)</title> <para>Ôï ðñüâëçìá áõôü ðáñïõóéÜóôçêå üôáí ÷ñçóéìïðïéÞóáìå ôéìÝò ìåãáëýôåñåò ôïõ 1 GB (1024X1024X1024) óôéò ìåôáâëçôÝò <literal>MAXDSIZ</literal> êáé <literal>DFLDSIZ</literal>. ÅðéðëÝïí, ìáò åìöáíßóôçêå ôï óöÜëìá <errorname>Linux Error 12: Cannot allocate memory</errorname>.</para> </sect3> <sect3 id="dipgntabindind"> <title>[DIPGNTAB_IND_IND] êáôÜ ôçí ÅêôÝëåóç ôïõ <command>R3SETUP</command></title> <para>Óå ãåíéêÝò ãñáììÝò, äåßôå ôç óçìåßùóç 0130581 ôïõ &sap; (<command>R3SETUP</command> step <literal>DIPGNTAB</literal> terminates). ÊáôÜ ôçí åãêáôÜóôáóç IDES, ãéá êÜðïéï ëüãï ç äéáäéêáóßá åãêáôÜóôáóçò äå ÷ñçóéìïðïéïýóå ôï óùóôü üíïìá óõóôÞìáôïò ôïõ <application>&sap;</application> <quote>IDS</quote>, áëëÜ ôï êåíü <literal>""</literal>. Áõôü ïäçãåß óå êÜðïéá ìéêñÜ ðñïâëÞìáôá ìå ôç ðñüóâáóç óôïõò êáôáëüãïõò ìéá êáé ôá ìïíïðÜôéá äçìéïõñãïýíôáé äõíáìéêÜ ìå ôç ÷ñÞóç ôïõ <replaceable>SID</replaceable> (óôç ðåñßðôùóÞ ìáò IDS). ÐñÜãìá ðïõ óçìáßíåé üôé áíôß íá ãßíåé ç ðñüóâáóç óôï:</para> <programlisting>/usr/sap/IDS/SYS/... /usr/sap/IDS/DVMGS00</programlisting> <para>èá ðñïóðáèÞóåé íá ãßíåé óôï:</para> <programlisting>/usr/sap//SYS/... /usr/sap/D00</programlisting> <para>Ãéá íá óõíå÷ßóïõìå ìå ôçí åãêáôÜóôáóç, äçìéïõñãÞóáìå Ýíáí óýíäåóìï êáé Ýíáí åðéðëÝïí êáôÜëïãï:</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>Ôï ðñüâëçìá áõôü ôï åßäáìå åðßóçò óôéò óçìåéþóåéò 0029227 êáé 0008401 ôïõ &sap;. Äåí áíôéìåôùðßóáìå üìùò êáíÝíá áðü áõôÜ ôá ðñïâëÞìáôá ìå ôçí åãêáôÜóôáóç ôïõ <application>&sap; 4.6C</application>.</para> </sect3> <sect3 id="rfcrswboiniindind"> <title>[RFCRSWBOINI_IND_IND] êáôÜ ôçí ÅêôÝëåóç ôïõ <command>R3SETUP</command></title> <para>Ôï óöÜëìá áõôü åìöáíßóôçêå êáôÜ ôçí åãêáôÜóôáóç ôïõ <application>&sap; 4.6C</application>, êáé Þôáí ôï áðïôÝëåóìá åíüò Üëëïõ óöÜëìáôïò ðïõ ðñïÝêõøå íùñßôåñá óôçí åãêáôÜóôáóç. Óå ôÝôïéåò ðåñéðôþóåéò èá ðñÝðåé íá äåßôå ôá áíôßóôïé÷á logfiles êáé íá äéïñèþóåôå ôï áñ÷éêü ðñüâëçìá. </para> <para>Áí áöïý åëÝãîåôå ôá logfiles äéáðéóôþóåôå üôé ôï óöÜëìá åßíáé ðñÜãìáôé áõôü (êïéôÜîôå ôéò óçìåéþóåéò ôïõ &sap;), ìðïñåßôå íá ïñßóåôå ôï <literal>STATUS</literal> óå áõôü ôï âÞìá áðü <literal>ERROR</literal> óå <literal>OK</literal> (óôï áñ÷åßï <filename>CENTRDB.R3S</filename>) êáé íá åêôåëÝóåôå îáíÜ ôï <command>R3SETUP</command>. ÌåôÜ ôçí åãêáôÜóôáóç, ðñÝðåé íá åêôåëÝóåôå ôï <literal>RSWBOINS</literal> áðü ôç óõíáëëáãÞ SE38. Äåßôå ôç óçìåßùóç 0162266 ôïõ &sap; ãéá ôá <literal>RFCRSWBOINI</literal> êáé <literal>RFCRADDBDIF</literal>.</para> </sect3> <sect3 id="rfcraddbdifindind"> <title>[RFCRADDBDIF_IND_IND] êáôÜ ôçí ÅêôÝëåóç <command>R3SETUP</command></title> <para>¼ðùò êáé ðñéí, êáé åäþ éó÷ýåé ç ßäéá ëïãéêÞ: óéãïõñåõôåßôå ðïéï åßíáé ôï ðñùôáñ÷éêü óöÜëìá êïéôÜæïíôáò ôá logfiles.</para> <para>Áí åðéâåâáéþóåôå üôé ç óçìåßùóç ôïõ &sap; 0162266 áíôáðïêñßíåôáé óôï ðñüâëçìÜ óáò, áðëÜ ïñßóôå ôï <literal>STATUS</literal> óå áõôü ôï âÞìá áðü <literal>ERROR</literal> óå <literal>OK</literal> (óôï áñ÷åßï <filename>CENTRDB.R3S</filename>) êáé ôñÝîôå ðÜëé ôï <command>R3SETUP</command>. ÌåôÜ ôçí åãêáôÜóôáóç, ðñÝðåé íá åêôåëÝóåôå ôï <literal>RADDBDIF</literal> áðü ôç óõíáëëáãÞ SE38.</para> </sect3> <sect3 id="sigactionsig31"> <title><errorcode>sigaction sig31: File size limit exceeded</errorcode></title> <para>Ôï óöÜëìá áõôü ìðïñåß íá åìöáíéóôåß êáôÜ ôçí åêêßíçóç ôùí äéåñãáóéþí ôïõ <application>&sap;</application> <emphasis>disp+work</emphasis>. Áí îåêéíÞóåôå ôï <application>&sap;</application> ìå ôï script <command>startsap</command>, ïé õðïäéåñãáóßåò èá áñ÷ßóïõí ìüíåò ôïõò, îåêéíþíôáò ôéò õðüëïéðåò äéåñãáóßåò ðïõ áðáéôïýíôáé áðü ôï <application>&sap;</application>. Áõôü Ý÷åé ùò áðïôÝëåóìá ôï ßäéï ôï script íá ìçí ãíùñßæåé áí êÜôé ðÞãå óôñáâÜ.</para> <para>Ãéá íá åëÝãîåôå áí üíôùò îåêßíçóáí óùóôÜ ïé äéåñãáóßåò ôïõ <application>&sap;</application>, ñßîôå ìéá ìáôéÜ óôç ëßóôá äéåñãáóéþí ìå ôçí åíôïëÞ <command>ps ax | grep <replaceable>SID</replaceable></command>, ç ïðïßá èá óáò åðéóôñÝøåé ìéáò ëßóôá ìå üëåò ôéò äéåñãáóßåò áðü ôá <application>&oracle;</application> êáé <application>&sap;</application>. Áí öáßíåôáé óáí íá ëåßðïõí ìåñéêÝò äéåñãáóßåò, Þ áí äåí ìðïñåßôå íá óõíäåèåßôå óôï <application>&sap;</application>, êïéôÜîôå ôá áíôßóôïé÷á logfiles ôá ïðïßá ìðïñïýí íá âñåèïýí óôïí êáôÜëïãï <filename>/usr/sap/<replaceable>SID</replaceable>/DVEBMGS<replaceable>nr</replaceable>/work/</filename>. Ôá áñ÷åßá ðïõ ðñÝðåé íá êïéôÜîåôå åßíáé ôá <filename>dev_ms</filename> êáé <filename>dev_disp</filename>.</para> <para>Ôï Signal 31 èá åìöáíéóôåß áí ç ðïóüôçôá ôçò êïéíÞò ìíÞìçò ðïõ ÷ñçóéìïðïéåßôáé áðü ôá <application>&oracle;</application> êáé <application>&sap;</application> îåðåñÜóåé ôï ìÝãåèïò ðïõ Ý÷åé Þäç ïñéóôåß êáôÜ ôç ñýèìéóç ôïõ ðõñÞíá. Ìå ôï íá ïñßóåôå ìéá ìåãáëýôåñç ôéìÞ èá ìðïñÝóåôå íá ðñïóðåñÜóåôå ôï ðñüâëçìá áõôü:</para> <programlisting># ìåãáëýôåñç ìíÞìç ãéá óõóôÞìáôá ðáñáãùãÞò 46C: options SHMMAXPGS=393216 # ìéêñüôåñç ìíÞìç ãéá óõóôÞìáôá 46B: #options SHMMAXPGS=262144</programlisting> </sect3> <sect3 id="saposcolfails"> <title>Áíåðéôõ÷Þò Åêêßíçóç ôïõ <command>saposcol</command></title> <para>ÕðÜñ÷ïõí åðßóçò ìåñéêÜ ðñïâëÞìáôá ìå ôï ðñüãñáììá <command>saposcol</command> (Ýêäïóç 4.6D). Ôï <application>&sap;</application> ÷ñçóéìïðïéåß ôï <command>saposcol</command> ãéá íá óõëëÝîåé äåäïìÝíá ó÷åôéêÜ ìå ôéò åðéäüóåéò ôïõ óõóôÞìáôïò. Ôï ðñüãñáììá áõôü äåí ôï ÷ñåéÜæåóôå ãéá íá åêôåëÝóåôå ôï <application>&sap;</application>, ïðüôå ìðïñåß íá èåùñçèåß ùò ìéêñüôåñç óçìáóßáò. Ðáëáéüôåñåò åêäüóåéò (4.6B) äïõëåýïõí, áëëÜ äå óõëëÝãïõí üëá ôá äåäïìÝíá (ðïëëÝò êëÞóåéò åðéóôñÝöïõí 0, ãéá ðáñÜäåéãìá ç ÷ñÞóç ôçò CPU).</para> </sect3> </sect2> </sect1> <sect1 id="linuxemu-advanced"> <title>Ðñï÷ùñçìÝíá ÈÝìáôá</title> <para>Áí Ý÷åôå ôçí áðïñßá ðùò ëåéôïõñãåß ç óõìâáôüôçôá ìå åöáñìïãÝò Linux, ôüôå èá ðñÝðåé íá äéáâÜóåôå ôç ðáñáêÜôù åíüôçôá. Ôá ðåñéóóüôåñá áðü üóá Ý÷ïõí ãñáöôåß åßíáé âáóéóìÝíá óôçí &a.chat; êáé Ý÷ïõí ãñáöôåß áðü ôïí Terry Lambert <email>tlambert@primenet.com</email> (Message ID: <literal><199906020108.SAA07001@usr09.primenet.com></literal>). </para> <sect2> <title>Ðùò Ëåéôïõñãåß;</title> <indexterm><primary>execution class loader</primary></indexterm> <para>Ôï &os; ðåñéÝ÷åé Ýíá åðßðåäï áöáßñåóçò (abstraction) ðïõ ïíïìÜæåôáé <quote>execution class loader</quote>. Áõôü âáóßæåôáé óôï &man.execve.2;.</para> <para>Áõôü ðïõ óõìâáßíåé åßíáé üôé ôï &os; Ý÷åé ìéá ëßóôá öïñôùôþí (loaders), áíôß ãéá Ýíá ðïõ íá êáôáöåýãåé óå ðåñßðôùóç áðïôõ÷ßáò óôï <literal>#!</literal> ãéá íá ôñÝîåé êÜðïéï shell interpreter Þ shell script.</para> <para>ÉóôïñéêÜ, ï ìüíïò öïñôùôÞò óôç ðëáôöüñìá ôïõ &unix; Ýëåã÷å ôïí ìáãéêü áñéèìü (ãåíéêÜ ôá ðñþôá 4 Þ 8 bytes ôïõ áñ÷åßïõ) ãéá íá äåé áí åßíáé êÜðïéï åêôåëÝóéìï / åöáñìïãÞ ãíùóôü óôï óýóôçìá, êáé óôçí ðåñßðôùóç áõôÞ íá êáëÝóåé ôïí áíôßóôïé÷ï öïñôùôÞ.</para> <para>Áí ôï áñ÷åßï äåí Þôáí åêôåëÝóéìï ìå âÜóç ôïí ôýðï ôïõ óõóôÞìáôïò, ç êëÞóç óôï &man.execve.2; åðÝóôñåöå êÜðïéï óöÜëìá, êáé ôï shell ðñïóðáèïýóå íá åêôåëÝóåé ôï áñ÷åßï óáí shell script.</para> <para>Ç ãåíéêÞ éäÝá Þôáí <quote>áí äåí åßíáé åêôåëÝóéìï, ðñïóðÜèçóå íá ôï ôñÝîåéò ùò shell script ìå âÜóç ôï ôñÝ÷ïí shell </quote>.</para> <para>Áñãüôåñá, âñÝèçêå Ýíáò Ýîõðíïò ôñüðïò þóôå ôï &man.sh.1; íá åëÝã÷åé ôïõò ðñþôïõò äýï ÷áñáêôÞñåò, êáé áí Þôáí <literal>:\n</literal>, ôüôå êáëïýóå ôï shell &man.csh.1; (ðéóôåýïõìå ðùò ç ëýóç áõôÞ âñÝèçêå áñ÷éêÜ áðü ôç SCO).</para> <para>Áõôü ðïõ êÜíåé ôþñá ôï &os; åßíáé íá äéáôñÝ÷åé ôç ëßóôá ìå üëïõò ôïõò öïñôùôÝò, ìå Ýíá ãåíéêü öïñôùôÞ <literal>#!</literal> ï ïðïßïò áíáãíùñßæåé ùò äéåñìçíÝá (interpreter) ôïõò ÷áñáêôÞñåò áðü ôï åðüìåíï êåíü ìåôÜ ôï <literal>!</literal> êáé ìÝ÷ñé ôï ôÝëïò, åíþ áí äåí áíáãíùñéóôåß êÜðïéïò, ÷ñçóéìïðïéåßôáé ùò Ýó÷áôç ëýóç ôï <filename>/bin/sh</filename>.</para> <indexterm><primary>ELF</primary></indexterm> <para>Ãéá ôçí õðïóôÞñéîç ôïõ Linux ABI, ôï &os; âëÝðåé ôïí ìáãéêü áñéèìü ôïõ ELF binary (äå áíáãíùñßæåé ôç äéáöïñÜ áíÜìåóá óå &os;, &solaris;, Linux, Þ êÜðïéï Üëëï ëåéôïõñãéêü óýóôçìá ôï ïðïßï ÷ñçóéìïðïéåß áñ÷åßá ôýðïõ ELF).</para> <indexterm><primary>Solaris</primary></indexterm> <para>Ï öïñôùôÞò ELF êïéôÜåé ãéá Ýíá åéäéêü <emphasis>brand</emphasis>, ôï ïðïßï åßíáé ìéá åíüôçôá ó÷ïëßùí ìÝóá óôï ELF image, êáé ôï ïðïßï äåí õðÜñ÷åé óå ELF binaries ãéá SVR4/&solaris;</para> <para>Ãéá íá ëåéôïõñãÞóïõí ôá åêôåëÝóéìá ôïõ Linux, èá ðñÝðåé íá ãßíïõí <emphasis>branded</emphasis> (ìáñêáñéóôïýí) ùò <literal>Linux</literal> ìÝóù ôçò &man.brandelf.1;:</para> <screen>&prompt.root; <userinput>brandelf -t Linux file</userinput></screen> <para>¼ôáí ãßíåé áõôü, ï öïñôùôÞò ELF èá âëÝðåé ôï <literal>Linux</literal> brand ðÜíù óôï áñ÷åßï.</para> <indexterm> <primary>ELF</primary> <secondary>branding</secondary> </indexterm> <para>¼ôáí ï öïñôùôÞò ELF äåé ôï <literal>Linux</literal> brand, èá áíôéêáôáóôÞóåé Ýíáí äåßêôç ìÝóá óôç äïìÞ <literal>proc</literal>. ¼ëåò ïé êëÞóåéò ôïõ óõóôÞìáôïò ôáîéíïìïýíôáé ìÝóá áðü áõôüí ôïí äåßêôç (óå Ýíá ðáñáäïóéáêü óýóôçìá &unix;, ï äåßêôçò èá Þôáí ï ðßíáêáò <literal>sysent[]</literal>, ðïõ ðåñéÝ÷åé ôéò êëÞóåéò ôïõ óõóôÞìáôïò (system calls)). ÅðéðëÝïí, ç äéåñãáóßá óçìåéþíåôáé ãéá åéäéêÞ ìåôá÷åßñéóç ôïõ trap vector êáé Üëëåò (ìéêñÝò) äéïñèþóåéò, ôéò ïðïßåò ÷åéñßæåôáé ôï Üñèñùìá ðõñÞíá ôçò óõìâáôüôçôáò Linux.</para> <para>Ôï system call vector ôïõ Linux ðåñéÝ÷åé, ìåôáîý Üëëùí, ìéá ëßóôá ìå ôá äåäïìÝíá ôïõ <literal>sysent[]</literal> ôùí ïðïßùí ïé äéåõèýíóåéò âñßóêïíôáé ìÝóá óôï Üñèñùìá ôïõ ðõñÞíá.</para> <para>¼ôáí ãßíåôáé ìéá êëÞóç óõóôÞìáôïò áðü ìéá åöáñìïãÞ Linux, ï êþäéêáò (trap code) ôñïðïðïéåß ôïí äåßêôç ôçò ìÝóù ôçò äïìÞò ðïõ Ý÷åé åããñáöåß óôï <literal>proc</literal>, êáé áëëÜæåé ôçí äéåýèõíóç þóôå íá äåß÷íåé óôï óçìåßï åéóüäïõ ôçò óõíÜñôçóçò ôïõ Linux, êáé ü÷é ôïõ &os;.</para> <para>Åðßóçò, ôï óýóôçìá óõìâáôüôçôáò ìå Linux ìðïñåß êáé ðñïóáñìüæåé äõíáìéêÜ ôéò ôïðïèåóßåò áíáæÞôçóçò. ÏõóéáóôéêÜ áõôü êÜíåé êáé ç åðéëïãÞ <option>union</option> êáôÜ ôçí ðñïóÜñôçóç åíüò óõóôÞìáôïò áñ÷åßùí (<emphasis>äåí</emphasis> åííïïýìå åäþ ôï óýóôçìá áñ÷åßùí <literal>unionfs</literal>!). Áñ÷éêÜ, ãßíåôáé áðüðåéñá íá âñåèåß ôï áñ÷åßï óôïí êáôÜëïãï <filename>/compat/linux/<replaceable>original-path</replaceable></filename>, <emphasis>êáé ìüíï</emphasis> áí áõôü áðïôý÷åé, èá ãßíåé áíáæÞôçóç óôïí êáôÜëïãï <filename>/<replaceable>original-path</replaceable></filename>. Ìå ôïí ôñüðï áõôü óéãïõñåýïõìå üôé ôá åêôåëÝóéìá ðïõ ÷ñåéÜæïíôáé Üëëá åêôåëÝóéìá èá ôñÝîïõí (ãéá ðáñÜäåéãìá, ôï óýíïëï åñãáëåßùí ôïõ Linux ìðïñåß íá åêôåëåóôåß ìÝóù ôçò õðïóôÞñéîçò ôïõ Linux ABI). Åðßóçò óçìáßíåé üôé ôá åêôåëÝóéìá ôïõ Linux ìðïñïýí íá öïñôþóïõí êáé íá åêôåëÝóïõí áñ÷åßá ôïõ &os; áí äåí ìðïñïýí íá åíôïðßóïõí ôá áíôßóôïé÷á áñ÷åßá óôï Linux. Ìðïñåßôå åðßóçò íá ôïðïèåôÞóåôå ìéá åíôïëÞ &man.uname.1; ìÝóá óôï <filename>/compat/linux</filename> ðñïêåéìÝíïõ ôá áñ÷åßá ôïõ Linux íá ìç ìðïñïýí íá áíáãíùñßóïõí üôé äåí ÷ñçóéìïðïéïýíôáé ðñáãìáôéêÜ óå Linux.</para> <para>ÏõóéáóôéêÜ, õðÜñ÷åé Ýíáò ðõñÞíáò Linux ìÝóá óôïí ðõñÞíá ôïõ &os;. Ïé äéÜöïñåò ëåéôïõñãßåò ïé ïðïßåò õëïðïéïýí üëåò ôéò õðçñåóßåò ðïõ ðáñÝ÷ïíôáé áðü ôïí ðõñÞíá åßíáé ßäéåò ôüóï óôïí ðßíáêá êëÞóåùí óõóôÞìáôïò ôïõ &os; üóï êáé óôïí áíôßóôïé÷ï ôïõ Linux: ëåéôïõñãßåò ôïõ óõóôÞìáôïò áñ÷åßùí, åéêïíéêÞ ìíÞìç, äéá÷åßñéóç óçìÜôùí, System V IPC êëð. Ç ìüíç äéáöïñÜ åßíáé üôé ôï åêôåëÝóéìá ôïõ &os; êÜíïõí ÷ñÞóç ôùí óõíáñôÞóåùí <emphasis>glue</emphasis> ôïõ &os;, åíþ ôá åêôåëÝóéìá ôïõ Linux, êÜíïõí ÷ñÞóç ôùí óõíáñôÞóåùí <emphasis>glue</emphasis> ôïõ Linux (ðïëëÜ áðü ôá ðáëéÜ ëåéôïõñãéêÜ åß÷áí ôéò äéêÝò ôïõò óõíáñôÞóåéò <emphasis>glue</emphasis>: ïé äéåõèýíóåéò ôùí óõíáñôÞóåùí âñßóêïíôáí óôï óôáôéêü ðßíáêá <literal>sysent[]</literal>, áíôß íá äéåõêñéíßæïíôáé ìÝóù åíüò äõíáìéêïý äåßêôç óôç äïìÞ <literal>proc</literal> ôçò äéåñãáóßáò ðïõ ðñáãìáôïðïéåß ôçí êëÞóç).</para> <para>Ðïéï åßíáé üìùò ôï åããåíÝò &os; ABI; Äåí Ý÷åé êáé ðïëý óçìáóßá. Ç ìüíç âáóéêÞ äéáöïñÜ åßíáé (êÜôé ôï ïðïßï ìðïñåß åýêïëá íá áëëÜîåé óå ìåëëïíôéêÝò åêäüóåéò, êáé ðïëý ðéèáíüí íá áëëÜîåé) üôé ïé óõíáñôÞóåéò <emphasis>glue</emphasis> ôïõ &os; åßíáé óôáôéêÜ óõíäåäåìÝíåò óôï ðõñÞíá, åíþ ïé áíôßóôïé÷åò ôïõ Linux ìðïñïýí åßôå íá åßíáé óõíäåäåìÝíåò óôáôéêÜ, åßôå íá åßíáé ðñïóâÜóéìåò ìÝóù åíüò áñèñþìáôïò ðõñÞíá.</para> <para>Åßíáé áõôü üìùò ðñáãìáôéêÞ åîïìïßùóç; ¼÷é. Åßíáé ìéá õëïðïßçóç ôïõ ABI, ü÷é åîïìïßùóç. Äåí õðÜñ÷åé êáìßá åîïìïßùóç (Þ ðñïóïìïßùóç, ãéá íá ðñïëÜâïõìå ôçí åðüìåíç óáò åñþôçóç).</para> <para>Ôüôå ãéáôß ìåñéêÝò öïñÝò ìéëÜìå ãéá <quote>åîïìïßùóç Linux</quote>; Ãéá íá äõóêïëåõôåß ç ðñïþèçóç ôïõ &os;! Ç áñ÷éêÞ õëïðïßçóç Ýãéíå ôçí åðï÷Þ üðïõ äåí õðÞñ÷å Üëëç ëÝîç ðïõ íá ìðïñïýóå íá ðåñéãñÜøåé ôï ôé áêñéâþò ãéíüôáí. Ôï íá ëÝãáìå üôé ôï &os; Ýôñå÷å åêôåëÝóéìá Linux äåí èá Þôáí áëÞèåéá, ìéá êáé ÷ñåéáæüôáí íá åíóùìáôùèåß êÜðïéïò êþäéêáò óôïí ðõñÞíá, Þ íá öïñôùèåß êÜðïéï Üñèñùìá. ×ñåéáæüôáí êÜðïéá ëÝîç ðïõ íá ðåñéãñÜöåé ôé öïñôùíüôáí—Ýôóé ðñïÝêõøå ï <quote>åîïìïéùôÞò Linux</quote>. </para> </sect2> </sect1> </chapter> <!-- Local Variables: mode: sgml coding: iso-8859-7 fill-column: 78 sgml-declaration: "../chapter.decl" sgml-indent-data: t sgml-omittag: nil sgml-always-quote-attributes: t sgml-parent-document: ("../book.sgml" "part" "chapter") End: -->