pedroescudero.info Sobre programación, tecnología, etc

30abr/101

Botones de la ventana a la derecha en Ubuntu 10.04

Ayer tras un pequeño retraso de última hora liberaron Ubuntu 10.04, una LTS que trae cambios importantes, el que  mas destaca, el rediseño de su interfaz gráfica. Una de las decisiones de diseño que no parece tener buena acogida es la de colocar los botones de la ventana a la izquierda y en orden inverso. Si no estás conforme con este cambio es muy facil devolverles el lugar que les corresponde por costumbre.

Abre un terminal y escribe la siguiente orden.

gconf-editor

Con este comando abrimos el editor de configuración de Gnome. Dentro de él navega por el arbol de la izuierda hasta la ruta / -> Apps -> Metacity -> General.

En el cuadro de la derecha busca y modifica el valor del parámetro button_layout a :minimize,maximize,close.

Listo, ya tienes los botones a la derecha y en el orden correcto.

Etiquetado con: 1 Comentario
20mar/100

Crunchbang 10 Alpha 1

Tras muchos meses de espera el equipo de CrunchBang ha lanzado la versión 10 Alpha, con un cambio muy importante, CrunchBang pasa a basarse en Debian en lugar de Ubuntu. La versión base de Debian es concretamente Squezee, actual "testing" que será la siguiente versión estable del sistema operativo universal.

Otro cambio importante es que ahora puedes descargar CrunchBang escogien do entre dos entornos de escritorio, OpenBox o XFCE, ambos configurados para mantener el minimalismo que carazteriza a la distribución.

Puedes descargarla aquí pero recuerda que no es una versión estable todavía.

23feb/102

Emensene 1.6.1 en Ubuntu 9.04

Uno de los problemas cotidianos mas comunes del mundo de la informática es el de "me ha dejado de funcionar el Messenger". ¿Por qué ocurre? Si es temporal y le ocurre a todo el mundo posiblemente los servidores de Messenger estén caidos, si es persistente y te ocurre solo a ti posiblemente Microsoft haya modificado el protocolo y tengas que actualizar el cliente. Este es uno de los problemas de los productos de Microsoft, la falta de estándares y los cambios constantes en protocolos y formatos que no hace mas que generar incompatibilidades a medio y largo plazo.

Si no actualizaste a Ubuntu 9.10 y has preferido mantenerte en la 9.04 probablemente al arrancar Emesene te habrá saltado un mensaje de error indicándote que no vas a poder conectar. Han cambiado el protocolo.

Para poder conectarnos al Messenger usando Emesene desde Ubuntu 9.04 basta con actualizar la versión de Emesene a la 1.6.1. Seguimos los siguientes pasos.

1. Descargamos e instalamos la actualización de Python.

2. Descargamos e instalamos Emesene 1.6.1.

Imprescindible instalar en ese orden ya que la actualización de Python es requisito para Emesene 1.6.1 y si al ir a instalarlo, cuando se comprueban las dependencias, no se encuentra, no se instalará.

18feb/104

Instalar Oracle Express Edition con soporte desde PHP5 en Ubuntu/Debian

Para instalar Oracle Express Edition en Ubuntu o Debian, de manera que luego podamos atacarla desde nuestra aplicación web desarrollada en PHP5 seguiremos los siguientes pasos.

A) INSTALACIÓN Y CONFIGURACIÓN DE ORACLE XE

1.- Instalación dependencias
#apt-get install bc libaio1

2.- Instalación del paquete , descargarlo desde aquí
#cd /usr/src
#dpkg -i  oracle-xe-universal_10.2.0.1-1.0_i386.deb

3.-  configuración de parámetros
/etc/init.d/oracle-xe configure

Specify the HTTP port that will be used for Oracle Application Express [8080]: 8080
Specify a port that will be used for the database listener [1521]:1521
Ingresar el password para las cuentas de administración (SYS & SYSTEM) : 123456
Do you want Oracle Database 10g Express Edition to be started on boot (y/n) [y]: y

4.- Configuración de variables de entorno

#vi /root/.bashrc

