martes, 15 de julio de 2014

Reciclando Hardware con Open Source


Hace unos meses me regalaron un antiguo computador de escritorio, un HP Compaq dc7700.

Un modelo que fue una estrella en las oficinas de Chile hace unos cuantos años, buen rendimiento en poco espacio, con un procesador Intel Pentium D y 1,5GB de memoria ram DDR2. Era lo suficientemente rápido para correr MS Windows XP y MS Office sin problemas en sus mejores tiempos.

Cuando lo encendí por primera vez fue una real pesadilla, se pegaba hasta el mouse, lag para responder y eso que no había iniciado ningún programa todavía. Lo integré a la familia porque en ese tiempo estaba buscando un computador similar para montar un servidor casero para desarrollar mis páginas web, así que lo primero a hacer era saber que piezas tenía -que procesador y cuanta ram en realidad- para saber de que podría ser capaz.



Etapa 1 - Migrar a LINUX, Debian 7 DevServer

Desde mis inicios en Linux siempre he usado distribuciones basadas en Debian o Debian mismo, principalmente por estabilidad. Esta vez no iba a ser la excepción e instalé directamente Debian 7.

El objetivo era tener una máquina real para realizar mis desarrollos web basados en Drupal. Antes siempre había virtualizado Debian en VirtualBox en Windows u OS X. A pesar de ser un equipo ya con bastantes años y con debian como servidor sin interfaz gráfica, volaba.

Lo primero después de terminar la instalación fue instalar los servicios básicos que necesitaba para poder hacer los desarrollos en Drupal 7:
  1. Seguir un par de guías para instalar PHP 5.3 en Debian 7
  2. Instalar Apache2
  3. Instalar Mysql-Server
  4. Instalar Php-Myadmin
  5. Instalar SSH (para administración remota)
Todo bien, la configuración por defecto con 128MB para PHP es bastante similar a lo que obtendría en un shared hosting, así que deje la configuración por default que con este hardware tiene un rendimiento similar al shared hosting de MediaTemple(guardando las promociones). La configuración default me sirve para no tener diferencias con la mayoría de los servidores web estándar con los que me ha tocado interactuar, algunos con cPanel otros Plesk, sabores de WebAdmin hay muchos pero los recursos que destinan a Apache y MySql no distan tanto unos de otros.

Estuvo un par de meses funcionando de esta forma pero sentía que se estaba desperdiciando potencial de la máquina solo con servicios web habilitados, por lo que procedí a instalar la interfaz gráfica e instalar XBMC para convertirlo en un centro multimedia conectado a la TV y poder descargar y ver de ahí streaming vía web, netflix, etc. Sin embargo Debian debido a sus políticas no usa paquetes muy nuevos y eso afectó el encontrar drivers para la tarjeta de video, ya que los drivers por defecto no tienen muy buen rendimiento con video en HD vía web streaming y los paquetes necesarios para ver netflix estaban para ubuntu. Por lo que era necesario cambiar de distribución para lograr el objetivo.

Etapa 2: Ubuntu 14.04 + Extras


En mis inicios con Linux probé Debian(2.2),  al tiempo después probé Ubuntu (4.04). Ya en ese tiempo era un cambio tremendo en cuanto a facilidad de uso pasar de debían a ubuntu, 10 años después esa diferencia es abismal. Debian es mucho más fácil de usar que antes para escritorio, sin embargo Ubuntu es increíblemente más amigable; es casi instalar y usar. Tiene un administrador de aplicaciones a lo más Apple con su AppStore, con software libre y de pago, si necesitas un programa con 2 clicks lo instalas, te olvidas de dependencias y demases, lo que no esta ahí lo puedes agregar vía repositorios PPA que no pueden ser más simples de agregar gracias a esta maravillosa herramienta que han desarrollado para esta distribución.

Sin embargo mis objetivos para esta máquina habían cambiado desde el paso de Debian a Ubuntu, ahora lo quería como centro multimedia, convencido de que el hardware podría realizar tal hazaña gracias a el buen manejo de recursos de Ubuntu y drives actualizados.

Para lograr el objetivo:
  1. Agregar el repositorio de Intel para tener drivers actualizados y así obtener mejor rendimiento de video y chipset que era todo intel.
  2. Agregar repositorios vía PPA para poder ver Netflix en ubuntu, gracias a Pipelight y WINE la magia fue posible.
  3. Agregar una configuración de video personalizada a XRandR ya que no tomo la resolución nativa de mi TV.
  4. Comprar una Wifi USB (previa investigación de chipsets con drivers en ubuntu) para poder ubicar el computador en cualquier lugar.
  5. Instalar XBMC en Ubuntu y habilitar servidor para control remoto (usando iPhone o iPad como control remoto vía WIFI)
Después de algunas horas configurando el equipo, instalando paquetes y demás logré convertir ese hardware que peleaba con poder funcionar con windows a un computador que vuela y no se queda corto de recursos para su nueva tarea, ser un centro multimedia. Sin duda una experiencia gratificante, ya no tengo que estar enchufando el notebook a la TV ya que tengo un pc permanentemente conectado para satisfacer ese tipo de necesidades y uso mi celular como control remoto para XBMC(reconoce subtítulos).

Si tienen una máquina antigua corriendo Windows a tirones, prueben darle nueva vida con Ubuntu. Hasta el momento cada vez que lo he probado ese cambio he tenido buenas experiencias. Al principio parece complicado debido a que los mitos dicen que en Linux es todo difícil, sin embargo esto ha cambiado mucho y Ubuntu a contribuido mucho a esto.