Oct 31 2012

Montar la tarjeta SD externa del Samsung Galaxy S3 como USB Mass Storage

Gabolonte Blasfemus

Normalmente, un teléfono Android tiene dos tipos de memorias: La interna del teléfono y la disponible a través de la tarjeta microSD que le hayamos insertado en su correspondiente slot. Esta arquitectura es bastante recurrente en otras plataformas de smartphones e incluso en featurephones (un término que ya se escucha poco pero se usa para referenciar a celulares no-smartphones con funciones extra como reproductor de música, cámara… etc), y solo basta recordar como Windows Mobile también disponía de un almacenamiento principal interno donde también residía el sistema operativo y una ruta de directorio bajo la cual se podía acceder además al almacenamiento de la tarjeta SD. La particularidad en Android es que la disposición habitual para esta última es siempre a través de la inamovible ruta /sdcard y que, al menos en la mayoría de los dispositivos, es prácticamente imprescindible contar con una, ya que muchas aplicaciones esperan poder almacenar directamente ahí sus archivos de trabajo y datos del usuario.

Por ejemplo, en mi Motorola Milestone 2 contaba con 8 GB de memoria interna, de la cual no podía utilizar toda ya que en la misma reside también el sistema operativo, pero sí me servía para instalar aplicaciones. De hecho se me daba una situación inusual para un usuario de Android: La mayoría llega a tener problemas de espacio con la memoria interna del dispositivo (algunos traen muy poca y no todas las aplicaciones soportan APP2SD, aunque existe un truco para eso) mientras que tienen espacio de sobra en la SD; yo en cambio trataba de mover siempre todas mis aplicaciones a la memoria principal, ya que los 8 GB de mi microSD estaban mayormente ocupados por mi colección de música y en cambio jamás logré llenar los 8 GB del teléfono.

Continue reading


Oct 29 2012

Cómo ejecutar un proceso al inicio o como servicio en Ubuntu/Linux

Gabolonte Blasfemus

Hace algún tiempo en el post Reconexión automática a VPN en Ubuntu Linux un lector llamado Alejo me consultaba sobre la posibilidad de hacer que el script que se trataba corriese como un demonio o servicio, de manera tal de no tener que preocuparse de ejecutarlo manualmente cada vez. Vamos entonces a ver cuáles son nuestras opciones.

Opción 1: Ejecutar un proceso como demonio o servicio en Linux

Esto es lo que Alejo pedía exactamente, y posiblemente lo más difícil de conseguir. El equivalente de los servicios en Windows, conocidos como demonios en el mundo *nix,  se maneja tradicionalmente a través del proceso Init, heredado del viejo Unix. Pero este sistema con tantos años detrás tenía sus limitaciones, y entonces varias opciones nuevas y más funcionales surgieron. Una de ellas es Upstart, creada originalmente para Ubuntu, pero hoy en día presente en varias distros, ya sea como el reemplazo por defecto del viejo Init o como un opcional.

Continue reading


Oct 23 2012

EL truco para ganar espacio en la memoria de un Android sin root

Gabolonte Blasfemus

Uno siempre tiene que ser humilde porque nunca sabe por dónde se puede enterar de una de esas perlas que te hacen el día. Me acuerdo que una vez, de casualidad, descubrí lo que era el DDNS porque encontré el instalador del cliente de No-IP en una carpeta de la máquina de un amigo que no era para nada geek. Él no sabía qué era, y yo en ese momento menos; pero me lo copié y lo probé tranquilo en casa.

En Android existe un problema ya conocido de otras plataformas de smartphones: Existe una memoria principal que viene incorporada en el teléfono y contiene al sistema operativo, y otra secundaria, generalmente externa, que suele ser una tarjeta SD o sus versiones micro, aunque también puede estar incluida internamente, aunque a nivel acceso se sigue comportando como un almacenamiento “de afuera”. Pero en el androide verde se complica un poco más la cosa, ya que en un principio no se contemplaba que se pudiesen instalar aplicaciones en otra zona que no fuese en la memoria interna del dispositivo; y para peor, es obvio que los modelos más económicos  vienen con una capacidad mucho más modesta de memoria en general. Esto nos dejaba en la situación de teléfonos con 128 MB de almacenamiento interno que se llenaban rápidamente al instalar una decena de aplicaciones, mientras que aunque se le colocara una SD de 8 GB, sólo se la podría aprovechar para almacenar archivos de usuario como música, imágenes, videos o documentos.

Continue reading


Oct 22 2012

