24/12/08

YO NO LO SÉ DE CIERTO... ("Jaime Sabines")

Yo no lo sé de cierto, pero supongo
que una mujer y un hombre
algún día se quieren,
se van quedando solos poco a poco,
algo en su corazón les dice que están solos,
solos sobre la tierra se penetran,
se van matando el uno al otro.

Todo se hace en silencio. Como
se hace la luz dentro del ojo.
El amor une cuerpos.
En silencio se van llenando el uno al otro.

Cualquier día despiertan, sobre brazos;
piensan entonces que lo saben todo.
Se ven desnudos y lo saben todo.

(Yo no lo sé de cierto. Lo supongo.)

Canción de otoño en primavera (Rubén Darío)

Juventud, divino tesoro,
¡ya te vas para no volver!
Cuando quiero llorar, no lloro...
y a veces lloro sin querer.

Plural ha sido la celeste
historia de mi corazón.
Era una dulce niña, en este
mundo de duelo y aflicción.

Miraba como el alba pura;
sonreía como una flor.
Era su cabellera obscura
hecha de noche y de dolor.

Yo era tímido como un niño.
Ella, naturalmente, fue,
para mi amor hecho de armiño,
Herodías y Salomé...

Juventud, divino tesoro
¡ya te vas para no volver...!
Cuando quiero llorar, no lloro,
y a veces lloro sin querer...

La otra fue más sensitiva,
y más consoladora y más
halagadora y expresiva,
cual no pensé encontrar jamás.

Pues a su continua ternura
una pasión violenta unía.
En un peplo de gasa pura
una bacante se envolvía...

En sus brazos tomó mi ensueño
y lo arrulló como a un bebé...
Y le mató, triste y pequeño
falto de luz, falto de fe...

Juventud, divino tesoro,
¡te fuiste para no volver!
Cuando quiero llorar, no lloro,
y a veces lloro sin querer...

Otra juzgó que era mi boca
el estuche de su pasión
y que me roería, loca,
con sus dientes el corazón

poniendo en un amor de exceso
la mira de su voluntad,
mientras eran abrazo y beso
síntesis de la eternidad:

y de nuestra carne ligera
imaginar siempre un Edén,
sin pensar que la Primavera
y la carne acaban también...

Juventud, divino tesoro,
¡ya te vas para no volver!...
Cuando quiero llorar, no lloro,
¡y a veces lloro sin querer!

¡Y las demás!, en tantos climas,
en tantas tierras, siempre son,
si no pretexto de mis rimas,
fantasmas de mi corazón.

En vano busqué a la princesa
que estaba triste de esperar.
La vida es dura. Amarga y pesa.
¡Ya no hay princesa que cantar!

Mas a pesar del tiempo terco,
mi sed de amor no tiene fin;
con el cabello gris me acerco
a los rosales del jardín...

Juventud, divino tesoro,
¡ya te vas para no volver!...
Cuando quiero llorar, no lloro,
y a veces lloro sin querer...

¡Mas es mía el Alba de oro!

27/11/08

Descargar videos y convertirlos a otros formatos

Hace poco tiempo aprendí a bajar videos desde YouTube y otros sitios colaborativos de videos, le enseñe a hacerlo a un amigo.
Bueno graciás a él, ya que el deseaba poder ver estos videos con los reproductores de Windows, halle software que podía convertir los archivos de .flv a varios formatos, claro estos programas corren en Windows... como tengo un equipo con Linux, Debian Lenny, me entro la curiosidad, así que luego de buscar en la web halle varias opciones para convertir archivos de un formato a otro son variadas, pero nada comparado con la sencillez y potencia del terminal.
Simplemente tuve que instalar esto (obviamente con privilegios de root):
aperedo@linux2:~/Desktop$ apt-get install ffmpeg

Ya instalado el ffmpeg procedemos a convertir los archivos flv que queramos, abriendo un terminal y tecleando:

aperedo@linux2:~/Desktop$ ffmpeg -i tu_archivo.flv tu_nuevo_archivo.mpeg

ó
aperedo@linux2:~/Desktop$ ffmpeg -i tu_archivo.flv tu_nuevo_archivo.avi

Además que ffmpeg hace honor a su reputación de navaja suiza, algo que me gusto también es que en relación al archivo flv el formato mpeg tiene un ahorro del 10% en el mp4 el archivo que se crea ocupa 20% menos espacio.
Si quieren saber mas de este buen comando y como convertir a formato para el ipod les recomiendo esta dirección.
Actualización (2/12/2008)
Bueno luego de estar buscando e investigando un poco me encontré con una aplicación que puede ayudarnos más a bajar y convertir videos, además que tiene mayores funcionalidades para la edición de archivos multimedia.
La aplicación en cuestión es Pytube, si alguién deseas probarla deberá descargarlo desde este lugar, es para Debian y Ubuntu, si tienen otra distribución solo deben bajar el paquete tar y luego instalarlo.
En Debian es posible que les pida algunas dependencias, en mi instalación me pidó estas:
1.- ffmpeg2theora
2.- mencoder
3.- sox
Instale esas dependencias y volví a ejecutar el dpkg -i pytube.... y listo lo dejo instalado en mi sistema.
Acá les dejo la imagén luego de la instalación, incluyo el mensaje que me dio al intentar instalarlo sin las dependencias necesarias.

18/11/08

Navegador Epiphany.. inconveniente

Al iniciar con este navegador, por lo general aparece por defecto seleccionada la opción "Trabajar desconectado", si uno deshabilita esta oopción, cierra el navegor y vuelve a abrirlo es posible que la opción este nuevamente seleccionada, para solucionar esto bastará con hacer lo siguiente:
  1. Abrir el navegador "Epiphany"
  2. escribir en la barra de direcciones about:config
  3. Buscar la opción: network.dns.disableIPV6
  4. Hacer doble click hasta que el valor nos muestre "True"
  5. Cerrar la ventana que abrimos.
Con esto veremos que al iniciar nuevamente el navegador ya no esta seleccionada la opción "Trabajar desconectado" y podemos trabajar normalmente.

La biblioteca

Contratos laborales


Acá una razón para leer muy bien los contratos de trabajo que uno firma.

El inicio de la Odisea...


Acá una teoría muy interesante sobre la Odisea...

5/11/08

Video de felicitación

Parejas

Aprendamos a entender las preguntas de nuestra pareja......

Bromas sobre RRHH

Quién no se queja del área de Recursos Humanos?... seguro que luego de ver esto... empezaremos a quererlos un poco mas....

Instalar Oracle Express Edition 10g Release 2 en Debian lenny (2.6.26)

Oracle Database 10g Express Edition (Oracle Database XE) es una base de datos de entrada de footprint pequeño, creada sobre la base de código Oracle Database 10g Release 2 que puede desarrollarse, implementarse y distribuirse sin cargo. Algunas restricciones de esta versión de Oracle es que únicamente aprovecha un procesador aunque nuestro servidor cuente con más de uno, el máximo tamaño de almacenamiento es de 4GB y la memoria máxima utilizada será de 1GB aunque contemos con más memoria.

