installare RMySQL su CentOS

… una veloce nota per chi, come me, si ritrova a dover installare il modulo RMySQL su un server CentOS (o RHEL).

Chi mi segue da tempo potrà ricordare che sui miei server R viene installato attraverso l’utilizzo del repository EPEL repository (come ho descritto in questo post del blog).

Premesso ciò passiamo all’installazione vera e propria. Bisogna puntare il browser sul sito di RMySQL e scaricare entrambi i pacchetti RMySQL_0.7-5.tar.gz e DBI_0.2-5.tar.gz. Ho dovuto proseguire in questo modo Perché il pacchetto R-DBI presente nei repository attivati nel mio server generava dei problemi di dipendenze/versioni non previsti.

Quindi – dovendo installare il modulo in modo che fosse disponibile a tutti gli utenti del sistema – come utente root ho impartito i seguenti comandi:

[root@machine ~]# R CMD INSTALL DBI_0.2-5.tar.gz
[root@machine ~]# R CMD INSTALL RMySQL_0.7-5.tar.gz

A questo punto all’utente non è rimasto che avviare il suo ‘ambiente‘ di sviluppo in R e controllare che il nuovo modulo fosse effettivamente attivo e disponibile. Happy coding!

come aggiornare PHP e MySQL su CentOS usando il repository di Remi

Ci siam trovati in ufficio a dover aggiornare l’accoppiata PHP/MySQL per il deployment di un paio di applicazioni bio-informatiche in corso di sviluppo.

I nostri sistemi, per N ragioni, sono ancorate al mondo rpm; quindi Red Hat Enterprise Linux ed il suo clone “free (as in beer)CentOS e il loro lento ciclo di update hanno prodotto la situazione per cui o affrontavamo l’aggiornamento “a mano” di 10 nodi con ricompilazione dei sorgenti, oppure adottavamo la strategia dell’adozione di un repository esterno alla distribuzione.

Dopo un’indagine abbastanza veloce abbiamo deciso di affidarci al lavoro, pluriannuale e ben noto, di Remi Collet. Una veloce ripassata a yum e ai suoi plugin ed i pacchetti erano installati, con la piccola rogna di un problema con le dipendenze di PHP-MySQL (probabilmente dovuta all’aggiornamento in fasi distinte di PHP prima e MySQL poi).

Risolto quello son passato ad esaminare MySQL e i database da esso gestiti, incontrando il simpatico errore qui sotto riportato:

ERROR 1146 (42S02): Table ‘MySQL.servers' doesn't exist

when you do a simple FLUSH PRIVILEGES;

Son quindi corso ai ripari con una veloce ricerca su Google che mi ha convinto della necessità di applicare SEMPRE, indipendentemente dal metodo di aggiornamento utilizzato (tar.gz, deb o rpm), il comando MySQL_fix_previleges_tables assieme alle altre indicazioni che si trovano nella documentazione ufficiale PRIMA di fare altre operazioni sui database..

Nella fattispecie impartendo il comando:

/usr/bin/MySQL_fix_privilege_tables --password=$your-MySQL-root-password

ha risolto il mio problema.

Alternativamente una soluzione avrebbe potuto essere quella proposta in questo post, ma come ho detto non c’è stato bisogno di fare altre operazioni.

come abilitare il plugin Java su Firefox e CentOS a 64bit

Nelle scorse settimane avevo instalalto e configurato un server CentOS 5.3 a 64bit, installato sia la Java-openJDK che la JRE ufficiale SUN a 64bit e bona.

Stamattina mi chiama un collega e dice che il plugin su Firefox non gli va. Vedo e rivedo non capisco quale sia il problema, perso – tra l’altro – tra centinaia di post che fanno riferimento a vecchie versioni della JRE, di Firefox e vecchie incompatibilità tra il plugin ed il browser tra 32 e 64bit.

Alla fine, fortunatamente, trovo questo post, con l’indicazione del file libnpjp2.so che, nel mio caso, si trova in /usr/Java/jre1.6.0_16/lib/amd64/libnpjp2.so.

Vado nella cartella /usr/lib64/Firefox-3.0.14/, creo una directory plugins ed impartisco il comando:

ln -s /usr/Java/jre1.6.0_16/lib/amd64/libnpjp2.so libnpjp2.so

Avvio quindi Firefox, mi reco alla pagina di test per la virtual machine ed ecco il risultato atteso:

Your Java configuration is as follows:

Vendor: Sun Microsystems Inc.

Version: Java 6 Update 16

Operating System: Linux 2.6.18-164.2.1.el5

Architecture: amd64

Enjoy!

server FTP con utenti virtuali, gestione quota e banda utilizzata

Al lavoro mi son ritrovato a dover risolvere lo scenario del dare accesso ad un certo numero di dati (di dimensione di qualche GB per file) e documenti ad un paio pool di utenti, per la maggior parte esterni alla nostra struttura.

Questo mi ha portato allo scarto di soluzioni che prevedevano l’accesso fisico alla macchina (no ssh quindi). Ho purtroppo dovuto scartare anche soluzioni basate sul “paradigma” LAMP, per le intrinseche limitaziondi di Apache come gestore di trasferimento file … ad esempio DocMgr che pure avevamo implementato ma che ha retto sino a quando ci si è trovati a dover caricare/scaricare file >1GB … e tenendo conto che ne ho diversi altri tra i 5/8GB capirai Perché ho ritenuto poco proficuo tenerlo in funzione.

Ancora, nel tempo è sorta anche la necessità di imporre ragionevoli limiti alla banda di rete utilizzabile da questo singolo servizio, specie in occasioni di limitazioni di utilizzo della banda “Internet” disponibile.
pureFTFd logo
Mi sono quindi messo alla ricerca di una soluzione collaudata, di semplice implementazione e ragionevolmente sicura, trovando alcuni tutorial su come implementare un servizio di FTP che mi permettesse di avere un pool di “Utenti Virtuali“.

Continua a leggere

come installare Java SDK su CentOS

Ultimamente sto preparando un server CentOS (release 5.2) per la sua clonazione su altri 13 nodi del nostro cluster di calcolo e mi sono trovato alle prese con l’ installazione di Java su questa distribuzione derivata da Red Hat.

Purtroppo, anche se di recente la Sun ha rilasciato tutto il suo ambaradan Java con licenza libera, questo è avvenuto troppo tardi Perché il progetto CentOS (ma anche altre distribuzioni) potesse includerne i pacchetti in fase di rilascio delle release della famiglia 5. La cosa, invece, dovrebbe essere risolta quando la CentOS 6 verrà rilasciata.

Per eseguire una corretta installazione di Java (Runtime Environment o Software Development Kit) è quindi necessario, e sufficente, rifarsi al puntuale How To Install Java on CentOS 4 and CentOS 5 pubblicato nelle pagine del wiki della distribuzione.

Bisogna solo avere qualche accortezza nell’approcciarsi alle procedure descritte nell’how to, ossia:

  • rimuovere la versione già pacchettizzata da CentOS di Java (nella sua implementazione libera) eventualmente installata prima dell’how-to;
  • rimuovere tomcat5 e tutti i pacchetti ad esso connessi;
  • attenersi alle procedure dell’ How to Set Up an RPM Build Environment under CentOS
  • il pacchetto Java-1.6.0-sun-1.6.0.10-1jpp.nosrc.rpm citato nell’how to richiede ancora la versione 10 del JDK, mentre al momento sul sito della Sun è disponibile l’update11 … dovrete fare una ricerca nella sezione dei download per il l’installer in formato *.bin esatto.

Alla fine della procedura ti basterà installare gli rpm appena costruiti per avere un Java funzionante nel sistema.

Un semplice yum install tomcat5 ha installato in un soffio Tomcat (ed altre 37 pacchetti ad esso connessi) senza nessun problema di dipendenze.

Spero che queste poche righe ti siano utili 😀

come installare R su CentOS

CentOS, logo Argomento poco natalizio quest’oggi dove vado a postare un piccolo “how-to” per installare la suite di calcolo statistico (open source) e i suoi strumenti di sviluppo R.

La distribuzione CentOS non prevede nei suoi repository ufficiali alcuna build di questo progetto che, fortunatamente, fornisce invece i pacchetti per le più diffuse piattaforme GNU/Linux (e Windows e Mac OS X) all’interno dei suoi mirror.

