¿Qué hace Nokia?

Sección [Comunicaciones] Fecha [2008-09-02] Hora [13:56]

Nokia es una marca mundialmente conocida por sus teléfonos móviles, pero detrás de la marca finlandesa seencuentran otras líneas de negocio de éxito.

Sin ir más lejos, en el mundo de la seguridad informática Nokia es conocida por sus appliances de seguridad. Estos appliances corren un sistema operativo propio de Nokia llamado IPSO, basado en FreeBSD. Nokia no desarrolla el software que hace las tareas de firewall, para este cometido cuentan con su principal socio en seguridad y nº1 mundial en firewalls: Checkpoint.

La línea de negocio de firewalls de Nokia está basada en estándares abiertos, por lo que "cualquiera" podría emularles... Siempre y cuando consigan la colaboración de Checkpoint.

El hardware de sus appliances es, ni más ni menos, lo que podríamos denominar un PC. No porque tenga salida VGA o conexiones para teclado y ratón (que no tiene nada de eso) sino porque simplemente es una placa x86 con todo el hardware compatible. La gracia de la jugada es utilizar hardware ya probado y estable (se venden appliances de Nokia con procesadores Pentium 3) y, sobretodo, totalmente compatible con su S.O. IPSO. Una vez instalado el S.O. se vuelca encima la versión de software Checkpoint compatible con la plataforma correspondiente. Con esto ya tenemos un appliance estable y muy capaz en cuantos a las características demandadas por los profesionales de la seguridad informática.

No hay mucho más que hablar sobre estos appliances, más que nada porque su principal valor es el hecho de correr Checkpoint. Podríamos resumir en que con un firewall Nokia puedes hacer lo que podrías hacer con cualquier otro firewall ya sea Cisco (PIX/ASA), Juniper (Netscreen), StoneSoft (StoneGate), etc y disponen de gama para cubrir cualquier tipo de empresa desde PYMES hasta banca o ISP.El coqueteo de Nokia con la seguridad informática no es casual, pues es una empresa experta en comunicaciones. ¿Alguien recuerda los primeros routers que entregaba Telefónica en España para los ADSL sobre RDSI? Efectivamente, eran de Nokia.

Nokia apuesta fuerte por sus firewalls. A pesar de los rumores de cierre de la línea de negocio están apareciendo nuevos modelos a menudo, incluso ya empiezan a incorporar discos duros de estado sólido (SSD para los amigos).

La cosa no acaba ahí. Desde hace no demasiado tiempo, Nokia ha lanzado una nueva gama de dispositivos de comunicaciones que bautizó como Internet Tablets. Son los precursores de los UMPC que tan de moda están ahora.

Dispositivos con máximas capacidades de conectividad (wifi, bluetooth) y diferenciados de su línea de telefonía móvil por tres principales factores:

1) Falta de conectividad GSM/UMTS. Evidentemente esto es para no solapar líneas de negocio, aunque estos dispositivos son capaces de conectar a Internet utilizando cualquier móvil con bluetooth para ello.

2) Portabilidad. Son dispositivos portables, pero no para cualquier bolsillo (por tamaño). Las pantallas de sus Internet Tablet tienen un mínimo de 4" y resolución de 800x480 (la misma que un Asus EEE por ejemplo) pensados para una plena experiencia de navegación y capacidades multimedia.

3) Sistema operativo. Una vez más Nokia basa una de sus líneas de negocio en software libre. En este caso se trata de versiones modificadas de Linux, compatibles con el formato de distribución de software de las distribuciones Linux más conocidas como Debian o Ubuntu. La diferencia es que, principalmente al no ser hardware x86, los paquetes de software deben ser adaptados.

Esta semi-compatibilidad con la ingente cantidad de software disponible para Linux hace que sea más o menos trivial disponer de aplicaciones existentes en nuestros PC. Una de las aplicaciones más demandadas por los usuarios más exigentes con sus Internet Tablets es la suite Aircrack, conocido paquete de software dedicado a probar la seguridad de redes inalámbricas.

Las pantallas táctiles y la potencia y calidad del hardware los convierten en excelentes centros multimedia portátiles. Incluso en los últimos modelos de Internet Tablets podemos encontrar GPS integrado o conectividad WiMAX.

Los dispositivos Internet Tablet, a pesar de en un principio ser dispositivos pensados para navegar por Internet, han alcanzado tal flexibilidad que dos poseedores de estos dispositivos pueden utilizarlos para cosas totalmente diferentes. Desde escuchar y/o grabar programas de radio, podcast, mp3 o ver vídeos y películas hasta utilizarlos como teléfonos IP para telefonía VoIP estándar (SIP) o comunicaciones a través de Skype y mensajería instantánea, incluyendo videoconferencia. Por supuesto también hay gente que los utiliza para navegar o para quebrantar la seguridad de redes wireless en auditorías y los más perdidos, que los utilizan como GPS (tanto con la antena interna de los últimos modelos como con una externa bluetooth).

Un paso más allá nos encontramos con los usos menos comunes todavía. Otra vez el hecho de ser tan fácil de portar software de Linux x86 a ellos nos brinda la posibilidad de montar, sin ir más lejos, un servidor web en ellos.

Una de las carencias de estos dispositivos es su software de PIM para utilizarlos como PDA. Lo bueno es que Palm, en un gesto extraño, liberó GarnetVM; una máquina virtual que arranca un S.O. Garnet (PalmOS) por lo que puedes disponer del mejor software de PDA en tu Internet Tablet.

Finalmente dentro de línea de móviles Nokia dispone de una segunda marca, en este caso de lujo. Vertu es el nombre escogido para esta gama de móviles algo parcos en características respecto a sus hermanos Nokia pero con acabados de excéntrico lujo como oro, diamantes o un número de teléfono al que llamar para disponer de un asistente personal gratuito durante un año.

Como podemos ver, Nokia es mucho más de lo que parece en un principio y estoy seguro que me dejo muchas cosas en el tintero, pero ahora mismo esto es todo lo que recuerdo sobre la marca finlandesa de moda.


Comenta (14) comentario/s

Navegadores en Linux

Sección [Linux] Fecha [2008-05-12] Hora [00:23]

Bajo Windows creo que Firefox no tiene rival digno hoy por hoy. Está por ver que tal se portará IE8 (la beta es un poco inestable) y qué tal avanzará Safari, que la verdad me parece mucho más bonito renderizando.

En cambio en Linux pasa un poco como en la Liga de fútbol: Al final ganará en mi escritorio el menos malo.

En este caso el menos malo está siendo Opera, tanto la 9.27 como la 9.5 me están gustando mucho y creo que están un paso adelante de sus competidores (de Firefox 3b5, por poner un segundo clasificado). Mi problema con Firefox bajo Linux es que prácticamente muere en cualquier página web con Flash, tanto el 2 como el 3b5.

Estoy deseando ver Epiphany con WebKit o Midori un poco menos beta.

¿Alguna solución para Firefox? Lo tengo con el plugin nonfree en Ubuntu 8.04


Comenta (3) comentario/s

Comentario Nokia 6120 Classic

Sección [Gadgets] Fecha [2008-05-03] Hora [23:18]

De vez en cuando Nokia lanza al mercado un móvil discreto pero resultón. Ese mismo móvil suele tener poca publicidad y, curiosamente, se encuentra en la cresta de la hora tecnológica. Eso sí: Es un móvil, no un todo-en-uno.