##Variables de servidor oracle xe
ORACLE_HOME=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server
PATH=$PATH:$ORACLE_HOME/bin
export ORACLE_HOME
export ORACLE_SID=XE
export PATH

5.- Pruebas de variables

#echo $ORACLE_HOME
#echo $ORACLE_SID

6.- Verificar variables de inicio de oracle

#cat $ORACLE_HOME/network/admin/tnsnames.ora
#mkdir /etc/oracle
#cp $ORACLE_HOME/network/admin/tnsnames.ora /etc/oracle

7.- verificar inicio correcto

# cd $ORACLE_HOME/bin
# tnsping XE

si sale :

Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = dapper)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = XE)))
TNS-12545: Connect failed because target host or object does not exist

reiniciar servicio : /etc/init.d/oracle restart

Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = mail)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = XE)))
OK (10 msec)

entonces todo esta correcto.

8.-  conexión al servidor vía sqlplus como sys

#sqlplus sys as sysdba
Enter password: 123456

Connected to:
Oracle Database 10g Express Edition Release 10.2.0.1.0 – Production

SQL>

9.- Desbloquear usuario HR , para poder conectarnos

SQL> alter user HR account unlock;
User altered.

SQL> alter user HR identified by 654321;
User altered.

SQL> exit;

10.- Conectarse por sqlplus como usuario HR

#sqlplus HR/654321@XE

SQL*Plus: Release 11.1.0.6.0 – Production on Sat Nov 1 09:12:54 2008

Copyright (c) 1982, 2007, Oracle.  All rights reserved.

Connected to:
Oracle Database 10g Express Edition Release 10.2.0.1.0 – Production

SQL>
11.- Estamos conectados ahora Probamos  realizar una consulta a una tabla ya creada en la instalación.

SQL> select * from JOBS;

JOB_ID       JOB_TITLE                   MIN_SALARY MAX_SALARY
———- ———————————– ———- ———-
AD_PRES    President                    20000      40000
AD_VP       Administration Vice President        15000      30000
AD_ASST    Administration Assistant             3000    6000
FI_MGR       Finance Manager                 8200      16000
FI_ACCOUNT Accountant                     4200    9000
AC_MGR       Accounting Manager                 8200      16000
AC_ACCOUNT Public Accountant                 4200    9000
SA_MAN       Sales Manager                10000      20000
SA_REP       Sales Representative              6000      12000

Hasta aquí tenemos correcto el servidor ahora configuramos apache php para hacer consultas

ANEXOS

1.-Verificar si el servicio esta activo , Aveces no se porque el servicio no se inicia durante el startup , para eso podemos verificar si el servicio esta activo.

# cd $ORACLE_HOME/bin
# tnsping XE

Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = mail)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = XE)))
OK (10 msec)

B-1) INSTALACIÓN DEL SOPORTE PARA ORACLE EN PHP5

1.- Instalar dependencias
#apt-get install apache2.2-common libapache2-mod-php5 php5 php5-cli rpm libaio1

2.-Bajar los paquetes :

- oracle-instantclient-basic-11.1.0.1-1.i386.rpm
- oracle-instantclient-devel-11.1.0.1-1.i386.rpm
- oracle-instantclient-sqlplus-11.1.0.1-1.i386.rpm

de la siguiente direccion : http://www.oracle.com/technology/software/tech/oci/instantclient/htdocs/linuxsoft.html
3.-Instalar los paquetes
#rpm -ivh /root/oracle-instantclient-*
4.- Crear directorio para archivos de configuración
#mkdir /etc/oracle

5.- Copiar/verificar el archivo tnsnames.ora del servidor local/remoto dónde nos vamos a conectar y copiarlo a /etc/oracle/

###########################################
# tnsnames.ora Network Configuration File:

XE =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = mail)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = XE)
)
)

EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE))
)
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
)
)

################################################################

Donde ¨mail¨ es el nombre del servidor.

6.- Agregar variables de entorno
#vim /root/.bashrc

