miércoles, 8 de abril de 2015

Para qué sirve el comando "source"

Primero que nada, hace muchísimo que no escribía en el blog!

Hoy he descubierto una herramienta nueva para el quehacer de cada día: SOURCE

Si uno busca en el man de su GNU Linux preferido, se dará cuenta que no existe una entrada para éste comando.


Esto es porque source es un comando interno (o built-in) de bash.

Básicamente source <archivo> ejecuta el archivo <archivo> línea por línea en la consola.
"¡Pero oye Miguel, eso ya se podia hacer sin el sourcce!"
Exacto, si nuestro script se encuentra guardado en alguna ubicación dentro del $PATH, podemos ejecutar el <archivo> directamente así:


o así (si nuestro script NO esta en el path):


Utilizando SOURCE sería de esta menera:



A simple vista SOURCE no difiere en absoluto a ejecutar de forma convencional un script...
...La diferencia esta en los pequeños detalles...
El único detalle es que usando SOURCE, el script se ejecutará en la consola actual (mismo proceso) y una vez que retorne, los cambios que se hicieron a las variables de entorno se mantendrán.

Recordemos como se ejecuta un script de la forma convencional: Se produce un fork del proceso init y se le asigna un PID. Se ejecuta todo el script y "retorna", osea devuelve un valor. El proceso muere y volvemos al proceso que lo invocó (la shell). Bajo estas condiciones, cualquier cambio que se realice a las variables de entorno se perderá cuando finalice el proceso.

Ejemplo:

Téngase en consideración el siguiente script, al cual llamaremos dimeTu_PID.sh:
Nota: Recordar darle permisos para ejecución!


Ahora lo ejecutaremos de ambas maneras:


Los resultados están a la vista: Utilizando SOURCE, estamos haciendo uso del mismo proceso que lo invocó, en cambio al usar "./dimeTu_PID.sh" se crea un proceso diferente y se destruye a su finalización.


viernes, 21 de diciembre de 2012

Pantalla negra en Internet Explorer 9 (IE9)

Es un fallo mas o menos común que se presenta después de actualizar a IE9.

Esto se soluciona de la siguiente manera:

Ir a Herramientas > Opciones de Internet > Opciones avanzadas > Restablecer
Tildar la checkbox "Eliminar configuración personal" y hacer click en Restablecer.

Adicionalmente si estamos ejecutando en una maquina virtual de vmware (version 8 o superior) debemos desactivar la aceleración de video de la vm.
Esto se hace apagando la vm, luego vamos a vm > settings > display y destildamos el checkbox "Accelerated 3d graphics".

viernes, 23 de noviembre de 2012

poniendo a punto apache2 (VirtualHosts) en 2 minutos con ubuntu

Para ponerse a trabajar rápidamente en un apache en localhost, vamos a crear un host virtual y de paso lo dejamos configurado para cualquier otro sitio de pruebas que vallamos a necesitar.

primero instalamos apache

sudo apt-get install apache2

después activamos mod_rewrite:

sudo a2enmod rewrite

Luego editamos el archivo /etc/apache2/sites-enabled/000-default y cambiamos las siguientes lineas:

AllowOverride all


Finalmente el archivo nos debería quedar así:

<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride all
Order allow,deny
allow from all
</Directory>


A continuación tenemos que agregar en /etc/hosts un alias para localhost,
así directamente ponemos el dominio de nuestro sitio para probar:

localhost    www.mi-sitio-de-pruebas.com

Ahora crearemos el host virtual, para eso editamos  
/etc/apache2/httpd.conf, ahí vamos a agregar esto:

<VirtualHost *:80>
        ServerName http://www.mi-sitio-de-pruebas.com
        DocumentRoot /var/www/mi-sitio-de-pruebas/
</VirtualHost>


finalmente reiniciamos el servicio para que impacten los cambios:

sudo /etc/init.d/apache2 restart

Ahora podemos dirigir nuestro navegador a http://www.mi-sitio-de-pruebas.com y veremos nuestro sitio local.





martes, 13 de noviembre de 2012

instalar ie8 en ubuntu 12.04 (precise)

Aclaración: Este tema no significa que sea necesario para cualquier usuario mortal tener instalado ie9 en su computadora de todos los días, o que los otros navegadores (más confiables y más estables) no sirvan. Esta información es para compartirla y al que le sirva bien por él.