La última vez que esto ocurrió fue con el 6600. ¿Cuanta gente aún hoy usa un 6600 y está encantada? Vale: Muy poca, pero alguien hay.

El Nokia 6600 fue un móvil duro, cómodo, versátil, discreto y bonito. Desde hace unos meses vaga por el mercado el que para mi es su substituto: Nokia 6120 Classic



Un par de días después de tener la Treo 680 se me puso a tiro un Nokia 6120 Classic de mi operadora (Yoigo) y no dudé en hacerme con él.

El Nokia 6120 Classic dispone de la última versión del sistema operativo Symbian, así como el procesador más rápido de todos los Symbian. Parece mentira pero es más rápido que un N95, además la batería cumple con creces su trabajo durante varios días.

Es un móvil pequeño, de aspecto discreto y ligero.

¿Qué mas se puede pedir?

Resumiendo se podría decir que externamente parece un móvil común pero por dentro es todo un Smartphone con conectividad HSDPA, sistema operativo Symbian y procesador ultra-rápido.

El único punto en contra que le veo por ahora es que a veces se calienta cual pc portátil mal ventilado... Y eso no puede ser bueno.


Comenta (24) comentario/s

Treo 680

Sección [Comunicaciones] Fecha [2008-04-15] Hora [20:52]

Hace ya un tiempo que conozco este cacharrito (mi novia tiene uno) pero por azares de la vida no veía el momento de tener yo otro, hasta que hoy he tenido la ocasión de hacer un trueque por mi, ya inútil por cambio de operadora, Blackberry 8800.

 

Nada se puede decir que no esté ya escrito: Es la versión pulida de la 650 tanto a nivel de hardware como de software. Mil veces más útil y cómoda que su gemela 750 pero con el increíble (y parece que aún no solucionado) problema de la batería.

 

Acabo de actualizar la ROM a la última versión disponible (2.12-ROW) y veremos durante la semana que tal se porta. Con poco útil que me sea ya me dará mucho más juego que el Sony Ericsson K610i que venía usando las últimas semanas (muy buen móvil por cierto).



Comenta (5) comentario/s

¡Volvemos!

Sección [] Fecha [2008-04-14] Hora [21:42]

Después de unos años sin escribir (desde 1984 y ya estamos en 1988) volvemos a nuestro origen.

 

No se de que escribiremos pero procuraremos que sea o bien útil o bien entretenido... O bien las dos :-) 


Comenta (5) comentario/s

El hombre desactualizado

Sección [] Fecha [2008-01-11] Hora [00:41]

¿Cuanto tiempo he pasado congelado? Está todo muy cambiado... Excepto mi bitácora.

En fin, os doy la bienvenida... o no? ;-)


Comenta (29) comentario/s

Coqueteando con Ubuntu

Sección [] Fecha [2004-10-11] Hora [01:00]

(Para el que ande un poco despistado, Ubuntu es una nueva distribución de Linux basada en Debian)

Desde hace casi un año que he ido manteniendo una máquina que uso varias horas al día como escritorio con una SuSe Linux 8.2. No llegará a dos semanas que me cansé de según que particularidades (gustos personales :P) y decidí cambiar. Lo primero que me vino a la cabeza fue una buena experiencia substituyendo otra SuSe 8.2 con una Knoppix hace unos meses, así que me decidí a usar Knoppix para tener una bonita Debian instalada sin apenas downtime :) (y digo una bonita Debian porque cambié el sources.list y hice un dist-upgrade)

Manos a la obra: Descargar, grabar en un CD, pagar cánon a la SGAE, arrancar sistema, instalar a disco, (actualizar), disfrutar. Y así llevo las dos últimas semanas, trabajando sin problemas.

Peeero la curiosidad pudo conmigo de nuevo y después de tanto leer sobre Ubuntu y sus particulares características, me he decidido a probarla. ¿De qué características hablo?
Pues de que Ubuntu planea sacar una nueva versión cada seis y soportarla durante los 18 siguientes, además de actualizar el software de escritorio mucho más a menudo que en casi cualquier rama oficial de Debian (supongo que exceptuando experimental).

La manera más rápida de probarla que se me ha ocurrido ha sido cambiando, de nuevo, el sources.list y haciendo otro dist-upgrade. Dicho y hecho. Al cabo de unos minutos (unos cuantos XD) tenía mi Debian con los paquetes más nuevos de Ubuntu.

El siguiente paso ha sido instalar el paquete gnome-desktop para probar Gnome 2.8 y respecto a esto tengo una pregunta, a ver si alguien me ayuda ¿Soy yo o Gnome sigue siendo igual que hace algunas versiones? Almenos de "aspecto" (luego le tocaré las tripitas un rato).

Bien, con Ubuntu y Gnome 2.8 estoy trabajando ahora y no me puedo quejar: No se ha roto nada, pero... Esto me sigue pareciendo igual que antes y creo que es una alegría porque Ubuntu simplemente trae a Debian lo que mucha gente pedía: Una rama actualizada y cuidada al nivel de distros comerciales como Mandrake o SuSe (cuidadas ya las teníamos, pero no tan actualizadas a la vez).

Si alguno os atreveis a dar el paso no os vais a arrepentir, pero tampoco es La Revolución :)


Comenta (6) comentario/s

Certificaciones Linux

Sección [] Fecha [2004-10-07] Hora [01:00]

Si estais pensando en haceros con algún título que certifique vuestros conocimientos sobre Linux os vendrán bien algunos enlaces sobre la certificación del LPI (Linux Professional Institute). Es una de las certificaciones más valoradas, junto con la archiconocida RHCE (RedHat Certified Engineer):

· Para empezar la página oficial de LPIC: LPI - Certificación. Aquí podreis encontrar los requisitos para aprobar cada nivel de la LPIC, así como enlaces a material, partners, política del LPI (tiempo a esperar para repetir un examen si suspendes, normas generales, etc) y más cosas interesantes. En inglés y castellano
· Curso gratuito de FreeUOC. En los foros de su página podreis ir siguiendo, junto con otros estudiantes, el interesante curso que están entregando poco a poco para que aquellos que busquen sacarse la LPIC. Es solo el curso, no te examinan. En http://freeuoc.spymac.net/ encontrareis los apuntes del curso (PDF y OpenOffice). En castellano
· Enlaces para preparar el examen, en LPI - Test preparation tools. En inglés


Comenta (7) comentario/s

Transmisión cifrada de datos: coste computacional

Sección [Seguridad] Fecha [2003-10-29] Hora [03:10]

Ya hemos visto que cifrando realmente no comprimimos los datos, sino que esto lo hace gpg por su cuenta (gracias Draco). El aumento de tamaño de los datos tampoco es especialmente espectacular así que aún podemos considerar la transmisión de datos cifrados siempre como algo posible.
Vamos a empezar con una clave de 1024bits y un tar de X bytes. Pero antes de hacer las pruebas vamos a dejar los datos de la máquina (los importantes):

Procesador: Pentium III 750MHz
Memoria: 384MB (128+256) SODIMM PC133
Disco duro: Toshiba de 4200RPM y 10GB. 3 particiones (1 swap, 1 ReiserFS para /usr y una ext3 para el resto del sistema).
Sistema: Knoppix 3.3 instalada en el disco duro, medio actualizada a sid.