Es esta entrada veremos como podemos instalar Oracle Express Edition 10g (XE) en nuestro Debian. Esta instalación ha sido hecha en Debian Lenny(2.6.26).

El primer paso a seguir, será descargar el archivo oracle-xe-universal_10.2.0.1-1.0_i386.deb de la página de Oracle. Este archivo permite que uses más de un tipo de codificación en tu base de datos. Para bajar el archivo deberás estar registrado.

Ahora deberemos abrir un Terminal, si hemos iniciado un Terminal como usuario normal debemos convertiremos en el usuario root.

aperedo@bolpiilinux2:~$ su

Hecho lo anterior, instalaremos las dependencias necesarias para que funcione Oracle XE.

aperedo@bolpiilinux2:~$ apt-get install libc6 libaio1

Ahora que ya tenemos las dependencias, instalaremos el archivo oracle-xe-universal_10.2.0.1-1.0_i386.deb, en mi caso el archivo lo descargué en mi Desktop de usuario.

aperedo@bolpiilinux2:/home/aperedo/Desktop# dpkg -i /home/aperedo/oracle-xe-universal_10.20.0.1-1.0_i386.deb

Con ésto tenemos instalada la base de datos, ahora nos encargaremos de configurarla, para esto ejecutaremos el siguiente comando:

bolpiilinux2:/#/etc/init.d/oracle-xe configure

nos preguntará sobre qué puerto queremos que funcione la aplicación web para administrar la base de datos, en este caso no usaré el puerto que nos da por default (8080). En caso que tengan otro servicio trabajando en ese puerto deberán cambiarlo, como es mi caso, configure el puerto 8081.

Oracle Database 10g Express Edition Configuration
————————————————-
This will configure on-boot properties of Oracle Database 10g Express
Edition. The following questions will determine whether the database should
be starting upon system boot, the ports it will use, and the passwords that
will be used for database accounts. Press to accept the defaults.
Ctrl-C will abort.

Specify the HTTP port that will be used for Oracle Application Express [8080]:

Ahora nos preguntará el puerto por el cual otras aplicaciones podrán conectarse de manera remota a nuestra base de datos. En mi caso dejé el puerto por default (1521).

Specify a port that will be used for the database listener [1521]:

En el siguiente paso se nos pedirá que asignemos una contraseña y su confirmación para las cuentas de administración de Oracle SYS y SYSTEM.

Specify a password to be used for database accounts. Note that the same
password will be used for SYS and SYSTEM. Oracle recommends the use of
different passwords for each database account. This can be done after
initial configuration:
Confirm the password:

Una vez asignada la contraseña, se nos preguntará si deseamos que Oracle XE inicie al arrancar nuestro equipo. En mi caso respondía afirmativamente (Y).

Do you want Oracle Database 10g Express Edition to be started on boot (y/n) [y]:

El programa levantará el servicio para Listener, el cual se encarga de permitir que aplicaciones se conecten de manera remota a la base de datos y dicho programa también se encargará de configurar la base de datos de acuerdo a los parámetros que respondimos.

Starting Oracle Net Listener…Done
Configuring Database…Done
Starting Oracle Database 10g Express Edition Instance…Done
Installation Completed Successfully.
To access the Database Home Page go to “http://127.0.0.1:8081/apex”

Listo, con esto tenemos instalada y configurada nuestra base de Oracle XE.

Si quisieramos detener la base de datos manualmente, bastará con ejecutar el siguiente comando como usuario root.

bolpiilinux2:/#/etc/init.d/oracle-xe stop

Y si quisieramos levantarla manualmente, ejecutaremos lo siguiente:

bolpiilinux2:/#/etc/init.d/oracle-xe start

Si queremos usar la aplicación web que nos instala por default para la administración de la base de datos, deberemos abrir nuestro navegador y teclar la dirección http://127.0.0.1:8081/apex. Esto nos abrirá una página donde se nos pide una cuenta de usuario y su contraseña.

Pantalla de inicio via web

Pantalla de inicio vía web

Por el momento tenemos dos cuentas para ingresar a la base de datos SYS y SYSTEM. Ingresamos cualquiera de estas dos y la contraseña que les asignamos a lo cual se nos abrirá una página con la administración de la base de datos.

Administración Oracle

Administración Oracle

Ahora bien, si deseamos usar el comando sqlplus para conectarnos o administrar la base de datos, deberemos configurar algunas variables de ambiente. Si queremos que todos nuestros usuarios puedan conectarse a nuestra base de datos, agregaremos las variables en el archivo /etc/profile, en caso contrario, deberemos agregarla en el archivo .bashrc que se encuentra en el home del usuario deseado.

Editamos el archivo correspondiente y agregamos las siguiente variables:

export ORACLE_HOME=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server
export ORACLE_SID=XE
export NLS_LANG=SPANISH_SPAIN.WE8ISO8859P1
export NLS_DATE_FORMAT=”YYYY-MM-DD”
export PATH=$PATH:$ORACLE_HOME/bin

