3893 lines
143 KiB
XML
3893 lines
143 KiB
XML
<?xml version="1.0" encoding="iso-8859-15"?>
|
|
<!--
|
|
The FreeBSD Italian Documentation Project
|
|
|
|
$FreeBSD$
|
|
Original revision: 1.134
|
|
-->
|
|
|
|
<chapter id="linuxemu">
|
|
<chapterinfo>
|
|
<authorgroup>
|
|
<author>
|
|
<firstname>Jim</firstname>
|
|
|
|
<surname>Mock</surname>
|
|
|
|
<contrib>Riscritto e parzialmente rivisto da </contrib>
|
|
</author>
|
|
</authorgroup>
|
|
|
|
<authorgroup>
|
|
<author>
|
|
<firstname>Brian N.</firstname>
|
|
|
|
<surname>Handy</surname>
|
|
|
|
<contrib>Contributo originale di </contrib>
|
|
</author>
|
|
|
|
<author>
|
|
<firstname>Rich</firstname>
|
|
|
|
<surname>Murphey</surname>
|
|
</author>
|
|
</authorgroup>
|
|
</chapterinfo>
|
|
|
|
<title>Compatibilità con i Binari di Linux</title>
|
|
|
|
<sect1 id="linuxemu-synopsis">
|
|
<title>Sinossi</title>
|
|
|
|
<indexterm>
|
|
<primary>Compatibilità con i binari di linux</primary>
|
|
</indexterm>
|
|
<indexterm>
|
|
<primary>compatibilità con i binari</primary>
|
|
<secondary>Linux</secondary>
|
|
</indexterm>
|
|
|
|
<para>FreeBSD fornisce la compatibilità con molti altri sisitemi
|
|
operativi di tipo &unix;, compreso linux. A questo punto, potresti
|
|
chiederti perché FreeBSD dovrebbe essere in grado di far girare
|
|
binari linux. La risposta a questa domanda è piuttosto semplice.
|
|
Molte aziende e sviluppatori sviluppano solo per Linux, dal momento che
|
|
` l'ultimo <quote>disco caldo</quote> nel mondo dell'informatica.
|
|
Questo costringe il resto di noi utenti di FreeBSD a lamentarci con
|
|
queste aziende e questi sviluppatori di distribuire versioni delle
|
|
loro applicazioni native per FreeBSD. Il problema è che molte
|
|
di queste aziende non realizzano quante persone userebbero il loro
|
|
prodotto se ci fosse anche una versione per FreeBSD, e molte continuano
|
|
a sviluppare solo per Linux. Allora cosa deve fare un utente FreeBSD?
|
|
E qui entra in giocolo la compatibilità con i binari di
|
|
Linux.</para>
|
|
|
|
<para>In breve, la compatibilità permette agli utenti FreeBSD di
|
|
utilizzare circa il 90% di tutte le applicazioni Linux senza modifiche.
|
|
Questo include applicazioni come <application>&staroffice;
|
|
</application>, la versione Linux di
|
|
<application>&netscape;</application>,
|
|
<application>&adobe; &acrobat;</application>,
|
|
<application>&realplayer;</application>,
|
|
<application><trademark>VMware</trademark></application>,
|
|
<application>&oracle;</application>,
|
|
<application>&wordperfect;</application>,
|
|
<application>Doom</application>,
|
|
<application>Quake</application>, e tanti altri. È stato
|
|
riportato che in qualche situazione i binari per Linux sono più
|
|
prestanti sotto FreeBSD che sotto Linux.</para>
|
|
|
|
<para>Nonostante questo, ci sono alcune caratteristiche specifiche del
|
|
sistema operativo Linux che non sono supportate da FreeBSD. I binari di
|
|
Linux non funzioneranno sotto FreeBSD se usano parecchie chiamate
|
|
specifiche per &i386;, come l'attivazione della modalità 8086
|
|
virtuale</para>
|
|
|
|
<para>Dopo aver letto questo capitolo, saprai:</para>
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>Come abilitare la compatibilità con i binari Linux sul tuo
|
|
sistema.</para>
|
|
</listitem>
|
|
|
|
<listitem>
|
|
<para>Come installare ulteriori librerie condivise per Linux.</para>
|
|
</listitem>
|
|
|
|
<listitem>
|
|
<para>Come installare gli applicativi di Linux sul tuo sistema
|
|
FreeBSD.</para>
|
|
</listitem>
|
|
|
|
<listitem>
|
|
<para>I dettagli dell'implementazione della compatibilità Linux
|
|
in FreeBSD.</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
|
|
<para>Prima di leggere questo capitolo, dovresti:</para>
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>Sapere come installare software di terzi (<xref
|
|
linkend="ports"/>).</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
</sect1>
|
|
|
|
<sect1 id="linuxemu-lbc-install">
|
|
<title>Installazione</title>
|
|
|
|
<indexterm><primary>KLD (kernel loadable object)</primary></indexterm>
|
|
|
|
<para>La compatibilità con i binari Linux non è normalmente
|
|
attivata. Il modo più facile per abilitare questa
|
|
funzionalità è caricare l'oggetto KLD (<quote>Kernel
|
|
LoaDable object</quote>) <literal>linux</literal>. Puoi caricare questo
|
|
modulo digitando il comando seguente come
|
|
<username>root</username>:</para>
|
|
|
|
<screen>&prompt.root; <userinput>kldload linux</userinput></screen>
|
|
|
|
<para>Se vuoi che la compatiblità sia sempre attivata, dovresti
|
|
aggiungere questa linea a <filename>/etc/rc.conf</filename>:</para>
|
|
|
|
<programlisting>linux_enable="YES"</programlisting>
|
|
|
|
<para>Il comando &man.kldstat.8; può essere usato per verificare
|
|
se KLD sia stato caricato:</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>opzioni per il kernel</primary>
|
|
<secondary>COMPAT_LINUX</secondary>
|
|
</indexterm>
|
|
|
|
<para>Se per qualche ragione non vuoi o non puoi caricare KLD, puoi
|
|
collegare staticamente la compatibilità Linux nel kernel
|
|
aggiungendo <literal>options COMPAT_LINUX</literal> al file di
|
|
configurazione del kernel. Fatto questo puoi installare il nuovo kernel
|
|
come descritto in <xref linkend="kernelconfig"/>.</para>
|
|
|
|
<sect2>
|
|
<title>Installazione delle Librerie Runtime di Linux</title>
|
|
|
|
<indexterm>
|
|
<primary>Linux</primary>
|
|
<secondary>installazione delle librerie di Linux</secondary>
|
|
</indexterm>
|
|
|
|
<para>Questo può essere fatto in due modi, o usando il port
|
|
<link linkend="linuxemu-libs-port">linux_base</link>, oppure
|
|
installandole <link
|
|
linkend="linuxemu-libs-manually">manualmente</link>.</para>
|
|
|
|
<sect3 id="linuxemu-libs-port">
|
|
<title>Installazione Usando il Port linux_base</title>
|
|
|
|
<indexterm><primary>Collezione dei Port</primary></indexterm>
|
|
|
|
<para>Questo è di gran lunga il metodo più facile da usare
|
|
per installare le librerie runtime. È proprio come installare
|
|
qualunque altro port dalla <ulink type="html"
|
|
url="file://localhost/usr/ports/">Collezione dei Port</ulink>.
|
|
Semplicemente fai come segue:</para>
|
|
|
|
<screen>&prompt.root; <userinput>cd /usr/ports/emulators/linux_base-fc4</userinput>
|
|
&prompt.root; <userinput>make install distclean</userinput></screen>
|
|
|
|
<para>In questo modo dovresti avere una compatibilità con i
|
|
binari di Linux funzionante. Alcuni programmi potrebbero lamentarsi
|
|
per qualche versione minore delle librerie di sistema. In generale,
|
|
comunque, questo non dovrebbe essere un problema.</para>
|
|
|
|
<note>
|
|
<para>Potrebbero essere disponibili più versioni del port
|
|
<filename role="package">emulators/linux_base</filename>,
|
|
corrispondenti a differenti versioni di distribuzioni Linux.
|
|
Dovresti installare il port che più soddisfa le richieste
|
|
della applicazione Linux che vuoi installare.</para>
|
|
</note>
|
|
</sect3>
|
|
|
|
<sect3 id="linuxemu-libs-manually">
|
|
<title>Installazione Manuale delle Librerie</title>
|
|
|
|
<para>Se non hai installata la collezione di <quote>ports</quote>, puoi
|
|
comunque installare le librerie manualmente. Hai bisogno delle
|
|
librerie condivise di Linux da cui il programma dipende e del runtime
|
|
linker.
|
|
In più dovrai creare una directory <quote>shadow root</quote>,
|
|
<filename>/compat/linux</filename>, per le librerie Linux sul tuo
|
|
sistema FreeBSD. Tutte le librerie condivise aperte da programmi
|
|
Linux che girano sotto FreeBSD cercheranno prima in questo albero.
|
|
Per cui, se un programma Linux carica, per esempio,
|
|
<filename>/lib/libc.so</filename>, FreeBSD prima cercherà di
|
|
aprire <filename>/compat/linux/lib/libc.so</filename>, e se questa non
|
|
esiste, proverà con <filename>/lib/libc.so</filename>.
|
|
Le librerie condivise dovrebbero essere installate nell'albero shadow
|
|
<filename>/compat/linux/lib</filename> piuttosto che nei path
|
|
che riporta <command>ld.so</command> di Linux.</para>
|
|
|
|
<para>Generalmente avrai bisogno di cercare le librerie condivise
|
|
da cui dipendono i binari di Linux solo per le prime poche
|
|
installazioni di programmi Linux sul tuo sistema FreeBSD. Dopo un po'
|
|
avrai a disposizione sul tuo sistema un insieme sufficiente di
|
|
librerie condivise per Linux da far girare nuovi binari Linux senza
|
|
alcun sforzo ulteriore.</para>
|
|
</sect3>
|
|
|
|
<sect3>
|
|
<title>Come Installare Ulteriori Librerie Condivise</title>
|
|
|
|
<indexterm><primary>librerie condivise</primary></indexterm>
|
|
|
|
<para>Cosa succede se installi il port <filename>linux_base</filename> e
|
|
la tua applicazione si lamenta ancora di librerie condivise che
|
|
mancano?
|
|
Come fare a sapere quali librerie condivise necessita il binario di
|
|
Linux e dove trovarle? Essenzialmente ci sono 2 possibilità
|
|
(per seguire queste istruzioni dovrai essere <username>root</username>
|
|
sul tuo sistema FreeBSD).</para>
|
|
|
|
<para>Se hai accesso ad un sistema Linux, guarda quali librerie
|
|
condivise servono all'applicazione e copiale nel tuo sistema FreeBSD.
|
|
Guarda all'esempio che segue:</para>
|
|
|
|
<informalexample>
|
|
<para>Poniamo che tramite FTP tu abbia recuperato il binario per Linux
|
|
di <application>Doom</application>, e l'abbia messo su un sistema
|
|
Linux a cui hai accesso. Puoi controllare quali librerie condivise
|
|
servono eseguendo <command>ldd linuxdoom</command>,
|
|
così:</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>link simbolici</primary></indexterm>
|
|
|
|
<para>Potresti aver bisogno di recuperare tutti i file dall'ultima
|
|
colonna, e di metterli sotto <filename>/compat/linux</filename>,
|
|
con i nomi nella prima colonna come link simbolici che puntino ad
|
|
essi.
|
|
Questo significa che alla fine avrai questi file sul tuo sistema
|
|
FreeBSD:</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>Nota che se hai già una libreria condivisa di Linux
|
|
con un numero di revisione maggiore di quello della prima
|
|
colonna dell'output di <command>ldd</command>, non dovrai
|
|
copiare nel tuo sistema il file elencato nell'ultima colonna,
|
|
quello che hai dovrebbe funzionare. Si raccomanda di copiare
|
|
comunque la libreria condivisa se è una versione
|
|
più recente. Puoi rimuovere quella vecchia, dal momento
|
|
che crei il link simbolico che punta a quella
|
|
nuova. Quindi, se hai queste librerie sul tuo sistema:</para>
|
|
|
|
<screen>/compat/linux/lib/libc.so.4.6.27
|
|
/compat/linux/lib/libc.so.4 -> libc.so.4.6.27</screen>
|
|
|
|
<para>e vedi che un nuovo binario richiede una versione più
|
|
recente in base all'output di
|
|
<command>ldd</command>:</para>
|
|
|
|
<screen>libc.so.4 (DLL Jump 4.5pl26) -> libc.so.4.6.29</screen>
|
|
|
|
<para>Se si tratta solo di una o due versioni precedenti in base
|
|
alla cifra finale allora non preoccuparti di copiare anche
|
|
<filename>/lib/libc.so.4.6.29</filename>, perché il
|
|
programma dovrebbe funzionare bene anche con una versione di
|
|
poco più vecchia. In ogni caso, se vuoi, puoi decidere
|
|
di rimpiazzare comunque
|
|
<filename>libc.so</filename>, e dovrebbe lasciarti con:</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>Il meccanismo dei link simbolici è richiesto
|
|
<emphasis>solo</emphasis> per i binari di Linux. Il runtime
|
|
linker di FreeBSD si occupa da solo di cercare corrispondenti
|
|
numeri di revisione maggiori e non devi preoccuparti di
|
|
questo.</para>
|
|
</note>
|
|
</blockquote>
|
|
</informalexample>
|
|
</sect3>
|
|
</sect2>
|
|
|
|
<sect2>
|
|
<title>Installazione di Binari ELF di Linux</title>
|
|
|
|
<indexterm>
|
|
<primary>Linux</primary>
|
|
<secondary>Binari ELF</secondary>
|
|
</indexterm>
|
|
|
|
<para>I binari ELF possono richiedere un ulteriore passo di
|
|
<quote>marchiatura</quote>. Se provi a far girare un binario ELF non
|
|
marchiato, incorrerai in un messaggio come il seguente:</para>
|
|
|
|
<screen>&prompt.user; <userinput>./my-linux-elf-binary</userinput>
|
|
ELF binary type not known
|
|
Abort</screen>
|
|
|
|
<para>Per aiutare il kernel di FreeBSD a distinguere un binario ELF
|
|
di FreeBSD da uno di Linux, usa l'utility &man.brandelf.1;.</para>
|
|
|
|
<screen>&prompt.user; <userinput>brandelf -t Linux my-linux-elf-binary</userinput></screen>
|
|
|
|
<indexterm><primary>GNU toolchain</primary></indexterm>
|
|
|
|
<para>Oggi, la GNU toolchain inserisce automaticamente l'appropriata
|
|
informazione di marchiatura nei binari ELF, così questo passo
|
|
dovrebbe divenire sempre meno necessario nel futuro.</para>
|
|
</sect2>
|
|
|
|
<sect2>
|
|
<title>Configurazione del Hostname Resolver</title>
|
|
|
|
<para>Se il DNS non funziona o da questo messaggio:</para>
|
|
|
|
<screen>resolv+: "bind" is an invalid keyword resolv+:
|
|
"hosts" is an invalid keyword</screen>
|
|
|
|
<para>Dovrai configurare un file
|
|
<filename>/compat/linux/etc/host.conf</filename> contentente:</para>
|
|
|
|
<programlisting>order hosts, bind
|
|
multi on</programlisting>
|
|
|
|
<para>Qui, l'ordine specifica che <filename>/etc/hosts</filename>
|
|
viene cercato per primo e il DNS per secondo. Quando
|
|
<filename>/compat/linux/etc/host.conf</filename> non è
|
|
installato, le applicazioni Linux trovano il
|
|
<filename>/etc/host.conf</filename> di FreeBSD e si lamentano della
|
|
sintassi incompatibile di FreeBSD. Dovresti rimuovere
|
|
<literal>bind</literal> se non hai configurato un name server
|
|
usando il file <filename>/etc/resolv.conf</filename>.</para>
|
|
</sect2>
|
|
</sect1>
|
|
|
|
<sect1 id="linuxemu-mathematica">
|
|
<sect1info>
|
|
<authorgroup>
|
|
<author>
|
|
<firstname>Bojan</firstname>
|
|
|
|
<surname>Bistrovic</surname>
|
|
|
|
<contrib>Aggiornato per Mathematica 5.X da </contrib>
|
|
</author>
|
|
</authorgroup>
|
|
</sect1info>
|
|
<title>Installazione di &mathematica;</title>
|
|
|
|
<indexterm>
|
|
<primary>applicazioni</primary>
|
|
<secondary><application>Mathematica</application></secondary>
|
|
</indexterm>
|
|
|
|
<para>Questo documento descive il processo di installazione della versione
|
|
Linux di <application>&mathematica; 5.X</application> su un sistema
|
|
FreeBSD.</para>
|
|
|
|
<para>La versione Linux di <application>&mathematica;</application>
|
|
o di <application>&mathematica; for Students</application> può
|
|
essere ordinata direttamente da Wolfram all'indirizzo
|
|
<ulink url="http://www.wolfram.com/"></ulink>.</para>
|
|
|
|
<sect2>
|
|
<title>Avviare l'Installer di &mathematica;</title>
|
|
|
|
<para>Prima di tutto, devi indicare a &os; che i binari
|
|
Linux di <application>&mathematica;</application> usano
|
|
le ABI di Linux. Il modo più facile di farlo
|
|
è di settare il tipo di ELF a Linux per tutti i
|
|
binari non marchiati con il comando:</para>
|
|
|
|
<screen>&prompt.root; <userinput>sysctl kern.fallback_elf_brand=3</userinput></screen>
|
|
|
|
<para>In questo modo &os; assume che tutti i binari ELF non
|
|
marchiati usino l'ABI di Linux e quindi dovresti essere in grado
|
|
di eseguire l'installer direttamente dal CDROM.</para>
|
|
|
|
<para>Ora, copia il file <filename>MathInstaller</filename> sul
|
|
tuo disco:</para>
|
|
|
|
<screen>&prompt.root; <userinput>mount /cdrom</userinput>
|
|
&prompt.root; <userinput>cp /cdrom/Unix/Installers/Linux/MathInstaller /localdir/</userinput></screen>
|
|
|
|
<para>e in questo file, rimpiazza la prima riga
|
|
<literal>/bin/sh</literal> con
|
|
<literal>/compat/linux/bin/sh</literal>.
|
|
Questo assicura che l'installer viene eseguito dalla
|
|
versione Linux di &man.sh.1;. Poi, rimpiazza tutte
|
|
le occorrenze di <literal>Linux)</literal> con
|
|
<literal>FreeBSD)</literal> utilizzando un editor
|
|
di testo o lo script mostrato nella prossima sezione.
|
|
Questo indica all'installer di
|
|
<application>&mathematica;</application>,
|
|
che chiama <command>uname -s</command> per determinare
|
|
il sistema operativo, per trattare &os; come un sistema
|
|
operativo Linux-like. Invocando
|
|
<command>MathInstaller</command> verrà installato
|
|
<application>&mathematica;</application>.</para>
|
|
</sect2>
|
|
|
|
<sect2>
|
|
<title>Modifica degli Eseguibili di &mathematica;</title>
|
|
|
|
<para>Gli script di shell che
|
|
<application>&mathematica;</application> crea durante
|
|
l'installazione devono essere modificati prima di
|
|
poterli usare. Se hai scelto di mettere gli
|
|
eseguibili di <application>&mathematica;</application>
|
|
nella directory
|
|
<filename class="directory">/usr/local/bin</filename>,
|
|
troverai in questa directory dei link simbolici chiamati
|
|
<filename>math</filename>, <filename>mathematica</filename>,
|
|
<filename>Mathematica</filename>, e
|
|
<filename>MathKernel</filename>. In ognuno di questi,
|
|
sostituisci <literal>Linux)</literal> con
|
|
<literal>FreeBSD)</literal> usando un editor di testo o
|
|
il seguente script di shell:</para>
|
|
|
|
<programlisting>#!/bin/sh
|
|
cd /usr/local/bin
|
|
for i in math mathematica Mathematica MathKernel
|
|
do sed 's/Linux)/FreeBSD)/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>Ottenere la Tua Password per &mathematica;</title>
|
|
|
|
<indexterm>
|
|
<primary>Ethernet</primary>
|
|
<secondary>MAC address</secondary>
|
|
</indexterm>
|
|
|
|
<para>Quando avvii <application>&mathematica;</application>
|
|
per la prima volta, ti verrà richiesta una password.
|
|
Se non hai ancora ottenuto una password da Wolfram,
|
|
esegui il programma <command>mathinfo</command> nella
|
|
directory di installazione per ottenere il tuo
|
|
<quote>ID di macchina</quote>. Questo ID è basato
|
|
esclusivamente sull'indirizzo MAC della tua prima scheda di
|
|
Ethernet, quindi non puoi eseguire la tua copia di
|
|
<application>&mathematica;</application> su macchine diverse.</para>
|
|
|
|
<para>Quando ti registri alla Wolfram, sia per email, telefono o fax, gli
|
|
darai il <quote>machine ID</quote> e loro ti restituiranno una password
|
|
corrispondente che consiste di un gruppo di numeri.</para>
|
|
</sect2>
|
|
|
|
<sect2>
|
|
<title>Lancio del Frontend di &mathematica; in una Rete</title>
|
|
|
|
<para><application>&mathematica;</application> usa alcuni font speciali
|
|
per visualizzare caratteri non presenti in alcun insieme standard di
|
|
font (integrali, sommatorie, lettere greche, ecc.). Il protocollo X
|
|
necessita che questi font siano installati
|
|
<emphasis>localmente</emphasis>. Questo significa che dovrai fare una
|
|
copia di questi font sulla tua macchina locale dal CDROM o da un host
|
|
con <application>&mathematica;</application>
|
|
installato. Questi font si trovano normalmente in
|
|
<filename>/cdrom/Unix/Files/SystemFiles/Fonts</filename> sul CDROM,
|
|
oppure <filename>/usr/local/mathematica/SystemFiles/Fonts</filename> sul
|
|
tuo disco rigido. I font sono nelle sottodirectory
|
|
<filename>Type1</filename> e <filename>X</filename>. Ci sono molti modi
|
|
di usarli, come descritto sotto.</para>
|
|
|
|
<para>Il primo modo è di copiarli dentro una delle directory di
|
|
font esistenti in <filename>/usr/X11R6/lib/X11/fonts</filename>.
|
|
Questo comporterà la modifica del file
|
|
<filename>fonts.dir</filename>, aggiungendovi i nomi dei font e
|
|
cambiando il numero di font nella prima riga. In alternativa, dovresti
|
|
anche essere in grado di lanciare &man.mkfontdir.1; nella directory in
|
|
cui li hai copiati.</para>
|
|
|
|
<para>Il secondo modo di farlo è copiare le directory in
|
|
<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>Poi aggiungi le nuove directory di font nel tuo path dei
|
|
font:</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>Se stai utilizzando il server <application>&xorg;</application>,
|
|
puoi caricare automaticamente queste directory di font aggiungendole nel
|
|
file <filename>xorg.conf</filename>.</para>
|
|
|
|
<note>
|
|
<para>Per i server <application>&xfree86;</application>,
|
|
il file di configurazione è
|
|
<filename>XF86Config</filename>.</para>
|
|
</note>
|
|
|
|
<indexterm><primary>fonts</primary></indexterm>
|
|
|
|
<para>Se ancora <emphasis>non</emphasis> hai una directory
|
|
chiamata <filename>/usr/X11R6/lib/X11/fonts/Type1</filename>, puoi
|
|
cambiare il nome della directory <filename>MathType1</filename>
|
|
dell'esempio sopra in <filename>Type1</filename>.</para>
|
|
</sect2>
|
|
</sect1>
|
|
|
|
<sect1 id="linuxemu-maple">
|
|
<sect1info>
|
|
<authorgroup>
|
|
<author>
|
|
<firstname>Aaron</firstname>
|
|
|
|
<surname>Kaplan</surname>
|
|
|
|
<contrib>Contributo di </contrib>
|
|
</author>
|
|
</authorgroup>
|
|
|
|
<authorgroup>
|
|
<author>
|
|
<firstname>Robert</firstname>
|
|
|
|
<surname>Getschmann</surname>
|
|
|
|
<contrib>Grazie a </contrib>
|
|
</author>
|
|
</authorgroup>
|
|
</sect1info>
|
|
|
|
<title>Installazione di &maple;</title>
|
|
|
|
<indexterm>
|
|
<primary>applicazioni</primary>
|
|
<secondary><application>Maple</application></secondary>
|
|
</indexterm>
|
|
|
|
<para><application>&maple;</application> è un programma commerciale
|
|
di matematica simile a <application>&mathematica;</application>. Devi
|
|
acquistare questo software da <ulink
|
|
url="http://www.maplesoft.com/"></ulink> e quindi registrarti per un
|
|
file di licenza. Per installare questo software su FreeBSD, segui i
|
|
passi seguenti.</para>
|
|
|
|
<procedure>
|
|
<step>
|
|
<para>Esegui lo script di shell <filename>INSTALL</filename> dalla
|
|
distribuzione del prodotto. Scegli l'opzione <quote>RedHat</quote>
|
|
quando richiesto dal programma di installazione. Una tipica
|
|
directory di installazione potrebbe essere <filename
|
|
class="directory">/usr/local/maple</filename>.</para>
|
|
</step>
|
|
|
|
<step>
|
|
<para>Se ancora non l'hai fatto, ordina una licenza per
|
|
<application>&maple;</application> dalla Maple Waterloo Software
|
|
(<ulink url="http://register.maplesoft.com/"></ulink>) e copiala in
|
|
<filename>/usr/local/maple/license/license.dat</filename>.</para>
|
|
</step>
|
|
|
|
<step>
|
|
<para>Installa il gestore della licenza
|
|
<application>FLEXlm</application> lanciando lo shell script di
|
|
installazione <filename>INSTALL_LIC</filename>, distribuito assieme
|
|
a <application>&maple;</application>. Specifica l'hostname primario
|
|
della la tua macchina per il server delle licenze.</para>
|
|
</step>
|
|
|
|
<step>
|
|
<para>Modifica il file
|
|
<filename>/usr/local/maple/bin/maple.system.type</filename>
|
|
aggiungendo:</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>Nota che dopo <literal>"FreeBSD"|\</literal> non ci devono essere
|
|
altri spazi bianchi.</para>
|
|
|
|
<para>Questa patch dice a <application>&maple;</application> di
|
|
riconoscere <quote>FreeBSD</quote> come un tipo di sistema Linux.
|
|
Lo shell script <filename>bin/maple</filename> richiama lo shell
|
|
script <filename>bin/maple.system.type</filename> che a sua volta
|
|
chiama <command>uname -a</command> per determinare il nome del sistema
|
|
operativo. A seconda del nome del SO capirà quali binari
|
|
utilizzare.</para>
|
|
</step>
|
|
|
|
<step>
|
|
<para>Avviare il server delle licenze.</para>
|
|
|
|
<para>Lo script seguente, installato come
|
|
<filename>/usr/local/etc/rc.d/lmgrd.sh</filename> è un modo
|
|
facile per far partire <command>lmgrd</command>:</para>
|
|
|
|
<programlisting> ----- snip ------------
|
|
|
|
#! /bin/sh
|
|
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin
|
|
PATH=${PATH}:/usr/local/maple/bin:/usr/local/maple/FLEXlm/UNIX/LINUX
|
|
export PATH
|
|
|
|
LICENSE_FILE=/usr/local/maple/license/license.dat
|
|
LOG=/var/log/lmgrd.log
|
|
|
|
case "$1" in
|
|
start)
|
|
lmgrd -c ${LICENSE_FILE} 2>> ${LOG} 1>&2
|
|
echo -n " lmgrd"
|
|
;;
|
|
stop)
|
|
llmgrd -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>Fai un test di avvio di
|
|
<application>&maple;</application>:</para>
|
|
|
|
<screen>&prompt.user; <userinput>cd /usr/local/maple/bin</userinput>
|
|
&prompt.user; <userinput>./xmaple</userinput></screen>
|
|
|
|
<para>Dovrebbe funzionare. Assicurati di scrivere alla Maplesoft per
|
|
fargli sapere che vorresti avere una versione nativa per &os;!</para>
|
|
</step>
|
|
</procedure>
|
|
|
|
<sect2>
|
|
<title>Problemi Comuni</title>
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>Il gestore della licenza <application>FLEXlm</application>
|
|
può essere uno strumento difficile con cui lavorare.
|
|
A questo riguardo si può trovare della documentazione in
|
|
più a <ulink
|
|
url="http://www.globetrotter.com/"></ulink>.</para>
|
|
</listitem>
|
|
|
|
<listitem>
|
|
<para>Si sa che <command>lmgrd</command> è molto esigente
|
|
riguardo al file della licenza e che va in core dump per qualunque
|
|
problema. Un buon file della licenza dovrebbe essere
|
|
così:</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>Il numero seriale e la chiave sono sostituiti dalle 'X'.
|
|
<hostid>chillig</hostid> è un hostname.</para>
|
|
</note>
|
|
|
|
<para>Modificare il file della licenza funziona fino a quando non
|
|
tocchi la linea <quote>FEATURE</quote> (che è protetta dalla
|
|
chiave della licenza).</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
</sect2>
|
|
</sect1>
|
|
|
|
<sect1 id="linuxemu-matlab">
|
|
<sect1info>
|
|
<authorgroup>
|
|
<author>
|
|
<firstname>Dan</firstname>
|
|
|
|
<surname>Pelleg</surname>
|
|
|
|
<contrib>Contributo di </contrib>
|
|
</author>
|
|
</authorgroup>
|
|
</sect1info>
|
|
|
|
<title>Installazione di &matlab;</title>
|
|
|
|
<indexterm>
|
|
<primary>applicazioni</primary>
|
|
<secondary><application>MATLAB</application></secondary>
|
|
</indexterm>
|
|
|
|
<para>Questo documento descrive il processo di installazione della versione
|
|
Linux di <application>&matlab; versione 6.5</application> su
|
|
un sistema &os;. Funziona abbastanza bene, con l'eccezione per la
|
|
<application>&java.virtual.machine;</application> (vedi
|
|
<xref linkend="matlab-jre"/>).</para>
|
|
|
|
<para>La versione Linux di <application>&matlab;</application> può
|
|
essere ordinata direttamente dalla MathWorks all'indirizzo <ulink
|
|
url="http://www.mathworks.com"></ulink>. Assicurati di avere il file
|
|
della licenza o le istruzioni per crearlo. Già che ci sei, fagli
|
|
sapere che vorresti una versione nativa per &os; del loro software.</para>
|
|
|
|
<sect2>
|
|
<title>Installazione di &matlab;</title>
|
|
|
|
<para>Per installare <application>&matlab;</application>, fai come
|
|
segue:</para>
|
|
|
|
<procedure>
|
|
<step>
|
|
<para>Inserisci il CD di installazione e montalo.
|
|
Diventa <username>root</username>, come consigliato dallo script
|
|
di installazione. Per avviare lo script di installazione
|
|
scrivi:</para>
|
|
|
|
<screen>&prompt.root; <userinput>/compat/linux/bin/sh /cdrom/install</userinput></screen>
|
|
|
|
<tip>
|
|
<para>L'installer è grafico. Se ottieni errori riguardo
|
|
all'impossibilità ad aprire un display, scrivi
|
|
<command>setenv HOME ~<replaceable>USER</replaceable></command>,
|
|
dove <replaceable>USER</replaceable> è l'utente che hai
|
|
fatto &man.su.1;.</para>
|
|
</tip>
|
|
</step>
|
|
|
|
<step>
|
|
<para>
|
|
Quando viene chiesta la directory root per
|
|
<application>&matlab;</application>, scrivi:
|
|
<userinput>/compat/linux/usr/local/matlab</userinput>.</para>
|
|
|
|
<tip>
|
|
<para>Per una più facile scrittura nel resto del processo
|
|
di installazione, scrivi questo nella linea di comando della
|
|
shell:
|
|
<command>set MATLAB=/compat/linux/usr/local/matlab</command></para>
|
|
</tip>
|
|
</step>
|
|
|
|
<step>
|
|
<para>Modifica il file della licenza secondo le istruzioni avute
|
|
quando hai ottenuto la licenza di
|
|
<application>&matlab;</application>.</para>
|
|
|
|
<tip>
|
|
<para>Puoi preparare questo file in anticipo usando il tuo editor
|
|
preferito, e copiarlo in
|
|
<filename>$MATLAB/license.dat</filename> prima che l'installer
|
|
ti chieda di modificarlo.</para>
|
|
</tip>
|
|
</step>
|
|
|
|
<step>
|
|
<para>Completare il processo di installazione.</para>
|
|
</step>
|
|
</procedure>
|
|
|
|
<para>A questo punto la tua installazione di
|
|
<application>&matlab;</application> è completa. I punti
|
|
seguenti applicano una <quote>colla</quote> per connetterlo al tuo
|
|
sistema &os;.</para>
|
|
</sect2>
|
|
|
|
<sect2>
|
|
<title>Avvio del License Manager</title>
|
|
|
|
<procedure>
|
|
<step>
|
|
<para>Crea dei symlink per gli script del gestore della
|
|
licenza:</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>Crea un file d'avvio in
|
|
<filename>/usr/local/etc/rc.d/flexlm.sh</filename>. L'esempio qui
|
|
sotto è una versione modificata del
|
|
<filename>$MATLAB/etc/rc.lm.glnx86</filename> venduto. I
|
|
cambiamenti sono le posizioni del file e l'avvio del license manager
|
|
sotto l'emulazione Linux.</para>
|
|
|
|
<programlisting>#!/bin/sh
|
|
case "$1" in
|
|
start)
|
|
if [ -f /usr/local/etc/lmboot_TMW ]; then
|
|
/compat/linux/bin/sh /usr/local/etc/lmboot_TMW -u <replaceable>username</replaceable> && 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>Il file deve essere reso eseguibile:</para>
|
|
|
|
<screen>&prompt.root; <userinput>chmod +x /usr/local/etc/rc.d/flexlm.sh</userinput></screen>
|
|
|
|
<para>In aggiunta sostituisci <replaceable>username</replaceable>
|
|
sopra con il nome di un utente valido sul tuo sistema (e non
|
|
<username>root</username>).</para>
|
|
</important>
|
|
</step>
|
|
|
|
<step>
|
|
<para>Avvia il gestore della licenza con il comando:</para>
|
|
|
|
<screen>&prompt.root; <userinput>/usr/local/etc/rc.d/flexlm.sh start</userinput></screen>
|
|
</step>
|
|
</procedure>
|
|
</sect2>
|
|
|
|
<sect2 id="matlab-jre">
|
|
<title>Collegare il &java; Runtime Environment</title>
|
|
|
|
<para>Cambia il link al <application>&java;</application> Runtime
|
|
Environment (JRE) con uno che funzioni sotto &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>Creazione di uno Script di Avvio per &matlab;</title>
|
|
|
|
<procedure>
|
|
<step>
|
|
<para>Poni il seguente script di avvio in
|
|
<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>Quindi scrivi il comando
|
|
<command>chmod +x /usr/local/bin/matlab</command>.</para>
|
|
</step>
|
|
</procedure>
|
|
|
|
<tip>
|
|
<para>A seconda della tua versione di
|
|
<filename role="package">emulators/linux_base</filename>, potresti
|
|
incorrere in errori quando lanci questo script. Per evitarli,
|
|
modifica il file
|
|
<filename>/compat/linux/usr/local/matlab/bin/matlab</filename>,
|
|
e cambia la riga che dice:</para>
|
|
|
|
<programlisting>if [ `expr "$lscmd" : '.*->.*'` -ne 0 ]; then</programlisting>
|
|
|
|
<para>(nella versione 13.0.1 è alla riga 410) con questa
|
|
riga:</para>
|
|
|
|
<programlisting>if test -L $newbase; then</programlisting>
|
|
</tip>
|
|
</sect2>
|
|
|
|
<sect2>
|
|
<title>Creazione di uno script di arresto per &matlab;</title>
|
|
|
|
<para>Quello che segue serve per risolvere un problema con &matlab;
|
|
quando non si chiude correttamente.</para>
|
|
|
|
<procedure>
|
|
<step>
|
|
<para>Crea un file
|
|
<filename>$MATLAB/toolbox/local/finish.m</filename>,
|
|
e scrivici l'unica riga:</para>
|
|
|
|
<programlisting>! $MATLAB/bin/finish.sh</programlisting>
|
|
|
|
<note><para><literal>$MATLAB</literal> è letterale.</para></note>
|
|
|
|
<tip>
|
|
<para>Nella stessa directory troverai i file
|
|
<filename>finishsav.m</filename> e
|
|
<filename>finishdlg.m</filename>,
|
|
che permettono di salvare il tuo lavoro all'uscita. Se ne usi
|
|
uno, inserisci la riga sopra immediatamente dopo il comando
|
|
<literal>save</literal>.</para>
|
|
</tip>
|
|
</step>
|
|
|
|
<step>
|
|
<para>Crea un file
|
|
<filename>$MATLAB/bin/finish.sh</filename>, che contiene ciò
|
|
che segue:</para>
|
|
|
|
<programlisting>#!/usr/compat/linux/bin/sh
|
|
(sleep 5; killall -1 matlab_helper) &
|
|
exit 0</programlisting>
|
|
</step>
|
|
|
|
<step>
|
|
<para>Rendi il file eseguibile:</para>
|
|
|
|
<screen>&prompt.root; <userinput>chmod +x $MATLAB/bin/finish.sh</userinput></screen>
|
|
</step>
|
|
</procedure>
|
|
</sect2>
|
|
|
|
<sect2 id="matlab-using">
|
|
<title>Uso di &matlab;</title>
|
|
|
|
<para>A questo punto sei pronto per scrivere
|
|
<command>matlab</command> e cominciare ad usarlo.</para>
|
|
</sect2>
|
|
</sect1>
|
|
|
|
<sect1 id="linuxemu-oracle">
|
|
<sect1info>
|
|
<authorgroup>
|
|
<author>
|
|
<firstname>Marcel</firstname>
|
|
|
|
<surname>Moolenaar</surname>
|
|
|
|
<contrib>Contributo di </contrib>
|
|
</author>
|
|
</authorgroup>
|
|
</sect1info>
|
|
|
|
<title>Installazione di &oracle;</title>
|
|
|
|
<indexterm>
|
|
<primary>applicazioni</primary>
|
|
<secondary><application>Oracle</application></secondary>
|
|
</indexterm>
|
|
|
|
<sect2>
|
|
<title>Prefazione</title>
|
|
|
|
<para>Questo documento descrive il processo di installazione per
|
|
<application>&oracle; 8.0.5</application> e
|
|
<application>&oracle; 8.0.5.1 Enterprise Edition</application> per
|
|
Linux su una macchina FreeBSD.</para>
|
|
</sect2>
|
|
|
|
<sect2>
|
|
<title>Installazione dell'Ambiente Linux</title>
|
|
|
|
<para>Assicurati di avere installati sia
|
|
<filename role='package'>emulators/linux_base</filename> che
|
|
<filename role='package'>devel/linux_devtools</filename> dalla
|
|
collezione dei port. Se hai difficoltà con questi port, potresti
|
|
dover usare i pacchetti o versioni più vecchie disponibili nella
|
|
collezione dei port.</para>
|
|
|
|
<para>Se vuoi far girare l'intelligent agent, dovrai anche installare
|
|
il pacchetto Tcl di Red Hat :<filename>tcl-8.0.3-20.i386.rpm</filename>.
|
|
Il comando generale per l'installazione dei pacchetti con il port degli
|
|
<application>RPM</application> ufficiali (<filename
|
|
role='package'>archivers/rpm</filename>) è:</para>
|
|
|
|
<screen>&prompt.root; <userinput>rpm -i --ignoreos --root /compat/linux --dbpath /var/lib/rpm <replaceable>pacchetto</replaceable></userinput></screen>
|
|
|
|
<para>L'installazione del <replaceable>pacchetto</replaceable> non
|
|
dovrebbe generare alcun errore.</para>
|
|
</sect2>
|
|
|
|
<sect2>
|
|
<title>Creazione dell'ambiente &oracle;</title>
|
|
|
|
<para>Prima di installare <application>&oracle;</application>, devi
|
|
impostare un ambiente appropriato. Questo documento descrive solo cosa
|
|
fare <emphasis>in particolare</emphasis> per far girare
|
|
<application>&oracle;</application> per Linux su FreeBSD, non cosa
|
|
è descritto nella guida di installazione di
|
|
<application>&oracle;</application>.</para>
|
|
|
|
<sect3 id="linuxemu-kernel-tuning">
|
|
<title>Affinamento del Kernel</title>
|
|
|
|
<indexterm><primary>affinamento del kernel</primary></indexterm>
|
|
|
|
<para>Come viene descritto nella guida di installazione di
|
|
<application>&oracle;</application>, devi impostare la dimensione
|
|
massima di memoria condivisa. Non usare <literal>SHMMAX</literal>
|
|
sotto FreeBSD.
|
|
<literal>SHMMAX</literal> è soltanto calcolato a partire da
|
|
<literal>SHMMAXPGS</literal> e <literal>PGSIZE</literal>. Di
|
|
conseguenza definisci <literal>SHMMAXPGS</literal>. Tutte le altre
|
|
opzioni possono essere usate come descritte nella guida.
|
|
Per esempio:</para>
|
|
|
|
<programlisting>options SHMMAXPGS=10000
|
|
options SHMMNI=100
|
|
options SHMSEG=10
|
|
options SEMMNS=200
|
|
options SEMMNI=70
|
|
options SEMMSL=61</programlisting>
|
|
|
|
<para>Imposta queste opzioni per ottenere l'uso desiderato di
|
|
<application>&oracle;</application>.</para>
|
|
|
|
<para>In più, assicurati di avere le seguenti opzioni nel file
|
|
di configurazione del tuo kernel:</para>
|
|
|
|
<programlisting>options SYSVSHM #SysV shared memory
|
|
options SYSVSEM #SysV semaphores
|
|
options SYSVMSG #SysV interprocess communication</programlisting>
|
|
</sect3>
|
|
|
|
<sect3 id="linuxemu-oracle-account">
|
|
<title>Account di &oracle;</title>
|
|
|
|
<para>Crea un account <username>oracle</username> proprio come faresti
|
|
per creare qualunque altro account. L'account
|
|
<username>oracle</username>
|
|
è speciale solo se hai bisogno di usarlo in una shell di Linux.
|
|
Aggiungi <literal>/compat/linux/bin/bash</literal> a
|
|
<filename>/etc/shells</filename> e imposta la shell per l'account di
|
|
<username>oracle</username> in
|
|
<filename>/compat/linux/bin/bash</filename>.</para>
|
|
</sect3>
|
|
|
|
<sect3 id="linuxemu-environment">
|
|
<title>Ambiente</title>
|
|
|
|
<para>A fianco dele normali variabili
|
|
<application>&oracle;</application>,
|
|
come <envar>ORACLE_HOME</envar> e <envar>ORACLE_SID</envar> devi
|
|
impostare le seguenti variabili d'ambiente:</para>
|
|
|
|
<informaltable frame="none" pgwide="1">
|
|
<tgroup cols="2">
|
|
<colspec colwidth="1*"/>
|
|
<colspec colwidth="2*"/>
|
|
<thead>
|
|
<row>
|
|
<entry>Variabile</entry>
|
|
|
|
<entry>Valore</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>Si raccomanda di impostare tutte le variabili d'ambiente in
|
|
<filename>.profile</filename>. Un esempio completo:</para>
|
|
|
|
<programlisting>ORACLE_BASE=/oracle; export ORACLE_BASE
|
|
ORACLE_HOME=/oracle; export ORACLE_HOME
|
|
LD_LIBRARY_PATH=$ORACLE_HOME/lib
|
|
export LD_LIBRARY_PATH
|
|
ORACLE_SID=ORCL; export ORACLE_SID
|
|
ORACLE_TERM=386x; export ORACLE_TERM
|
|
CLASSPATH=$ORACLE_HOME/jdbc/lib/classes111.zip
|
|
export CLASSPATH
|
|
PATH=/compat/linux/bin:/compat/linux/sbin:/compat/linux/usr/bin
|
|
PATH=$PATH:/compat/linux/usr/sbin:/bin:/sbin:/usr/bin:/usr/sbin
|
|
PATH=$PATH:/usr/local/bin:$ORACLE_HOME/bin
|
|
export PATH</programlisting>
|
|
</sect3>
|
|
</sect2>
|
|
|
|
<sect2>
|
|
<title>Installazione di &oracle;</title>
|
|
|
|
<para>A causa di una leggera inconsistenza nell'emulatore Linux,
|
|
devi creare una directory chiamata <filename>.oracle</filename> in
|
|
<filename>/var/tmp</filename> prima di avviare l'installer.
|
|
Fallo appartenere dall'utente <username>oracle</username> e dovresti
|
|
essere in grado di installare <application>&oracle;</application>
|
|
senza alcun problema. Se hai problemi, controlla prima la tua
|
|
distribuzione e/o configurazione di <application>&oracle;</application>!
|
|
Dopo che hai installato <application>&oracle;</application>, applica
|
|
le patch descritte nelle prossime due sottosezioni.</para>
|
|
|
|
<para>Un problema frequente è che l'adattatore del protocollo
|
|
TCP non è installato corretamente. Di conseguenza non puoi
|
|
avviare alcun listener TCP. Le seguenti azioni aiutano a risolvere
|
|
questo problema:</para>
|
|
|
|
<screen>&prompt.root; <userinput>cd $ORACLE_HOME/network/lib</userinput>
|
|
&prompt.root; <userinput>make -f ins_network.mk ntcontab.o</userinput>
|
|
&prompt.root; <userinput>cd $ORACLE_HOME/lib</userinput>
|
|
&prompt.root; <userinput>ar r libnetwork.a ntcontab.o</userinput>
|
|
&prompt.root; <userinput>cd $ORACLE_HOME/network/lib</userinput>
|
|
&prompt.root; <userinput>make -f ins_network.mk install</userinput></screen>
|
|
|
|
<para>Non dimenticarti di eseguire <filename>root.sh</filename>
|
|
ancora!</para>
|
|
|
|
<sect3 id="linuxemu-patch-root">
|
|
<title>Modifiche a root.sh</title>
|
|
|
|
<para>Nell'installazione di <application>&oracle;</application>, alcune
|
|
azioni, che vanno eseguite come <username>root</username>, sono
|
|
registrate in uno script di shell chiamato
|
|
<filename>root.sh</filename>.
|
|
Questo script si trova nella directory <filename>orainst</filename>.
|
|
Applica questa patch a <filename>root.sh</filename>, in modo che usi
|
|
propriamente <command>chown</command> o, in alternativa, esegui lo
|
|
script in una shell nativa di 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>Se non installi <application>&oracle;</application> dal CD, puoi
|
|
aggiungere la patch al sorgente di <filename>root.sh</filename>. Si
|
|
chiama <filename>rthd.sh</filename> e si trova nella directory
|
|
<filename>orainst</filename> nell'albero dei sorgenti.</para>
|
|
</sect3>
|
|
|
|
<sect3 id="linuxemu-patch-tcl">
|
|
<title>Modifiche a genclntsh</title>
|
|
|
|
<para>Lo script <command>genclntsh</command> viene usato per creare
|
|
una singola libreria condivisa del client. Si usa quando si compilano
|
|
le demo. Applica la patch seguente per decommentare la definizione di
|
|
<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>Avvio di &oracle;</title>
|
|
|
|
<para>Se hai seguito le istruzioni, dovresti essere in grado di avviare
|
|
<application>&oracle;</application> proprio come se fosse su
|
|
Linux.</para>
|
|
</sect2>
|
|
</sect1>
|
|
|
|
<sect1 id="sapr3">
|
|
<sect1info>
|
|
<authorgroup>
|
|
<author>
|
|
<firstname>Holger</firstname>
|
|
|
|
<surname>Kipp</surname>
|
|
|
|
<contrib>Contributo di </contrib>
|
|
</author>
|
|
</authorgroup>
|
|
|
|
<authorgroup>
|
|
<author>
|
|
<firstname>Valentino</firstname>
|
|
|
|
<surname>Vaschetto</surname>
|
|
|
|
<contrib>Versione originale convertita in SGML da </contrib>
|
|
</author>
|
|
</authorgroup>
|
|
</sect1info>
|
|
|
|
<title>Installazione di &sap.r3;</title>
|
|
|
|
<indexterm>
|
|
<primary>applicazioni</primary>
|
|
<secondary><application>SAP R/3</application></secondary>
|
|
</indexterm>
|
|
|
|
<para>Le installazioni di sistemi <application>&sap;</application> usando
|
|
FreeBSD non sono supportate dal team di supporto &sap; — offrono
|
|
supporto solo per piattaforme certificate.</para>
|
|
|
|
<sect2 id="preface">
|
|
<title>Prefazione</title>
|
|
|
|
<para>Questo documento descrive un modo possibile per installare un
|
|
sistema <application>&sap.r3;</application> con un database
|
|
<application>&oracle;</application> per Linux su una macchina FreeBSD,
|
|
inclusa l'installazione di FreeBSD e
|
|
<application>&oracle;</application>.
|
|
Sono descritte due diverse configurazioni:</para>
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para><application>&sap.r3; 4.6B (IDES)</application> con
|
|
<application>&oracle; 8.0.5</application> su &os; 4.3-STABLE</para>
|
|
</listitem>
|
|
|
|
<listitem>
|
|
<para><application>&sap.r3; 4.6C</application> con
|
|
<application>&oracle; 8.1.7</application> su &os; 4.5-STABLE</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
|
|
<para>Anche se questo documento tenta di descrivere tutti i passi
|
|
importanti in dettaglio, non è insteso come un sostituto delle
|
|
guide di installazione di <application>&oracle;</application> e
|
|
<application>&sap.r3;</application>.</para>
|
|
|
|
<para>Per favore, controlla la documentazione unita all'edizione Linux di
|
|
<application>&sap.r3;</application> per questioni specifiche su
|
|
<application>&sap;</application> e <application>&oracle;</application>, e
|
|
anche le risorse da <application>&oracle;</application> e
|
|
<application>&sap; OSS</application>.</para>
|
|
</sect2>
|
|
|
|
<sect2 id="software">
|
|
<title>Software</title>
|
|
|
|
<para>Sono stati usati i seguenti CD-ROM per le installazioni di
|
|
<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>Nome</entry>
|
|
|
|
<entry>Numero</entry>
|
|
|
|
<entry>Descrizione</entry>
|
|
</row>
|
|
</thead>
|
|
|
|
<tbody>
|
|
<row>
|
|
<entry>KERNEL</entry>
|
|
|
|
<entry>51009113</entry>
|
|
|
|
<entry>SAP Kernel Oracle / Installation / AIX, Linux,
|
|
Solaris</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry>RDBMS</entry>
|
|
|
|
<entry>51007558</entry>
|
|
|
|
<entry>Oracle / RDBMS 8.0.5.X / Linux</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry>EXPORT1</entry>
|
|
|
|
<entry>51010208</entry>
|
|
|
|
<entry>IDES / DB-Export / Disco 1 di 6</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry>EXPORT2</entry>
|
|
|
|
<entry>51010209</entry>
|
|
|
|
<entry>IDES / DB-Export / Disco 2 di 6</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry>EXPORT3</entry>
|
|
|
|
<entry>51010210</entry>
|
|
|
|
<entry>IDES / DB-Export / Disco 3 di 6</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry>EXPORT4</entry>
|
|
|
|
<entry>51010211</entry>
|
|
|
|
<entry>IDES / DB-Export / Disco 4 di 6</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry>EXPORT5</entry>
|
|
|
|
<entry>51010212</entry>
|
|
|
|
<entry>IDES / DB-Export / Disco 5 di 6</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry>EXPORT6</entry>
|
|
|
|
<entry>51010213</entry>
|
|
|
|
<entry>IDES / DB-Export / Disco 6 di 6</entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</informaltable>
|
|
|
|
<para>Abbiamo usato anche il CD di <application>&oracle; 8
|
|
Server</application> (versione preproduzione 8.0.5 per Linux,
|
|
versione del kernel 2.0.33) che non è non strettamente
|
|
necessario, e
|
|
FreeBSD 4.3-STABLE (uscita pochi giorni dopo 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>Nome</entry>
|
|
|
|
<entry>Numero</entry>
|
|
|
|
<entry>Descrizione</entry>
|
|
</row>
|
|
</thead>
|
|
|
|
<tbody>
|
|
<row>
|
|
<entry>KERNEL</entry>
|
|
|
|
<entry>51014004</entry>
|
|
|
|
<entry>SAP Kernel Oracle /
|
|
SAP Kernel Version 4.6D / DEC, Linux</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry>RDBMS</entry>
|
|
|
|
<entry>51012930</entry>
|
|
|
|
<entry>Oracle 8.1.7/ RDBMS / Linux</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry>EXPORT1</entry>
|
|
|
|
<entry>51013953</entry>
|
|
|
|
<entry>Release 4.6C SR2 / Export / Disco 1 di 4</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry>EXPORT1</entry>
|
|
|
|
<entry>51013953</entry>
|
|
|
|
<entry>Release 4.6C SR2 / Export / Disco 2 di 4</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry>EXPORT1</entry>
|
|
|
|
<entry>51013953</entry>
|
|
|
|
<entry>Release 4.6C SR2 / Export / Disco 3 di 4</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry>EXPORT1</entry>
|
|
|
|
<entry>51013953</entry>
|
|
|
|
<entry>Release 4.6C SR2 / Export / Disco 4 di 4</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry>LANG1</entry>
|
|
|
|
<entry>51013954</entry>
|
|
|
|
<entry>Release 4.6C SR2 / Language / DE, EN, FR / Disco 1 di
|
|
3</entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</informaltable>
|
|
|
|
<para>Dipendentemente dalle lingue che vuoi installare, potrebbero
|
|
essere necessari altri CD per le lingue. Qui usiamo solo DE e EN,
|
|
così da utilizzare solo il primo CD per le lingue. Come
|
|
piccola nota, i numeri per tutti i quattro CD EXPORT sono uguali.
|
|
Tutti e tre
|
|
i CD per le lingue hanno pure lo stesso numero (diversamente dalla
|
|
numerazione della release 4.6B IDES). Mentre stiamo scrivendo,
|
|
questa installazione sta girando su &os; 4.5-STABLE
|
|
(20.03.2002).</para>
|
|
</sect3>
|
|
</sect2>
|
|
|
|
<sect2 id="sap-notes">
|
|
<title>Note di &sap;</title>
|
|
|
|
<para>Le seguenti note dovrebbero essere lette prima di installare
|
|
<application>&sap.r3;</application> e dovrebbero tornare utili durante
|
|
l'installazione:</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>Numero</entry>
|
|
|
|
<entry>Titolo</entry>
|
|
</row>
|
|
</thead>
|
|
|
|
<tbody>
|
|
<row>
|
|
<entry>0171356</entry>
|
|
|
|
<entry>Software SAP su Linux: Commenti Essenziali</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry>0201147</entry>
|
|
|
|
<entry>INST: 4.6C R/3 Inst. su UNIX - Oracle</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry>0373203</entry>
|
|
|
|
<entry>Aggiornamento / Migrazione Oracle 8.0.5 -->
|
|
8.0.6/8.1.6 LINUX</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry>0072984</entry>
|
|
|
|
<entry>Rilascio di Digital UNIX 4.0B per Oracle</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry>0130581</entry>
|
|
|
|
<entry>R3SETUP passo DIPGNTAB termina</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry>0144978</entry>
|
|
|
|
<entry>Il tuo sistema non è stato installato
|
|
correttamente</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry>0162266</entry>
|
|
|
|
<entry>Domande e suggerimenti per R3SETUP su 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>Numero</entry>
|
|
|
|
<entry>Titolo</entry>
|
|
</row>
|
|
</thead>
|
|
|
|
<tbody>
|
|
<row>
|
|
<entry>0015023</entry>
|
|
|
|
<entry>Inizializzazione della tabella TCPDB (RSXP0004)
|
|
(EBCDIC)</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry>0045619</entry>
|
|
|
|
<entry>R/3 con molti linguaggi o caratteri</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry>0171356</entry>
|
|
|
|
<entry>Software SAP su Linux: Commenti Essenziali</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry>0195603</entry>
|
|
|
|
<entry>RedHat 6.1 Enterprise version: Problemi
|
|
Conosciuti</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry>0212876</entry>
|
|
|
|
<entry>Il nuovo strumento di archiviazione SAPCAR</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry>0300900</entry>
|
|
|
|
<entry>Linux: Hardware DELL Rilasciato</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry>0377187</entry>
|
|
|
|
<entry>RedHat 6.2: Note importanti</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry>0387074</entry>
|
|
|
|
<entry>INST: R/3 4.6C SR2 Installazione su UNIX</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry>0387077</entry>
|
|
|
|
<entry>INST: R/3 4.6C SR2 Inst. su UNIX - Oracle</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry>0387078</entry>
|
|
|
|
<entry>Software SAP su UNIX: Dipendenze del SO per 4.6C
|
|
SR2</entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</informaltable>
|
|
</sect3>
|
|
</sect2>
|
|
|
|
<sect2 id="hardware-requirements">
|
|
<title>Requisiti Hardware</title>
|
|
|
|
<para>La strumentazione che segue è sufficiente per
|
|
l'installazione di un sistema <application>&sap.r3;</application>. Per
|
|
un uso in produzione, è necessario un dimensionamento più
|
|
preciso:</para>
|
|
|
|
<informaltable frame="none" pgwide="1">
|
|
<tgroup cols="3">
|
|
<thead>
|
|
<row>
|
|
<entry>Componente</entry>
|
|
|
|
<entry>4.6B</entry>
|
|
|
|
<entry>4.6C</entry>
|
|
</row>
|
|
</thead>
|
|
|
|
<tbody>
|
|
<row>
|
|
<entry>Processore</entry>
|
|
|
|
<entry>2 x 800MHz &pentium; III</entry>
|
|
|
|
<entry>2 x 800MHz &pentium; III</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry>Memoria</entry>
|
|
|
|
<entry>1GB ECC</entry>
|
|
|
|
<entry>2GB ECC</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry>Spazio sul Disco Fisso</entry>
|
|
|
|
<entry>50-60GB (IDES)</entry>
|
|
|
|
<entry>50-60GB (IDES)</entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</informaltable>
|
|
|
|
<para>Per l'uso in produzione si raccomandano processori &xeon;,
|
|
con una grande cache, dischi ad accesso ad alta velocità (SCSI,
|
|
controller hardware RAID), sono raccomandati USV e ECC-RAM. La grande
|
|
quantità di spazio sul disco fisso è dovuta al sistema
|
|
IDES preconfigurato, che, durante l'installazione, crea 27 GB di
|
|
file per il database. Questo spazio è sufficiente per sistemi
|
|
in produzione e per i dati delle applicazioni iniziali.</para>
|
|
|
|
<sect3 id="hardware-46b">
|
|
<title>&sap.r3; 4.6B, &oracle; 8.0.5</title>
|
|
|
|
<para>È stato usato il seguente hardware in disuso:
|
|
una scheda biprocessore con 2 processori &pentium; III da
|
|
800 MHz, adattatore SCSI &adaptec; 29160 Ultra160 (per accedere
|
|
ad un unità nastro DLT da 40/80 GB e al CDROM),
|
|
&mylex; &acceleraid; (2 canali, firmware 6.00-1-00 con 32 MB
|
|
RAM). Al controller RAID &mylex; sono attaccati due dischi fissi da
|
|
17 GB (mirrored) e quattro dischi fissi da 36 GB
|
|
(RAID 5).</para>
|
|
</sect3>
|
|
|
|
<sect3 id="hardware-46c">
|
|
<title>&sap.r3; 4.6C, &oracle; 8.1.7</title>
|
|
|
|
<para>Per questa installazione è stato usato un &dell;
|
|
&poweredge; 2500: una scheda biprocessore con due processori
|
|
&pentium; III da
|
|
1000 MHz (256 kB di cache), 2 GB PC133 ECC SDRAM,
|
|
controller RAID PERC/3 DC PCI con 128 MB, e un drive EIDE
|
|
DVD-ROM.
|
|
Al controller RAID controller sono attaccati due dischi fissi da
|
|
18 GB (mirrored) e quattro dischi fissi da 36 GB
|
|
(RAID 5).</para>
|
|
</sect3>
|
|
</sect2>
|
|
|
|
<sect2 id="installation">
|
|
<title>Installazione di FreeBSD</title>
|
|
|
|
<para>Prima devi installare FreeBSD. Ci sono molti modi per farlo,
|
|
per maggiori informazioni leggi la <xref
|
|
linkend="install-diff-media"/>.</para>
|
|
|
|
<sect3 id="disk-layout">
|
|
<title>Layuot del Disco</title>
|
|
|
|
<para>Per farla semplice, abbiamo usato lo stesso layout del disco sia
|
|
per l'installazione di <application>&sap.r3; 46B</application> che di
|
|
<application>&sap.r3; 46C SR2</application>. Cambiano solo i nomi dei
|
|
dispositivi, dal momento che le installazioni sono state eseguite
|
|
su hardware differenti (rispettivamente <filename>/dev/da</filename>
|
|
e <filename>/dev/amr</filename>, così se si usa un AMI
|
|
&megaraid;, si vedrà <filename>/dev/amr0s1a</filename> invece
|
|
che <filename>/dev/da0s1a</filename>):</para>
|
|
|
|
<informaltable frame="none" pgwide="1">
|
|
<tgroup cols="4">
|
|
<thead>
|
|
<row>
|
|
<entry>File system</entry>
|
|
|
|
<entry>Dimensione (1k-blocks)</entry>
|
|
|
|
<entry>Dimensione (GB)</entry>
|
|
|
|
<entry>Montato su</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>Configura in anticipo e inizializza i due drive
|
|
logici con il software &mylex; o PERC/3 RAID. Il software può
|
|
essere lanciato durante la fase di avvio del
|
|
<acronym>BIOS</acronym>.</para>
|
|
|
|
<para>Nota che il layout di questo disco differisce leggermente dalle
|
|
raccomandazioni di &sap;, giacché &sap; suggerisce di montare
|
|
le sottodirectory di <application>&oracle;</application> (e qualche
|
|
altra) separatamente — abbiamo deciso di crearle come vere
|
|
sottodirectory per semplicità.</para>
|
|
</sect3>
|
|
|
|
<sect3 id="makeworldandnewkernel">
|
|
<title><command>make world</command> e il Nuovo Kernel</title>
|
|
|
|
<para>Scarica gli ultimi sorgenti -STABLE. Ricompila world e il tuo
|
|
kernel personalizzato dopo averne modificato il file di
|
|
configurazione.
|
|
In questo dovresti includere anche i
|
|
<link linkend="kerneltuning">parametri del kernel</link> che sono
|
|
richiesti sia per <application>&sap.r3;</application> che per
|
|
<application>&oracle;</application>.</para>
|
|
</sect3>
|
|
</sect2>
|
|
|
|
<sect2 id="installingthelinuxenviornment">
|
|
<title>Installazione dell'Ambiente Linux</title>
|
|
|
|
<sect3 id="installinglinuxbase-system">
|
|
<title>Installazione del Sistema Linux di Base</title>
|
|
|
|
<para>Per primo bisogna installare il port
|
|
<link linkend="linuxemu-libs-port">linux_base</link> (come
|
|
<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>Installazione dell'Ambiente di Sviluppo di Linux</title>
|
|
|
|
<para>È richiesto l'ambiente di sviluppo di linux, se vuoi
|
|
installare <application>&oracle;</application> su FreeBSD secondo la
|
|
<xref linkend="linuxemu-oracle"/>:</para>
|
|
|
|
<screen>&prompt.root; <userinput>cd /usr/ports/devel/linux_devtools</userinput>
|
|
&prompt.root; <userinput>make install distclean</userinput></screen>
|
|
|
|
<para>L'ambiente di sviluppo di Linux è stato installato solo
|
|
durante l'installazione di <application>&sap.r3; 46B
|
|
IDES</application>.
|
|
Non è necessario, se <application>&oracle; DB</application>
|
|
non è ricollegata sul sistema FreeBSD. Questo è il
|
|
caso se stai usando il tarball di <application>&oracle;</application>
|
|
da un sistema Linux.</para>
|
|
</sect3>
|
|
|
|
<sect3 id="installingnecessaryrpms">
|
|
<title>Installazione degli RPM necessari</title>
|
|
|
|
<indexterm><primary>RPM</primary></indexterm>
|
|
|
|
<para>Per avviare il programma <command>R3SETUP</command>, c'è
|
|
bisogno del supporto PAM. Durante la prima installazione di
|
|
<application>&sap;</application> su FreeBSD 4.3-STABLE abbiamo tentato
|
|
di installare PAM con tutti i pacchetti richiesti: alla fine abbiamo
|
|
forzato l'installazione del pacchetto di PAM, ed ha funzionato. Per
|
|
<application>&sap.r3; 4.6C SR2</application> abbiamo subito forzato
|
|
l'installazione degli RPM di PAM, ed ha pure funzionato, sembra quindi
|
|
che i pacchetti dipendenti non siano necessari:</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>Per fare in modo che <application>&oracle; 8.0.5</application>
|
|
avvii l'intelligent agent, dobbiamo anche installare il paccheto Tcl
|
|
di RedHat <filename>tcl-8.0.5-30.i386.rpm</filename> (altrimenti il
|
|
ricollegamento durante l'installazione di
|
|
<application>&oracle;</application> non funzionerà).
|
|
Ci sono altri punti riguardanti il ricollegamento di
|
|
<application>&oracle;</application>, ma è un problema di
|
|
<application>&oracle;</application> per Linux, non specifico di
|
|
FreeBSD.</para>
|
|
</sect3>
|
|
|
|
<sect3 id="linuxprocandfallbackelfbrand">
|
|
<title>Alcuni Suggerimenti</title>
|
|
|
|
<para>Potrebbe essere una buona idea aggiungere
|
|
<literal>linprocfs</literal>
|
|
a <filename>/etc/fstab</filename>, per maggiori informazioni guarda
|
|
la pagina del manuale di &man.linprocfs.5;. Un altro parametro da
|
|
impostare è <literal>kern.fallback_elf_brand=3</literal>, da
|
|
fare nel file <filename>/etc/sysctl.conf</filename>.</para>
|
|
</sect3>
|
|
</sect2>
|
|
|
|
<sect2 id="creatingsapr3env">
|
|
<title>Creazione dell'Ambiente &sap.r3;</title>
|
|
|
|
<sect3 id="filesystemsandmountpoints">
|
|
<title>Creazione dei File System Necessari e dei Punti di Mount</title>
|
|
|
|
<para>Per una installazione semplice è sufficiente creare i
|
|
seguenti file system:</para>
|
|
|
|
<informaltable frame="none" pgwide="1">
|
|
<tgroup cols="2">
|
|
<thead>
|
|
<row>
|
|
<entry>punto di mount</entry>
|
|
|
|
<entry>dimensione in 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>È necessario anche creare qualche collegamento, altrimenti
|
|
l'installer di <application>&sap;</application> si lamenterà,
|
|
perché controlla i collegamenti creati:</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>Possibili messaggi d'errore durante l'installazione (qui con
|
|
il sistema <emphasis>PRD</emphasis> e l'installazione di
|
|
<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>Creazione degli Utenti e delle Directory</title>
|
|
|
|
<para><application>&sap.r3;</application> ha bisogno di due utenti e
|
|
tre gruppi. I nomi degli utenti dipendono dal
|
|
<application>&sap;</application> system ID (SID) che consta di tre
|
|
lettere. Alcuni di questi SID sono riservati da
|
|
<application>&sap;</application> (per esempio <literal>SAP</literal> e
|
|
<literal>NIX</literal>. Per una lista completa controlla la
|
|
documentazione <application>&sap;</application>). Per
|
|
l'installazione di IDES abbiamo usato <literal>IDS</literal>, per
|
|
l'installazione di 4.6C SR2 <literal>PRD</literal>, poiché quel
|
|
sistema è inteso per l'uso in produzione. Abbiamo quindi i
|
|
seguenti gruppi (gli ID dei gruppi potrebbero differire, questi sono
|
|
solo i valori che abbiamo usato nella nostra installazione):</para>
|
|
|
|
<informaltable frame="none" pgwide="1">
|
|
<tgroup cols="3">
|
|
<thead>
|
|
<row>
|
|
<entry>ID del gruppo</entry>
|
|
|
|
<entry>nome del gruppo</entry>
|
|
|
|
<entry>descrizione</entry>
|
|
</row>
|
|
</thead>
|
|
|
|
<tbody>
|
|
<row>
|
|
<entry>100</entry>
|
|
|
|
<entry>dba</entry>
|
|
|
|
<entry>Amministratore del Database</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry>101</entry>
|
|
|
|
<entry>sapsys</entry>
|
|
|
|
<entry>Sistema &sap;</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry>102</entry>
|
|
|
|
<entry>oper</entry>
|
|
|
|
<entry>Operatore del Database</entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</informaltable>
|
|
|
|
<para>In una installazione normale di
|
|
<application>&oracle;</application>, si usa solo il gruppo
|
|
<groupname>dba</groupname>. Come gruppo <groupname>oper</groupname>,
|
|
si usa anche il gruppo <groupname>dba</groupname> (per maggiori
|
|
informazioni, vedi la documentazione di
|
|
<application>&oracle;</application> e di
|
|
<application>&sap;</application>).</para>
|
|
|
|
<para>Abbiamo bisogno anche dei seguenti utenti:</para>
|
|
|
|
<informaltable frame="none" pgwide="1">
|
|
<tgroup cols="6">
|
|
<thead>
|
|
<row>
|
|
<entry>ID utente</entry>
|
|
|
|
<entry>nome utente</entry>
|
|
|
|
<entry>nome generico</entry>
|
|
|
|
<entry>gruppo</entry>
|
|
|
|
<entry>gruppi addizionali</entry>
|
|
|
|
<entry>descrizione</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>Amministratore &sap;</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry>1002</entry>
|
|
|
|
<entry>oraids/oraprd</entry>
|
|
|
|
<entry>ora<replaceable>sid</replaceable></entry>
|
|
|
|
<entry>dba</entry>
|
|
|
|
<entry>oper</entry>
|
|
|
|
<entry>Amministratore &oracle;</entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</informaltable>
|
|
|
|
<para>Aggiungere gli utenti con &man.adduser.8; richiede l'inserimento
|
|
di questo per l'<quote>Amministratore &sap;</quote> (notare la shell
|
|
e la directory 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>e per l'<quote>Amministratore &oracle;</quote>:</para>
|
|
|
|
<programlisting>Name: ora<replaceable>sid</replaceable>
|
|
Password: ******
|
|
Fullname: Oracle Administrator <replaceable>SID</replaceable>
|
|
Uid: 1002
|
|
Gid: 100 (dba)
|
|
Class:
|
|
Groups: dba
|
|
HOME: /oracle/<replaceable>sid</replaceable>
|
|
Shell: bash (/compat/linux/bin/bash)</programlisting>
|
|
|
|
<para>Questo dovrebbe includere anche il gruppo
|
|
<groupname>oper</groupname> nel caso tu stia usando entrambi i
|
|
gruppi <groupname>dba</groupname> e
|
|
<groupname>oper</groupname>.</para>
|
|
</sect3>
|
|
|
|
<sect3 id="creatingdirectories">
|
|
<title>Creazione delle Directory</title>
|
|
|
|
<para>Queste directory solitamente sono create come file system
|
|
separati, dipende esclusivamente dalle tue necessità.
|
|
Noi abbiamo scelto di crearle come semplici directory, dal momento
|
|
che, comunque, si trovano sullo stesso RAID 5:</para>
|
|
|
|
<para>Prima impostiamo le appartenenze ed i diritti per alcune
|
|
directory (come utente <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>Successivamente creiamo le directory come utente
|
|
<username>ora<replaceable>sid</replaceable></username>. Queste
|
|
saranno tutte le sottodirectory di
|
|
<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>Per l'installazione di <application>&oracle; 8.1.7</application>
|
|
sono necessarie alcune altre directory:</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>La directory <filename>client/80x_32</filename> è usata
|
|
esattamente con questo nome. Non rimpiazzare la
|
|
<emphasis>x</emphasis> con dei numeri o altro.</para>
|
|
</note>
|
|
|
|
<para>Nel terzo passo creiamo le directory come
|
|
<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>Definizioni in <filename>/etc/services</filename></title>
|
|
|
|
<para><application>&sap.r3;</application> richiede alcune definizioni
|
|
nel file <filename>/etc/services</filename>, che non sono impostate
|
|
correttamente durante l'installazione sotto FreeBSD. Aggiungi le
|
|
seguenti righe (hai bisogno almeno di queste definizioni,
|
|
corrispondenti al numero di istanza — in questo caso,
|
|
<literal>00</literal>. Non fa danni aggiungere tutte le definizioni
|
|
da <literal>00</literal> a <literal>99</literal> per
|
|
<literal>dp</literal>, <literal>gw</literal>, <literal>sp</literal> e
|
|
<literal>ms</literal>). Se userai un
|
|
<application>SAProuter</application> o avrai bisogno di accedere a
|
|
<application>&sap;</application> OSS, hai bisogno di
|
|
<literal>99</literal>, dal momento che la porta 3299 è
|
|
normalmente utilizzata per il processo
|
|
<application>SAProuter</application> sul sistema target:</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>Internazionalizzazioni Necessarie</title>
|
|
|
|
<indexterm><primary>internazionalizzazione</primary></indexterm>
|
|
|
|
<para><application>&sap;</application> richiede almeno due
|
|
internazionalizzazioni che non fanno parte dell'installazione
|
|
standard di RedHat. &sap; offre gli RPM richiesti, scaricabili dal
|
|
loro server FTP (che è accessibile solo se sei un cliente
|
|
con accesso OSS). Vedi la nota 0171356 per una lista degli RPM di
|
|
cui hai bisogno.</para>
|
|
|
|
<para>È pure possibile creare solamente i collegamenti
|
|
appropriati (per esempio da <emphasis>de_DE</emphasis> e
|
|
<emphasis>en_US</emphasis> ), ma non lo raccomandiamo per un sistema
|
|
in produzione (anche se ha funzionato con il sistema IDES senza
|
|
alcun problema). Le seguenti internazionalizzazioni sono
|
|
necessarie:</para>
|
|
|
|
<programlisting>de_DE.ISO-8859-1
|
|
en_US.ISO-8859-1</programlisting>
|
|
|
|
<para>Crea i collegamenti come questi:</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>Se non sono presenti, ci sarà qualche problema durante
|
|
l'installazione. Se vengono ignorati (impostando
|
|
<literal>STATUS</literal> dei punti con errore a
|
|
<literal>OK</literal> nel file <filename>CENTRDB.R3S</filename>),
|
|
sarà impossibile autenticarsi nel sistema
|
|
<application>&sap;</application> senza qualche ulteriore
|
|
sforzo.</para>
|
|
</sect3>
|
|
|
|
<sect3 id="kerneltuning">
|
|
<title>Affinamento del Kernel</title>
|
|
|
|
<indexterm><primary>affinamento del kernel</primary></indexterm>
|
|
|
|
<para>I sistemi <application>&sap.r3;</application> necessitano di
|
|
molte risorse. Di conseguenza abbiamo aggiunto i seguenti parametri
|
|
al file di configurazione del kernel:</para>
|
|
|
|
<programlisting># Set these for memory pigs (SAP and Oracle):
|
|
options MAXDSIZ="(1024*1024*1024)"
|
|
options DFLDSIZ="(1024*1024*1024)"
|
|
# System V options needed.
|
|
options SYSVSHM #SYSV-style shared memory
|
|
options SHMMAXPGS=262144 #max amount of shared mem. pages
|
|
#options SHMMAXPGS=393216 #use this for the 46C inst.parameters
|
|
options SHMMNI=256 #max number of shared memory ident if.
|
|
options SHMSEG=100 #max shared mem.segs per process
|
|
options SYSVMSG #SYSV-style message queues
|
|
options MSGSEG=32767 #max num. of mes.segments in system
|
|
options MSGSSZ=32 #size of msg-seg. MUST be power of 2
|
|
options MSGMNB=65535 #max char. per message queue
|
|
options MSGTQL=2046 #max amount of msgs in system
|
|
options SYSVSEM #SYSV-style semaphores
|
|
options SEMMNU=256 #number of semaphore UNDO structures
|
|
options SEMMNS=1024 #number of semaphores in system
|
|
options SEMMNI=520 #number of semaphore identifiers
|
|
options SEMUME=100 #number of UNDO keys</programlisting>
|
|
|
|
<para>I valori minimi sono specificati nella documentazione fornita
|
|
con &sap;. Dal momento che non v'è alcuna descrizione per
|
|
Linux, vedi nella sezione HP-UX (32-bit) per ulteriori informazioni.
|
|
Siccome il sistema per l'installazione di 4.6C SR2 ha più
|
|
memoria principale, il segmento condiviso può essere
|
|
più grande sia per <application>&sap;</application> che per
|
|
<application>&oracle;</application>, quindi scegli un numero maggiore
|
|
di pagine di memoria condivisa.</para>
|
|
|
|
<note>
|
|
<para>Con l'installazione di default di FreeBSD su &i386;,
|
|
lascia <literal>MAXDSIZ</literal> e <literal>DFLDSIZ</literal> ad un
|
|
massimo di 1 GB. In caso contrario potrebbero accadere strani
|
|
errori, come <errorname>ORA-27102: out of memory</errorname> e
|
|
<errorname>Linux Error: 12: Cannot allocate
|
|
memory</errorname>.</para>
|
|
</note>
|
|
</sect3>
|
|
</sect2>
|
|
|
|
<sect2 id="installingsapr3">
|
|
<title>Installazione di &sap.r3;</title>
|
|
|
|
<sect3 id="preparingsapcdroms">
|
|
<title>Preparazione dei CD-ROM di &sap;</title>
|
|
|
|
<para>Ci sono molti CD-ROM da montare e smontare durante
|
|
l'installazione. Ad avere abbastanza drive CD-ROM, puoi montarli
|
|
tutti. Abbiamo deciso di copiare i contenuti dei CD-ROM nelle
|
|
directory corrispondenti:</para>
|
|
|
|
<programlisting>/oracle/<replaceable>SID</replaceable>/sapreorg/<replaceable>cd-name</replaceable></programlisting>
|
|
|
|
<para>dove <replaceable>cd-name</replaceable> era uno tra
|
|
<filename>KERNEL</filename>,
|
|
<filename>RDBMS</filename>, <filename>EXPORT1</filename>,
|
|
<filename>EXPORT2</filename>, <filename>EXPORT3</filename>,
|
|
<filename>EXPORT4</filename>, <filename>EXPORT5</filename> e
|
|
<filename>EXPORT6</filename> per l'installazione di 4.6B/IDES,
|
|
e <filename>KERNEL</filename>, <filename>RDBMS</filename>,
|
|
<filename>DISK1</filename>, <filename>DISK2</filename>,
|
|
<filename>DISK3</filename>, <filename>DISK4</filename> e
|
|
<filename>LANG</filename> per l'installazione di 4.6C SR2. Tutti i
|
|
nomi dei file sui CD montati dovrebbero essere in lettere maiuscole.
|
|
In caso contrario usa l'opzione <option>-g</option> per montare,
|
|
cioè usa questi comandi:</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>Avvio dello Script di Installazione</title>
|
|
|
|
<para>Per prima cosa devi creare una directory <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>Quindi viene lanciato lo script di installazione, che copia
|
|
quasi tutti i file rilevanti dentro alla directory <filename
|
|
class="directory">install</filename>:</para>
|
|
|
|
<screen>&prompt.root; <userinput>/oracle/<replaceable>SID</replaceable>/sapreorg/KERNEL/UNIX/INSTTOOL.SH</userinput></screen>
|
|
|
|
<para>L'installazione (4.6B) è data con un sistema di
|
|
dimostrazione &sap.r3; completamente personalizzato, per questo ci
|
|
sono sei CD EXPORT invece che tre. A questo punto il modello
|
|
<filename>CENTRDB.R3S</filename> serve per l'installazione di una
|
|
istanza centrale standard (<application>&r3;</application> e
|
|
database), non l'instanza centrale IDES, quindi bisogna copiare il
|
|
corrispondente <filename>CENTRDB.R3S</filename> dalla directory
|
|
<filename class="directory">EXPORT1</filename>, altrimenti
|
|
<command>R3SETUP</command>
|
|
chiederà solo tre CD EXPORT.</para>
|
|
|
|
<para>La nuova distribuzione di
|
|
<application>&sap; 4.6C SR2</application> viene venduta con quattro
|
|
CD EXPORT. Il file che controlla i passi dell'installazione è
|
|
<filename>CENTRAL.R3S</filename>. Contrariamente alle versioni
|
|
precedenti non ci sono modelli di installazione per una istanza
|
|
centrale con o senza database. <application>&sap;</application> usa
|
|
un modello diverso per l'installazione del database. Per riavviare
|
|
l'installazione in un secondo momento, è comunque sufficiente
|
|
riavviare con il file originale.</para>
|
|
|
|
<para>Durante e dopo l'installazione, <application>&sap;</application>
|
|
richiede <command>hostname</command> per restituire solamente
|
|
il nome del computer, non il nome completo del dominio. Quindi
|
|
imposta l'hostname in questo modo, oppure imposta un alias con
|
|
<command>alias hostname='hostname -s'</command> per entrambi
|
|
<username>ora<replaceable>sid</replaceable></username> e
|
|
<username><replaceable>sid</replaceable>adm</username> (e per
|
|
<username>root</username> almeno per i punti eseguiti come
|
|
<username>root</username>). È anche possibile modificare i file
|
|
<filename>.profile</filename> e <filename>.login</filename> installati
|
|
di entrambi gli utenti creati durante l'installazione di
|
|
<application>&sap;</application>.</para>
|
|
</sect3>
|
|
|
|
<sect3 id="startr3setup-46B">
|
|
<title>Avviare <command>R3SETUP</command> 4.6B</title>
|
|
|
|
<para>Assicurati che <envar>LD_LIBRARY_PATH</envar> sia impostato
|
|
correttamente:</para>
|
|
|
|
<screen>&prompt.root; <userinput>export LD_LIBRARY_PATH=/oracle/IDS/lib:/sapmnt/IDS/exe:/oracle/805_32/lib</userinput></screen>
|
|
|
|
<para>Avvia <command>R3SETUP</command> come <username>root</username>
|
|
dalla directory di installazione:</para>
|
|
|
|
<screen>&prompt.root; <userinput>cd /oracle/IDS/sapreorg/install</userinput>
|
|
&prompt.root; <userinput>./R3SETUP -f CENTRDB.R3S</userinput></screen>
|
|
|
|
<para>Lo script, quindi, fa alcune domande (i default sono tra
|
|
parentesi, seguite dal vero input):</para>
|
|
|
|
<informaltable frame="none" pgwide="1">
|
|
<tgroup cols="3">
|
|
<thead>
|
|
<row>
|
|
<entry>Domanda</entry>
|
|
|
|
<entry>Default</entry>
|
|
|
|
<entry>Input</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>Se non hai copiato i CD in posizioni diverse, l'installer di
|
|
<application>&sap;</application> non può tyrovare i CD
|
|
necessari (identificati dal file <filename>LABEL.ASC</filename>
|
|
sul CD) e quindi ti chiederà di inserire e montare il CD
|
|
e di confermare o di inserire il path al mount.</para>
|
|
|
|
<para><filename>CENTRDB.R3S</filename> potrebbe non essere scevro di
|
|
errori. Nel nostro caso, ha richiesto il CD EXPORT4 un'altra volta
|
|
ma indicando la chiave corretta (6_LOCATION, quindi 7_LOCATION,
|
|
ecc.), così bisogna continuare ad inserire i valori
|
|
corretti.</para>
|
|
|
|
<para>A parte alcuni problemi sopra menzionati, ogni cosa dovrebbe
|
|
andare bene fino al punto dove bisogna installare il database
|
|
&oracle;.</para>
|
|
</sect3>
|
|
|
|
<sect3 id="startr3setup-46C">
|
|
<title>Avviare <command>R3SETUP</command> 4.6C SR2</title>
|
|
|
|
<para>Assicurati che <envar>LD_LIBRARY_PATH</envar> sia impostato
|
|
correttamente. Ha un valore diverso dall'installazione di 4.6B con
|
|
<application>&oracle; 8.0.5</application>:</para>
|
|
|
|
<screen>&prompt.root; <userinput>export LD_LIBRARY_PATH=/sapmnt/PRD/exe:/oracle/PRD/817_32/lib</userinput></screen>
|
|
|
|
<para>Avvia <command>R3SETUP</command> come <username>root</username>
|
|
dalla directory di installazione:</para>
|
|
|
|
<screen>&prompt.root; <userinput>cd /oracle/PRD/sapreorg/install</userinput>
|
|
&prompt.root; <userinput>./R3SETUP -f CENTRAL.R3S</userinput></screen>
|
|
|
|
<para>Lo script, quindi, fa alcune domande (i default sono tra
|
|
parentesi, seguite dal vero input):</para>
|
|
|
|
<informaltable frame="none" pgwide="1">
|
|
<tgroup cols="3">
|
|
<thead>
|
|
<row>
|
|
<entry>Domanda</entry>
|
|
|
|
<entry>Default</entry>
|
|
|
|
<entry>Input</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>Al momento la creazione degli utenti genera un errore durante
|
|
l'installazione nelle fasi OSUSERDBSID_IND_ORA (nel creare l'utente
|
|
<username>ora<replaceable>sid</replaceable></username>) e
|
|
OSUSERSIDADM_IND_ORA (nel creare l'utente
|
|
<username><replaceable>sid</replaceable>adm</username>).</para>
|
|
|
|
<para>A parte qualche problema descritto sopra, tutto dovrebbe andare
|
|
liscio fino al punto dove bisogna installare il database
|
|
&oracle;.</para>
|
|
</sect3>
|
|
</sect2>
|
|
|
|
<sect2 id="installingoracle805">
|
|
<title>Installazione di &oracle; 8.0.5</title>
|
|
|
|
<para>Per favore, leggi le corrispondenti note di &sap; e i
|
|
<filename>Readme</filename> di &oracle; riguardanti
|
|
Linux e <application>&oracle; DB</application> per possibili problemi.
|
|
Molti, se non tutti, i problemi nascono da librerie
|
|
incompatibili.</para>
|
|
|
|
<para>Per maggiori informazioni riguardo all'installazione di
|
|
<application>&oracle;</application>, riferirsi al <link
|
|
linkend="linuxemu-oracle">capitolo Installare &oracle;</link>.</para>
|
|
|
|
|
|
<sect3 id="installingtheoracle805withorainst">
|
|
<title>Installazione di &oracle; 8.0.5 con
|
|
<command>orainst</command></title>
|
|
|
|
<para>Se bisogna usare <application>&oracle; 8.0.5</application>,
|
|
sono richeste alcune librerie in più per un ricollegamento
|
|
funzionante, perché <application>&oracle; 8.0.5</application>
|
|
è stata collegata con una vecchia glibc (RedHat 6.0), anche
|
|
se RedHat 6.1 già usa una nuova glibc. Per questo devi
|
|
installare i seguenti pacchetti per essere sicuro che il collegamento
|
|
funzioni:</para>
|
|
|
|
<para><filename>compat-libs-5.2-2.i386.rpm</filename></para>
|
|
<para><filename>compat-glibc-5.2-2.0.7.2.i386.rpm</filename></para>
|
|
<para><filename>compat-egcs-5.2-1.0.3a.1.i386.rpm</filename></para>
|
|
<para><filename>compat-egcs-c++-5.2-1.0.3a.1.i386.rpm</filename></para>
|
|
<para><filename>compat-binutils-5.2-2.9.1.0.23.1.i386.rpm</filename></para>
|
|
|
|
<para>Per maggiori informazioni, leggi le corrispondenti note di &sap;
|
|
o i <filename>Readme</filename> di &oracle;. Se non hai questa
|
|
opzione (al momento dell'installazione non abbiamo avuto abbastanza
|
|
tempo per controllare), si possono usare i binari originali, oppure
|
|
usare i binari ricollegati da un sistema RedHat originale.</para>
|
|
|
|
<para>Per compilare l'intelligent agent, bisogna installare il
|
|
pacchetto Tcl di RedHat. Se non puoi recuperare
|
|
<filename>tcl-8.0.3-20.i386.rpm</filename>, dovrebbe funzionare
|
|
uno più nuovo come
|
|
<filename>tcl-8.0.5-30.i386.rpm</filename> da RedHat 6.1.</para>
|
|
|
|
<para>A parte il ricollegamento, l'installazione è
|
|
diretta:</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>Conferma tutti i comandi con <keycap>Enter</keycap> fino a che
|
|
il software non è installato, a parte il
|
|
<emphasis>&oracle; On-Line Text Viewer</emphasis>, che non è
|
|
disponibile per Linux. <application>&oracle;</application>, quindi,
|
|
si ricolleghi con <command>i386-glibc20-linux-gcc</command>
|
|
invece dei disponibili <command>gcc</command>,
|
|
<command>egcs</command> o <command>i386-redhat-linux-gcc
|
|
</command>.</para>
|
|
|
|
<para>A causa di limitazioni di tempo, abbiamo deciso di usare i binari
|
|
da una distribuzione di
|
|
<application>&oracle; 8.0.5 PreProduction</application>, dopo il
|
|
primo tentativo, fallito, di far funzionare la versione dal CD del
|
|
RDBMS, e trovare e accedere agli RPM corretti era un incubo in quel
|
|
momento.</para>
|
|
</sect3>
|
|
|
|
<sect3 id="installingtheoracle805preproduction">
|
|
<title>Installzione della Distribuzione &oracle; 8.0.5 Pre-production
|
|
per Linux (Kernel 2.0.33)</title>
|
|
|
|
<para>Questa installazione è piuttosto semplice. Monta il CD e
|
|
avvia l'installer. Ti chiederà l'ubicazione della directory
|
|
home di &oracle; e vi copierà i file. Noi, comunque, Non
|
|
abbiamo cancellato ciò che è rimasto dei precedenti
|
|
tentativi di installazione del RDBMS.</para>
|
|
|
|
<para>Subito dopo, il database <application>&oracle;</application>
|
|
può essere lanciato senza problemi.</para>
|
|
</sect3>
|
|
</sect2>
|
|
|
|
<sect2 id="installingoracle817">
|
|
<title>Installazione del Tarball di &oracle; 8.1.7 per Linux</title>
|
|
|
|
<para>Prendi il tarball <filename>oracle81732.tgz</filename> che
|
|
hai prodotto dalla directory di installazione su un sistema Linux e
|
|
estrailo in
|
|
<filename>/oracle/<replaceable>SID</replaceable>/817_32/</filename>.</para>
|
|
</sect2>
|
|
|
|
<sect2 id="continuewithsapr4installation">
|
|
<title>Continuare con l'Installazione di &sap.r3;</title>
|
|
|
|
<para>Prima controlla le impostazioni d'ambiente degli utenti
|
|
<username>idsamd</username> (<replaceable>sid</replaceable>adm) e
|
|
<username>oraids</username> (ora<replaceable>sid</replaceable>).
|
|
Ora dovrebbero avere i file <filename>.profile</filename>,
|
|
<filename>.login</filename> e <filename>.cshrc</filename>
|
|
che usano tutti <command>hostname</command>. Nel caso l'hostname
|
|
del sistema sia il nome completamente qualificato, devi cambiare
|
|
<command>hostname</command> in <command>hostname
|
|
-s</command> dentro a tutti i file.</para>
|
|
|
|
<sect3 id="databaseload">
|
|
<title>Caricamento del Database</title>
|
|
|
|
<para>Dopo di ciò, <command>R3SETUP</command> può
|
|
essere riavviato o continuato (a seconda che se ne sia usciti o
|
|
no). <command>R3SETUP</command>, quindi, crea le tabelle e carica
|
|
i dati nel database con <command>R3load</command> (per 46B IDES,
|
|
da EXPORT1 a EXPORT6, per 46C da DISK1 a DISK4).</para>
|
|
|
|
<para>Quando il caricamento del database è finito (potrebbe
|
|
richiedere qualche ora), vengono richieste alcune password.
|
|
Per installazioni di prova, si possono usare le ben note
|
|
password di default (usane di diverse se la sicurezza è un
|
|
problema!):</para>
|
|
|
|
<informaltable frame="none" pgwide="1">
|
|
<tgroup cols="2">
|
|
<thead>
|
|
<row>
|
|
|
|
<entry>Domanda</entry>
|
|
|
|
<entry>Input</entry>
|
|
</row>
|
|
</thead>
|
|
|
|
<tbody>
|
|
<row>
|
|
|
|
<entry>Enter Password for sapr3</entry>
|
|
|
|
<entry>sap<keycap>Enter</keycap></entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry>Confirum Password for sapr3</entry>
|
|
|
|
<entry>sap<keycap>Enter</keycap></entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry>Enter Password for sys</entry>
|
|
|
|
<entry>change_on_install<keycap>Enter</keycap></entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry>Confirm Password for sys</entry>
|
|
|
|
<entry>change_on_install<keycap>Enter</keycap></entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry>Enter Password for system</entry>
|
|
|
|
<entry>manager<keycap>Enter</keycap></entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry>Confirm Password for system</entry>
|
|
|
|
<entry>manager<keycap>Enter</keycap></entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</informaltable>
|
|
|
|
<para>A questo punto abbiamo avuto qualche problema con
|
|
<command>dipgntab</command> durante l'installazione di 4.6B.</para>
|
|
</sect3>
|
|
|
|
<sect3 id="listener">
|
|
<title>Listener</title>
|
|
|
|
<para>Avvia il listener di <application>&oracle;</application> come
|
|
utente <username>ora<replaceable>sid</replaceable></username> come
|
|
segue:</para>
|
|
|
|
<screen>&prompt.user; <userinput>umask 0; lsnrctl start</userinput></screen>
|
|
|
|
<para>Altrimenti potresti incorrere nell'errore
|
|
<errorcode>ORA-12546</errorcode> poiché i socket non hanno i
|
|
permessi giusti. Vedi la nota di &sap; 072984.</para>
|
|
</sect3>
|
|
|
|
<sect3 id="mnlstables">
|
|
<title>Aggiornare le Tabelle MNLS</title>
|
|
|
|
<para>Se pensi di importare le lingue non-Latin-1 nel sistema
|
|
<application>&sap;</application>, devi aggiornare le tabelle Multi
|
|
National Language Support. Questo è descritto nelle note di
|
|
&sap; OSS 15023 e 45619. Altrimenti puoi saltare questa domanda
|
|
durante l'installazione di <application>&sap;</application>.</para>
|
|
|
|
<note>
|
|
<para>Se non hai bisogno del MNLS, è comunque necessario
|
|
controllare la tabella TCPDB e inizializzarla se ancora non è
|
|
stato fatto. Per maggiori informazioni, vedi le note di &sap;
|
|
0015023 e 0045619.</para>
|
|
</note>
|
|
</sect3>
|
|
</sect2>
|
|
|
|
<sect2 id="postinstallationsteps">
|
|
<title>Dopo l'Installazione</title>
|
|
|
|
<sect3 id="requestsapr3licensekey">
|
|
<title>Richiesta della Chiave di Licenza di &sap.r3;</title>
|
|
|
|
<para>Devi richiedere la tua chiave di licenza per
|
|
<application>&sap.r3;</application>. È necessaria,
|
|
dal momento che la licenza temporanea che è stata usata durante
|
|
l'installazione era valida solo per quattro settimane. Prima di tutto
|
|
recupera la chiave hardware. Autenticati come utente
|
|
<username>idsadm</username> e lancia
|
|
<command>saplicense</command>:</para>
|
|
|
|
<screen>&prompt.root; <userinput>/sapmnt/IDS/exe/saplicense -get</userinput></screen>
|
|
|
|
<para>Lanciando <command>saplicense</command> senza paramentri, viene
|
|
restituita una lista di opzioni. Quando si riceve la chiave di
|
|
licenza, può essere installata usando:</para>
|
|
|
|
<screen>&prompt.root; <userinput>/sapmnt/IDS/exe/saplicense -install</userinput></screen>
|
|
|
|
<para>Ti viene richiesto di inserire i seguenti valori:</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>Creazione degli Utenti</title>
|
|
|
|
<para>Crea un utente dentro il client 000 (richiesto per qualche
|
|
azione da eseguire dentro al client 000, ma con un utente diverso
|
|
dagli utenti <username>sap*</username> e
|
|
<username>ddic</username>). Come nome utente, noi solitamente
|
|
scegliamo <username>wartung</username> (o
|
|
<username>servizio</username> in italiano). I profili richiesti
|
|
sono <literal>sap_new</literal> e <literal>sap_all</literal>.
|
|
Per maggiore sicurezza, le password degli utenti di default dentro
|
|
a tutti i client dovrebbero essere cambiate (compresi gli utenti
|
|
<username>sap*</username> e <username>ddic</username>).</para>
|
|
</sect3>
|
|
|
|
<sect3 id="configtranssysprofileopermodesetc">
|
|
<title>Configurare il Sistema di Trasporto, il Profilo, i Modi di
|
|
Operare, Ecc.</title>
|
|
|
|
<para>Dentro al client 000, per gli utenti diversi da
|
|
<username>ddic</username> e <username>sap*</username>,
|
|
fai almeno questo:</para>
|
|
|
|
<informaltable frame="none" pgwide="1">
|
|
<tgroup cols="2">
|
|
<thead>
|
|
<row>
|
|
<entry>Azione</entry>
|
|
|
|
<entry>Transazione</entry>
|
|
</row>
|
|
</thead>
|
|
|
|
<tbody>
|
|
<row>
|
|
<entry>Configura il Sistema di Trasporto, p.e. come
|
|
<emphasis>Stand-Alone
|
|
Transport Domain Entity</emphasis></entry>
|
|
|
|
<entry>STMS</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry>Crea / Modifica il Profilo per il Sistema</entry>
|
|
|
|
<entry>RZ10</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry>Controlla le Istanze e i Modi di Operare</entry>
|
|
|
|
<entry>RZ04</entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</informaltable>
|
|
|
|
<para>Questi e tutti gli altri punti dopo l'installazione sono
|
|
estesamente descritti nelle guide di installazione di
|
|
<application>&sap;</application>.</para>
|
|
</sect3>
|
|
|
|
<sect3 id="editintsidsap">
|
|
<title>Modificare
|
|
<filename>init<replaceable>sid</replaceable>.sap</filename>
|
|
(<filename>initIDS.sap</filename>)</title>
|
|
|
|
<para>Il file <filename>/oracle/IDS/dbs/initIDS.sap</filename>
|
|
contiene il profilo di backup di <application>&sap;</application>.
|
|
Qui la dimensione del nastro da usare, il tipo di compressione e
|
|
tutto il resto sono da definire. Per farlo funzionare con
|
|
<command>sapdba</command> / <command>brbackup</command>, abbiamo
|
|
cambiato i seguenti valori:</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>Spiegazioni:</para>
|
|
|
|
<para><varname>compress</varname>: Il nastro che usiamo
|
|
è un HP DLT1 che ha compressione hardware .</para>
|
|
|
|
<para><varname>archive_function</varname>: Questa definisce il
|
|
comportamento normale per salvare i log dell'archivio di &oracle;:
|
|
i nuovi file di log sono salvati sul nastro, quelli già
|
|
salvati sono salvati ancora e poi cancellati. Questo previene molti
|
|
problemi se devi recuperare il database e uno dei nastri d'archivio
|
|
si è rovinato.</para>
|
|
|
|
<para><varname>cpio_flags</varname>: Di default si usa
|
|
<option>-B</option> che imposta la dimensione dei blocchi a
|
|
5120 Bytes. Per i nastri DLT, HP raccomanda una dimensione dei
|
|
blocchi di almeno 32 K, per cui abbiamo usato
|
|
<option>--block-size=128</option> per 64 K.
|
|
<option>--format=newc</option> è necessaria perché
|
|
abbiamo un numero di inode maggiore di 65535. L'ultima opzione
|
|
<option>--quiet</option> è necessaria perché altrimenti
|
|
<command>brbackup</command> si lamenta non appena
|
|
<command>cpio</command> restituisce il numero di blocchi
|
|
salvato.</para>
|
|
|
|
<para><varname>cpio_in_flags</varname>: Etichetta necessaria
|
|
per caricare i dati dal nastro. Il formato è riconosciuto
|
|
automaticamente.</para>
|
|
|
|
<para><varname>tape_size</varname>: Solitamente questo indica
|
|
la capacità di archiviazione del nastro. Per ragioni di
|
|
sicurezza (usiamo la compressione hardware), il valore è
|
|
leggermente più bassp del valore reale.</para>
|
|
|
|
<para><varname>tape_address</varname>: Il dispositivo non
|
|
riavvolgibile da usare con <command>cpio</command>.</para>
|
|
|
|
<para><varname>tape_address_rew</varname>: Il dispositivo
|
|
riavvolgibile da usare con <command>cpio</command>.</para>
|
|
</sect3>
|
|
|
|
<sect3>
|
|
<title>Configurazione dopo l'Installazione</title>
|
|
|
|
<para>I seguenti parametri di <application>&sap;</application>
|
|
dovrebbero essere rivisti dopo l'installazione (esempi per IDES 46B,
|
|
con 1 GB di memoria):</para>
|
|
|
|
<informaltable frame="none" pgwide="1">
|
|
<tgroup cols="2">
|
|
<thead>
|
|
<row>
|
|
<entry>Nome</entry>
|
|
|
|
<entry>Valore</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>Nota &sap; 0013026:</para>
|
|
|
|
<informaltable frame="none" pgwide="1">
|
|
<tgroup cols="2">
|
|
<thead>
|
|
<row>
|
|
<entry>Nome</entry>
|
|
|
|
<entry>Valore</entry>
|
|
</row>
|
|
</thead>
|
|
|
|
<tbody>
|
|
<row>
|
|
<entry>ztta/dynpro_area</entry>
|
|
|
|
<entry>2500000</entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</informaltable>
|
|
|
|
<para>Nota &sap; 0157246:</para>
|
|
|
|
<informaltable frame="none" pgwide="1">
|
|
<tgroup cols="2">
|
|
<thead>
|
|
<row>
|
|
<entry>Nome</entry>
|
|
|
|
<entry>Valore</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>Con i parametri descritti, su un sistema con 1 gigabyte
|
|
di memoria, si troverà un consumo di memoria simile a:</para>
|
|
|
|
<programlisting>Mem: 547M Active, 305M Inact, 109M Wired, 40M Cache, 112M Buf, 3492K Free</programlisting>
|
|
</note>
|
|
</sect3>
|
|
</sect2>
|
|
|
|
<sect2 id="problemsduringinstallation">
|
|
<title>Problemi Durante l'Installazione</title>
|
|
|
|
<sect3 id="restartr3setup">
|
|
<title>Riavviare <command>R3SETUP</command> dopo la Risoluzione di un
|
|
Problema</title>
|
|
|
|
<para><command>R3SETUP</command> si ferma se incorre in un errore.
|
|
Se hai guardato al file di log corrispondente e corretto l'errore,
|
|
devi riavviare <command>R3SETUP</command>, solitamente
|
|
selezionando REPEAT come opzione per l'ultimo passo
|
|
per cui <command>R3SETUP</command> si è lamentato.</para>
|
|
|
|
<para>Per riavviare <command>R3SETUP</command>, avvialo con il
|
|
corrispondente file <filename>R3S</filename>:</para>
|
|
|
|
<screen>&prompt.root; <userinput>./R3SETUP -f CENTRDB.R3S</userinput></screen>
|
|
|
|
<para>per 4.6B, oppure con</para>
|
|
|
|
<screen>&prompt.root; <userinput>./R3SETUP -f CENTRAL.R3S</userinput></screen>
|
|
|
|
<para>per 4.6C, non importa che errore sia accaduto con
|
|
<filename>CENTRAL.R3S</filename> o
|
|
<filename>DATABASE.R3S</filename>.</para>
|
|
|
|
<note>
|
|
<para>In alcuni punti, <command>R3SETUP</command> assume che sia
|
|
il database che i processi di <application>&sap;</application>
|
|
stiano girando (come fossero passi già completati).
|
|
Se dovessero accadere errori e, per esempio, il database non fosse
|
|
avviato, dovresti avviare sia il database che
|
|
<application>&sap;</application> a mano, dopo aver corretto gli
|
|
errori e prima di avviare ancora <command>R3SETUP</command>.</para>
|
|
|
|
<para>Non dimenticarti di avviare ancora il listener di
|
|
<application>&oracle;</application> (come
|
|
<username>ora<replaceable>sid</replaceable></username> con
|
|
<command>umask 0; lsnrctl start</command>) se è stato fermato
|
|
(per esempio a causa di un reboot necessario del sistema).</para>
|
|
</note>
|
|
</sect3>
|
|
|
|
<sect3 id="indoraduringduringr3setup">
|
|
<title>OSUSERSIDADM_IND_ORA Durante <command>R3SETUP</command></title>
|
|
|
|
<para>Se <command>R3SETUP</command> si lamentasse a questo punto,
|
|
modifica il file modello <command>R3SETUP</command> usato prima
|
|
(<filename>CENTRDB.R3S</filename> (4.6B) o anche
|
|
<filename>CENTRAL.R3S</filename> o <filename>DATABASE.R3S</filename>
|
|
(4.6C)). Individua <literal>[OSUSERSIDADM_IND_ORA]</literal> o cerca
|
|
solo la definizione <literal>STATUS=ERROR</literal> e modificala con i
|
|
seguenti valori:</para>
|
|
|
|
<programlisting>HOME=/home/<replaceable>sid</replaceable>adm (era vuota)
|
|
STATUS=OK (era uguale a ERROR)</programlisting>
|
|
|
|
<para>Quindi puoi riavviare ancora <command>R3SETUP</command>.</para>
|
|
</sect3>
|
|
|
|
<sect3 id="indoraduringr3setup">
|
|
<title>OSUSERDBSID_IND_ORA Durante <command>R3SETUP</command></title>
|
|
|
|
<para><command>R3SETUP</command> potrebbe anche lamentarsi a questo
|
|
punto. L'errore, qui, è simile a quello nella fase
|
|
OSUSERSIDADM_IND_ORA. Modifica il file modello
|
|
<command>R3SETUP</command> usato allora
|
|
(<filename>CENTRDB.R3S</filename>
|
|
(4.6B) oppure <filename>CENTRAL.R3S</filename> o
|
|
<filename>DATABASE.R3S</filename> (4.6C)). Individua
|
|
<literal>[OSUSERDBSID_IND_ORA]</literal> o cerca solo la definizione
|
|
<literal>STATUS=ERROR</literal> e modifica questi valori in quella
|
|
sezione:</para>
|
|
|
|
<programlisting>STATUS=OK</programlisting>
|
|
|
|
<para>Riavvia, quindi, <command>R3SETUP</command>.</para>
|
|
</sect3>
|
|
|
|
<sect3 id="oraviewvrffilenotfound">
|
|
<title><errorname>oraview.vrf FILE NOT FOUND</errorname> Durante
|
|
l'Installazione di &oracle;</title>
|
|
|
|
<para>Non hai deselezionato
|
|
<emphasis>&oracle; On-Line Text Viewer</emphasis> prima di cominciare
|
|
l'installazione. Questo è contrassegnato per l'installazine
|
|
anche se l'opzione non è disponibile per Linux. Deseleziona
|
|
questo prodotto nel menù di installazione di
|
|
<application>&oracle;</application> e riavvia l'installazione.</para>
|
|
</sect3>
|
|
|
|
<sect3 id="textenvincalid">
|
|
<title><errorname>TEXTENV_INVALID</errorname> Durante
|
|
<command>R3SETUP</command>, RFC o l'Avvio di SAPgui</title>
|
|
|
|
<para>Se si incorre in questo errore, allora manca la corretta
|
|
internazionalizzazione. La nota di &sap; 0171356 elenca gli RPM
|
|
necessari da installare (p.e. <filename>saplocales-1.0-3</filename>,
|
|
<filename>saposcheck-1.0-1</filename> per RedHat 6.1). Nel caso
|
|
tu abbia ignorato tutti i relativi errori ed impostato lo
|
|
<literal>STATUS</literal> corrispondente da <literal>ERROR</literal>
|
|
a <literal>OK</literal> (in <filename>CENTRDB.R3S</filename>)
|
|
ogni volta che <command>R3SETUP</command> si è lamentato e
|
|
riavviato <command>R3SETUP</command>, il sistema
|
|
<application>&sap;</application> non sarà configurato
|
|
correttamente e non sarai in grado di connetterti al sistema tramite
|
|
una <application>SAPgui</application>, anche se il sistema può
|
|
essere avviato. Provando a connetterci con la vecchia
|
|
<application>SAPgui</application> abbiamo avuto questi
|
|
messaggi:</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>Questo comportamento è imputabile a
|
|
<application>&sap.r3;</application> che non è in grado di
|
|
assegnare correttamente una internazionalizzazione e che non è ben
|
|
configurato (definizioni mancanti in alcune tabelle del database).
|
|
Per essere in grado di connettersi a <application>&sap;</application>,
|
|
aggiungi queste definizioni nel file <filename>DEFAULT.PFL</filename>
|
|
(vedi nota 0043288):</para>
|
|
|
|
<programlisting>abap/set_etct_env_at_new_mode = 0
|
|
install/collate/active = 0
|
|
rscp/TCP0B = TCP0B</programlisting>
|
|
|
|
<para>Riavvia il sistema <application>&sap;</application>. Ora puoi
|
|
connetterti al sistema, anche se le impostazioni della lingua
|
|
specifiche per il paese potrebbero non funzionare come desiderato.
|
|
Dopo aver corretto le impostazioni del paese (e aver fornito le
|
|
internazionalizzazioni esatte), queste definizioni possono essere
|
|
riomsse da <filename>DEFAULT.PFL</filename> e il sistema
|
|
<application>&sap;</application> può essere riavviato.</para>
|
|
</sect3>
|
|
|
|
<sect3 id="ora-00001">
|
|
<title><errorcode>ORA-00001</errorcode></title>
|
|
|
|
<para>Questo errore è accaduto solo con
|
|
<application>&oracle; 8.1.7</application> su FreeBSD.
|
|
La ragione era che il database <application>&oracle;</application>
|
|
non poteva inizializzarsi correttamente e andava in crash, lasciando
|
|
i semafori e la memoria condivisa sul sistema. Il tentativo
|
|
successivo di lanciare il database, ritornava
|
|
<errorcode>ORA-00001</errorcode>.</para>
|
|
|
|
<para>Trovali con <command>ipcs -a</command> e rimuovili con
|
|
<command>ipcrm</command>.</para>
|
|
</sect3>
|
|
|
|
<sect3 id="ora-00445pmon">
|
|
<title><errorcode>ORA-00445</errorcode> (Background Process PMON Did
|
|
Not Start)</title>
|
|
|
|
<para>Questo errore è accaduto con <application>&oracle;
|
|
8.1.7</application>. Viene riportato se il database è avviato
|
|
con il solito script <command>startsap</command> (per esempio
|
|
<command>startsap_majestix_00</command>) come utente
|
|
<username>prdadm</username>.</para>
|
|
|
|
<para>Un modo per aggirarlo è lanciare il database come utente
|
|
<username>oraprd</username>, con <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> (Start Listener with Correct
|
|
Permissions)</title>
|
|
|
|
<para>Avvia il listener di <application>&oracle;</application>
|
|
come utente <username>oraids</username> con i seguenti
|
|
comandi:</para>
|
|
|
|
<screen>&prompt.root; <userinput>umask 0; lsnrctl start</userinput></screen>
|
|
|
|
<para>Altrimenti potresti ottenere <errorcode>ORA-12546</errorcode>
|
|
poiché i socket non hanno i permessi corretti. Vedi la nota
|
|
di &sap; 0072984.</para>
|
|
</sect3>
|
|
|
|
<sect3 id="ora-27102">
|
|
<title><errorcode>ORA-27102</errorcode> (Out of Memory)</title>
|
|
|
|
<para>Questo errore è accaduto mentre tentavamo di usare i valori
|
|
per <literal>MAXDSIZ</literal>e <literal>DFLDSIZ</literal> maggiori di
|
|
1 GB (1024x1024x1024). In più ci siamo ritrovati
|
|
<errorname>Linux Error 12: Cannot allocate memory</errorname>.</para>
|
|
</sect3>
|
|
|
|
<sect3 id="dipgntabindind">
|
|
<title>[DIPGNTAB_IND_IND] Durante <command>R3SETUP</command></title>
|
|
|
|
<para>In generale, vedi la nota di &sap; 0130581 (il punto
|
|
<command>R3SETUP</command> termina <literal>DIPGNTAB</literal>). Per
|
|
qualche ragione, durante l'installazione specifica per IDES, il
|
|
processo di installazione non usava il giusto nome <quote>IDS</quote>
|
|
del sistema &sap;, ma piuttosto la stringa vuota
|
|
<literal>""</literal>. Questo porta a qualche piccolo problema con
|
|
l'accesso alle directory, dal momento che i path sono generati
|
|
dinamicamente usando <replaceable>SID</replaceable>
|
|
(in questo caso IDS). Quindi, invece di accedere a:</para>
|
|
|
|
<programlisting>/usr/sap/IDS/SYS/...
|
|
/usr/sap/IDS/DVMGS00</programlisting>
|
|
|
|
<para>venivano usati questi path:</para>
|
|
|
|
<programlisting>/usr/sap//SYS/...
|
|
/usr/sap/D00</programlisting>
|
|
|
|
<para>Per continuare con l'installazione, abbiamo creato un
|
|
collegamento e una direcotry addizionale:</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>Abbiamo trovato note di &sap; che descrivono questo comportamento
|
|
(0029227 e 0008401). Non siamo incorsi in alcuno di questi problemi
|
|
installando <application>&sap; 4.6C</application>.</para>
|
|
</sect3>
|
|
|
|
<sect3 id="rfcrswboiniindind">
|
|
<title>[RFCRSWBOINI_IND_IND] Durante <command>R3SETUP</command></title>
|
|
|
|
<para>Durante l'installazione di <application>&sap; 4.6C</application>,
|
|
questo errore era la conseguenza di un altro errore avvenuto in
|
|
precedenza. In questo caso, controlla nei file di log e correggi il
|
|
vero problema.</para>
|
|
|
|
<para>Se dopo aver guardato nei log questo errore è
|
|
effettivamente quello corretto (controlla le note di &sap;), puoi
|
|
impostare lo <literal>STATUS</literal> dei punti sbagliati da
|
|
<literal>ERROR</literal> a <literal>OK</literal> (file
|
|
<filename>CENTRDB.R3S</filename>) e riavviare
|
|
<command>R3SETUP</command>.
|
|
Dopo l'installazione, devi eseguire il rapporto
|
|
<literal>RSWBOINS</literal> dalla transazione SE38. Per maggiori
|
|
informazioni sulle fasi <literal>RFCRSWBOINI</literal> e
|
|
<literal>RFCRADDBDIF</literal>, vedi la nota di &sap;
|
|
0162266.</para>
|
|
</sect3>
|
|
|
|
<sect3 id="rfcraddbdifindind">
|
|
<title>[RFCRADDBDIF_IND_IND] durante <command>R3SETUP</command></title>
|
|
|
|
<para>Qui si applicano le stesse restrizioni: assicurati di controllare
|
|
nei file di log che questo errore non sia causato da qualche problema
|
|
precedente.</para>
|
|
|
|
<para>Se puoi confermare ciò che dice la nota 0162266 di &sap;,
|
|
imposta lo <literal>STATUS</literal> del punto errato da
|
|
<literal>ERROR</literal> a <literal>OK</literal> (file
|
|
<filename>CENTRDB.R3S</filename>) e riavvia
|
|
<command>R3SETUP</command>. Dopo l'installazione, devi eseguire
|
|
il rapporto <literal>RADDBDIF</literal> dalla transazione
|
|
SE38.</para>
|
|
</sect3>
|
|
|
|
<sect3 id="sigactionsig31">
|
|
<title><errorcode>sigaction sig31: File size limit
|
|
exceeded</errorcode></title>
|
|
|
|
<para>Questo errore è avvenuto all'avvio dei processi
|
|
<application>&sap;</application> <emphasis>disp+work</emphasis>. Se
|
|
si sta avviando <application>&sap;</application> con lo script
|
|
<command>startsap</command>, i sottoprocessi avviati si staccano e
|
|
fanno il lavoro sporco di avviare tutti gli altri processi
|
|
<application>&sap;</application>. Come risultato, lo script stesso
|
|
non noterà se qualcosa sia andato storto.</para>
|
|
|
|
<para>Per controllare se i processi <application>&sap;</application>
|
|
non sono partiti correttamente, dai un'occhiata al loro stato
|
|
con <command>ps ax | grep <replaceable>SID</replaceable></command>,
|
|
che ti darà una lista di tutti i processi
|
|
<application>&oracle;</application> e
|
|
<application>&sap;</application>.
|
|
Se ti sembra che qualche processo manchi o se non puoi connetterti al
|
|
sistema <application>&sap;</application>, guarda nei log
|
|
corrispondenti che possono essere trovati in
|
|
<filename>/usr/sap/<replaceable>SID</replaceable>/DVEBMGS<replaceable>nr</replaceable>/work/</filename>.
|
|
I file in cui guardare sono <filename>dev_ms</filename> e
|
|
<filename>dev_disp</filename>.</para>
|
|
|
|
<para>Il segnale 31 avviene qui se la quantità di memoria
|
|
condivisa utilizzata da <application>&oracle;</application> e
|
|
<application>&sap;</application> supera quella definita nel file di
|
|
configurazione del kernel e può essere risolto usando un valore
|
|
maggiore:</para>
|
|
|
|
<programlisting># larger value for 46C production systems:
|
|
options SHMMAXPGS=393216
|
|
# smaller value sufficient for 46B:
|
|
#options SHMMAXPGS=262144</programlisting>
|
|
</sect3>
|
|
|
|
<sect3 id="saposcolfails">
|
|
<title>Fallimento dell'avvio di <command>saposcol</command></title>
|
|
|
|
<para>Ci sono alcuni problemi con il programma
|
|
<command>saposcol</command> (versione 4.6D).
|
|
Il sistema <application>&sap;</application> usa
|
|
<command>saposcol</command> per raccogliere dati a proposito delle
|
|
prestazioni del sistema. Questo programma non è necessario per
|
|
usare il sistema <application>&sap;</application>, quindi può
|
|
essere considerato un problema minore. La versione più
|
|
vecchia (4.6B) funziona, ma non raccoglie tutti i dati (molte
|
|
chiamate ritorneranno 0, per esempio l'utilizzo della CPU).</para>
|
|
</sect3>
|
|
</sect2>
|
|
</sect1>
|
|
|
|
<sect1 id="linuxemu-advanced">
|
|
<title>Argomenti Avanzati</title>
|
|
|
|
<para>Se sei curioso di come funziona la compatibilità con i binari
|
|
di Linux, questa è la sezione da leggere. Molto di ciò
|
|
che segue è basato pesantemente su una email scritta a &a.chat;
|
|
da Terry Lambert <email>tlambert@primenet.com</email> (ID del messaggio:
|
|
<literal><199906020108.SAA07001@usr09.primenet.com></literal>).</para>
|
|
|
|
<sect2>
|
|
<title>Come Funziona?</title>
|
|
|
|
<indexterm>
|
|
<primary>loader della classe di esecuzione</primary>
|
|
</indexterm>
|
|
|
|
<para>FreeBSD ha una astrazione chiamata un <quote>loader della classe di
|
|
esecuzione</quote>. Questo ` un cuneo nella chiamata di sistema
|
|
&man.execve.2;.</para>
|
|
|
|
<para>Cosa succede è che FreeBSD ha una lista di loader,
|
|
piuttosto che un singolo loader con un ritorno nel loader
|
|
<literal>#!</literal>, per lanciare qualunque inteprete o script
|
|
della shell.</para>
|
|
|
|
<para>Storicamente, l'unico loader nella piattaforma &unix; esaminava il
|
|
numero magico (generalmente i primi 4 o 8 byte del file) per vedere se
|
|
il binario fosse conosciuto dal sistema e, nel caso, invocava il loader
|
|
del binario.</para>
|
|
|
|
<para>Se non era un tipo di binario per il sistea, la chiamata
|
|
&man.execve.2; ritornava un errore, e la shell tentava di avviare
|
|
eseguendolo come comando della shell.</para>
|
|
|
|
<para>L'assunzione era un default, <quote>qualunque fosse la
|
|
shell</quote>.</para>
|
|
|
|
<para>Più tardi, è stato fatto un hack per &man.sh.1; per
|
|
esaminare i primi due caratteri. Se erano <literal>:\n</literal>,
|
|
allora invocava la shell &man.csh.1; (crediamo sia stata SCO a fare per
|
|
prima questo hack).</para>
|
|
|
|
<para>Ciò che ora fa FreeBSD è scorrere una lista di
|
|
loader, con un loader <literal>#!</literal> generico che riconosce
|
|
gli interpreti dai caratteri che seguono lo spazio successivo vicino
|
|
alla fine, seguito da un ritorno a <filename>/bin/sh</filename>.</para>
|
|
|
|
<indexterm><primary>ELF</primary></indexterm>
|
|
|
|
<para>Per il supporto alle ABI di Linux, FreeBSD vede il numero magico
|
|
come un binario ELF (a questo punto non fa distinzione tra FreeBSD,
|
|
&solaris;, Linux, o qualunque altro SO che ha un tipo di immagine
|
|
ELF).</para>
|
|
|
|
<indexterm><primary>Solaris</primary></indexterm>
|
|
|
|
<para>Il loader di ELF cerca un <emphasis>marchio</emphasis>
|
|
specializzato, che ` una sezione di commento nell'immagine ELF e
|
|
che non è presente sui binari ELF SVR4/&solaris;.</para>
|
|
|
|
<para>I binari di Linux, per funzionare, devono essere
|
|
<emphasis>marchiati</emphasis> come tipo <literal>Linux</literal>
|
|
da &man.brandelf.1;:</para>
|
|
|
|
<screen>&prompt.root; <userinput>brandelf -t Linux file</userinput></screen>
|
|
|
|
<para>Quando viene fatto questo, il loader ELF vedrà il marchio
|
|
di <literal>Linux</literal> sul file.</para>
|
|
|
|
<indexterm>
|
|
<primary>ELF</primary>
|
|
<secondary>marchiatura</secondary>
|
|
</indexterm>
|
|
|
|
<para>Quando il loader ELF vede il marchio di <literal>Linux</literal>,
|
|
il loader sostituisce un puntatore nella struttura
|
|
<literal>proc</literal>.
|
|
Tutte le chiamate di sistema sono indicizzate attraverso questo
|
|
puntatore (in un sistema &unix; tradizionale questo sarebbe l'array di
|
|
strutture <literal>sysent[]</literal>, contentente le chiamate di
|
|
sistema).
|
|
In aggiunta;, il processo è etichettato per un trattamento
|
|
speciale del vettore trappola per il codice del segnale di lancio,
|
|
e molti altri (minori) aggiustamenti che sono gestiti dal modulo Linux
|
|
del kernel.</para>
|
|
|
|
<para>Il vettore delle chiamate di sistema di Linux contiene, tra le
|
|
altre cose, una lista di valori <literal>sysent[]</literal> i cui
|
|
indirizzi risiedono nel modulo del kernel.</para>
|
|
|
|
<para>Quando una chiamata di sistema è fatta dal binario di
|
|
Linux, il codice trappola derefereizia il puntatore alla funzione della
|
|
chiamata di sistema dalla struttura <literal>proc</literal>, e prende
|
|
i punti di ingresso delle chiamate di sistema di Linux, non di
|
|
FreeBSD.</para>
|
|
|
|
<para>In più, la modalità Linux
|
|
<emphasis>ridefinisce la root</emphasis> dinamicamente; questo, in
|
|
effetti, è quello che fa l'opzione <option>union</option> al
|
|
montaggio del file system (<emphasis>non</emphasis> il tipo di file
|
|
system <literal>unionfs</literal>!). Un tentativo viene prima fatto per
|
|
cercare il file nella directory
|
|
<filename>/compat/linux/<replaceable>original-path</replaceable></filename>,
|
|
<emphasis>quindi</emphasis>, solo se fallisce, la ricerca ` fatta
|
|
nella directory
|
|
<filename>/<replaceable>original-path</replaceable></filename>.
|
|
Questo assicura che possano funzionare i binari che per richiedono altri
|
|
binari (p.e., la toolchain di Linux può funzionare tutta sotto il
|
|
supporto ABI di Linux). Questo significa anche che i binari di Linux
|
|
possono caricare ed eseguire binari di FreeBSD, se non sono presenti i
|
|
corrispondenti binari di Linux, e che puoi mettere un comando
|
|
&man.uname.1; nell'albero della directory
|
|
<filename>/compat/linux</filename> per essere
|
|
sicuro che i binari di Linux non possano capire che non stanno girando
|
|
sotto Linux.</para>
|
|
|
|
<para>In effeti c'è un kernel Linux nel kernel FreeBSD;
|
|
le varie funzioni sottostanti che implementano tutti i servizi forniti
|
|
dal kernel sono identiche sia nelle definizioni delle tabelle delle
|
|
chiamate di sistema di FreeBSD che di Linux: le operazioni sul file
|
|
system,
|
|
le operazioni nella memoria virtuale, la consegna dei segnali, le IPC
|
|
System V, ecc… L'unica differenza è che i binari di
|
|
FreeBSD prendono le funzioni <emphasis>colla</emphasis> di FreeBSD, e i
|
|
binari di Linux prendono le funzioni <emphasis>colla</emphasis> di Linux
|
|
(molti dei vecchi SO hanno solo le loro funzioni
|
|
<emphasis>colla</emphasis>: gli indirizzi delle funzioni in un array di
|
|
strutture <literal>sysent[]</literal> statico globale, invece che
|
|
indirizzi di funzioni dereferenziate da un puntatore inizializzato
|
|
dinamicamente nella struttura <literal>proc</literal> del processo che
|
|
fa la chiamata).</para>
|
|
|
|
<para>Qual è la ABI nativa per FreeBSD? Non importa.
|
|
Essenzialmente l'unica differenza è che (attualmente: questo
|
|
potrebbe facilmente essere cambiato in distribuzioni future, e
|
|
probabilmente sarà fatto) le funzioni <emphasis>colla</emphasis>
|
|
di FreeBSD sono collegate staticamente nel kernel, e le funzioni
|
|
<emphasis>colla</emphasis> di Linux possono essere collegate
|
|
staticamente o vi si può accedere attraverso un modulo del
|
|
kernel.</para>
|
|
|
|
<para>Si, ma è davvero emulazione? No. è
|
|
implementazione delle ABI, non emulazione. Non è
|
|
coinvolto nessun emulatore (o simulatore, per evitare la prossima
|
|
domanda).</para>
|
|
|
|
<para>Allora perché talvolta viene chiamata
|
|
<quote>emulazione Linux</quote>? Per rendere difficile vendere FreeBSD!
|
|
Seriamente, è perché l'implementazione storica è
|
|
stata fatta in un momento in cui non c'era altro termine per descrivere
|
|
ciò che stava succedendo; dire che FreeBSD lanciava i binari di
|
|
Linux non era vero, se non compilavi il codice o caricavi un modulo,
|
|
e c'era bisogno di un termine per descrivere cosa veniva
|
|
caricato— da qui <quote>l'emulatore Linux</quote>.</para>
|
|
</sect2>
|
|
</sect1>
|
|
</chapter>
|