Resultados del hdparm en el HD:

 
root@wardriver:/home/pj/pruebas# hdparm -Tt /dev/hda 
 
/dev/hda: 
 Timing buffer-cache reads:   428 MB in  2.01 seconds = 212.94 MB/sec 
 Timing buffered disk reads:   48 MB in  3.02 seconds =  15.89 MB/sec 


Versiones de los programas a usar:
 
pj@wardriver:~$ tar --version 
tar (GNU tar) 1.13.25 
 
pj@wardriver:~$ gpg --version 
gpg (GnuPG) 1.2.3 
 
pj@wardriver:~$ gzip --version 
gzip 1.3.5 
(2002-09-30) 
 
pj@wardriver:~$ bzip2 --version 
bzip2, a block-sorting file compressor.  Version 1.0.2, 30-Dec-2001. 


Creación del tar: tar cvf /usr/X11R6/bin/
Resultado:
 
pj@wardriver:~/pruebas$ ll 
total 35252 
-rw-r--r--    1 pj       pj       36055040 Oct 28 19:41 binarios.tar 


Pruebas:
1) Cifrado usando gpg sin compresión
 
pj@wardriver:~/pruebas$ time gpg -e -z0 binarios.tar 
You did not specify a user ID. (you may use "-r") 
 
Enter the user ID.  End with an empty line: prova 
 
Added 1024g/E4714C9E 2003-10-27 "prova (prova) " 
 
 
real    0m7.023s 
user    0m4.540s 
sys     0m0.750s 
 
pj@wardriver:~/pruebas$ ll 
total 70504 
-rw-r--r--    1 pj       pj       36055040 Oct 28 19:41 binarios.tar 
-rw-r--r--    1 pj       pj       36055383 Oct 28 19:45 binarios.tar.gpg 


Marca 4 segundos de user time pero realmente he estado apenas medio segundo escribiendo el identificador (prova) y dando al enter dos veces.

2) Cifrado usando gpg con compresión
 
pj@wardriver:~/pruebas$ time gpg -e binarios.tar 
You did not specify a user ID. (you may use "-r") 
 
Enter the user ID.  End with an empty line: prova 
Added 1024g/E4714C9E 2003-10-27 "prova (prova) " 
 
Enter the user ID.  End with an empty line: 
 
real    0m19.640s 
user    0m16.030s 
sys     0m0.540s 


Creo que no hacen falta más pruebas para ver porqué no se transmite hoy en día con claves de 1024bits y que cuando sí se transmite cifrado es con claves mucho más pequeñas como los 128bits o incluso 256bits del WEP y los típicos 128bits de las "páginas seguras".
¿Porqué esto es así? En las redes, incluida Internet, suele ser muy importante la latencia en las comunicaciones pues los sistemas cortan la conexión cuando el otro comunicante no responde en X tiempo (=tiene una latencia muy alta). Si hacemos una petición a un sitio web para bajarnos un fichero de datos confidenciales y la máquina tiene que cifrarlo bajo petición nos tendremos que esperar 7 segundos a recibir una respuesta y 19 segundos si lo queremos comprimido.
Para envios puntuales no dudo que pueda servir, pero en esos casos el cifrado se hace manualmente antes del envio de forma que no avisamos del envio ni recibimos la petición del archivo hasta que este esté cifrado. Este caso sería el de los correos electrónicos que, además, suelen tener un tamaño reducido.

Conclusión:

El coste computacional sigue siendo muy elevado. Imaginen una conexión ethernet de 100Mbps recibiendo datos a tope que otra máquina está cifrando y enviando. La máquina cifradora no va a poder servir a tiempo los datos, tengan en cuenta que si para 35MB hemos necesitado 7s de tiempo imaginen cuanto necesitaremos por segundo para servir más o menos 10MB/s.


Comenta (29) comentario/s

Transmitir cifrado no supone mayor gasto de ancho de banda

Sección [Seguridad] Fecha [2003-10-28] Hora [07:18]

Almenos con un sistema como gpg (par de claves) y usando DSA* + ElGamal (cifrado asimétrico).

Muestra:

pj@wardriver:~/descargas$ ll
total 556
drwxr-xr-x    2 pj       pj           4096 Oct  3 00:13 blogatex-0.1
-rw-------    1 pj       pj          64724 Oct  3 00:06 blogatex-0.1.tgz
-rw-r--r--    1 pj       pj         491520 Oct 27 23:00 blogatex.tar
pj@wardriver:~/descargas$ gpg -e blogatex.tar
You did not specify a user ID. (you may use "-r")

Enter the user ID.  End with an empty line: prova
gpg: checking the trustdb
gpg: checking at depth 0 signed=0 ot(-/q/n/m/f/u)=0/0/0/0/0/1
Added 1024g/E4714C9E 2003-10-27 "prova (prova) "

Enter the user ID.  End with an empty line:
pj@wardriver:~/descargas$ ll
total 660
drwxr-xr-x    2 pj       pj           4096 Oct  3 00:13 blogatex-0.1
-rw-------    1 pj       pj          64724 Oct  3 00:06 blogatex-0.1.tgz
-rw-r--r--    1 pj       pj         491520 Oct 27 23:00 blogatex.tar
-rw-r--r--    1 pj       pj         101651 Oct 27 23:02 blogatex.tar.gpg


Sí que supone un gasto mayor en potencia de cálculo, pero no se hasta que punto. Mañana desde el trabajo os pasaré los tiempos de cifrado/descifrado en el mismo ordenador de las últimas pruebas aunque creo que el tar de binarios ha crecido, así que pondré un par de resultados nuevos con gzip (bzip ya vimos que era lento) para tener una comparación medianamente real.

En este caso he usado una clave de 1024bits pero la última prueba (no publicada) fue con una de 4096bits y el tiempo de descifrado era sumamente alto para un archivo de ~35MB. Incluso comparado con bzip2.

Y para acabar por hoy, una reflexión personal: Si las transmisiones por defecto no son cifradas, por algo será x)

* Por lo que he leído parece que DSA es solo para firmar ¿?.

Actualización: Apunta Draco en los comentarios que gpg hace una compresión previa al cifrado. Efectivamente he probado con -z 0 y un archivo de 138547200 se ha convertido en uno cifrado de 138547543 como bien supusieron el GNUdista y anigwei. Una gallifante para ellos y el antichollo para mi ;-)


Comenta (9) comentario/s

Más sobre la compresión

Sección [Linux] Fecha [2003-10-27] Hora [09:50]

Seguí experimentando un poco más con los compresores y con algún juguetito más, así que les dejo como ejercicio:

El tamaño de un tar de binarios, si lo ciframos mediante gnupg con los algoritmos recomendados por él mismo, ¿Aumenta o disminuye? Intentad contestar antes de hacer alguna prueba :-)


Comenta (6) comentario/s

Minipruebas de compresores en Linux

Sección [] Fecha [2003-09-18] Hora [15:03]

Prueba y cronometrado de compresión gzip y bzip2 (¡y zip!) con sus valores (de compresión) máximo y mínimo.
pj@desarrollo:~/proyectos> time gzip -1 binarios-gz1.tar

real 0m2.171s
user 0m1.840s
sys 0m0.260s


pj@desarrollo:~/proyectos> time gzip -9 binarios-gz9.tar

