Cazzi nostri

Posted in politica, Uncategorized | Tagged , | Leave a comment

Libri: Mare al Mattino

Qualcuno mi spiega cosa significa “Solo come una scimmia nell’olio bollente”?
Mare al Mattino, di Margaret Mazzantini si presenta come un festival della retorica, dello stereotipo e del luogo comune, nonché di castronerie spacciate per invenzioni linguistiche particolarmente creative (“premuta” di arancia?).
La rievocazione di una triste pagina della nostra storia, quella dei Tripolini, nonché il dramma, vero, dell’immigrazione, meritavano un trattamento migliore, e non un instant book con concetti appena abbozzati e personaggi di cartone.

Lo scopo sembra quello di rendere “alla moda”, direi “fashion” come dicono quelli che si sentono “cool”, il dramma degli immigrati, con uno stile che alla fine è un misto di  ”C’è posta per te”, e i fatti vostri, farcito di metafore e similitudini incomprensibili. Un ermetismo nazional popolare che è solo fumo negli occhi.

Deludente.

Posted in libri, recensione | Tagged , | Leave a comment

Installare Oracle Client con Ubuntu

Chi mi conosce sa che “per pagare i conti faccio il programmatore”. Ma qui, essendo la pagina dove mi occupo dei miei hobby, parlo poco o niente di informatica. Ma dato che sull’argomento del titolo c’è molto poco in italiano, ho scritto questa guida per mio diletto e per diffondere il verbo di Linux.
Come informatico la mia posizione è pragmatica. Uso gli strumenti software che mi sono più congeniali e utili, non ne faccio una questione “religiosa”.
Ma l’idea che si possa lavorare con Linux mi piace. Come distribuzione ormai da anni uso Ubuntu, arrivata alla 11.10

Lavorare con Ubuntu è possibile. Se la vostra esigenza è di sviluppare in PL/SQL o di amministrare Database Oracle da remoto, che usiate Windows o Linux è indifferente. Con Linux avrete una macchina da lavoro semplice ed efficiente, i cui costi software sono completamente gratuiti.

Operazioni preliminari
E’ necessario installare i seguenti pacchetti, disponibili nel repository di Ubuntu:

alien
libaio1

Potete usare l’interfaccia grafica o da terminale scrivere:

sudo apt-get install libaio1 alien

Download dei pacchetti rpm dal sito Oracle

E’ necessario scaricare i pacchetti rpm dal sito ufficiale Oracle.

Quelli veramente indispensabili sono 3:

Pacchetto Nome file
Basic: All files required to run OCI, OCCI, and JDBC-OCI applications oracle-instantclient11.2-basic-11.2.0.3.0-1.i386.rpm
SQL*Plus: Additional libraries and executable for running SQL*Plus with Instant Client toracle-instantclient11.2-sqlplus-11.2.0.3.0-1.i386.rpm
SDK: Additional header files and an example makefile for developing Oracle applications with Instant Client oracle-instantclient11.2-devel-11.2.0.3.0-1.i386.rpm

NB. I nomi sono quelli dei file disponibili nel momento in cui scrivo, potrebbero variare nel tempo.

Altri sono disponibili sul sito, come quelli per il Pro*C e il client solo in lingua inglese. Le modalità non di installazione non variano.

Conversione dei pacchetti da rpm a deb
Il prossimo passo da seguire è convertire i pacchetti scaricati in formato .deb, che è quello accettato da Ubuntu, distribuzione derivata da Debian.
Non so i motivi per cui Oracle non rende disponibile questo formato e mantiene solo gli rpm e gli zip.
In aiuto ci viene il programma alien che risolve il problema convertendo i pacchetti scaricati nel formato che ci serve semplicemente scrivendo, da linea di comando:

sudo alien oracle-instantclient11.2-basic-11.2.0.3.0-1.i386.rpm -c

Dopo qualche secondo (il primo è più lungo, ma ci sta poco più di un minuto) il messaggio “oracle-instantclient11.2-basic_11.2.0.3.0-2_i386.deb generated” ci annuncerà che il primo file deb è pronto.

Ripetendo per i successivi:

comando esito
sudo alien oracle-instantclient11.2-sqlplus-11.2.0.3.0-1.i386.rpm -c oracle-instantclient11.2-sqlplus_11.2.0.3.0-2_i386.deb generated
sudo alien oracle-instantclient11.2-devel-11.2.0.3.0-1.i386.rpm -c oracle-instantclient11.2-devel_11.2.0.3.0-2_i386.deb generated

Nella stessa cartella degli rpm avremo quindi tre file che nel caso in esempio si chiamano:

oracle-instantclient11.2-basic_11.2.0.3.0-2_i386.deb
oracle-instantclient11.2-sqlplus_11.2.0.3.0-2_i386.deb
oracle-instantclient11.2-devel_11.2.0.3.0-2_i386.deb

Installazione dei pacchetti .deb

Per installare i pacchetti, sempre da linea di comando basterà digitare:

sudo dpkg -i oracle-instantclient11.2-basic_11.2.0.3.0-2_i386.deb
sudo dpkg -i oracle-instantclient11.2-sqlplus_11.2.0.3.0-2_i386.deb
sudo dpkg -i oracle-instantclient11.2-devel_11.2.0.3.0-2_i386.deb

NB.
I nomi dei file dipendono da quale pacchetto scaricate. Se scaricate un diverso pacchetto abbiate un po’ di spirito di adattamento, non limitatevi a copiare e incollare le righe.
Configurazione
Non è finita, i pacchetti sono stati installati, ma il sistema ancora non sa dove si trovi il programma.
Nella mia esperienza mi sono trovato davanti a due possibili percorsi

/usr/lib/oracle/11.2/client/ In sistemi a 32 bit
/usr/lib/oracle/11.2/client64/ In sistemi a 64 bit

Verificate in quale di questi percorsi è installato Oracle Client al fine di impostare le seguenti variabili d’ambiente (da qui faccio l’esempio di un sistema a 64 bit, ma basta togliere il 64 per i sistemi a 32 bit)

LD_LIBRARY_PATH /usr/lib/oracle/11.2/client64/lib
ORACLE_HOME /usr/lib/oracle/11.2/client64
TNS_ADMIN /usr/lib/oracle/11.2/client64/network/admin

Quindi, da terminale scrivete:

cd /etc/ld.so.conf.d
sudo gedit oracle.conf

Si aprirà l’editor e dovrete scrivere:

/usr/lib/oracle/11.2/client64/lib

Salvate e una volta chiuso l’editor scrivete:

cd /etc/profile.d
sudo gedit oracle.sh

Si aprirà l’editor e dovrete scrivere, in coda al file:

export ORACLE_HOME=/usr/lib/oracle/11.2/client64
export TNS_ADMIN=/usr/lib/oracle/11.2/client64/network/admin

Ora c’è da creare la directory a cui fa riferimento la variabile TNS_ADMIN, che in realtà ancora non esiste
Verificate l’esistenza della cartella di Oracle client con il seguente comando

ls /usr/lib/oracle/11.2/client

Se non la trovate provate:

ls -d /usr/include/oracle/*/client

Se la trovate bisogna creare un symbolic link alla cartella ORACLE_HOME mediante il seguente comando:

ln -s /usr/include/oracle/11.2/client64 /usr/lib/oracle/11.2/client64/include

Per creare la cartella TNS_ADMIN basterà digitare:

cd /usr/lib/oracle/11.2/client64
sudo mkdir network
cd network
sudo mkdir admin
cd admin

Ora avete due possibilità.
A) Sapete cosa sia un file tnsnames.ora, e ne avete uno disponibile, su una chiavetta usb, su una cartella fate voi.
In questo caso per copiare il file nella cartella basterà digitare (supponendo che siate dentro la cartella admin)

sudo cp [ORIGINE]/tnsnames.ora tnsnames.ora

B) Non avete idea di cosa sia tale file, non lo avete mai usato. Se ci tenete a saperlo vi spiego come crearlo.
Digitate:

sudo gedit tnsnames.ora

Il file contiene i dati per ciascuno dei Database a cui collegarsi. Per ogni DB dovremo scrivere nel file righe di questo tipo:

$NOMEDB =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = $INDIRIZZO)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = $NOME_SERVIZIO)
)
)

Le variabili contrassegnate con il simbolo $ dipendono da voi. Se non sapete i valori chiedeteli a chi amministra il DB. E’ fuori dallo scopo di questo documento insegnare i fondamenti di Oracle, che si suppone già sappiate.
Una volta finito di scrivere salvate il file.

Un altro file utile, che può stare nella cartella TNS_ADMIN è sqlnet.ora
Più utile che indispensabile. Se ne avete già uno potete copiarlo dalla vostra fonte con il comando:

sudo cp [ORIGINE]/sqlnet.ora sqlnet.ora

Se non lo avete potete editarlo scrivendo

sudo gedit sqlnet.ora

Le impostazioni seguenti vanno bene un po’ per tutti i sistemi.

SQLNET.AUTHENTICATION_SERVICES=(NTS) 

NAMES.DIRECTORY_PATH=(LDAP,TNSNAMES,ONAMES,HOSTNAME)

DEFAULT_SDU_SIZE=8761

Salvate.
Se volete saperne di più, rivolgetevi al vostro amministratore oppure leggete qui,

Dopo aver copiato i vostri file, digitate

sudo chmod a+w *.ora

Questo comando renderà modificabili i vostri file da tutti gli utenti della macchina, non solo da root.

L’ultima modifica è al file /etc/envinroment.
Dovrete quindi digitare

sudo gedit /etc/environment

Quando si apre il file aggiungete in coda alla variabile PATH il percorso dei binari di oracle, e in coda al file le variabili d’ambiente (in grassetto le aggiunte).

PATH=”/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/lib/oracle/11.2/client64/bin
LD_LIBRARY_PATH=”/usr/lib/oracle/11.2/client64/lib”
ORACLE_HOME=”/usr/lib/oracle/11.2/client64″
TNS_ADMIN=”/usr/lib/oracle/11.2/client64/network/admin”

Non sarebbe indispensabile, ed è pratica deprecata, ma potreste mettervi il ferro dietro la porta editando anche il file /etc/bash.bashrc, digitando

sudo gedit /etc/bash.bashrc

Una volta aperto il file potete aggiungere le seguenti righe:

export LD_LIBRARY_PATH=/usr/lib/oracle/11.2/client64/lib
export ORACLE_HOME=/usr/lib/oracle/11.2/client64
export TNS_ADMIN=/usr/lib/oracle/11.2/client64/bin/network/admin
export PATH=$PATH:/usr/lib/oracle/11.2/client64/bin

Salvate e chiudete il terminale.

A questo punto, se conoscete i dati per connettervi, siamo pronti per tentare la nostra prima connessione. Riaprite il terminale e digitate:

sqlplus $username>/$password@$nomeservizio

Anche in questo caso i dati con il simbolo $ sono di vostra competenza.
Se è andato tutto a buon fine vi apparità il noto prompt di SqlPlus.
Complimenti e grazie per la pazienza!
Se qualcosa non gira per il verso giusto fatemi sapere.

Appendice
E se non voleste usare solo Sqlplus?

Tutto quello che ho scritto sopra serve a configurare l’Oracle Instant Client. Sqlplus, ossia la linea di comando è ancora usatissimo, ma anche molto diffusi sono i tool grafici, come TORA (un clone Linux di TOAD), o Sql Developer di Oracle, entrambi gratuiti (TOAD no).

Oracle SQL Developer

Per prima cosa scarichiamo il pacchetto da qui.
Come nel caso del client scaricate il file .rpm. Al momento in cui scrivo è disponibile il file sqldeveloper-3.0.04.34-1.noarch.rpm.

Una volta scaricato, da terminale digitate:

alien sqldeveloper-3.0.04.34-1.noarch.rpm -c

Dopo meno di un minuto potrete leggere:

sqldeveloper_3.0.04.34-2_all.deb generated

Di seguito digitate:

dpkg -i sqldeveloper_3.0.04.34-2_all.deb

Anche in questo caso i nomi dei file dipendono da quale pacchetto scaricate. Se scaricate un diverso pacchetto abbiate un po’ di spirito di adattamento, non limitatevi a copiare e incollare le righe.
Una volte terminata l’installazione il programma sarà disponibile da menu grafico, ma non partirà se lo eseguite da lì, per la prima esecuzione di sqldeveloper vi consiglio di usare il terminale e verificare intanto dove si trovi la vostra Java Virtual Machine guardandao la cartella /usr/lib/jvm con il comando (la cartella è quella in celeste chiaro):

ls /usr/lib/jvm

Segnatevi la cartella e poi digitate:

sudo sqldeveloper

Il programma vi chiederà di inserire il percorso della JAVA Virtual Machine, che scriverà in file di configurazione. Basterà digitarla, nel mio caso è /usr/lib/jvm/java-1.6.0-openjdk, e poi il programma partirà per la prima volta.
Da ora in poi non sarà necessario essere amministratori per eseguirlo. Anche da menu.

TORA
Personalmente non sento l’esigenza di altri strumenti. Ma se qualcuno vuole provare a questo link promettono di spiegare come fare ad installare TORA. Non ho ancora avuto modo di provare però. A dire il vero il programma è disponibile sui repository di Ubuntu, ma non con il supporto nativo di Oracle Client, bensì di MySql.
Probabilmente c’è da smanettare e cercare un po’ in rete come fare. Ne parliamo un’altra volta, sempre se ne avrò il tempo, sorry.

Posted in Informatica, Oracle, ubuntu | Tagged , , | Leave a comment

Nuova Selezione di racconti per Effemme

Effemme chiama di nuovo a raccolta gli scrittori del fantastico. Questa volta con una selezione a tema.

Anche per il prossimo numero di Effemme, dopo il positivo riscontro della precedente edizione, bandiamo una selezione di racconti fantastici. Questa volta proponiamo agli scrittori un tema, scelto dai lettori in seguito a un sondaggio tra gli argomenti proposti dalla redazione:  La nascita di un mondo nuovo.

Regolamento e modalità di partecipazione su http://www.fantasymagazine.it/notizie/15986/nuova-selezione-di-racconti-per-effemme/

Posted in fantasy, racconti | Tagged , | Leave a comment

NeXT-Con 2011 a Firenze, il 14 dicembre

Tornano le convention connettiviste: dalle 18.00 del 14 dicembre 2011, a Firenze, presso il Joshua Tree Pub di via della Scala, 37/r, si svolgerà un happening che vedrà presenti molti esponenti del Movimento. Dibattiti, presentazioni, reading, empatia multimediale per avvicinare la città culla della Cultura italiana al nostro collettivo del Futuro. Saranno presenti anche le realtà editoriali Kipple Officina Libraria, Edizioni Diversa Sintonia, la webzine NeXT-Station.org e HyperHouse.
Posted in connettivismo, fantascienza | Tagged | 1 Comment