VMware deja de andar luego de actualizar a Ubuntu 12.10

Gabolonte Blasfemus

No es extraño encontrarse frecuentemente con que los productos de VMware para escritorio, como Workstation y Player, sufran problemas de compatibilidad con los kernels Linux más recientes. Algunas veces se resuelve instalando la última versión e.x.p (que son betas de la próxima versión estable por venir), pero en esta ocasión no es posible solucionarlo de esta manera, y el problema se da al pasar al nuevo kernel 3.5.x que usa, por ejemplo, el nuevo Ubuntu 12.10 Quantal Quetzal; cuando abrimos VMware Workstation 9 ó VMware Player 5 (últimas versiones disponibles de ambos productos al momento de escribir esto) todo parece ir bien, pero al intentar encender una máquina virtual nos vamos a encontrar con el siguiente mensaje de error:

“Unable to change virtual machine power state: Failed to power on ‘ruta-de-máquina-virtual‘.Transport (VMDB) error -14: Pipe connection has been broken.”

Este problema se debe a cambios introducidos en la versión 3.5 del kernel Linux para los cuales estos productos aún no están preparados para funcionar. Afortunadamente existe una solución si no queremos quedarnos sin máquinas virtuales en nuestra distro Linux hasta que aparezcan nuevas versiones de estos productos, ya que uno de los miembros de su comunidad de usuarios identificado como An_tony es el autor de un parche, basado en otro creado por Artem S. Tashkinov, que restituye el normal funcionamiento de VMware Workstation 9 y VMware Player 5 bajo el kernel Linux 3.5.x. Para aplicarlo debemos bajar y descomprimir el archivo vmware9_kernel35_patch.tar.bz2 (click para descargar) en nuestro equipo. Al hacerlo nos encontraremos con dos archivos: vmware3.5.patchpatch-modules_3.5.0.sh. Este último es el que deberemos ejecutar, bajo derechos de superusuario por supuesto, para aplicar este parche de software a VMware. La forma más segura y a prueba de posibles errores que puedan salir es la siguiente:

Parándonos con la terminal en la ruta donde descomprimimos los dos archivos, primero nos aseguramos que el archivo patch-modules_3.5.0.sh posea derechos de ejecución en el sistema.

chmod +x patch-modules_3.5.0.sh

Antes de ejecutarlo, eliminamos todos los módulos de VMware presentes en el kernel actual, ya que pueden traer problemas a la hora de aplicar el parche.

sudo rm /lib/modules/$(uname -r)/misc/vm*

Luego reiniciamos el sistema, y finalmente ejecutamos el parche, siempre con derechos de superusuario:

sudo ./patch-modules_3.5.0.sh

Veremos unos cuantos mensajes en la consola y una vez finalizado leeremos el mensaje “All done, you can now run …” más el nombre del producto VMWare que encontró y parcheó en nuestra máquina. Luego de esto deberíamos poder correr nuestras máquinas virtuales sin problemas.

Por supuesto, en estos casos la famosa máxima your mileage may vary es más válida que nunca y puede que por algún motivo no funcione o incluso terminar con un kernel panic. Nunca está de más recordar que cada uno es responsable de lo que hace en su sistema.

El parche en sí, que se encuentra en el archivo vmware3.5.patch, está en código fuente, por lo que cualquiera con los conocimientos suficientes puede revisarlo para asegurarse que solo haga lo que dice hacer.


Oct 16 2012

Revoluciones desde abajo

Gabolonte Blasfemus

“…y ésta es la extensión de mi miembro viril…”

Los 70’s fueron indiscutidamente una época revolucionaria, no sólo en temas políticos y morales, sino también tecnológicos. En esos tiempos, las computadoras ya existían, pero costaban fortunas y sólo una compañía importante podía permitirse el poseer una. Esto comenzó a cambiar cuando unos cuantos jóvenes inquietos crearon, gracias a los recientes avances en microprocesadores de la época, sus propias microcomputadoras, el germen de lo que luego se llamó, genéricamente, la computadora personal.

Este fue el David que venció de una pedrada al Goliat de los mainframes, e incluso así se lo imaginaba el mismo Steve Jobs cuando comparaba a Apple con IBM (como se retrató en Pirates of Silicon Valley, película que si aún no viste te aconsejo encarecidamente que corras y lo hagas). Las PCs eran mucho más básicas y lentas que los poderosos sistemas de cómputo de IBM, pero no importaba: Eran mucho más asequibles y se rompía la regla de una computadora por empresa, ahora podía ser una computadora por persona.

Continue reading