real 0m13.084s
user 0m12.770s
sys 0m0.130s


pj@desarrollo:~/proyectos> time bzip2 -z1 binarios-bz1.tar

real 0m12.752s
user 0m12.340s
sys 0m0.180s


pj@desarrollo:~/proyectos> time bzip2 -z9 binarios-bz9.tar

real 0m18.161s
user 0m17.490s
sys 0m0.160s


-rw-r--r-- 1 pj users 12156052 2003-09-18 08:04 binarios-bz1.tar.bz2
-rw-r--r-- 1 pj users 11462865 2003-09-18 08:04 binarios-bz9.tar.bz2
-rw-r--r-- 1 pj users 14068154 2003-09-18 08:04 binarios-gz1.tar.gz
-rw-r--r-- 1 pj users 12501394 2003-09-18 08:04 binarios-gz9.tar.gz
-rw-r--r-- 1 pj users 35246080 2003-09-18 08:03 binarios.tar


La compresión tanto con gzip como con bzip2 es muy buena, llegando a reducir el tamaño de los binarios comprimidos en más de un 50%. Están claras cosas que a priori eran lógicas, como que si queremos velocidad deberemos acudir a gzip con su mínimo nivel de compresión con el que hemos conseguido un tiempo de 2'171s. Un muy buen tiempo si lo comparamos con los 12'752s de bzip2 con su también mínimo valor. No seríamos justos si no destacaramos que, precisamente, bzip2 con su mínimo valor de compresión consigue un mejor tiempo y una mayor compresión que gzip con su máximo valor, cosa que descarta a gzip en cualquier caso excepto para cuando la velocidad sea mucho más importante que el espacio y en ese caso a veces ni siquiera nos hará falta comprimir, con tar nos sobrará.

Resumiendo:
· Si quieres velocidad y no te importa el tamaño en absoluto no comprimas, solo empaqueta (tar).
· Si quieres una buena relación entre velocidad y tamaño prueba con bzip2 en su mínimo valor de compresión (-z1).
· Si quieres la máxima compresión y no te importa en absoluto el tiempo usa bzip en su máximo valor de compresión (-z9).
· Si quieres portabilidad hacia otras plataformas y el tamaño no es crítico usa gzip. (Aunque parece ser que bzip2 ya está soportado por los descompresores más famosos de Windows)

Comparación con zip:

pj@desarrollo:~/proyectos> time zip -1 binarios-zip1.tar.zip binarios-zip1.tar
adding: binarios-zip1.tar (deflated 60%)

real 0m2.584s
user 0m2.240s
sys 0m0.230s


pj@desarrollo:~/proyectos> time gzip -9 binarios-gz9.tar

real 0m13.084s
user 0m12.770s
sys 0m0.130s


-rw-r--r-- 1 pj users 14068285 2003-09-18 08:22 binarios-zip1.tar.zip
-rw-r--r-- 1 pj users 12501525 2003-09-18 08:22 binarios-zip9.tar.zip


Si lo comparamos con gzip vemos que tiene unos resultados MUY similares tanto en tiempo como en compresión. Tanto es así que en las dos pruebas la máxima compresión ha tardado lo mismo tanto para zip como para gzip, siendo el segundo el que ha comprimido más: 131 bytes sobre 12'5MB. Con el mínimo valor de compresión ocurre casi lo mismo: 4 décimas más lento zip y 131 bytes de nuevo de diferencia.

· ¿Son gzip y zip lo mismo en cuanto a algoritmos de compresión? Seguramente, además de que las diferencias de tamaño entre ambos parecen ser siempre de 131 bytes. Esto puede corresponder a algún tipo de meta-información que zip guarde en el archivo comprimido.

· ¿Ventajas de zip sobre gzip? Nos podemos saltar el empaquetar con tar, ya que zip también empaqueta. De todas maneras hoy en día tar ya lleva opciones para usar gzip justo después de empaquetar de forma que con una sola orden tendremos nuestros archivos comprimidos.

Comparativa descompresión:

pj@desarrollo:~/proyectos> time bunzip2 binarios-bz1.tar.bz2

real 0m3.754s
user 0m3.430s
sys 0m0.290s


pj@desarrollo:~/proyectos> time bunzip2 binarios-bz9.tar.bz2

real 0m6.250s
user 0m5.870s
sys 0m0.280s


pj@desarrollo:~/proyectos> time gunzip binarios-gz1.tar.gz

real 0m1.013s
user 0m0.720s
sys 0m0.230s


pj@desarrollo:~/proyectos> time gunzip binarios-gz9.tar.gz

real 0m0.926s
user 0m0.620s
sys 0m0.260s


pj@desarrollo:~/proyectos> time unzip binarios-zip1.tar.zip
Archive: binarios-zip1.tar.zip
inflating: binarios-zip1.tar

real 0m1.094s
user 0m0.950s
sys 0m0.140s


pj@desarrollo:~/proyectos> time unzip binarios-zip9.tar.zip
Archive: binarios-zip9.tar.zip
inflating: binarios-zip9.tar

real 0m1.088s
user 0m0.810s
sys 0m0.210s



Estos resultados pueden hacer cambiarnos de opinión si nuestra premisa es el tiempo o si no disponemos de una máquina medianamente potente. Se nota la pesadez de los algoritmos de compresión de bzip2 y la ligereza de gzip, que apaliza notablemente al anterior cuando jugamos con las compresiones máximas. Sobretodo destacar los 0'9s que tarda gzip en máxima compresión frente a los 3'7s de bzip2 en mínima compresión (recordad que en tamaño eran bastante similares). Zip mantiene unos buenos tiempos, de apenas 1s tanto en máxima como mínima compresión, sin destacar en ningún aspecto.

Resumiendo:

· Gzip para casos en que necesitemos velocidad y para casos equilibrados en cuanto a velocidad y compresión.
· Definitivamente zip para la portabilidad.
· Bzip2 a máxima compresión para casos en los que importe principalmente el tamaño (p.ej.: descargas de internet).

Realizado en un P4 2.4GHz, 256MB RAM, HD Maxtor 80GB (7200 RPM) bajo SuSe Linux 8.2


Comenta (5) comentario/s

Entiende Linux (V): Libertad duradera (licencias)

Sección [] Fecha [2003-08-19] Hora [04:12]

El artículo nº5 de esta serie dedicada a Linux va ser un poco más generalista en el sentido de que vamos a hablar de Software Libre. Intentaremos aclarar porqué se llama así y que ventajas puede llegar a ofrecer. Por supuesto pondremos algún ejemplo de Software Libre y el primero será Linux. Finalmente os explicaré que es GNU y quien es Richard Stallman ya que saldrán nombrados un par (o más) de veces en el artículo.
Podemos empezar por definir un poco qué es el Software Libre. Yo considero bastante buena la definición que da la Free Software Foundation de la cual un señor llamado Richard Stallman es el fundador. Esta define al Software Libre como aquel que concede a todos las cuatro libertades que entienden como básicas:


  • Libertad 0: La Libertad de ejecutar el programa bajo cualquier circunstancia o para cualquier objetivo (comercial, educativo, lo que sea).

  • Libertad 1: La Libertad de estudiar como funciona el programa y adaptarlo a tus propias necesidades.

  • Libertad 2: La Libertad de (re)distribuir copias.

  • Libertad 3: La Libertad de mejorar el programa y hacer públicas tus mejoras, de forma que todo el mundo se beneficie.



