Posts Tagged python
Python + Oracle – Installare cx_Oracle su Fedora 14
Pubblicato da Alessandro Lorenzi in Appunti Vari, Database, Linux, programmazione, python, Software il aprile 8, 2011
Ho trovato l’installazione di cx_Oracle un po’ complicata su Fedora 14, quindi procedo a spiegare passo per passo come fare.
Prima di tutto scarichiamo alcuni pacchetti dell’istant client dal sito di oracle:
- instantclient-basic-linux32-11.2.0.2.0.zip
- instantclient-sdk-linux32-11.2.0.2.0.zip
- instantclient-odbc-linux32-11.2.0.2.0.zip
- instantclient-sqlplus-linux32-11.2.0.2.0.zip
- instantclient-tools-linux32-11.2.0.2.0.zip
I primi due archivi sono strettamente necessari, il resto é tutto grasso che cola
.
Da utente root creiamo la directory /opt/ORACLE e scompattiamoci tutti gli zip.
É necessario impostare alcune variabili d’ambiente nel .profile (o .bashrc) di tutti gli utenti che necessiteranno di utilizzare il client oracle.
# Export ORACLE export ORACLE_HOME=/opt/ORACLE/instantclient_11_2 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME export PATH=$PATH:$ORACLE_HOME
Aggiorniamo l’env, oppure effettuiamo un login/logout.
Creiamo un soft link della libreria libclntsh.so.11.1
cd $ORACLE_HOME ln -s libclntsh.so.11.1 libclntsh.so
Ricordiamoci anche di compilare il file tnsames.ora in $ORACLE_HOME/network/admin/
Scarichiamo l’archivio “Source Code only” aggiornato all’ultima versione di cx_Oralce dalla pagina di cx_Oracle su souceforge, al momento il pacchetto é questo e scompattiamolo in una directory di comodo.
Da dentro la directory diamo i due comandi di installazione
python setup.py build python setup.py install
Sotto Fedora 14 é inoltre necessario abbassare il livello di sicurezza (oppure aggiungerci le regole di SeLinux, prima o poi impareró anche quello gh :\ )
setenforce 0
Fatto.
Buon lavoro
Trimming in Python
Pubblicato da Alessandro Lorenzi in Appunti Vari, programmazione, python il novembre 29, 2010
Il trimming é una delle manipolazioni delle stringhe piú importanti per controllare l’input. Uno spazio in piú all’inizio o alla fine dell’input non é visibile per l’utente che lo inserisce ma per la macchina che lo legge é ben diverso.
In python é possibile eliminare questi spazi in eccesso con la funzione “.strip()”
import string
" my input ".strip()
vedremo che il ritorno sará senza gli spazi prima e dopo.
Controllare lo stato dei dischi via python
Pubblicato da Alessandro Lorenzi in programmazione, python il novembre 29, 2010
Uno script per controllare lo stato dei dischi, quando viene trovato un disco oltre la soglia di allerta viene inviata una mail all’indirizzo specificato con i dischi troppo pieni.
#!/usr/bin/env python
import commands
import re
import smtplib
'''
CONFIGURARE QUI
'''
macchina="bscs@itxha309"
devices=[
["/mnt/path1", 95],
["/mnt/path2",98],
]
addrlist=['alessandro.lorenzi@myMail.com']
'''
Fine CONFIGURAZIONE
'''
dimensione = "([0-9])+%"
mail = ""
count = 0
for device in devices:
devstat= os.statvfs(device[0])
free = int(devstat[3]) *100/ int(devstat[2])
if int(100-free) >= int(device[1]):
mail = mail + "%s\t%s \t%s\n" %(device[0], device[1], m.group(0))
count+=1
if (count > 0):
mail = "Devices quasi pieni:\n" + mail
server = smtplib.SMTP('localhost')
for toaddr in addrlist:
print toaddr
server.sendmail(macchina, toaddr, mail)
server.quit()
Ovviamente si sposa bene con cron. Basta inserire lo script in crotab per farlo eseguire ogni minuto ed essere sempre informato dello stato dei propri dischi.
Commenti recenti