Sono presenti gli rpm binari dei pacchetti, ma vista la disponibilità di medatati yum (la directory repodata) è possibile creare un file .repo per un uso più snello e integrato con il package manager di sistema YUM.

Questo che segue è il file che mi sono creato:

[R - Project for Statistical Computing]
name=R repository
baseurl=http://rm.mirror.garr.it/mirrors/CRAN/bin/linux/redhat/el5/i386
failovermethod=priority
enabled=1
gpgcheck=0
priority=15

Una nota sul gpgcheck=0 che ho messo in quanto i pacchetti non sono firmati (o almeno io non sono riuscito a trovarla) e sul priority=15 dovuti all’uso del tool yum-priorities.

Se avete suggerimenti o migliorie da apportare i commenti al post son qui per questo !

introduzione a CentOS, la presentazione

Finalmente ho preso coraggio a quattro mani e mi sono lanciato in una piccola opera di traduzione a favore della distribuzione GNU/Linux che uso (e userò sempre più) al lavoro: CentOS.

Presa dal wiki ufficiale della distrubuzione quella in lingua inglese creata e revisionata dal mitico (per me e per il lavoro che porta avanti Dag Wieers in formato ODP l’ho convertia in ppt e poi importata per essere “lavorata” su Keynote.app (a mio avviso IL programma definitivo per fare slides). A fine processo ho invertito la conversione dei formati.

Ora il passo successivo è quella di proporla alla lista CentOS-docs per l’approvazione e la successiva pubblicazione nelle pagine del wiki, solo che la pubblico qui per renderla disponibile ad una revisione comune prima di inviarla.

Mi date una mano ?

Introduzione a CentOS

View SlideShare presentation or Upload your own. (tags: centos linux)

p.s. = Pare che nell’aria ci sia l’idea di creare vari siti locali dedicati alla distribuzione, sulla falsariga di quanto accade per il sito/wiki di openSUSE …

Ci sono persone interessate alla cosa ?

Che mi sapete dire del gruppo di mille iscritti al sito Centos-Italia di cui non è dato sapere nulla (chi siamo, scopi, etc etc) ???

CentOS, netinstall

CentOS logo Benedetta CentOS e benedetti sistemi con a bordo solo un lettore di cd-rom !!!

Visto che fare il disk jockey con i 5 (o 6) cd di installazione della distribuzione “enterprise” libera per antonomasia non mi va giù da un po’ di tempo ho preso l’abitudine di scaricare e usare per l’installazione la piccola ISO (7 MB o giù di li) della versione netinstall che fa partire il sistema e poco più.

E ogni volta incontro un piccolo problema, o un altro, che mi tengono al freddo (e alla polvere) della sala CED più a lungo di quanto vorrei.

Questa volta, il problema si è verificato con la scelta del mirror di riferimento da utilizzare come fonte di installazione. In questo caso la procedura guidata NON ci aiuta visto che ci dice che c’è un problema nel download del file stage2.img col path (corretto !!!!!) che viene visualizzato a schermo.

Preso dallo sconforto faccio una ricerca su Google (ormai automatica per qualunque cosa) e ritrovo una mia vecchia richiesta di aiuto alla mailing list ufficiale della comunità  CentOS che avverte di NON usare i percorsi “intelligenti” quali .../centos/$releasever/os/$basearch che pur normalmente appaiono in un qualunque yum.conf.

E come secondo consiglio (che probabilmente avevo dimenticato) in un post viene ricordato di usare una sintassi specifica quando andiamo ad indicare la sorgente di installazione all’installer che possiamo così illustrare:

# Server: mi.mirror.garr.it
# Path (se si possiede l’architettura i386): mirrors/CentOS/5.2/os/i386/

o, se si possiede un’architettura a 64bit:

# Path: mirrors/CentOS/5.2/os/x86_64

Insomma, tanto semplice e banale da venir facilmente dimenticato 🙁

Sapevatelo! Su rieducascional ciannell !!!!

CentOS, problemi con yum

Piccolo post del tipo “promemoria”.

CentOS, logo Al lavoro abbiamo un piccolo numero di macchine oramai obsolete. Grossomodo appartengono tutte ad una serie di pc “da ufficio” della Fujitsu-Siemens che da Windows 2000 o XP (prima release) sono state utilizzate negli ultimi anni sino allo stremo. Vista la loro lentezza e inadeguadezza in termini di spazio disco e dotazione RAM sono state lasciate agli studenti che fanno “internato” presso il nostro Istituto permettendogli così di eseguire ricerche su web e documentarsi durante la loro presenza in vista della conclusione del tirocinio o della stesura della laurea.

Su questo tipo di macchine stiamo installando Ubuntu o CentOS per renderle un attimo più performanti (o per ovviare alla perdita dei cd col sistema operativo originario) e proprio oggi, andando ad aggiornare una CentOS con un classico yum check-update mi sono scontrato con un errore inusuale, che richiamava quanto riportato nell’esempio seguente:

Traceback (most recent call last):
File "/usr/bin/yum", line 29, in ? yummain.main(sys.argv[1:])
File "/usr/share/yum-cli/yummain.py", line 105, in main result, resultmsgs = base.doCommands()
File "/usr/share/yum-cli/cli.py", line 289, in doCommands self._getTs()
File "/usr/lib/python2.4/site-packages/yum/depsolve.py", line 85, in _getTs
self._getTsInfo()
File "/usr/lib/python2.4/site-packages/yum/depsolve.py", line 91, in _getTsInfo
self._tsInfo.setDatabases(self.rpmdb, self.pkgSack)

Dopo una ricerca nell’archivio (locale) della mailing list di supporto di CentOS ho scoperto che questa tipologia di errore vien fuori quando ci si trova ad operare dietro particolari configurazioni di server Proxy, oppure (con maggior frequenza) quando si utilizzano repository software aggiuntivi di terze parti in aggiunta a quelli supportati ufficialmente e questi, per un motivo o l’altro, aggiornano la versione di yum installata (e qualche altra dipendenza, o plugin) sul sistema.

Preso dal dubbio ho subito impartito un
rpm -q yum
per veficare lo stato del pacchetto sulla mia macchina e ho constatato che non era la versione base della mia CentOS e neanche dell’ultimo aggiornamento disponibile.

Ho quindi provveduto a scaricare e installare manualmente i seguesti pacchetti:

  • yum-3.2.8-9.el5.centos.2.1.noarch.rpm
  • yum-fastestmirror-1.1.10-9.el5.centos.noarch.rpm
  • yum-refresh-updatesd-1.1.10-9.el5.centos.noarch.rpm
  • yum-updatesd-0.9-2.el5.noarch.rpm

Fatto questo una rapida sequenza di yum clean all seguita dai canonici yum check-update e yum update mi ha permesso di tornare in possesso di un sistema (nuovamente) al pieno delle sue funzionalità .

Buon lavoro !

installare Skype su CentOS 5

Skype logo Con la nuova scrivania è arrivato anche il nuovo pc e l’altro giorno ho speso qualche ora a ripristinare l’installazione della mia CentOS {dopo una “sofferta” decisione di lasciar stare l’ alpha di Ubuntu 8.04 per coerenza sistemistica col restante parco macchine} …

Ad un certo punto sono arrivato al punto di dover installare uno dei software che più mi provoca “mal di pancia”: Skype. Purtroppo il suo utilizzo, sopratutto in ambito lavorativo, si sta facendo sempre più necessario visto che il programmillo sta scalzando giorno dopo giorno la base di utentza – pur ampia – che Microsoft Messenger si era assicurata in questi anni di preinstallazione su XP/Vista. Ormai il 96% della mia contact list lavorativa usa Skype in affincamento a MSN e quindi se posso evitare quest’ultimo, lo faccio 😀

In questa occasione ho scoperto che il meccanismo di installazione proposto in un vecchio post a riguardo non è più valido, visto che l’ultimo pacchetto “stabile” del popolare client VoIP richiede una versione della qt4-x11 inesistente nella famiglia 5.* di CenOS.

Fortunatamente il rimedio è subito a portata di click, sul già citato CentOS Wiki, che propone una apposita pagina risolutiva all’installazione della versione Beta di Skype sulla distribuzione in esame.

Buona lettura: http://wiki.centos.org/HowTos/Skype!