Requisitos: paquetes de wine y winetricks.

Lo primero es hacer limpieza, si ya teníamos una instalación de winetricks que andaba mal o de wine, o no es la ultima versión vamos a hacer lo siguiente:

borrar la instalación previa de wine y winetricks

sudo apt-get remove --purge wine winetricks

nos dirigimos a nuestra carpeta home y borramos los archivos ocultos ".wine" y ".winetricks".


rm -r $HOME/.wine*

agregamos el repositorio de wine (para tener la ultima versión)

sudo add-apt-repository ppa:ubuntu-wine/ppa

actualizamos la lista de paquetes para que tome el nuevo repositorio

sudo apt-get update

instalamos wine y winetricks

sudo apt-get install wine winetricks

instalamos ie8

winetricks ie8

se descargara automáticamente

finalmente lo ejecutamos en la consola con:

 wine 'C:\Program Files (x86)\Internet Explorer\iexplore'

EOD

jueves, 13 de septiembre de 2012

Usando Blogger desde Android

Esta vez me he topado con una interesante aplicacion para vuestros dispositivos android, se trata de *Bloggeroid*.
Esta sencilla app no tiene demasiados lujos, pero "hace el trabajo"; en otras palabras, tiene algunas funcionalidades limitadas (como el soporte para editar entradas antiguas), pero al ser sencillo gana en usabilidad y rapidez.
Soporta escribir posts y guardarlos en la tarjeta sd para publicarlos mas tarde, imagenes y soporte para tags html... todo un lujo para una terminal movil!
Sin ir mas lejos, la prueba ha sido descargar la aplicacion desde google play y escribir este post. En menos de un minuto ya habia iniciado sesion y estaba redactando.
Muy recomendado, pruebenlo y despues me cuentan : ]

miércoles, 29 de agosto de 2012

Complementos Útiles para Firefox: WAB

Un complemento mas que interesante para Firefox.
Se llama WAB o "Webmail Ad Blocker". Sirve para bloquear las propagandas que aparecen a la derecha de la pantalla en Gmail, Yahoo Mail y Hotmail, dándote mas espacio para el mensaje.
Apenas lo probé sentí el cambio bastante... nunca vi la pantalla tan limpia!
sino miren esta captura de Gmail:



Muy recomendado!!
Aquí dejo el link: webmail-ad-blocker

Vulnerabilidad descubierta en Java JRE 1.7, como volver a la version segura.

A raíz de la noticia vista aquí sobre la vulnerabilidad descubierta en java jdk, me he tomado unos minutos para desinstalar java 1.7 y volver a la versión 1.6.

En pocas palabras la vulnerabilidad es un troyano oculto en el código. Esto afecta a las versiones de Java Runtime Environment (JRE) 1.7 o posteriores.

para comprobar la versión que tenemos instalada podemos abrir una consola y poner:

usuario@host:~$ java -showversion

luego vamos al gestor de paquetes y quitamos (en mi caso) openjdk-7-jdk
El gestor de paquetes desinstalara automáticamente los siguientes paquetes dependencias:

Quitó los paquetes siguientes:
icedtea-7-jre-cacao
icedtea-7-jre-jamvm
openjdk-7-jdk
openjdk-7-jre
openjdk-7-jre-headless
openjdk-7-jre-lib
Finalmente instalaremos  el paquete default-jre
Las siguientes dependencias se instalaran automáticamente:

Instaló los siguientes paquetes:
default-jre (1:1.6-43ubuntu2)
default-jre-headless (1:1.6-43ubuntu2)
icedtea-6-jre-cacao (6b24-1.11.3-1ubuntu0.12.04.1)
icedtea-6-jre-jamvm (6b24-1.11.3-1ubuntu0.12.04.1)
icedtea-netx (1.2-2ubuntu1.1)
icedtea-netx-common (1.2-2ubuntu1.1)
openjdk-6-jre (6b24-1.11.3-1ubuntu0.12.04.1)
openjdk-6-jre-headless (6b24-1.11.3-1ubuntu0.12.04.1)
openjdk-6-jre-lib (6b24-1.11.3-1ubuntu0.12.04.1)

 Para comprobarlo revisaremos nuevamente la versión con:

edgardo@emarti:~$ java -showversion
java version "1.6.0_24"

 Saludos y espero que le sirva a alguien!