Posteado por: Rafa | agosto 18, 2008

Hardware de bajo coste, una nueva era

El futuro de la computación: una verdad incompleta.

No hace mucho un profesor nos pedía en clase que investigásemos sobre el futuro de la computación. Recuerdo que algunos de mis compañeros investigaron sobre tecnologías como la computación cuántica. En una línea digamos…más actual surgieron propuestas como los sistemas multiprocesador, procesadores multinúcleo y clusters de computadoras.

También recuerdo que el profesor preguntó: ¿Por qué querría un usuario medio un quad-core?¿No le es suficiente un procesador Celeron para sus aplicaciones ofimáticas? Bueno, si ese usuario medio quiere funcionar bajo Windows Vista o jugar a los últimos juegos, quizás necesita algo más que un procesador Celeron. Pero hay otra razón más fuerte: ¿por qué compar un procesador Celeron 1.8Ghz que a día de hoy cuesta unos 33 euros, si puedes conseguir un procesador Dual Core 1.8Ghz por alrededor de 50 euros?

Ahora creo que mis compañeros y yo mismo estábamos ofreciendo una solución incompleta. Sólo teníamos en mente el futuro de la computación de alto rendimiento…

Hardware para una nueva era.

En el futuro de la computación se debería tener en cuenta cuestiones como la computación ubicua, nuevas necesidades de los usuarios como pueden ser bajo coste, eficiencia energética, baja emisión de ruido, baja temperatura, movilidad, y posibilidad de empotrar sistemas de procesamiento dentro de diferentes máquinas, electrodomésticos, aparatos, etc.

Desde hace ya tiempo, se vienen desarrollando nuevos formatos de placas con CPUs como pueden ser Mini-ITX, Micro-ITX y Nano-ITX, etc. , Pero también ordenadores de bajo coste como EEPC de Asus, o el famoso OLPC.

Formatos de placas

Formatos de placas más comunes

Y es que ya estamos en una nueva era, ya no hace falta realizar un diseño hardware y una costosa implementación, ahora simplemente podemos comprar una pequeña unidad de procesamiento y mediante programación (probablemente incluso ya existe el software que necesitamos), conseguir el sistema deseado. Routers, multitud de servidores, centros multimedia para el hogar, son sólo algunos ejemplos. Seguro que muchos de vosotros ya habíais conseguido sistemas de este tipo reciclando PCs viejos. Los problemas con la temperatura, el consumo energético y el ruido, sin duda son los mayores inconvenientes del reciclaje de PCs.

GNU/Linux, el huésped perfecto.

Flexibilidad. Es lo que se necesita para convertir estas placas en cualquier sistema que deseemos. ¿Alguien se imagina intentar montar un servidor web con Windows? ¿Para qué cargar todos esos servicios que un servidor web no necesita?¿Por qué ocupar más de 1GB cuando sólo necesito ocupar 300Mb? Tampoco hace falta mencionar los costes del sistema (pagar una licencia de un S.O. también sería un coste).

Sin embargo, con GNU/Linux podemos conseguir una distribución a medida, minimalista, que cumpla con aquello y sólo con aquello para lo que fue diseñado el sistema. En definitiva, un sistema que me permita controlar qué quiero desarrollar y cómo lo quiero hacer.

BeagleBoard, linux en 3”

LLevo algún tiempo buscando y comparando precios para adquirir alguna placa de formato Mini-ITX para montar un servidor web. Su precio ronda los 250 euros y probablemente, para las necesidades de un servidor web personal excede en capacidad, además su consumo energético y disipación térmica todavía me parecían demasiado.

Recientemente encontré esta maravilla hardware llamada BeagleBoard. Se trata de una placa de 3”, que cuesta como unos 97 euros (149$), cuyas características más notables son:

  • Procesador 600Mhz (todos sabemos que la frecuencia de reloj no es un indicador de velocidad de procesamiento).
  • 128MB RAM.
  • 256MB de memoria Flash.
  • HD Video (720p) capable C64x DSP core
  • I2C, I2S, SPI, MMC/SD (vía conector de expansión)
  • DVI-D
  • JTAG
  • S-Video
  • SD/MMC+
  • Salida estéreo
  • Entrada estéreo
  • USB 2.0 HS OTG
  • Puerto serie RS-232
  • Aceleración gráfica
  • Consumo de 2W (bien por alimentación de red eléctrica o mediante alimentación vía USB).

Ahora la tengo en mis manos y aunque la instalación de GNU/Linux se ve algo complicada, ya se han probado algunas distribuciones con éxito. En ella espero montar algunos servicios, como web o backup, por lo que seguro que no será la última entrada que escribo sobre ella.

