Slackware
Wikibooks, manuali e libri di testo liberi.
| Questo libro è abbandonato e non c'è più nessun utente che lo stia sviluppando.
Se conosci l'argomento e sei interessato, puoi occuparti tu di questo libro! Leggi il manuale di stile e come scrivere un libro.
|
| Questa pagina contiene molto testo, per una più agevole lettura necessita di essere sottopaginata.
È opportuno che sia avvisato l'autore ed operi lui stesso la suddivisione per non creare difficoltà nell'attribuzione del lavoro.
|
Indice |
[modifica] Sommario
[modifica] Gestione dei .tar.gz
La Slackware utilizza pkgtool e i comandi installpkg/removepkg per la gestione dei pkg ufficiali della distribuzione. Per installare programmi dai sorgenti, e per mantenere traccia dei file aggiunti in modo da permetterne la rimozione con i tool ufficiali, basta creare un file di testo in /var/log/packages con l'elenco dei file aggiunti e delle eventuali directory create durante l'installazione. Il formato del file di testo è molto semplice, ed è sufficiente un semplice shell script per crearlo.
[modifica] Procedura per l'installazione
Per cominciare, spostarsi nella directory /tmp e scompattare il file .tar.gz. Poi spostarsi nella directory creata e dare il comando:
# ./configure --help
per visualizzare le opzioni configurabili. Dopo aver lanciato il configure dare il comando make. A fine compilazione, lanciare lo script che segue, e quando compare il prompt
install pkg>
dare il comando make install. Al termine dell'installazione, premere Ctrl-D. Lo script rifarà lo scanning del filesystem confrontandolo con quello fatto prima dell'installazione. Le righe dei due file che differiscono sono i file aggiunti dal programma. Apparirà poi una finestra di dialog che richiede il nome del pkg installato e una breve descrizione. Dato l'OK, lo script crea il file in /var/log/packages che permette la rimozione del programma con removepkg o con pkgtool.
[modifica] Script d'esempio
#!/bin/bash
PRIMA=/tmp/prima-`date +%d_%m_%H-%M-%S`
DOPO=/tmp/dopo-`date +%d_%m_%H-%M-%S`
DIFFFL=/tmp/diff-`date +%d_%m_%H-%M-%S`
TMPDG=/tmp/tmpdg-`date +%d_%m_%H-%M-%S`
echo
echo "Scanning filesystem ..."
echo
/usr/bin/find / -path '/boot' -prune -o -path '/dev' -prune \
-o -path '/mnt' -prune -o -path '/proc' -prune \
-o -path '/tmp' -prune -o -print | sort | sed 's|/||' > $PRIMA
OLD_PS1=$PS1
export PS1='install pkg> '
/bin/bash
echo
echo "Scanning filesystem after installation ..."
echo
/usr/bin/find / -path '/boot' -prune -o -path '/dev' -prune \
-o -path '/mnt' -prune -o -path '/proc' -prune \
-o -path '/tmp' -prune -o -print | sort | sed 's|/||' > $DOPO
PS1=$OLD_PS1
/usr/bin/comm -13 $PRIMA $DOPO > $DIFFFL
/bin/rm $PRIMA $DOPO
if [ ! -s $DIFFFL ]; then
/bin/dialog --msgbox "Nessun file aggiunto" 5 30
/bin/rm $DIFFFL
exit 1
fi
/bin/dialog --inputbox "Nome del package" 10 30 2> $TMPDG
NOMEPKG=`cat $TMPDG`
/bin/dialog --inputbox "Descrizione" 10 50 2> $TMPDG
DESCRPKG=`cat $TMPDG`
DEST=/var/log/packages/$NOMEPKG
if [ -f $DEST ]; then
/bin/dialog --msgbox "Package $DEST esiste\n \
Continuo con tmp-`date +%d_%m_%H-%M-%S`" 10 50
DEST=/var/log/packages/tmp-`date +%d_%m_%H-%M-%S`
fi
echo "PACKAGE NAME: $NOMEPKG" > $DEST
echo "COMPRESSED PACKAGE SIZE:" >> $DEST
echo "UNCOMPRESSED PACKAGE SIZE:" >> $DEST
echo "PACKAGE LOCATION: /usr/local/src/$NOMEPKG" >> $DEST
echo "PACKAGE DESCRIPTION:" >> $DEST
echo "$NOMEPKG: $DESCRPKG" >> $DEST
echo "$NOMEPKG:" >> $DEST
echo "./" >> $DEST
/usr/bin/cat $DIFFFL >> $DEST
/bin/rm $TMPDG $DIFFFL
/bin/dialog --msgbox "Package $NOMEPKG registrato" 8 50
exit 0
[modifica] Installazione di Oracle 9i sulla Slackware 10.2
[modifica] Premessa
Questa non vuol essere ASSOLUTAMENTE una guida ufficiale all'installazione di Oracle, anche perché la Slackware non è tra le distribuzioni certificate da Oracle stesso. È solo la mia raccolta di appunti ottenuti cercando su internet e mettendo insieme informazioni sparse.
[modifica] GCC 2
La slackware 10.2 ha installato di default il GCC versione 3, ma per la compilazione e l'installazione Oracle richiede la versione 2. Per l'installazione, basta installare la libreria compat-gcc-7.3-2.96.i386.rpm e ricreare momentaneamente il link /usr/bin/gcc facendolo puntare a /usr/bin/gcc296.
[modifica] Sysctl.conf
Aggiungere in /etc/sysctl.conf le seguenti righe
kernel.sem = 100 32000 100 100 kernel.shmmax = 2147483648 net.ipv4.ip_local_port_range = 1024 65000
e dare poi il comando sysctl -p.
[modifica] Gruppi e utente
Creare i gruppi dba e oinstall e assegnarli all'utente oracle
# groupadd dba # groupadd oinstall # useradd oracle -g oinstall -G dba -d /usr/local/oracle -s /bin/bash
[modifica] libcwait
Per risolvere un bug sulla libreria wait che blocca l'installazione, basta creare il sorgente libcwait.c:
#include <errno.h>
#include <sys/syscall.h>
#include <sys/types.h>
#include <sys/wait.h>
__libc_wait(int *status)
{
int res;
asm volatile
("pushl %%ebx"
"movl %2 %%ebx"
"movl %1 %%eax"
"int $0x80"
"popl %%ebx"
: "=a" (res) : "i" (__NR_wait4),"0" (WAIT_ANY), \
"c" (status),"d"(0),"S"(0));
return res;
}
Creare poi la shared library con il comando
# gcc -shared -o libcwait.so libcwait.c -fpic -O # mv libcwait.so /usr/local/lib
[modifica] profile utente oracle
Prima dell'installazione, bisogna configurare l'environment dell'utente oracle. Editare il file .bash_profile nella home directory dell'utente creato:
# dove vengono creati i database # export ORACLE_BASE=/usr/local/oracle/oradata # # dove vengono installate librerie ed eseguibili # export ORACLE_HOME=/usr/local/oracle # # Identifier # export ORACLE_SID=ANTSID export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:/usr/local/lib export PATH=$PATH:$ORACLE_HOME/bin # # per caricare la libreria wait export LD_PRELOAD=/usr/local/lib/libcwait.so
[modifica] netca (Network Assistant)
Durante l'installazione, conviene anche creare un database per iniziare. Per evitare che netca si blocchi, basta creare un file sotto /etc con il comando
# touch /etc/rac_on
[modifica] Lanciare runInstaller
Come utente oracle, spostarsi nella dir Disk1 dove c'e' runInstaller e lanciare il comando sotto X. Seguire le istruzioni a video e scegliere o la Standard edition oppure selezionare solo le parti che si vogliono installare con la personalizzazione.