A partir de estas premisas básicas se han homologado (si se puede entender como homologación el hecho de que la FSF reconozca tu licencia como Software Libre y/o la recomiende) varias licencias y se han creado otras. Dentro de las más aceptadas podemos encontrar dos corrientes:


  • Las licencias que protegen activamente las 4 libertades básicas imponiendo restricciones al código derivado de Software Libre bajo estas licencias. El mejor ejemplo es la conocida GNU GPL o GNU General Public License que obliga a todo software derivado de uno licenciado bajo GPL a hacers público bajo licencia GPL en caso de ser distribuido (para uso privado ya sea personal o de empresa puedes hacer lo que quieras).

  • Las licencias que ofrecen las 4 libertades pero no hacen una defensa activa de ellas mismas. A partir del software licenciado de esta manera podemos crear software propietario o cerrado (no-libre) así como software con licencias libres más restrictivas. Los ejemplos más conocidos son la BSD y la LGPL. Aunque menos famosas, son también bastante usadas las licencias X11 (del sistema gráfico mayoritariamente usado en Unix y por supuesto en Linux) y la MPL de Mozilla.



Ahora que teneis unas cuantas siglas en la cabeza (en mi opinión las más básicas y usadas para saber qué es Software Libre y qué no lo es) será mejor que relajemos el tema y hablemos de las ventajas, que aunque parezcan obvias me gustaría enumerarlas:


  • Olvídate de pagar por cada licencia. En el Software Libre el modelo de negocio te obliga a vender un producto acabado, con manuales, soporte y servicios. 1 pago == instalación del producto en cuantos ordenadores quieras.

  • Adaptación de los programas: Ya seas un manitas del código y te los adaptes o simplemente encuentres en una web el fallo que no te deja ejecutar cierta aplicación. Puedes editar el código fuente, cambiar lo que falla y recompilar. ¿Características nuevas y/o sugerencias? Los equipos de desarrollo de Software Libre suelen ser bastante receptivos y si no te gusta como va siempre puedes empezar a modificarlo tú o contratar a gente para que lo haga (en caso de que seas alguien con recursos como una empresa), tu código será aprovechado por los desarrolladores originales y su código será aprovechado por ti. El total del código será aprovechado por quien quiera tenerlo.

  • Menor riesgo de puertas traseras (backdoors), spyware y compañia: Siempre o casi siempre habrá alguien que se mire el código fuente de cierta aplicación y tarde o temprano se acabaría encontrando el código malicioso (o maleducado ;-)) insertado por el propio programador o por algún energúmeno externo. Que el riesgo existe es evidente, así como que este es menor.



No entro en otras ventajas con las que me he encontrado (excelencia técnica comparado normalmente con el Software Propietario) porque aunque haya teorias que intentan explicarlo, estas son solo eso: teorias.

Los ejemplos más famosos de Software Libre son el sistema operativo conocido como Linux (o GNU/Linux, llámenlo como más les guste), la suite de Internet Mozilla y el servidor web Apache:

El primero está formado por multitud de software y licencias diferentes, además hay que tener en cuenta que casi no hay dos sistemas Linux iguales (nunca se sabe que software puede tener cada uno instalado que viniera con la propia distro). Como curiosidad, la licencia de su núcleo (Linux es el núcleo y da nombre al sistema entero) es la GNU GPL así como muchas de sus herramientas más básicas y la libreria(sic) estándar de C del sistema.
El segundo está bajo la licencia MPL que es estilo BSD. Por ejemplo permitía que Netscape sacara su navegador basado en Mozilla sin entregar código fuente de las mejoras. Aunque a la hora de la verdad todas las mejoras entraban primero en Mozilla y cuando tenían una buena aceptación entraban a Netscape. Estos solo se guardaban el código de los añadidos que usaban para hacerte ver publicidad, usar la mensajería instantánea de AOL, etc.
También Apache también tiene su propia licencia estilo BSD, así que ya sabemos a que atenernos.


Para acabar me gustaría contaros que es GNU, quien es Richard Stallman, que tienen que ver con la FSF y porqué los nombro:

Stallman es un conocido hacker (en su acepción de "experto") estadounidense que, harto de la proliferación de las licencias que ocultaban el código y -a su entender- la poca ética de las empresas respecto a esto acabó dejando su trabajo, en el MIT, para dedicarse en cuerpo y alma a construir un sistema operativo libre. A este sistema lo llamó GNU y se ha ido desarrollando poco a poco desde aquella fecha. La parte que más les iba a costar era el núcleo pero, hete aquí, un joven finlandés (Linus Torvalds) trajo la solución: Linux. A partir de aquí el resto es lo que estamos viviendo.
Pues bien, este señor no contento con desarrollar gran parte de este sistema así como aplicaciones importantes como el editor Emacs o el compilador gcc (GNU C Compiler) también ha sido el artífice de la licencia GPL y, posteriormente, de la LGPL de la cual incluso no recomienda su uso por no defender las 4 libertades (solo la recomienda para extender el uso de cierta aplicación estratégica y convertirla en estándar de la industria, un estándar libre). Para tener un apoyo detrás se creo la Free Sofware Foundation, una fundación dedicada a la defensa y promoción del Software Libre que no duda en usar abogados (ser asociado implica hacer una donación a la fundación) a la hora de defender nuestras libertades.

Espero que con todo este rollo os podais aclarar un poquito más. Creo que he resumido bastante, sobretodo la parte histórica que podreis consultar por Internet en páginas como GNU España o FSF Europa. Por supuesto las preguntas, sugerencias, críticas y comentarios de cualquier tipo son bienvenidos aquí y en el correo electrónico (que encontrareis en esta misma página web).

Ego-Referencia: ¿Qué es el Software Libre? (Macuarium) por mi mismo. Más corto pero se explican algunas cosas que no explicamos aquí (en relación a autoría, propiedad intelectual, etc).


Comenta (4) comentario/s

Entiende Linux (IV): Donde buscar software

Sección [Linux] Fecha [2003-08-04] Hora [07:13]

Me he encontrado en varios foros de Internet y a algunos compañeros recomendando tal o cual programa a otro usuario de Linux con la peculiaridad (¿o no será peculiar?) de decirle cosas como "te lo puedes bajar de Softonic".
Para un usuario de Windows quizá sea normal usar la página de Softonic para descargar software libre, software gratuito y shareware (Sustituyan Softonic por VersionTracker si son ustedes Mackeros) pero en un sistema Linux esta "necesidad" ha sido cubierta con otras soluciones que a mi entender son mejores para el usuario final. Pasemos a explicarlas un poco por encima:

Para empezar creo que es de recibo decir que seguramente estas formas de rellenar el hueco de software para sistemas libres (usaré "Linux" porque es a lo que principalmente van orientadas las mini-guías) vino "gracias a/por culpa de" la ignorancia por parte de las grandes corporaciones (=dinero) a la hora de ofrecer servicios para Linux. Ahora veremos porqué esto casi fue más una bendición:

Las propias distribuciones se han encargado de implementar en sus sistemas un software capaz de descargar, instalar y ayudarnos a configurar los programas que necesitemos. Por supuesto que también los "busca" por nosotros en los sitios de Internet que tenga predefinidos en su configuración. Estos sistemas creo que empezaron a partir del apt de Debian.
El sistema de apt está bastante elaborado y puede llegar a ser complejo si queremos hacer más cosas que instalar nuevo software y actualizar el existente dejándonos llevar por el ritmo de Debian, pero básicamente usaremos dos herramientas:

apt-cache
y
apt-get

Con apt-cache podemos hacer búsquedas por nombre o descripción del software (ej.: apt-cache search apache nos devolverá unos resultados con decenas de paquetes que tengan que ver con Apache, entre ellos el mismo Apache). También podemos mirar los detalles de algún paquete en concreto con apt-cache show nombrepaquete. Sencillo ¿verdad?

Pues con apt-get la cosa no se complica. Si han intentado alguna vez instalar software se habrán encontrado con el problema de que éste requería de otro software instalado anteriormente para funcionar, normalmente unas librerías (por ejemplo en Windows algunas de Visual Basic, alguna versión moderna de DirectX, ... y en Mac las CarbonLib, alguna actualización del sistema, etc) determinadas. El caso es que en Windows y Mac estos casos se dan poco pues las aplicaciones suelen traer estas librerías "dentro" (coger esto con pinzas) del programa. Las ventajas de hacer esto son claras, pero la desventaja es el mayor consumo de espacio tanto en disco duro como en RAM.
Pues bien, para que no os paseis toda una tarde buscando las librerias que necesiteis (puede llegar a ser un infierno a veces :D) apt-get las baja e instala antes de instalar el software que las necesita.

Si bien el uso de este sistema es genial necesita de una gente detrás que vaya "empaquetando" el software de manera que apt pueda encontrarlo. En Debian de esta tarea se encargan voluntarios y cada uno tiene bajo su responsabilidad almenos un paquete (=programa, libreria, etc) del que vigilar que funcione antes de entregarlo para que apt pueda hacer uso de él. Es una tarea titánica, pero os puedo decir que en el 99'9% de los casos en los que he necesitado un software libre (el propietario-gratuito a veces también y el de pago nunca ;-)) me ha bastado con usar herramientas como apt.

Además de esto la comunidad dispone de sus propias webs para hacer un seguimiento de las novedades en cuanto a software libre e incluso para alojar los proyectos que surjan. Los mejores ejemplos son Freshmeat y SourceForge. Si bien ambas no son restringidas a sistema operativos libres sí lo son a proyectos comerciales, en especial SourceForge.

Para acabar me gustaría daros la buena notícia de que la mayoría de estas herramientas tienen front-ends (=interfaces más amigables que la línea de comandos) para facilitaros las tareas. Una lista de las aplicaciones tipo apt y las distribuciones para las que fueron creadas quedaría más o menos así (las más conocidas):


  • RedHat: up2date (tiene front-end gráfico).

  • Mandrake Linux: urpmi (tiene front-end gráfico).

  • SuSe Linux: YaST2 (es un apartado dentro de YaST2, por supuesto con front-end gráfico).

  • Debian: apt (tiene front-ends amigables en modo texto, desconozco de alguno gráfico).


Comenta (6) comentario/s

Entiende Linux (III): Todo es un fichero

Sección [Linux] Fecha [2003-07-30] Hora [07:01]

¿Fichero o archivo? me gustan las dos palabras por igual. No así carpeta y directorio, donde siempre usaré directorio.
Aclarado esto paso a explicaros un poco esta filosofía de trabajo heredada de Unix.

En Linux cualquier elemento del sistema es tratado como un archivo, ya sean datos o dispositivos. Para que lo veais un poco os contaré como suele ir organizado el árbol de directorios:

Directorio Raíz --> /
Dentro de este directorio encontramos todo el sistema, así que no hay manera de salir de él (a no ser que estemos dentro de un chroot o similar... Pero eso lo dejamos para Matrix 3 ;-)

/usr
En este directorio encontraremos la mayoría de programas instalados en nuestro sistema así como sus manuales e incluso código fuente si fuera necesario. Dentro de este directorio encontramos subdirectorios como /usr/bin con los binarios de los programas, /usr/local donde normalmente se instalan los programas que compilamos a mano (es decir, que no pertenecen al sistema de empaquetado de la distro), /usr/X11R6 donde encontramos los archivos relativos a programas que funcionan bajo el entorno gráfico XFree86, /usr/src donde irán a parar los códigos fuentes de los programas que vienen empaquetados (siempre que así lo queramos) y donde se acostumbra a crear un subdirectorio para contener el código fuente del núcleo/kernel. Encontraremos más directorios, pero saber para que son os lo dejo como ejercicio o para una próxima entrega :-)

/var
En teoría es para archivos con contenido variable. Desde logs del sistema o de los diferentes daemons hasta los buzones de correo.

/home
Dividida en subdirectorios. Uno por cada usuario real del sistema y con el nombre de usuario por título. Si nuestro usuario fuera pj nuestra carpeta de usuario sería /home/pj y allí podríamos guardar todo lo que quisiéramos (siempre y cuando el administrador del sistema no nos imponga un espacio predeterminado -cuota de disco-).

/proc
Aquí encontraremos información del sistema. Desde la relativa al procesador o la memoria RAM hasta la carga de las baterías del portátil. Por ejemplo si hacemos un cat /proc/cpuid veremos la información de nuestro procesador.
Incluso podremos cambiar alguna configuración con un simple echo 1 | /proc/dispositivo_a_cambiar

/tmp
Creación y destrucción de archivos temporales. En principio no lo usaremos demasiado, aunque hay tareas que requieren el uso de algún directorio similar.

/dev
Aquí viene la demostración más chocante de que todo es un fichero. Es el directorio de dispositivos del sistema. Desde la tarjeta de sonido hasta la de vídeo, pasando por capturadoras, webcams, puertos, ratones, teclados, unidades de almacenamiento... Todo se accede desde aquí. Podemos hacer cosas bastante curiosas como probar la tarjeta de sonido enviando ruido a /dev/dsp (o el dispositivo que nos corresponda).

/bin y /sbin
Ambos directorios suelen contener binarios más o menos esenciales para el sistema.

/boot
Donde acostumbramos a guardar el kernel compilado y otras cosas similares.

/mnt
Se suele usar este directorio para crear subdirectorios dentro donde montaremos nuestras unidades (otros discos duros, particiones, cd, dvd, ...).
Por montar una nueva unidad se entiende como anclarla a un punto del sistema, en este caso podemos poner el ejemplo de un CD.
Creamos /mnt/cdrom y montamos (mount -t iso9660 /dev/hdb /mnt/cdrom) el CD en el punto. Os explico la linea del mount:

mount es el comando.
-t iso9660 indica que estamos montando un volumen con formato iso9660, que es el de los CD.
/dev/hdb es la ruta donde se encuentra físicamente nuestro CD-Rom. En este caso es el dispositivo IDE (hd) esclavo del primer canal (b). Si fuera el master del segundo canal sería c y si fuera el esclavo del segundo... Imagino que lo adivinais :-)
/mnt/cdrom le indica a Linux en qué punto del árbol de directorios queremos poder acceder a la nueva unidad.

Así que para ver lo que hay dentro del CD tan solo tenemos que acceder a /mnt/cdrom y hacer un listado (ls) o acceder desde algún navegador gráfico como Konqueror o Nautilus.