Posteado por: Rafa | julio 28, 2008

GNU Emacs

GNU Emacs, un editor y….¡mucho más!

En la página oficial (http://www.gnu.org/software/emacs/) lo definen como un editor de texto extensible, personalizable — y mucho más. Yo diría aún más, GNU Emacs es toda una plataforma que permite al usuario elaborar una “distribución” propia de herramientas de trabajo (visor de pdf, hoja de cálculo, depurador, lector rss,  gestor de blogs, un larguísimo etcétera y, por supuesto, un editor) integradas. Esto último resultará obvio para aquellos que conocen GNU Emacs, son los que no conocen GNU Emacs los que piensan que es sólo un editor de texto más (como gedit, kate,…).

Probablemente es uno de los editores más extendidos en sistemas tipo *NIX (unix, GNU/linux,…). Además también posee versiones para otros sistemas operativos como Microsoft Windows o Mac OS y permite la ejecución en modo texto o gráfico.

Sin duda, lo que más aprecio de GNU Emacs es:

  • Que usar GNU Emacs para diferentes propósitos lo que te ahorra instalar y aprender diferentes herramientas.
  • Que encuentra muy extendido, puedes encontrarlo fácilmente en diferentes plataformas. Así podrás usar un editor que te resulte familiar en cualquier parte.
  • Tiene multitud de extensiones y permite programar extensiones nuevas.

Pero si GNU Emacs es tan maravilloso…¿por qué casi nadie lo usa?

No sé qué es más común, que yo mismo me haga esta pregunta o que me la hagan los  demás. El caso es que GNU Emacs tiene una curva de aprendizaje un poco pronunciada al principio y creo que esto es lo que fundamentalmente hace que no sea tan popular. Algunos lo conocerán como ese editor infernal sólo apto para frikis, pero creo que es es una imagen más mítica que real.

En mi opinión el caso más común es el de aquellos usuarios que ejecutan GNU Emacs, ven que es algo que no saben manejar de forma inmediata tal como ocurriría en otros editores y lo cierran inmediatamente para no volver a usarlo. Muchos intentan el tutorial que acompaña a GNU Emacs y quedan frustrados (¡dios mío!, un tutorial para un editor de textos [como mencioné antes, GNU Emacs es mucho más que un editor de textos]).

¿Cómo llegar a ser un usuario de GNU Emacs?

La respuesta es poco a poco. Primero deberías hacer el tutorial para ver la filosofía de GNU Emacs, no te preocupes por los accesos de teclado o porque no tienes Ctrl-C, Ctrl-V, Ctrl-X y Ctrl-Z (puedes activar esto bien en el menú opciones–>Activar modo CUA, o bien con M-x cua-mode), todo puede cambiarse hasta que consigas ese editor que necesitas.

Aunque existe ya multitud de información sobre configuración, personalización y exensión de GNU Emacs. Seguiré publicando entradas que considere útiles sobre personalización de GNU Emacs, herramientas de extensión, etc.

Posteado por: Rafa | julio 19, 2008

Viaje y retorno a n-otro enlace.

Y es que hoy ha sido uno de esos días en el que entrar en la red y seguir un enlace que estuvo ahí por casualidad, lleva a otro enlace que lleva a otro que lleva a…..n-otro enlace y a partir de ese momento, parece que has llegado a la internet de otro planeta, ¿a quién no le ha ocurrido?. A partir de ese momento, se empiezan suceder sitios…llamémosles extraños, pintorescos o interesantes. Esta entrada se hace eco de uno de estos días.

Todo comenzó cuando decidí escribir una entrada sobre OpenPGP. Sólo sé que comenzé por buscar información en la página de la revista Linux Journal, a partir de ahí…

The Day After An Inconvenient Truth

Este fue unos de los sitios llamativos que encontré. Surge después de que su autor, quedase impactado con el archiconocido documental “Una verdad incómoda, del ex-candidato a la presidencia de los EEUU, Al Gore.

Se trata de un blog cuya intención es cambiar el mundo en algo (aunque sólo sea en algo),  de forma positiva. No he tenido tiempo de leerlo mucho, pero los temas que he visto versan sobre ecología, consumo responsable y sociedad y también algo sobre tecnología.

Al hilo de este blog encontré también un sitio web mantenido por el autor que resulta, cuando menos, original. Se trata de http://carareynolds.com. Este sitio recrea una ciudad animada mediante flash,  en la que muchos de los elementos albergan una galería de fotos temática.

Y de ahí, otro enlace hacia…

Scroogle Scraper

Scroogle Scraper es un sitio web que actúa de intermediario entre google y el usuario.

Pero ¿por qué necesitaría un intermediario entre Google y yo? Bueno, alguna vez un profesor me dijo que todos teníamos nuestros pecados, que si quería asustarme sólo tenía que mirar en http://www.google.com/history/ .

Esta página para los que no lo sepan, guarda todo el historial de búsquedas  para aquellos usuarios de Google. Lógicamente este servicio se puede detener e incluso se puede “eliminar” el historial de búsquedas, pero…¿se elimina realmente? Y los que no son usuarios de Google…¿qué tipo de datos se pueden capturar sobre ellos?

Para los preocupados por estas preguntas, así como aquellos que creen que Google dominará el mundo algún día, Scroogle Scrarper les permite hacer búsquedas en Google sin dejar rastro, puesto que los datos que quedan registrados son del sitio que actúa como intermediario. Para los preocupados de si Scroogle Scraper almacena algún tipo de dato (o si Scroogle Scraper dominará alguna vez el mundo…) lo único que puedo decir es…quién sabe (…y para tu enfermedad no existe cura aún).

Y finalmente, de ahí a…

Google Watch

No, Google Watch no es un nuevo servicio de Google recién salido de Google Labs. Se trata de una página que realiza severas críticas a Google y su política de privacidad, que según dice, perjudican a la web.

Se trata de un sitio con un toque retro-minimalista-caricaturesco que he de reconocer, me ha causado poco menos que simpatía. Desde aquí podemos actualizar la página para que aparezca una nueva imagen crítica, además de poder acceder a diferentes artículos críticos.

Y por fin el retorno

Pude haber seguido profundizando en esta dinámica con http://wikipedia-watch . Pero me abstuve, no quiero ni pensar dónde se puede terminar…

Queda pendiente una entrada sobre OpenPGP, espero tenerla pronto.

Posteado por: Rafa | julio 8, 2008

SSHFS

Secure Shell File System (SSHFS) es un sistema de ficheros basado en el protocolo Secure Shell (SSH) y el módulo del núcleo Linux, Filesystem In Userspace (FUSE). Permite montar directorios remotos, situados en máquinas con las que se puede contactar mediante SSH.

Esta nueva forma de compartir ficheros destaca sobre las clásicas como SAMBA o NFS por su sencillez de instalación y configuración. Además permite al usuario montar directorios remotos sin necesidad de permisos especiales para hacerlo, ni entradas definidas en FSTAB.

Otra de las virtudes a destacar de este sistema es la seguridad, puesto que se apoya en SSH, que generalmente utiliza comunicación encriptada entre pares, basada en algoritmos de clave pública.

Instalación

Para la explicación de la instalación de SSHFS me referiré acciones generales que el usuario debe realizar, apoyadas con comandos de mi distribución de GNU/Linux (ArchLinux). Se asume que se tienen permisos de administrador del sistema, bien por acceso mediante usuario root o bien mediante el comando sudo. Se puede encontrar una guía de instalación sencilla para distribuciones basadas en Debian en este enlace.

Paso 1: Instalación de SSHFS

Lo primero que se debe hacer es instalar el paquete SSHFS. La mayoría de las distribuciones pueden usar un gestor de paquetes para realizar esta tarea. También se puede optar por desgargar el código de la página oficial. En el caso de ArchLinux se utiliza el gestor de paquetes pacman:

pacman -S sshfs

Paso 2: Añadir módulo FUSE al arranque

Como se ha mencionado al principio, SSHFS funciona sobre FUSE, por lo que habrá que cargarlo durante la secuencia de arranque. En todas las distribuciones GNU/Linux, existe un fichero que contiene los módulos a cargar en la secuencia de arranque, en muchas distribuciones este fichero es /etc/modules (bastaría con añadir fuse al final del fichero). En ArchLinux la lista de módulos se encuentra en /etc/rc.conf, cuyo apartado de módulos debería quedar de forma similar a:

MODULES=(e100 eepro100 ipw2200....fuse)

También se puede cargar manualmente para la sesión actual con: (válido en la mayoría de distribuciones)

modprobe fuse

Paso 3: Añadir usuarios al grupo FUSE

Para que cualquier usuario de un sistema pueda manejar el módulo FUSE del núcleo, es necesario que dicho usuario se añada al grupo fuse:

gpasswd -a usuario fuse

Utilización

Supongamos que queremos montar un directorio (/home/user1/dir) remoto desde una máquina remota B en un directorio (/home/user2/dir) de una máquina local A. Además supongamos que el demonio SSH de la máquina B está situado en el puerto 1479 (normalmente está situado en el puerto 22, pero es una política de seguridad habitual situarlo en otro puerto). El montaje en este caso, se realizaría de la siguiente forma:

sshfs user1@B:/home/user1/dir /home/user2/dir -p 1479

De forma general sería:

sshfs usuario@máquina:ruta_remota ruta_local -p puerto

Una vez montado el directorio remoto, se puede utilizar de forma transparente como si fuese un directorio de la máquina local. Pero hay que tener en cuenta que el directorio montado no es una copia, sino el mismo directorio que existe en la máquina remota. Cualquier cambio realizado será aplicado inmediatamente sobre el sistema de ficheros de la máquina remota.

Para desmontar el directorio montado anteriormente, se hace uso de FUSE

fusermount -u /home/user2/dir

que de forma general quedaría así:

fusermount -u ruta_local
Posteado por: Rafa | julio 3, 2008

ArchLinux

Admitamoslo, Ubuntu se ha convertido en la reina de las distribuciones de Linux. Su sencillez de instalación, su amplia compatibilidad con diferentes plataformas y dispositivos, y cómo no, toda la comunidad bajo la que se soporta, son sus principales bazas. Sin embargo, su filosofía, “Linux para seres humanos” (aquí entiendo un guiño hacia aquellos que no tienen conocimientos medios/avanzados sobre sistemas GNU/Linux), choca frontalmente con ese tipo de usuarios que quieren mantener un sistema lo más simple y optimizado posible.

Aunque mis conocimientos sobre sistemas GNU/Linux no son muy avanzados, hace un tiempo decidí que ya era hora de empezar a aprender y por desgracia Ubuntu no me pareció la mejor alternativa. Ya estaba todo hecho, sólo bastaba buscar alguna entrada en algún foro o en un blog para que te remitieran al archiconocido apt-get sucedido de una serie de comandos que introducidos de forma secuencial por el método, también archiconocido, del Copy-Paste, para conseguir esa nueva mejora/ampliación del sistema.

Luego cambié a Gentoo. Fue bastante complicado llegar a instalarla, pero aprendí mucho. Gentoo es una metadistribución que no instala paquetes precompilados para una arquitectura, sino que descarga código fuente y lo compila de forma local con las opciones de optimización especificadas por el usuario. Pero he de admitir que tampoco tenía conocimientos suficientes como para obtener optimizaciones más allá de la elección básica de la arquitectura y la deshabilitación de módulos de software que no iba a usar. Además, no es la mejor distribución para querer probar, quitar y poner…tarda demasiado en compilar.

ArchLinux Logo

Finalmente donde quería llegar, ArchLinux, mi distribución actual. Aunque muchos piensan que es una distribución derivada de Slackware, realmente esta distribución deriva de Crux. ArchLinux es una distribuución de GNU/Linux que actualmente cuenta con optimizaciones para i686 y x-86/64 y que pretende ser:

  • Simple: el sistema base trata de ser muy minimalista, lo que permite construir desde un sistema básico como servidor hasta un completo sistema de escritorio.
  • Estable (en esto me recuerda mucho a Debian).
  • Moderna: incorporan de forma rápida las últimas piezas de software que desarrollan.

Puedes ver una descripción más detalla de su filosofía aquí. Además recomiendo escuchar el capítulo 70 del podcast Linux Reality dedicado por completo a descripción e instalación de esta distribución (podéis encontrarlo aquí).

Muchos usuarios piensan que ArchLinux puede ser una distribución un poco difícil de usar, pero creo que esto es un mito que viene de pensar que Archlinux deriva de Slackware. ArchLinux posee muy buena documentación en forma de wiki que cubre al completo los temas de discusión más comunes en la instalación y administración de un sistema GNU/Linux.

ArchLinux posee su propio sistema de paquetes basado en formato tar.gz, que junto a su administrador de paquetes  (pacman) conforman un sistema de paquetes muy simple y ágil. Además, como ya ocurre con muchas distribuciones de sistemas BSD, intenta concentrar toda la configuración de arranque en un único fichero, lo que resulta muy rápido y cómodo para cambiar configuraciones.

Una de las cosas que más aprecio de ArchLinux, es la comunidad de usuarios que se ha creado alrededor de esta distribución. Si bien es cierto que no es tan amplia como las creadas alrededor de otras distribuciones, también creo que es una de las más  útiles, ya que cuenta con abundantes páginas de información y foros.

Por todo esto, si como muchos usuarios quieres aprender más sobre el uso y administración de sistemas GNU/Linux y buscas tener tu propio sistema GNU/Linux, estable, simple y minimalista, ArchLinux es una buena opción.

Older Posts »

Categorías

Seguir

Recibe cada nueva publicación en tu buzón de correo electrónico.