La variable de ambiente ORACLE_HOME indica la ruta donde fue instalado Oracle.
La variable SID indica el identificador de la base de datos, que en este caso el nombre por defautl es XE.
La variable NLS_LANG indica el lenguaje y la codificación de caracteres que deseamos usar con la base de datos, si lo desean pueden utilizar cualquier otra (AMERICAN_AMERICA.WE8ISO8859P1, SPANISH_SPAIN.WE8ISO8859P1, SPANISH_MEXICO.WE8ISO8859P1.
La variable NLS_DATE_FORMAT indica el formato en que se presentará la fecha.

Guardados los cambios de las variables de ambiente, cargaremos dichos cambios en una sesión actual del usuario con el que deseamos conectarnos a la base de datos. Dependiendo del archivo que hayan modificado /etc/profile o /home/usuario/profile, deberán ejecutar lo siguiente:

bolpiilinux:/# source /etc/profile

ó

aperedo@bolpiilinux2~$ source $HOME/.bashrc

Hecho lo anterior, nos conectaremos a la base de datos con cualquiera de las cuentas de administración, de la siguiente manera:

aperedo@bolpiilinux2~$ sqlplus SYS as SYSDBA

SQL*Plus: Release 10.2.0.1.0 - Production on Jue Ago 14 15:23:42 2008

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

Introduzca la contraseña:

Conectado a: Oracle Database 10g Express Edition Release 10.2.0.1.0 - Production

SQL>

Para salir de nuestra sesión de usuario bastará con teclear el comando QUIT o EXIT.

SQL> quit

Desconectado de Oracle Database 10g Express Edition Release 10.2.0.1.0 - Production

Cuando realizamos la instalación y la configuración de Oracle XE, automáticamente se creo una cuenta de usuario llamada oracle así como un grupo de trabajo llamado dba. Será recomendable asignarle una contraseña a dicha cuenta para evitar problemas de seguridad. Esto se puede realizar con la cuenta del usuario root, teclando lo siguiente:

bolpiilinux2:/# passwd oracle
Introduzca la nueva contraseña de UNIX:
Vuelva a escribir la nueva contraseña de UNIX:
passwd: contraseña actualizada correctamente

Como pudieron darse cuenta al configurar las variables de ambiente, la ruta donde se instaló Oracle XE fue en /usr/lib/oracle/xe/app/oracle/product/10.2.0/server. Dentro de esta ruta podemos encontrar el directorio bin el cual contiene los comandos necesarios de Oracle, como son sqlplus, lsnrctl, exp, imp, entre otros.

Si quisieramos desinstalar Oracle XE, bastará con ejecutar el siguiente comando como usuario root:

bolpiilinux2:/# apt-get remove oracle-xe-universal

Para finalizar, en el menú principal de Gnome podemos observar que se creó la opción “Oracle Database 10g Express Edition“, la cual cuenta con varias opciones. Para que nuestro usuario pueda hacer uso completo de éstas, deberemos de agregarlo al grupo de trabajo dba.

bolpiilinux2:/# addgroup aperedo dba

Adding user `aperedo’ to group `dba’ …
Añadiendo al usuario aperedo al grupo dba
Hecho.

Listo, ahora podremos usar las opciones con el usuario que deseemos.

LVM en Linux Debian

Breve Reseña sobre LVM

Bueno acá lo que les prometí, estuve investigando sobre como utilizar LVM en mi distribución Linux, debian por supuesto wink , luego de estar leyendo una amplia documentación sobre LVM y hacer pruebas en mi propio equipo y servidor les presento acá un resumen de mi experiencia con este comando. Quede muy satisfecho con los resultados, desde ahora ya tengo una herramienta más para poder manejar mis servidores en Linux, espero les sea de utilidad, mi recomendación es que lean todo hasta hasta el final antes de intentar hacer la prueba en algún equipo, así se ahorran uno que otro dolor de cabeza o fallo smile

La teoría dice…

La Administración de Volúmenes Lógicos provee un tratamiento de más alto nivel del espacio de disco de nuestro sistema que el tratamiento tradicional de discos y particiones. Esto brinda al administrador del sistema mucha mas flexibilidad asignando espacio a aplicaciones y usuarios. Con LVM podemos ver todo el espacio de cada uno de los discos duros conectados a nuestro sistema llamados “Physical Volumes” (PV) como un sólo Disco Duro Virtual, en él creamos los “Volume Group” (VG), de éstos VG podemos coger cierta cantidad de bloques y crear “Logical Volumes” (LV), el LV no necesita ser un grupo de bloques continuos ni tampoco pertenecer a un mismo disco duro.
La estructura de LVM es la siguiente:

Physical Volumes (PVs)
hda, hdb, hdc, sda2, etc.
Aquí vemos toda la colección de discos duros de nuestro sistema.

Volume Group (VG)
vg1
Aquí vemos los Grupo de Volúmenes.
Logical Volumes (LV)==>lvhome, lvusr, lvvar, etc==>Aquí vemos los Volúmenes Lógicos.
Sistema de Archivos==>ext3, reiserfs, xfs, etc.==>Aquí vemos los Sistemas de Archivos que puede contener cada Volumen Lógico.
Archivos y Directorios==>/home, /usr, /var, etc==>Los Sistemas de Archivos, almacenan archivos y directorio

En el párrafo anterior podemos apreciar que el espacio total de nuestro sistema sera la suma del tamaño de cada Disco Duro (PVs) dentro del LVM, luego todo ese gran disco virtual se convierte en un VG, para el ejemplo tenemos un sólo VG llamado “vg1” y dentro de éste VG se crean los LVs conteniendo cada unos de ellos diferentes Sistemas de Archivos y dentro de ellos archivos y directorio.
Por ejemplo si tenemos un disco duro de 80G con 3 particiones:
1.La raíz / ===> 3G
2. Swap =====> 2G
3. Y lo demás LVM, es decir un VG ===> 75G

Dentro del VG creamos LVs para /home y /usr de 10G y 5G respectivamente (Podemos hacerlo para varios puntos de montaje, teniendo en cuenta que no es recomendable tener la raiz / en un volumen lógico, es mejor tener la / fuera del LVM, ya que hay problemas para desmontarla) . Quedando entonces 60G de espacio disponible en el VG.

Si luego de un tiempo nos damos cuenta que nos estamos quedando sin espacio en /home, el problema se soluciona fácilmente: cogemos de lo que tenemos disponible en el VG y listo! Todo ésto en caliente. Así como también podemos reducir el espacio de /usr a 3G, etc.
Si conectamos un nuevo disco duro de 40G a nuestro sistema, creamos un nuevo PV y lo metemos al LVM y listo ya tenemos 40G más de espacio disponible en nuestro VG.
Con esta breve reseña he tratado de mostrarles algunos beneficios de LVM. Ya queda en Uds. poder investigar más y ver cómo aprovechar todos lo beneficios que brinda para sus necesidades.

Ahora paso a mostrarles un tutorial para una de las tareas mas comunes usando LVM: Reducir y Expandir los Volúmenes Lógicos (LV).
Cuando trabajamos con LVM debemos recordar que hay 2 capas implicadas:
La capa bajo el filesystem, antes conocida como partición, y El filesystem propiamente dicho.
Para poder reducir o expandir algún LV debemos proveernos antes de cierta información tal como: espacio disponible en el VG y espacio disponible en los LVs, además de la información propia de cada uno.
Para este ejemplo les mostrare los datos de mi equipo:
bolpiilinux2:/home/aperedo#pvdisplay
— Physical volume —

PV Name /dev/sda2
VG Name bolpiilinux2
PV Size 148,77 GB / not usable 2,95 MB
Allocatable yes
PE Size (KByte) 4096
Total PE 38085
Free PE 25
Allocated PE 38060
PV UUID xgMMhu-qan9-Ef0G-gqPr-EBXt-8JIv-tfSSTt

bolpiilinux2:/home/aperedo#vgdisplay
— Volume group —
VG Name bolpiilinux2
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 12
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 6
Open LV 6
Max PV 0
Cur PV 1
Act PV 1
VG Size 148,77 GB
PE Size 4,00 MB
Total PE 38085
Alloc PE / Size 38060 / 148,67 GB
Free PE / Size 25 / 100,00 MB
VG UUID eouPKG-BvSM-EBG0-TEhR-CijF-uM6U-eKQleR

Por ejemplo, para ver el espacio disponible observamos la línea que dice:
Free PE / Size 25 / 100,00 MB

Para ver la información del VG ejecutamos el comando:

bolpiilinux2:/home/aperedo#lvdisplay
– Logical volume —
LV Name /dev/bolpiilinux2/root
VG Name bolpiilinux2
LV UUID aV9sLu-D0XP-rlQp-xIjM-UySA-f71F-Nsa1Lh
LV Write Access read/write
LV Status available
# open 1
LV Size 3,05 GB
Current LE 781
Segments 2
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 254:0
— Logical volume —
LV Name /dev/bolpiilinux2/usr
VG Name bolpiilinux2
LV UUID JrDOUK-d1UP-CKwp-5wqK-Y37d-771n-tC68f1
LV Write Access read/write
LV Status available
# open 1
LV Size 4,77 GB
Current LE 1221
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 254:1
— Logical volume —
LV Name /dev/bolpiilinux2/var
VG Name bolpiilinux2
LV UUID 7e7RKc-gFbD-P6TI-l3h0-hYaV-CSvZ-NqCoUg
LV Write Access read/write
LV Status available
# open 1
LV Size 2,86 GB
Current LE 733
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 254:2
— Logical volume —
LV Name /dev/bolpiilinux2/swap_1
VG Name bolpiilinux2
LV UUID gMIG70-5VnF-trB2-sfem-K9GD-oYLB-jMP31Z
LV Write Access read/write
LV Status available
# open 2
LV Size 2,59 GB
Current LE 664
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 254:3
— Logical volume —
LV Name /dev/bolpiilinux2/tmp
VG Name bolpiilinux2
LV UUID STnNI2-iv89-hiVe-Eenm-TT2Z-izcM-5BM9Lr
LV Write Access read/write
LV Status available
# open 1
LV Size 400,00 MB
Current LE 100
Segments 2
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 254:4
— Logical volume —
LV Name /dev/bolpiilinux2/home
VG Name bolpiilinux2
LV UUID OcrSAn-a2rO-0uEY-Veqw-Dscl-Vv3j-LVC30X
LV Write Access read/write
LV Status available
# open 1
LV Size 135,00 GB
Current LE 34561
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 254:5

Obtendremos la información de todos los LVs presentes en nuestro sistema, por ejemplo, para ver su tamaño observamos la línea que dice:

LV Size 135,00 GB

Reduciendo un Logical Volume:

Es importante recordar reducir el tamaño del filesystem o lo que este residiendo en el volumen antes de encoger el volumen, sino se perderán datos (data).

1° Desmontar el filesystem:
# umount /home
2° Reduciendo el filesystem:
Si es Ext2/Ext3:
# resize2fs /dev/vg1/lvhome XX (XX es el nuevo tamaño)
Si es Reiserfs:
# resize_reiserfs -s-XXG /dev/vg/datalv (XX es el tamaño a restarle en este caso)
Para Xfs y Jfs no es posible reducir éstos filesystems.
3° Reduciendo el LV:
# lvreduce -L-1G /dev/vg1/lvhome
4° Volvemos a montar el filesystem:
# mount /home
Expandiendo un Logical Volume:
1° Expandiendo del LV:
# lvresize -L+XXG /dev/vg1/lvusr (XX es el tamaño a sumarle en este caso)

2° Expandiendo el filesystem para que coincida con el del LV:
Si es Ext2/Ext3:
# umount /usr
# resize2fs /dev/vg1/lvusr
# mount /usr
Si es Reiserfs:
#resize_reiserfs /dev/vg1/lvusr

Si es Xfs:
# xfs_growfs /usr

Si es Jfs:
# mount -o remount,resize /usr

Eliminando un LV
Supongamos que no queremos más el LV llamado home, por alguna razón. Y que deseamos eliminarlo para disponer de ese espacio en otras cosas. Lo hacemos con:
umount /dev/disk/home
lvremove /dev/disk/home
Extendiendo un LV
Supongamos que por el contrario, sí queremos home, pero queremos agregarle 5GB extras, para eso:
umount /dev/disk/home
lvextend -L+5G /dev/disk/home
e2fsck -f /dev/disk/home
resize2fs /dev/disk/home
1- Desmontamos home, pues no puede estar activo para el cambio
2- extendemos con lvextend, si te fijas -L ahora va con +5G, esto es, sumandole 5GB al valor que tenía originalmente.
3- chequeamos el FS (supongo que es formato ext3)
4- hacemos un resize del FS, con el comando resize2fs
Con esto nos basta para incrementar en 5GB el tamaño de ese LV

Reduciendo un LV
Veamos el caso contrario, pensemos que queremos reducir home, le quitaremos 5GB, el proceso es parecido al anterior:
umount /dev/disk/home
e2fschk -f /dev/disk/home
resize2fs /dev/disk/home 35G
lvreduce -L-5G /dev/disk/home

Con esto
1- desmontamos home, no debe estar montado para la operación
2- revisamos el FS ext3
3- reducimos el tamaño del FS ext3 (aquí sí hay que saber a cuánto lo reduces
4- reducimos el tamaño del LV home, si te fijas usamos -L-5G aunque también podíamos haber usado -L35G para indicarle el valor hacia donde lo reduciríamos.
Con esto nos basta para reducir el tamaño en 5GB

Removiendo un PV
Supongamos que un PV nuestro lo queremos sacar. Puede ser porque hemos agregado un nuevo PV anteriormente que es muy grande y ya este PV viejo nos queda pequeño y nos molesta, queremos digamos eliminar el disco.
Supongamos que queremos remover sda2 del ejemplo de mi equipo.
pvmove /dev/sda2
En este proceso demorará un buen rato, pvmove saca la información que tenga guardada y la almacena en los otros PV, esto sin alterar el esquema de los LV.
Por supuesto que la suma de capacidad disponible en los otros PV debe ser mayor o igual a la cantidad de información que esté moviendo.
Al finalizar de mover el PV, lo podemos eliminar del VG con:
vgreduce disk /dev/hdc1

Listo, con este paso deja de constar dentro del VG y lo podemos sacar físicamente de la PC donde lo tenemos.
Notar que en este ejemplo esto no es factible porque solo tengo un PV.

Algunos Tips

En mi caso, tengo en mi LVM: /root, /home, /swap y /usr, tuve problemas al querer desmontar /root por ejemplo, ya que recibía el mensaje de que el dispositivo estaba ocupado. Entonces si queremos desmontar /home, /usr, etc ó algún dispositivo que esté siempre en uso debemos seguir los siguientes pasos:

1° Salir del entorno gráfico hasta la pantalla de logueo, nos pasamos a una terminal con Ctrl+F1 y ejecutamos como root:
# telinit 1 (con esto nos pasamos al modo de usuario simple: “sigle mode user”)
2° Desmontar el dispositivo y hacer las operaciones respectivas de reducción o expansión.
3° Volver al modo normal:
# telinit 2

* La mayoría recomienda no tener la raíz / dentro del LVM, ya que hay problemas cuando queremos acceder a ella desde algunos Live CDs y además es posible que no puedan desmontarla, en Debian según mi experiencia a la raíz tambien la pone dentro de LVM, claro que se batalla un poco más para desmontarla pero se puede.
* No sugiero que usen LVM para /boot, los gestores de arranque normalmente no entienden de lvm y fallará el arranque. Después de todo /boot tampoco crece tanto durante el tiempo de vida de la máquina.

Su uso en servidores de producción ha sido de utilidad eso de poder quitar y/o poner espacio a particiones, en verdad ayuda y te evita la reinstalación o el pasar trabajo insertando nuevos discos.
Sugiero usarlo encima de un RAID, pues si un PV se daña, puede romperse todo el sistema.

Se me olvidaba, una vez terminado el trabajo con LVM reinician el equipo verán que al cargar el sistema les dice que hará una comprobación del directorio que hayan extendido o al que le hayan quitado espacio, no se preocupen esto es normal, si efectúan la operación de extender el espacio para /root verán que al iniciar el sistema se queda quieto en la comprobación del directorio en cuestión, o que les da un error, no se alarmen tan solo reinicien el equipo y verán que carga sin problemas.

Saludos

Instalacion drivers ATI Radeo 1300 Debian lenny

Estimados (as),

Para los que tengan que instalar los drivers en debian/lenny les envio estos pasos.
Comprobamos que tenemos todas las dependencias necesarias instaladas y creamos los paquetes para nuestra distribución.
> apt-get install module-assistant build-essential fakeroot dh-make debhelper debconf libstdc++5
> chmod +x ./ati-driver-installer-8-10-x86.x86_64.run
> ./ati-driver-installer-8-10-x86.x86_64.run --buildpkg Debian/lenny

Instalamos los paquetes que se han creado en el mismo directorio y los compilamos e instalamos:
> dpkg -i fglrx-kernel*
> dpkg -i fglrx-driver*
> dpkg -i fglrx-amd*
> module-assistant prepare
> module-assistant update
> module-assistant build fglrx
> module-assistant install fglrx

Ahora, ya solo nos falta probar el módulo y configurar el fichero xorg.conf para que nos coja los drivers fglrx:
> depmod -a
> aticonfig –initial (en este paso es cuando se nos configura el xorg.conf)
> reboot

Una vez reiniciado el sistema, ya dispondremos de los drivers con aceleración 3D instalados y configurados en nuestro excelente Lenny. Podemos comprobarlo con:
> fglrxinfo
display: :0.0 screen: 0
OpenGL vendor string: ATI Technologies Inc.
OpenGL renderer string: ATI Mobility Radeon X1300
OpenGL version string: 2.0.6650 (8.39.4)

O hacer pruebas de rendimiento:
> fgl_glxgears

Al momento de escribir esto, esta configuración funcionaba sin problemas con el kernel anterior al 2.6.26-1-686, sin embargo con este nuevo Kernel ya no me deja generar los paquetes para que pueda instalarlos (–buildpkg Debian/lenny), intente usar los paquetes que genere para el kernel 2.6.25 sin embargo me da este error:
dpkg -i fglrx-driver_8.542-1_i386.deb
Seleccionando el paquete fglrx-driver previamente no seleccionado.
(Leyendo la base de datos …
143205 ficheros y directorios instalados actualmente.)
Desempaquetando fglrx-driver (de fglrx-driver_8.542-1_i386.deb) …
mv: no se puede efectuar `stat’ sobre «/usr/lib/libGL.so.1.2»: No existe el fichero o el directorio
dpkg: error al procesar fglrx-driver_8.542-1_i386.deb (–install):
el subproceso pre-installation script devolvió el código de salida de error 1
No hay un desvío para `diversion of /usr/lib/libGL.so.1 to /usr/lib/fglrx/diversions/libGL.so.1 by fglrx-driver’, no se ha eliminado ninguno
No hay un desvío para `diversion of /usr/lib/libGL.so.1.2 to /usr/lib/fglrx/diversions/libGL.so.1.2 by fglrx-driver’, no se ha eliminado ninguno
No hay un desvío para `diversion of /usr/lib/xorg/modules/extensions/libdri.so to /usr/lib/fglrx/diversions/libdri.so by fglrx-driver’, no se ha eliminado ninguno
Se encontraron errores al procesar:
fglrx-driver_8.542-1_i386.deb

No me quedo otra que instalar los fglrx* desde synaptic, al menos hasta que sepa porque este kernel me da error, si alguién sabe algo se lo agradecería para poder tener la aceleración 3d en mi Linux.
Saludos :)

Inicialización de Postresql 8.3 en Debian Lenny

Doy por sentado que ya se instalo Postgresql, este trabajo se ha realizado sobre una distribución Debian/lenny, para Postgresql 8.3., con Kernel 2.6.26-1-686.
Por mucho tiempo estuve teniendo problemas para poder usar esta poderosa BD, por el simple hecho que no sabía que debía inicializarla, pensé que era como mysql que la instalabamos y estaba lista a funcionar, error mío, luego de varias lecturas plasmo acá lo que hice para poder trabajar con esta herramienta.

Inicialización de Postgresql

Ahora tenemos que inicializar y configurar nuestra instalación de PostgreSQL antes de poder empezar a crear nuetra base de datos.

Tenemos creado nuestro usuario “postgres” por defecto sin clave de acceso. Esto significa que la unica manera de convertirse en este usuario es siendo root y utilizando el comando su - postgres.

A continuación nos conectamos como el usuario postgres e inicializamos nuestro “cluster postgresql”.

[bolpiilinux2:/#] mkdir -p /var/pgsql/data
[bolpiilinux2:/#] chown postgres /var/pgsql/data
[bolpiilinux2:/#]# su - postgres

[bolpiilinux2:/#]# /usr/lib/postgresql/8.3/bin/initdb -E utf8 -U postgres -D /var/pgsql/data

The files belonging to this database system will be owned by user “postgres”.
This user must also own the server process.

The database cluster will be initialized with locale en_US.UTF-8.

fixing permissions on existing directory /var/pgsql/data … ok
creating subdirectories … ok
selecting default max_connections … 100
selecting default shared_buffers/max_fsm_pages … 32MB/204800
creating configuration files … ok
creating template1 database in /var/pgsql/data/base/1 … ok
initializing pg_authid … ok
initializing dependencies … ok
creating system views … ok
loading system objects’ descriptions … ok
creating conversions … ok
setting privileges on built-in objects … ok
creating information schema … ok
vacuuming database template1 … ok
copying template1 to template0 … ok
copying template1 to postgres … ok

WARNING: enabling “trust” authentication for local connections
You can change this by editing pg_hba.conf or using the -A option the
next time you run initdb.

Success. You can now start the database server using:

/usr/local/bin/postgres -D /var/pgsql/data
or
/usr/local/bin/pg_ctl -D /var/pgsql/data -l logfile start

Si tenemos nuestro sistema en español (que es mi caso) la salida de lo anterior será:

[bolpiilinux2:/#]# /usr/lib/postgresql/8.3/bin/initdb -E utf8 -U postgres -D /var/pgsql/data
Los archivos de este cluster serán de propiedad del usuario «postgres».
Este usuario también debe ser quien ejecute el proceso servidor.
El cluster será inicializado con configuración local es_BO.UTF-8.
La configuración de búsqueda en texto ha sido definida a «spanish».

corrigiendo permisos en el directorio existente /var/pgsql/data … hecho
creando subdirectorios … hecho
seleccionando el valor para max_connections … 100
seleccionando el valor para shared_buffers/max_fsm_pages … 24MB/153600
creando archivos de configuración … hecho
creando base de datos template1 en /var/pgsql/data/base/1 … hecho
inicializando pg_authid … hecho
inicializando dependencias … hecho
creando las vistas de sistema … hecho
cargando las descripciones de los objetos del sistema … hecho
creando conversiones … hecho
creando directorios … hecho
estableciendo privilegios en objetos predefinidos … hecho
creando el esquema de información … hecho
haciendo vacuum a la base de datos template1 … hecho
copiando template1 a template0 … hecho
copiando template1 a postgres … hecho

ATENCIÓN: activando autentificación «trust» para conexiones locales.
Puede cambiar esto editando pg_hba.conf o usando el parámetro -A
la próxima vez que ejecute initdb.

Completado. Puede iniciar el servidor de bases de datos usando:

/usr/lib/postgresql/8.3/bin/postgres -D /var/pgsql/data
o
/usr/lib/postgresql/8.3/bin/pg_ctl -D /var/pgsql/data -l archivo_de_registro start

Suponemos que vamos a tener todas nuestras bases de datos y ficheros relacionados con postgresql en el directorio /var/pgsql/data.

Mi siguiente paso, ver como podemos configurar/organizar nuestros discos de una mejor manera para conseguir la máxima seguridad y velocidad cuando utilicemos PostgreSQL en sistemas de producción. Tambien, ver como podemos configurar PostgreSQL para sacar el maximo provecho a esta magnifica base de datos, si alguién tiene algún material al respecto agradecería que pudiera compartirlo.

En estos momentos podemos arrancar nuestra base de datos postgresql y empezar a utilizarla sin problemas.

[bolpiilinux2:/#]# /usr/lib/postgresql/8.3/bin/pg_ctl -D /var/pgsql/data -l /var/pgsql/data/postgresql.log start

server starting

Si queremos parar PostgreSQL podemos utilizar el siguiente comando:

[bolpiilinux2:/#]# /usr/lib/postgresql/8.3/bin/pg_ctl -D /var/pgsql/data stop -m fast

waiting for server to shut down…. done
server stopped

Podemos empezar a utilizar la base de datos con el potentisimo cliente por linea de comandos que se instala por defecto, su nombre /usr/local/bin/psql:

[bolpiilinux2:/#]# /usr/local/bin/psql

Bienvenido a psql 8.3.4, la terminal interactiva de PostgreSQL.

Digite: \copyright para ver los términos de distribución
\h para ayuda de órdenes SQL
\? para ayuda de órdenes psql
\g o punto y coma («;») para ejecutar la consulta
\q para salir

postgres=#

Para conseguir una lista de los principales comandos que podeis utilizar en psql para que podais empezar a disfrutar de PostgreSQL, ejecutar el comando \?:

postgres=# \?

Aqui teneis algunos ejemplos de como utilizar este cliente :

postgres=# \l
Listado de base de datos
Nombre | Dueño | Codificación
———–+———-+————–
postgres | postgres | UTF8
template0 | postgres | UTF8
template1 | postgres | UTF8
(3 filas)

postgres=# CREATE DATABASE test001;
CREATE DATABASE

postgres=# \l
Listado de base de datos
Name | Owner | Encoding
———–+———-+———-
postgres | postgres | UTF8
template0 | postgres | UTF8
template1 | postgres | UTF8
test001 | postgres | UTF8
(4 rows)

postgres=# \c test001
Ahora está conectado a la base de datos «test001»..

test001=# CREATE TABLE testing(
id INTEGER NOT NULL,
name TEXT NOT NULL,
PRIMARY KEY (id));

NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index “testing_pkey” for table “testing”
CREATE TABLE

test001=# \d
List de relaciones
Schema | Name | Type | Owner
——–+———+——-+———-
public | testing | table | postgres
(1 row)

test001=# \q

[bolpiilinux2:/#]#

Cualquier aporte bienvenido bigsmile .

Acceso remoto con SFTP a un equipo Linux

Muchas veces cuando uno se inicia en Linux quiere poder acceder a algunos equipos de manera gráfica y no por ssh para poder copiar o ver algun directorio y/o archivo.

Para los que desean hacer esto les envió este pequeño tip.
  • Abrimos nuestro navegador Nautilus y escibimos en éste: sftp://(usuarioremoto)@(ip-remoto) luego enter, nos mostrará una pantalla donde nos pedirá el usuario y password de la otra maquina para poder conectarnos. Aquí lo puedes ver gráficamente:
  • Estoy dando por sentado que ya antes habíamos accedido al equipo mediante SSH, de ser la primera vez que nos conectamos al equipo nos solicitará aceptar la “Identidad del otro equipo”, bastará con aceptar la identidad enviada, obviamente si confiamos en el equipo remoto.
  • Observen que en la primera imagen nos pedirá la contraseña del equipo al que nos vamos a comunicar. Poner atención.. las tres opciones que ofrece:
  1. Olvidar la contraseña inmediatamente (por defecto)
  2. Recordar la contraseña para esta sesión.
  3. Recordar por siempre
Uno decide….
  • Una vez escrita la contraseña nos mostrará la raíz (Directorio /) del otro equipo al que nos conectamos:
  • Ahora tan solo nos queda navegar por la carpeta como si estuviéramos en un equipo local
  • Los permisos que tengamos en este equipo remoto estaran relacionados directamente con el usuario con el que nos conectamos, tenerlo en cuenta.
Existe un pequeño truco si es que no queremos tener que escribir constantemente en la barra de nautilus el sftp://, suponiendo que es un equipo al que constantemente estamos conectados para copiar, en mi caso tengo una conexión constante a una carpeta en un equipo remoto para verificar los backups.
  • Solo es necesario arrastrar a la pestaña izquierda inferior de Nautilus la carpeta a la que deseamos tener acceso rápido, luego de esto uno si gusta puede renombrar la carpeta para poner un nombre que le sugiera algo a uno.
Espero les sea de utilidad esta explicación. Como ven no tiene mayor complejidad y el enlace entre dos máquinas GNU/Linux es muy fácil, adjunto un video para que puedan ver esta función en ejecución.


Si usas KDE puedes usar Konqueror (también corre en Gnome) para acceder graficamente a SFTP con:

fish://usuario@direccion

Gftp tambien permite acceso a SFTP y supongo que Kbear tambien lo hara. En esa misma linea tienes FileZilla,BBMan,.... y bueno, hoy en dia cualquier cliente Ftp que se precie a dado soporte para SFTP por lo que tienes donde escoger, incluso puedes escoger uno escrito en el lenguaje que mas te guste: C,Python,Java,.....

15/1/08

Papito... Cuanto me amas?

El día que mi María José nació, en verdad no sentí gran alegría, porque la decepción que sentía, parecía ser más grande que el gran acontecimiento que representa tener una hija. Yo quería un varón! A los dos días de haber nacido, fui a buscar a mis dos mujeres, una lucía pálida y agotada y la otra radiante y dormilona.

En pocos meses me deje cautivar por la sonrisita de mi María José y por la infinita inocencia de su mirada fija y penetrante, fue entonces cuando empecé a amarla con locura. Su carita, su sonrisita y su mirada no se apartaban ni por un instante de mis pensamientos, todo se lo quería comprar, la miraba en cada niño o niña, hacia planes sobre planes, todo sería para mi María José.

Este relato era contado a menudo por Randolf, el padre de María José y yo también sentía gran afecto por la niña que era la razón mas grande para vivir de Randolf según decía él mismo. Una tarde, estaba mi familia y la de Randolf haciendo un picnic a la orilla de un río cerca de casa y la niña entabló una conversación con su papá, todos escuchábamos:
- Papi... cuando cumpla quince años ¿Cuál será mi regalo?

- Pero mi amor, si apenas tienes diez añitos, ¿No te parece que falta mucho para esa fecha?
- Bueno papito,... tu siempre dices que el tiempo pasa volando, aunque yo nunca lo he visto por aquí.

La conversa ión se extendía y todos participamos de ella. Al caer el sol regresamos a nuestras casas. Una mañana me encontré con Randolf enfrente del colegio donde estudiaba María José, quien ya tenía catorce años. Randolf se veía muy contento y la sonrisa no se apartaba de su rostro. Con gran orgullo me mostraba las calificaciones de María José, eran notas impresionantes, ninguna bajaba de diez puntos y los estímulos que le habían escrito sus profesores eran realmente conmovedores, felicité al dichoso papá.

María José ocupaba toda la alegría de la casa, en la mente y en el corazón de la familia, especialmente en el de su papá. Fue un Domingo muy temprano cuando nos dirigíamos a misa, cuando María José tropezó con algo, eso creíamos todos y dio un traspié, su papá la agarró de inmediato para que no cayera... Ya instalados en la Iglesia, vimos como María José fue cayendo lentamente sobre el banco y casi perdió el conocimiento.

La tomamos en brazos, mientras su papá buscaba un taxi hacia el hospital. Allí permaneció por diez días y fue entonces cuando le informaron que su hija padecía una grave enfermedad que afectaba seriamente su corazón, pero no era algo definitivo, que deberían practicarle otras pruebas para dar un diagnóstico firme.

Los días iban pasando, Randolf renunció a su trabajo para dedicarse al cuidado de María José, su madre quería hacerlo pero decidieron que ella trabajaría, pues sus ingresos eran superiores a los de él. Una mañana Randolf se encontraba al lado de su hija, cuando ella le preguntó:

- Voy a morir, no es cierto? Te lo dijeron los doctores?
- No mi amor... no vas a morir, Dios que es tan grande, no permitiría que pierda lo que más he amado sobre este mundo, respondió el padre.

- Las personas cuando mueren van a algún lugar? Pueden ver desde lo alto a su familia? Sabes si pueden volver?

- Bueno hija... en verdad nadie ha regresado de allá a contar algo sobre eso pero si yo muriera, no te dejaría sola, estando en el más allá buscaría la manera de comunicarme contigo, en última instancia utilizaría el viento para venir a verte.

- Al viento? Y como lo harías?

- No tengo la menor idea hijita, solo sé que si algún día muero, sentirás que estoy contigo, cuando un suave viento roce tu cara y una brisa fresca bese tus mejillas.

Ese mismo día por la tarde, llamaron a Randolf, el asunto era grave, su hija estaba muriendo. Necesitaban un corazón, pues el de ella no resistiría sino unos quince o veinte días más.

¡UN CORAZON! ¿Dónde hallar un corazón? ¿Lo venderían en la farmacia acaso, en el supermercado o en una de esas grandes tiendas que propagan por radio y televisión? ¡Un corazón! ¿Dónde Dios mío?
Ese mismo mes, María José cumpliría sus quince años. Y fue el viernes por la tarde cuando consiguieron un donante, una esperanza iluminó los ojos de todos, las cosas iban a cambiar. El Domingo por la tarde ya María José estaba operada, todo salió como los médicos lo habían planeado.

¡Éxito total! Sin embargo, Randolf todavía no había vuelto por el hospital y María José lo extrañaba muchísimo, su mamá le decía que ya todo estaba muy bien y que su papito sería el que trabajaría para sostener la familia.

María José permaneció en el hospital por quince días que más, los médicos no habían querido dejarla ir hasta que su corazón estuviera firme y fuerte y así lo hicieron. Al llegar a casa todos se sentaron en un enorme sofá y su mamá con los ojos llenos de lagrimas le entrego una carta de su padre:

"María José, hijita de mi corazón: Al momento de leer mi carta, ya debes tener quince años y un corazón fuerte latiendo en tu pecho, esa fue la promesa que me hicieron los médicos que te operaron. No puedes imaginarte ni remotamente cuanto lamento no estar a tu lado en este instante. Cuando supe que ibas a morir, decidí dar respuesta a una pregunta que me hiciste cuando tenias diez añitos y a la cual no respondí. Decidí hacerte el regalo más hermoso que nadie jamás haría por ti hija mía... Te regalo mi vida entera sin condición alguna, para que hagas con ella lo que quieras. ¡¡Vive hija!! ¡¡Te amo con todo mi corazón!!"

María José lloró todo el día y toda la noche. Al día siguiente fue al cementerio y se sentó sobre la tumba de su papá; lloró como nadie lo ha hecho y susurró: "Papi... ahora puedo comprender cuanto me amabas, yo también te amaba y aunque nunca te lo dije, ahora comprendo la importancia de decir "Te Amo" y te pediría perdón por haber guardado silencio tantas veces".

En ese instante las copas de los árboles se mecieron suavemente, cayeron algunas hojas y florecillas, y una suave brisa rozó las mejillas de María José, alzó la mirada al cielo, intento secar las lágrimas de su rostro, se levantó y emprendió regreso a su hogar.

Colaboración: Kike Orbegoso

Una Lección de Informática - Cómo instalar el amor?

CLIENTE: Estoy llamando al departamento de Atención a Clientes?

EMPLEADO:Así es. Buenos días. En qué puedo ayudarle?

CLIENTE: Estuve revisando mi equipo y encontré un sistema que se llama AMOR pero no funciona. Me puede ayudar con eso?

EMPLEADO: Seguro que si. Pero yo no puedo instalárselo;
tendrá que instalarlo usted mismo, yo lo oriento por teléfono, le parece?

CLIENTE:: Si, puedo intentarlo. No se mucho de estas cosas, pero creo que estoy listo para instalarlo ahora. Por donde empiezo

EMPLEADO: El primer paso es abrir tu CORAZÓN. Ya lo localizaste?

CLIENTE: Si, ya. Pero hay varios programas ejecutándose en este momento? No hay problema para instalar mientras siguen ejecutándose?

EMPLEADO: Cuáles son esos programas?

CLIENTE: Déjame ver... Tengo DOLORPASADO.EXE, BAJAESTIMA.EXE, CORAJE.EXE y RESENTIMIENTO.COM ejecutándose en este momento.

EMPLEADO: No hay problema. AMOR borrará automáticamente DOLORPASADO.EXE de tu sistema operativo actual. Puede que se quede grabado en tu memoria permanente, pero ya no afectará otros programas. AMOR eventualmente reemplazara BAJAESTIMA.EXE con un módulo propietario del sistema llamado ALTAESTIMA.EXE. Sin embargo, tienes que apagar completamente los programas CORAJE.EXE y RESENTIMIENTO.COM. Estos programas evitan que AMOR se instale adecuadamente. Los puedes apagar?

CLIENTE: No se como apagarlos. Me puedes decir cómo?

EMPLEADO: Con gusto. Ve al menú INICIO e invoca PERDON.EXE. Ejecútalo tantas veces como sea necesario hasta que CORAJE.EXE y RESENTIMIENTO.COM hayan sido borrados completamente.

CLIENTE: Ok... listo. AMOR ha empezado a instalarse automáticamente. Es esto normal?

EMPLEADO: Si. En breve recibirás un mensaje que dice que AMOR estará activo mientras CORAZÓN este vigente. Puedes ver ese mensaje?

CLIENTE: Si, si lo veo. Ya se terminó la instalación?

EMPLEADO: Si, pero recuerda que solo tienes el programa base. Necesitas empezar a conectarte con otros CORAZONES para poder recibir actualizaciones.

CLIENTE: Oh, oh... Ya me apareció un mensaje de error. Qué hago?

EMPLEADO: Qué dice el mensaje de error?

CLIENTE: Dice "ERROR 412 - PROGRAMA NO ACTIVO EN COMPONENTES INTERNOS". Qué significa eso?

EMPLEADO: No te preocupes, ese es un problema común. Significa que AMOR está configurado para ejecutarse en CORAZONES externos, pero no ha sido ejecutado en tu CORAZÓN. Es una de esas cosas técnicas complicadas de
la programación, pero en términos no técnicos significa que tienes que "AMAR" tu propio equipo antes de poder "AMAR" a otros.

CLIENTE: Entonces, qué hago?

EMPLEADO: Puedes localizar el directorio llamado "AUTO ACEPTACIÓN"?

CLIENTE: Si, aquí lo tengo.

EMPLEADO: Excelente, aprendes rápido

CLIENTE: Gracias.

EMPLEADO: De nada. Haz "clic" en los siguientes archivos para copiarlos al directorio MICORAZON: AUTOPERDON.DOC, AUTOESTIMA.TXT, VALOR.INF y REALIZACION.HTM. El sistema reemplazara cualquier archivo que haga conflicto y entrará en un modo de reparación para cualquier programa dañado. También, debes eliminar AUTOCRITICA.EXE de todos los directorios ,y después borrar todos Los archivos temporales y la papelera de reciclaje, para asegurar que se borre completamente y nunca se active.

CLIENTE: Entendido. Hey! Mi CORAZÓN se está llenando con unos archivos muy bonitos. SONRISA.MPG se está desplegando en mi monitor e indica que CALOR.COM, PAZ.EXE y FELICIDAD.COM se está replicando en todo mi CORAZON.

EMPLEADO: Eso indica que AMOR está instalado y ejecutándose. Ya lo puedes manejar de aquí. Una cosa mas antes de irme...

CLIENTE: Si?

EMPLEADO: AMOR es un software sin costo. Asegúrate de dárselo, junto con sus diferentes módulos, a todos los que conozcas y te encuentres.

EJECUTA TU PROGRAMA "CORAZON"

Fuente "http://www.deperu.com/curiosidades/historias.htm#Una_Lección_de_Informática_-_Cómo_instalar_el_amor"

14/1/08

HE AQUÍ QUE TÚ ESTAS SOLA Y QUE ESTOY SOLO...

He aquí que tú estás sola y que estoy solo.
Haces tus cosas diariamente y piensas
y yo pienso y recuerdo y estoy solo.
A la misma hora nos recordamos algo
y nos sufrimos. Como una droga mía y tuya
somos, y una locura celular nos recorre
y una sangre rebelde y sin cansancio.
Se me va a hacer llagas este cuerpo solo,
se me caerá la carne trozo a trozo.
Esto es lejía y muerte.
El corrosivo estar, el malestar
muriendo es nuestra muerte.

Ya no sé dónde estás. Yo ya he olvidado
quién eres, dónde estás, cómo te llamas.
Yo soy sólo una parte, sólo un brazo,
una mitad apenas, sólo un brazo.
Te recuerdo en mi boca y en mis manos.
Con mi lengua y mis ojos y mis manos
te sé, sabes a amor, a dulce amor, a carne,
a siembra , a flor, hueles a amor, a ti,
hueles a sal, sabes a sal, amor y a mí.
En mis labios te sé, te reconozco,
y giras y eres y miras incansable
y toda tú me suenas
dentro del corazón como mi sangre.
Te digo que estoy solo y que me faltas.
Nos faltamos, amor, y nos morimos
y nada haremos ya sino morirnos.
Esto lo sé, amor, esto sabemos.
Hoy y mañana, así, y cuando estemos
en nuestros brazos simples y cansados,
me faltarás, amor, nos faltaremos.

autor Jaime Sabines

9/1/08

El calentamiento Global sus efectos en Bolivia


Hace unos meses tuve la oportunidad de poder conocer Chacaltaya, situada a aproximadamente 30 km de la ciudad de La Paz se encuentra el nevado Chacaltaya, la pista de esquí más alta del mundo. Este nevado tiene una altura de 5.580 metros. en el lugar se encuentra un Laboratorio de Física Cósmica a cargo de la Universidad Mayor de San Andrés de La Paz.
Creí poder encontrar una pista de esquí como las que uno ve en las películas, con un paisaje totalmente blanco, sin embargo grande fue mi sorpresa al constatar que la pista de esquí apenas si tenía nieve, la foto que ustedes aprecian en este blog les muestra la pista de esqui que encontré.
Al platicar con nuestra guía ella nos comentaba que la pista de esquí tan solo tiene nieve por algunos meses al año, sin embargo debido al calentamiento global este hermoso lugar está condenado a desaparecer, es una lástima que nosotros como ciudadanos de este planeta no veamos que directamente o indirectamente lo estamos afectando, creando un desequilibrio en la naturaleza con las consecuencia ya conocidas.
Ese viaje me hizo pensar y reflexionar que tuve la suerte de conocer una parte de lo que este lugar fue alguna vez, un lugar que tal vez generaciones futuras tan solo podrán ver en fotografías o leer, porque este nevado está desapareciendo.

Mira #AntesQueSeaTarde completo

Echa un vistazo al Tweet de @NatGeo_la: https://twitter.com/NatGeo_la/status/792908992661950464?s=09