Espero que con esta corta explicación os quede un poco más clara la forma de trabajar con Linux. Quejas, erratas, sugerencias, preguntas, ... En los comentarios de la entrada o a mi correo ( pjcoolnetSIN@SPAMterra.es )


Comenta (7) comentario/s

Entiende Linux (II): El Hardware

Sección [Linux] Fecha [2003-07-28] Hora [23:35]

Leo a veces gente que se queja amargamente de que con tal o cual distribución de Linux no pueden usar determinado hardware mientras que con otra distribución sí que pueden.

El trabajo que les supone reinstalar otra distribución es demasiado como para no hacer el esfuerzo de dar soporte para ese hardware concreto a mano (siempre y cuando la versión actual del núcleo Linux lo soporte). La lástima es que sabemos a ciencia cierta que estas personas harían el esfuerzo, pero la falta de información hacen que desconozcan que dos sistemas Linux pueden ser tan similares o tan distintos como uno quiera aunque uno de ellos fuera una Debian 3.0 y el otro una RedHat 9.0. Veamos a que me refiero:

La forma de poder usar nuestro hardware en Linux viene de dos formas que al fin y al cabo son dos maneras de hacer lo mismo: Cargar los controladores (drivers) del hardware en memoria.

La primera manera es tenerlos compilados dentro del núcleo, con lo que cuando arranque el sistema los controladores se cargarán automáticamente.
La segunda manera es compilarlos como un módulo independiente, de forma que podemos cargarlos al iniciar mediante algún script de arranque, descargarlos cuando queramos o simplemente cargarlos cuando los necesitemos. Esta última opción es especialmente útil en sistemas con poca RAM y con periféricos externos que no siempre estén conectados (memorias USB, grabadoras/lectores externos, etc).

Como dije en la anterior entrega el núcleo es hasta cierto punto independiente de la distribución que estemos usando. Si bien es cierto que casi todas las distros personalizan el kernel que viene de serie, siempre podemos poner uno bajado de Kernel.org con las opciones que nosotros queramos.

Sobre la compilación del Kernel hay un How-To (Cómo) especialmente útil en Kernel-como. En esta miniguía no entraremos, por ahora, en profundidad sobre que opciones añadir a la hora de configurar nuestro propio núcleo. Eso lo dejamos para más adelante, pero si eres impaciente o te interesa especialmente esta parte te ruego primero leas el Kernel-Como.

Como dije antes, podemos o bien configurar el controlador dentro del núcleo o como módulo independiente. Lo de independiente es un decir, pues normalmente depende del núcleo desde el que fue compilado e incluso de la versión del compilador. Debido a esto no se suelen ver controladores en Linux que no traigan su código fuente. Incluso los controladores de Nvidia deben ser compilados para nuestro núcleo.

Dejando de lado las compilaciones vamos a pasar a la parte más útil y que sería una respuesta a la pregunta "¿Si mi Mandrake/SuSe/RedHat/Debian/... no me ha detectado tal o cual hardware qué hago?". Vayamos por partes:

Primero asegurémonos de que nuestro hardware está soportado realmente en Linux y a partir de que versión del núcleo lo está. No hay una fórmula magistral para hacer esto y es aquí donde deberemos invertir más tiempo, ya sea en Google, IRC o en la web del fabricante. A día de hoy la mayoría de hardware está bien soportado, las excepciones son:

· Winmodems: Módems normalmente internos de bajo coste, pensados para correr con Windows ahorrando así dinero en hardware. Tampoco algunos dispositivos ADSL por USB no están soportados por el mismo motivo (son los típicos que bajan el rendimiento de tu PC cuando trabajas con ellos).

· Aceleradoras 3D: Las Nvidia tienen un soporte más que decente a pesar de que sus controladores son propietarios. ATI donó controladores pero las opiniones sobre estos son bastante contradictorias, así que no puedo pronunciarme por ahora. El resto de tarjetas están más o menos soportadas, incluyendo las que usan el chip Kyro2 y las extintas 3Dfx. Cito las Aceleradoras 3D porque a pesar de que como tarjetas 2D sí están soportadas, para activar la aceleración 3D quizá tengamos que buscar controladores a parte.

· Tarjetas de sonido: Suelen estar bien soportadas en lo básico, pero ha habido problemas con el sonido envolvente, los sistemas tipo 5.1 y las salidas digitales. Hoy en día me consta que la mayoría de errores graves están subsanados.

· Dispositivos de almacenamiento USB: En principio no deberían dar problemas a pesar de lo que ocurre con algunos WinModems ADSL, es conveniente tenerlos conectados durante la instalación de nuestra distro para facilitar su configuración.

Una vez sepamos que funciona solo nos queda saber qué modulo del núcleo le corresponde. Esto lo podemos saber mediante el método anterior de búsqueda :-)

Por suerte para nosotros la mayoría de distros compila casi todos los módulos (o almenos los más usuales) de forma que no tengamos que compilarlos nosotros cuando instalemos hardware. Gracias a esto y sabiendo qué módulo tenemos que cargar la tarea será tan sencilla como:

$ modprobe nombremodulo

Y con un simple lsmod veremos si está cargado en memoria o no.

Después de esto nuestro trabajo será configurar las opciones del hardware, si es que las tiene (p. ej. los parámetros de red para una tarjeta ethernet). Como depende mucho de qué es lo que estemos configurando esto lo dejamos para otro día.

Notas interesantes:

· ¿Cómo saber que versión del Kernel tengo?
$ uname -a te enseñará la versión de tu Kernel. También en el panel de control de KDE puedes verla. Las distros actuales tienen alguna versión de la rama 2.4 (que es la rama estable).

· Si mi núcleo es personalizado por mi distro y quiero compilarlo o compilar un módulo para él, ¿de dónde saco el código fuente?
Echa un vistazo a los CD's de tu distro y busca paquetes que sean similares a kernel-headers-versión.de.tu.núcleo o kernel-sources-versión.de.tu.núcleo. Si no están bájatelos de los FTP de tu distro, por ejemplo:

RedHat
Mandrake
Debian

También puedes bajarlos con las herramientas de actualización de tu sistema: up2date en RedHat, urpmi en Mandrake, YaST2 en SuSe y apt en Debian.

De nuevo espero que os sirva de ayuda y como siempre teneis los comentarios para lanzar preguntas, sugerencias, aviso de erratas, ... ¡Gracias!


Comenta (3) comentario/s

Entiende Linux (I)

Sección [Linux] Fecha [2003-07-28] Hora [08:00]

Con esta entrada quiero iniciar una serie de vaya-usted-a-saber-cuantas entradas que intenten explicar un poco que es eso de Linux. No es nada muy ambicioso, simplemente quiero que quien no tenga nada claro qué es Linux lo entienda tal como yo lo entiendo :-)

Antes de empezar a soltaros el rollo me gustaría que desconectarais el chip en el que guardais toda la información sobre como usar un ordenador ya sea con Windows o con Mac.

Lo que comúnmente entendemos por Linux es un sistema operativo como podría ser Windows o MacOS. Es decir, una serie de código que nos permite interactúar a nosotros y a los programas con la parte física del ordenador (el hardware). En Linux esto se reduce a la mínima expresión si lo comparamos con Windows o MacOS que, por ejemplo, tienen el entorno gráfico incluido y uno no se puede desprender de él para trabajar de otra forma con la máquina (aprovechando, además, todos sus recursos).