#Variables de cliente oracle xe
export TNS_ADMIN=/etc/oracle
export SQLPATH=/usr/lib/oracle/11.1.0.1/client/bin
export LD_LIBRARY_PATH=/usr/lib/oracle/11.1.0.1/client/lib/;$LD_LIBRARY_PATH
export PATH=$PATH:$SQLPATH

7.- Reiniciar la sesión de root para que los cambios en las variables de entorno tengan efecto.

8.- Comprobar conectividad con servidor  local/remoto

#sqlplus usuario@servidor

Dónde usuario es el nombre de usuario o esquema y servidor es uno de los definidos en el tnsnames.ora
Pedirá la contraseña y si todo va bien nos devolverá el prompt del servidor Oracle.

B-2) Generar e Instalar módulo OCI en PHP

1.- Instalar dependencias
#apt-get install build-essential php5-dev

2.- Si no está creado, creamos el directorio de fuentes
#mkdir -p /usr/local/src

3.- Descargamos las fuentes PECL del futuro módulo OCI:
#wget http://pecl.php.net/get/oci8-1.2.4.tgz

4.- Descomprimimos
#tar xzf oci8-1.2.4.tgz

5.- Entramos al directorio creado
#cd /usr/local/src/oci8-1.2.4

6.- Preparamos el módulo para que sea generado para PHP
#phpize

7.- Configuramos el módulo para la generación
#./configure –with-oci8=instantclient,/usr/lib/oracle/11.1.0.1/client/lib/

La ruta es dónde se encuentran los *.so que hemos instalado con el InstantClient

8.- Construcción e instalación
#make
#make install

9.- Editamos la configuración de PHP.

#vim /etc/php5/apache2/php.ini

Añadimos la línea:
extension=oci8.so

y repetimos lo mismo para el archivo /etc/php5/cli/php.ini

10.- Reiniciamos Apache
#/etc/init.d/apache2 restart

11.- crear phpinfo.php para verificar el modulo oci8
#vi /var/www/apache2-default/phpinfo.php

<?php

// Muestra toda la información, por omisión INFO_ALL
phpinfo();

// Mostrar sólo la información de módulos.
// phpinfo(8) produce el mismo resultado.
phpinfo(INFO_MODULES);

?>

12.- Generar consulta basica

#vi /var/www/apache2-default/consulta.php

<?php

$connection = ocilogon(“HR”,”654321″,”//192.168.1.180/XE”);
$query = “select * from JOBS”;
$statement = oci_parse ($connection, $query);
oci_execute ($statement);
$statement = oci_parse ($connection, $query);
oci_execute ($statement);
echo “JOD_ID|JOB_TITLE|MIN_SALARY|MAX_SALARY”;
while ($row = oci_fetch_array ($statement, OCI_BOTH)) {
echo “$row[0]|$row[1]|$row[2]|$row[3]“;
}
oci_close($connection);

?>

- Donde  ¨192.168.1.180¨ seria la ip del servidor o maquina de la implementacion
- Verficiamos la consulta  entrando a :  http://ipdelamaquina/apache2-default/consulta.php   , si nos genera la consulta entonces ya tenemos todo completo y podemos empezar a desarrollar nuestras aplicaciones

Vía: http://jroliva.wordpress.com

Etiquetado con: , , , , 4 Comentarios
15dic/090

Instalar Moblin en Opensuse

In the meantime, if you are interested in test driving the Moblin user interface on openSUSE, the thriving openSUSE community has provided packages for the Moblin projects on openSUSE 11.1. You can find out more about these from Andrew Wafaa's blog entry here.

Directamente de la página de OpenSuse. Para los que no sepais inglés (plantearos aprenderlo), la comunidad de OpenSuse ha facilitado paquetes para instalar Moblin en OpenSuse 11.1, que no tiene paquetes oficiales para Moblin, pero es posible que se incluyan en la siguiente versión.

Las instrucciones de como instalarlo aquí en inglés. Si no las entiendes o estás interesado en una traducción, deja un comentario al respecto y dedicaré una entrada mas detallada a la instalación de Moblin en OpenSuse.

Etiquetado con: No hay comentarios