Linux como conjunto de código no pertenece a nadie o, mejor dicho, nos pertenece a todos. Gracias a su licencia libre (GPL) se nos garantiza que podremos usar y distribuir Linux con total libertad siempre y cuando mantengamos esa libertad para el receptor de nuestra distribución.

En la parte que quizá más os interese ahora (su uso) os diré que Linux es, de alguna forma, bastante modular a la hora de interactuar con el sistema.
Una máquina Linux por ser tal no implica que la podamos usar a golpe de ratón, moviendo ventanas. Ni siquiera a través de un teclado conectado a "la torre".

Linux para que interactuemos con él nos ofrece lo que algunos llaman "terminales virtuales" y es simplemente una línea de comandos Unix pura (es un decir) y dura. Pero la interfaz que vemos en pantalla no es la única terminal virtual que tiene nuestro sistema. Dependiendo de la configuración de nuestro Linux podemos tener muchas diferentes -creo que hasta 256- y con una combinación de teclas (normalmente alt+f# donde # es un número) cambiaremos de una a otra.
No voy a seguir explicando más detalladamente el tema de las terminales virtuales (que también pueden ser remotas por ejemplo) porque simplemente lo he presentado para que vayais entendiendo que en Linux las cosas son diferentes.

Lo que algunos os estareis preguntando es ¿dónde están las ventanas? Pasemos a explicarlo:

El sistema gráfico de Linux más usado (y el que usareis vosotros seguramente) es el llamado XFree86 que es una implementación de X11. Este sistema ofrece una interfaz para usar la potencia gráfica de la máquina y es lo que deberemos tener bien configurado si queremos aprovechar la potencia de la misma.

XFree86 no ofrece nada más que facilidades al desarrollador, pero al usuario lo deja con un fondo grisáceo y un cursor de ratón en forma de X. Aquí es donde entran los llamados Window Managers o WM. Estas piezas de código corren apoyadas sobre XFree86 para ofrecer un entorno con ventanas para un trabajo más cómodo con nuestras aplicaciones gráficas. En resumidas cuentas: Sin WM podríamos trabajar en modo gráfico (en XFree86) pero no podriamos mover las ventanas, maximizar/minimizar, ajustar, cambiar el foco, etc. Ya que todo esto es trabajo del WM. Ejemplos de WM: IceWM (se os hará sencillo de usar a los usuarios de Windows), WindowMaker (Clon de NextStep), Fluxbox (minimalista), ...

Dependiendo de la distribución de Linux que compreis os vendrán preconfigurados unos u otros, aunque lo más normal hoy en día es que vengan directamente con entornos de escritorio y estos ya integran un WM. ¿Quereis saber qué es una distribución Linux? ¿y un entorno de escritorio?

Las llamadas distribuciones o distros son sistemas Linux normalmente integrados por alguna empresa (RedHat, SuSe, Mandrake) o grupos de voluntarios (Debia, Gentoo, Slackware) con unos programas, configuraciones, aspiraciones, ... Más o menos concretos. Todas ellas integran el núcleo de Linux en la última versión disponible cuando se terminó esa versión de la distro y todos los programas que crean que te van a hacer falta. Así nos encontramos con que tenemos 2 versiones a tener en cuenta: La de Linux en sí (2.4.21 en el momento de escribir esto) y otra de la distro (por ejemplo 9.0 em RedHat, 9.2 en Mandrake, 3.0 en Debian...).

Un entorno de escritorio suele ser un conjunto de tecnologías que facilitan la integración tanto de funcionalidades como de aspecto para todos los programas que se creen usando sus recursos. Los mayores ejemplos hoy en día son Gnome y KDE. El aspecto visual de las aplicaciones creadas para cada uno de ellos es muy similar, la forma de uso también se hace igual y el intercambio de información entre unos y otros programas se facilita con lo que tenemos un entorno gráfico fácil de usar para el usuario final. Los WM que integran normalmente Gnome y KDE son Metacity y Kwm respectivamente.

Por cierto, también cada escritorio tiene su propia numeración de versión (2.2.2 en Gnome y 3.1.2 -casi 3.2- en KDE si hablamos de versiones estables) a parte, por supuesto, de la que tiene el sistema XFree86 que anda por la 4.3.0.1 lanzada en Mayo de 2003.

Espero que por ahora os sirva de algo. Huelga decir que espero vuestras preguntas, pero eso sí, sobre el tema del artículo :-)
Para problemas concretos hay listas de correo, foros y similares sobre las que sí os puedo ayudar a encontrar la que necesiteis.


Comenta (60) comentario/s

¿Cambio de hábitos?

Sección [enlaces] Fecha [2003-07-24] Hora [22:29]

Debido a la sequía creativa que me lleva a no publicar casi nunca en esta bitácora he decidido que quizá lo mejor sea un cambio de rumbo en Simbiosis.

El título de esta bitácora fue concebido en contraposición al de mi primera bitácora en Blogalia: Confrontación donde, más de lo que me gustaría, me dedico a enfadarme con partes concretas del mundo y de la humanidad. Es casi casi un gruñoblog si no fuera porque de vez en cuando me sale algo tranquilo para poner :-)

Así que sin perder el alma que el nombre da a la bitácora propongo (se votará democráticamente entre todos los autores de la bitácora xD aunque me gustaría leer vuestra opinión, claro) hacer de este sitio un lugar donde ayudar al prójimo como buenamente pueda. Quizá enlazando, quizá explicando algo intentando emular a las damas y caballeros que manejan la palabra como una parte más de su cuerpo (¿Ejemplos? Miren el directorio de Blogalia para unos cuantos) pero, por supuesto, en los campos donde tenga algo que contar. Así que sin más dilación empieza la cuenta atrás para el nuevo rumbo de Simbiosis. Eso sí, sin perder lo anterior :-)

P.D.: Me doy cuenta que esto de cambiar el propósito de mis webs es como una enfermedad, no es la primera vez que lo hago y seguramente no será la última :-)


Comenta (6) comentario/s

Bitácoras en Barrapunto

Sección [enlaces] Fecha [2003-07-24] Hora [00:02]

Es increíble la de bitácoras interesantes que se han abierto en Barrapunto desde la desaparición de los MiBP. Este sistema menos pesado que el anterior ha traído gente a la que me gusta mucho leer, así que si no les importa les paso los enlaces:

Bitácoras de BP más activas
Eppingforest
Arturo Buendía
Quique
Payne
SegFault
jsmanrique

Y los más conocidos por aquí:

fernand0 (¡no paras! x))
Ctugha
rvr (otro que no para quieto :P)

Hay más, muchas más. Algunas tan interesantes como las que cito pero tocando otros temas (anaescribe) o quizá no tan activas (guacamayo, reidrac, Draco, Drizzt, makross) pero sin duda vale la pena echarles un vistazo.


Comenta (6) comentario/s

¡Maldito! ¡No hiciste MIS deberes!

Sección [enlaces] Fecha [2003-07-16] Hora [07:14]

Siento la entrada corta (cada día más rácano...) pero es que este comentario se la merece por si sola.

A ver, Chewie, ¿qué es eso de no hacerle el trabajo sobre El Quijote a la persona esta?


Comenta (5) comentario/s