76

LiNUX+ DVD 1

Embed Size (px)

DESCRIPTION

BitTorrent Nuestro programa de mensajería instantánea Photoshop en Linux

Citation preview

Page 1: LiNUX+ DVD 1
Page 2: LiNUX+ DVD 1
Page 3: LiNUX+ DVD 1
Page 4: LiNUX+ DVD 1

1/2004

2 Linux+ 1/2004

Descripción del contenido de DVDsPiotr Truszkowski

ActualidadesNovedadesKrzysztof Krawczyk

Núcleo LinuxMaja Królikowska

DebianGrzegorz Prokopski

MandrakeDaniel Koć

AuroxRobert Główczyński

KDEPaweł Biliński

LinuxFreshPiotr Machej

4

Bimestral Linux+ está publicado por Software-Wydawnictwo Sp. z o. o. Producción: Monika Godlewska [email protected] jefe: Krzysztof Krawczyk [email protected]: Piotr Truszkowski [email protected] de Redacción: Katarzyna Gajewska [email protected]ón de DVD: Krzysztof Krawczyk, Piotr TruszkowskiDiseño portada: Agnieszka MarchockaPublicidad: [email protected]ón: [email protected]ón y composición: Marcin Ziółkowski [email protected]ón: Paulina StosikCorrectores: Rosario Ortega Serrano, Silvia López de Pariza Barbosa, Fernando Escudero García, Mario Plasencia Ortega, Jorge Barrio AlfonsoDistribución: SGELAvda Valdelaparra, No29, Polígono Industrial, 28108 Alcobendas (Madrid), España

Dirección: Software–Wydawnictwo Sp. z o.o., ul. Lewartowskiego 6, 00-190 Varsovia, PoloniaLa Redacción se ha esforzado para que el material publicado en la revista y en los DVDs que la acompañan funcionen correctamente. Sin embargo, no se responsabiliza de los posibles problemas que puedan surgir. Todas las marcas comerciales mencionadas en la revista son propiedad de las empresas correspondientes y han sido usadas únicamente con fines informativos.

La Redacción usa el sistema de composición automáticaImprenta: Stella MarisLos DVDs incluidos en la revista han sido comprobados con el programa AntiVirenKit, producto de la empresa G Data Software Sp. z o.o.

10

12

14

15

16

8

Les doy la bienvenida cordial a todos los Lectores de la primera edición europea

de la revista Linux+, la única revista sobre Linux acompanada de dos DVDs, disponi-ble en 12 países de Europa.He utilizado Linux tanto en mi casa, como en el trabajo desde hace ya un par de años. Mi aventura con este sistema operativo empezó con Slackware 3.3, que instalé

desde disquetes en mi casa: necesitaba un sistema de Unix, porque en la universidad tenía clases relacionadas con esta materia. Linux me gustó, pero decidí cambiar la distribución por Debian, que sigo utilizando hasta ahora. Entre tanto en el trabajo empleaba varias versiones de Red Hat y Mandrake, para quedarme al fin con Aurox. De vez en cuando, observo el funcionamiento de Windows que utilizan unos amigos míos y tengo que decir que Linux dispone de las mismas funciones, pero estoy convencido de que su potencia supera significativa-mente la de Windows. Últimamente he observado el desarrollo dinámico de herramientas que permiten arrancar las aplicacio-nes de Windows en Linux. El mejor ejemplo es Wine. Con ayuda de este programa puedo arrancar sin obstáculos programas tan populares como Photoshop o juegos (Diablo II).En el presente número de Linux+ me gustaría mostraros que Linux es una alternativa atractiva al sistema Windows. Primero, junto con el sistema se ofrecen varios equivalentes de Windows (GIMP, MLDonkey, Samba). Segundo, en Linux podemos arran-car los programas desde Windows. Tercero, en Linux podemos trabajar incluso en Windows (CoLinux).En los DVDs hemos insertado populares distribuciones de Linux, preparadas tanto para la instalación (Mandrake 10.0), como para el uso (Linux+ Live DVD).Os invito a la lectura y os ruego nos enviéis vuestras opiniones sobre la revista.

Linux es un Windows mejor

18

¡Advertencia! Venta del presente número sin el consentimiento del editor es ilícito e ilegal.

Krzysztof KrawczykRedactor Jefe de Linux+

Page 5: LiNUX+ DVD 1

Tema del número: Integración de Linux y Windows

3www.lpmagazine.org

EntrevistaEntrevista con los creadores de Wine y CrossOver OfficeKrzysztof Krawczyk

GráficosGIMP 2.0 Kamila FoltaYa han pasado tres años desde la creación de la pri-mera versión de GIMP, un ramo firme de 1.2.x. Con impaciencia hemos esperado una edición nueva de este conocido programa para tratamiento de gráficos, esta vez basado en la librería GTK+ 2.x. En el artículo vais a encontrar un listado de características de la versión final.

Photoshop en LinuxPiotr TruszkowskiMuchas personas creen que Photoshop, de la empresa Adobe, es el mejor programa de creación y edición de gráficos. Por desgracia, no existe su versión para Linux. Este problema se puede resolver gracias a la utilización de una herramienta que se llama Wine. En el artículo encontraréis una guía con explicaciones de cómo arran-car con éxito Photoshop 7 en Linux.

Integración de Linux y WindowsCooperative LinuxKrzysztof KrawczykYa hemos escrito sobre las posibilidades de usar Wine para arrancar aplicaciones Windows bajo Linux, y tambiéndel arranque de unos ordenadores virtuales con el sistema Windows con ayuda de VMware. Sin embargo, a veces nos gustaría arrancar Linux bajo Windows. En este caso nos ayudará un proyecto nuevo con el nombre de Cooperative Linux. De una manera simple accederemos a una consola de texto del sistema Linux, p.e. Debian o Gentoo.

Linux en la redSamba 3.0 – un controlador completo del dominio Windows NTRafał SzcześniakLa versión nueva de Samba, por primera vez garantiza la funcionalidad completa del controlador del dominio Windows NT bajo la licencia de GNU GPL. Posibilita a los destinatarios sustituir completamente Controlador de Dominio Principal (PDC) que funciona en el sistema Windows NT con un equivalente: el paquete Samba 3.0, en casi cada sistema Unix, p.e. Aurox Linux. Además, el proceso de migración en sí fue elaborado con todos los detalles, por eso, ningún administrador tendrá problemas con él.

38

26

20

34

Primeros pasosMLDonkeyPiotr MachejLas redes P2P se han difundido gracias a su eficiencia en la descarga de grandes cantidades de datos. Una de estas redes es el popular “borrico”. Con ayuda del cliente más universal de este protocolo MLDonkey.

DCGUI-QtPiotr TruszkowskiDirect Connect es una red muy popular P2P. Existen varios clientes de este servicio de Linux. El más popular, y probablemente el mejor de ellos, es DCGUI-Qt.

BitTorrentDaniel KoćEl rápido protocolo del intercambio de datos con el nombre BitTorrent se empezó a utilizar para facilitar las representaciones ISO de populares distribuciones de Linux, así como de programas grandes para este siste-ma, p.e. demos de juegos comerciales.

Equipo Cámara digital en LinuxPiotr WolnyLa mayoría de las cámaras digitales asequibles en el mer-cado funcionan correctamente con Linux, sobre todo las más nuevas, que soportan el protocolo USB-Storage.

Para programadoresNuestro programa de mensajería instantánea Marek SawerwainPYRO es una librería escrita en Python destinada a la creación de unas aplicaciones dispersas. Después de la lectura del artículo vais a saber cómo escribir vuestro propio programa de mensajería instantánea, parecido a Licq (ICQ) o Psi (Jabber).

Para jugadoresAmerica’s ArmyKrzysztof Wolski¿Te gustaría ingresar en el Ejército Americano? En la realidad no sería tan fácil, pero basta con jugar en Ame-rica’s Army para comprobar qué nos parece una vida así. Al principio, la vida dura de un recluta: muchos entrena-mientos. Luego, se puede tomar parte en varias misiones cada vez más importantes en el territorio del enemigo.

Unreal Tournament 2004Piotr TruszkowskiEn el juego Unreal Tournament 2004 como siempre disparamos con varias armas contra nuestros enemi-gos, pero podemos también movernos en todoterrenos y pilotar en sencillos aviones de caza.

42

48

52

54

60

68

51

70

Page 6: LiNUX+ DVD 1

aktualności

4

descripción de DVDs disco A

Linux+ 1/2004

GNOME 2.6La última versión estable de este popular entorno gráfico. En comparación con la versión anterior, se subsanaron varios errores molestos, cambió el modo de reconocer los ficheros MIME, se introdujeron varias mejoras que aumentaron la utilidad del entorno.Paquetes fuentes. http://www.gnome.org/

KDE 3.2.1Paquetes binarios de este entorno gráfico de trabajo más popular en el mundo, destinados para las distribuciones:– Fedora Core 1/Aurox Linux 9.3;– SuSE Linux 9.0.En el disco adicionalmente se encuen-tran los paquetes fuentes.http://www.kde.org/

Adobe Photoshop, InDesign, IllustratorEl conjunto de tres aplicaciones populares, imprescindibles en cada agencia de gráficos (versiones trial):– Adobe Photoshop: programa de trata-miento de ficheros digitales de gráficos (gracias a sus funciones extensas, varias opciones de desarrollo y a la marca de renombre de su fabricante, Adobe Photoshop es el líder indiscutible en el mercado de aplicaciones profesionales de gráficos, destinadas a la edición de ficheros gráficos tipo raster);– Adobe Illustrator: programa de edición de gráficos vectoriales; el competidor más importante de Corel Draw;– Adobe InDesign: programa de composi-ción de textos de enormes posibilidades, se puede desarrollar fácilmente; el com-petidor más importante de Quark, popu-lar en los ordenadores de Macintosh.Todas estas aplicaciones funcionan bajo WINE, una implementación libre Win32 para plataformas de Unix que incluye Linux.http://www.adobe.com/

UFO: Alien InvasionAlgunos jugadores, sin duda, recuerdan el juego UFO: Enemy Unknown. Gracias a la combinación interesante de juego de táctica estratégico, con tema actual de vida extraterrestre, se creó un bestseller mundial. UFO: Alien Invasion tiene mucho en común con su hermano mayor.http://ufo.myexp.de/

OpenOffice.org 1.1.1La última versión del mejor paquete de oficina Open Source. OpenOffice.org es un paquete que permite el intercambio de datos libre con el software de Microsoft Office.http://www.openoffice.org/

Linux+ Live DVD

Linux+ Live DVD es una distribución de Linux que arranca con el DVD. No

es necesario instalarlo en el disco duro y puede funcionar de manera indepen-diente del sistema operativo ya instalado. Para poner en marcha Linux+ Live, es suficiente indicar en BIOS del ordenador la unidad DVD como herramienta básica de arranque, introducir el DVD con la dis-tribución y volver a arrancar el ordenador. Luego vemos la pantalla de bienvenida. Después de pulsar la tecla [Enter], Linux+ Live DVD arrancará. Podremos selec-cionar el idioma que deseamos utilizar en el sistema, entre inglés, francés, es-pañol, alemán y polaco. Por ejemplo, para arrancar el sistema con el soporte del idioma inglés, escribimos en y pulsamos [Enter]. El sistema automáticamente detec-ta nuestro equipo y configura el entorno gráfico. Linux+ Live DVD contiene, entre otros:

n núcleo Linux 2.4.22 con varios parches que amplian sus funcionalidades;

n entorno gráfico KDE 3.2.1: nueva ver-sión del entorno gráfico más popular para Linux;

Entre varias novedades hay que desta-car el nuevo Konqueror (en su versión actual puede competir con Mozilla, a ver que programa llevará el premio), el nuevo menú (simplemente tiene un aspecto más interesante y más moder-no, p. ej. incluye pestañas de división de tareas, aplicaciones y herramientas más usadas), KDE Wallet (guarda nuestras contraseñas de forma segura, cifrada) y muchas otras aplicaciones interesantes. En comparación con las versiones antiguas, se aumentó la esta-bilidad del paquete y se eliminó miles de errores.

n Comunicadores de mensajería por Internet: comunicadores Psi y Kopete

adjuntos facilitan el contacto con per-sonas que están a cientos kilómetros de nosotros;

Psi es uno de los mejores clientes de la red Jabber, en cambio, Kopete es un verdadero multicomunicador con so-porte de ICQ, AIM, MSN, Yahoo, IRC, GaduGadu y de SMS.

n Programas de soporte de la red P2P; Gracias a los programas DCGUI-Qt y MLDonkey se puede descargar varios datos desde Internet durante largas horas.

n Samba 3: un servidor de ficheros y de impresoras. Su última y la mejor ver-sión;

En comparación con otras ediciones, Samba 3 se comunica mejor con los sistemas Windows y garantiza al usuario una mejor eficiencia, y al administrador un trabajo sin interrup-ciones y sin averías.

n America’s Army: la versión completa del juego de destreza, en primera per-sona, basada en el motor de gráficos de popular Unreal;

n Postal 2 Demo: controversial juego de destreza para adultos;

n Unreal Tournament 2004 Demo: la demo de la nueva versión del juego de destreza que transformó el mundo de partidos en la Red;

n aplicaciones de multimedia;n y mucho más...

Después de arrancar, hay que entrar en el sistema. Ponemos aurox como login y pul-samos [Enter].

Linux+ Live DVD es una buena opor-tunidad de presentar Linux en su entorno. Si llevas contigo el disco con esta distri-bución, puedes utilizarlo en cada lugar donde haya acceso al ordenador. ¡Qué te diviertas!

Linux+ Live DVD

GIMP y Sodipodi

Page 7: LiNUX+ DVD 1
Page 8: LiNUX+ DVD 1

descripción de DVDs

6

disco B

Linux+ 1/2004

Mandrake 10.0 Community DVD

Mandrake Linux es una distri-bución que goza de estima entre los usuarios principantes de Linux. Se

debe entre otros a su instalación sencilla e intuitiva, a su enorme comunidad y a su configuración simple. El sistema está pro-visto de una cantidad enorme de varios tipos de configuradores, por eso, incluso una persona que empieza su aventura con el ordenador no debería tener problemas con el manejo de su nuevo sistema ope-rativo. En Mandrake Linux 10.0 Community, entre otros, encontraréis:

n núcleo Linux 2.6.3;n librería Glibc 2.3.3;n servidor del entorno gráfico XFree86

4.3;n entornos gráficos KDE 3.2, GNOME

2.4.2 y IceWM 1.2.13;n paquetes de oficina OpenOffice.org 1.1

y KOffice 1.3;n navegador web Mozilla 1.6;n cliente del correo electrónico Evolution

1.4.5;n programa de gráficos GIMP 1.2.5;n reproductor de música XMMS 1.2.9;n reproductor de películas MPlayer

1.0.0pre3;n conjunto de compiladores GCC 3.3.2;n servidor web Apache 2.0.48,n servidor de ficheros y de impresoras

Samba 3.0.2;n servidor de bases de datos MySQL

4.0.18;n servidor FTP ProFTPD 1.2.9;n servidor de correo electrónico Postfix

2.0.18;n servidor de acceso remoto OpenSSH

3.6.1p2.

Mandrake Linux 10.0 es un sistema accesible al usuario español. El entero procedimiento de instalación se puede realizar en español y, a partir de ahí, ya tenemos un sistema adaptado a nuestras necesidades idiomáticas.

El enorme conjunto de software sumi-nistrado junto con la distribución es la siguiente gran ventaja de Mandrake Linux 10.0. Encontraremos aquí literalmente de todo: en totalidad, se nos entregan más de 3.000 paquetes que podemos utilizar a cada instante.

En comparación con las versiones anteriores, se nota más la transformación del núcleo del sistema. El nuevo Mandrake está provisto de un núcleo de la serie 2.6.x, lo que llega a ser un estándar entre los fabricantes de distribuciones de Linux.

La interfaz, un poco distinta, Man-drake Control Center es una de las nuevas transformaciones, así como la exis-tencia de fuentes del núcleo estándar (faltaron en la edición 9.2 que imposi-bilitaba, por ejemplo, la instalación de drivers para tarjetas gráficas basadas en chipsets Nvidia), de versiones nuevas de escritorios (entre otros, KDE 3.2) y de aplicaciones. Se eliminaron varios errores, observados desde la publicación de la penúltima versión (entre otros, el problema con las estaciones LG).

En resumen, el nuevo Mandrake es más rápido, más estable y más moderno. La versión 10.0 nos ofrece cambios ver-daderamente revolucionarios en com-paración con las versiones anteriores y os recomendamos calurosamente su actualización.

La instalación del nuevo Mandrake es muy sencilla y no debería presentar dificultades, incluso a un usuario principante. Si disponemos de un disco

Mandrake 10.0 Community

duro nuevo y limpio, podemos realizarla en diez pasos:

n arrancamos el ordenador con el DVD adjunto;

n después del arranque del programa de instalación, seleccionamos el idioma;

n definimos el nivel de seguridad como estándar;

n dividimos el disco en particiones, por medio de la opción Usar el espacio libre;

n seleccionamos los grupos de paquetes que se instalarán;

n aceptamos el comunicado relativo a la seguridad;

n definimos la contraseña del adminis-trador del sistema y agregamos un usuario nuevo;

n configuramos los periféricos conecta-dos al ordenador y nuestro entorno gráfico;

n configuramos el programa de arranque;

n finalizamos la instalación con el comando Volver a arrancar.

Nos queda desearte, querido Lector, ¡qué te diviertas con la nueva versión de Mand-rake Linux!

http://mandrakelinux.com/

Page 9: LiNUX+ DVD 1

7www.lpmagazine.org

descripción de DVDs

Podemos asegurar que MEPIS es una distribución interesante y digna de nuestro interés. La facilidad de uso, la gran velocidad y estabilidad, las herramientas de administración interesantes y la creciente popularidad son ventajas que, con certeza, les interesarán a muchos usuarios de Linux, tanto a los futuros como a los actuales.

http://www.mepis.org/

MEPIS 2004.05.b00

MEPIS es una distribución de Linux que se desar-rolla de modo dinámico y goza cada vez de

más estima entre los usuarios (según Distrowatch.com, se halla dentro de las diez primeras distribuciones de Linux más populares). ¿Cuál es la diferen-cia entre MEPIS y sus competidores? En realidad, la respuesta es muy sencilla: MEPIS es un híbrido muy logrado una distribución tipo Live y de una distribución común que pode-mos instalar en nuestro disco duro. A decir verdad, existen muchas distribuciones Live que se pueden instalar en el disco duro (por ejemplo Knoppix), pero ninguna de ellas ofrece la posibilidad de usar otro disco con paquetes adicionales. MEPIS es conocido también por sus herra-mientas de administración; sencillas e innovadoras.

Últimamente ha aparecido una versión nueva de esta distribución de Linux, provista de varias novedades y de aplicaciones actuales (entre otros, núcleo Linux 2.6.4 y KDE 3.2.1). Se han introducido muchas modificaciones interesantes, por eso nos hemos decidido a incorporar este sistema en nuestra revista.

Recomendamos encarecidamente MEPIS a todos los que quieran probar Linux sin necesidad de instalar el sistema entero en el disco duro y que deseen hacerlo si la distribución testeada les ha gustado.

La tecnología de compresión de la imagen ha facilitado que en el sistema aparezcan ¡más de 1.100 programas! Entre ellos, se encuentran aplicaciones multimedia, gráficas, de música, paque-tes de oficina, navegadores web y muchos otros.

Es significativo que MEPIS esté basado en otra distribución muy popular: Debian GNU/Linux. Por eso, después de instalar MEPIS, se nos ofrecerá el acceso a un enorme repositorio de paquetes para Debian. Además, la instalación de MEPIS se limita a un par de clicks con el ratón, mientras que la instalación de Debian no es tan fácil.

MEPIS, ya durante el arranque, reconoce el equipo que tenemos en nuestro ordenador y lo configura de modo automático. La situación con el entorno gráfico es similar: toda la configuración se produce durante el arranque y es completamente automática.

MEPIS lo componen, entre otros:

n núcleo Linux 2.6.4;n servidor del entorno gráfico XFree86

4.3.0;n entorno gráfico KDE 3.2.1;n conjunto de compiladores GCC 3.3.3;n programa de gráficos GIMP 2.0.0;n librería Glibc 2.3.2;n programa para grabar CD/DVDs K3B

0.11.9;n paquete de oficina OpenOffice.org 1.1.1;n paquete de oficina KOffice 1.3;n navegador web Mozilla 1.6;n reproductor de música XMMS 1.2.10;n reproductor de películas Xine 1-rc3b.

MEPIS puesto en marcha

Centro de instalación de MEPIS

Requisitos mínimos de sistema:

n procesador Pentium CPU Frequency a un 1 GHz como mínimo;

n 256 MB de RAM;n tarjeta gráfica con 8 MB de

memoria RAM por lo menos;n unidad de CD a velocidad

mínima de 32x.

Page 10: LiNUX+ DVD 1

¿Quieres recibir tu revistaregularmente?

¡Pide suscripción!

¿Quieres pagar menos que en el kiosko?

LiNUX+ por suscripción es más barata:

86 €Si tienes preguntas, problemas o dudas,

escribe a: [email protected]

Precio de suscripción anual (12 números) de LiNUX+ – 86 €

Por favor, rellena este cupón y mándalo por fax: 0048 22 860 17 71 o por correo: Software-Wydawnictwo Sp. z o. o., Lewartowskiego 6, 00-190 Varsovia, Polonia; e-mail: [email protected]

Pedido

Nombre(s) Apellido(s)

Dirección

C. P. Localidad, provincia

Teléfono Fax

E-mail Suscripción a partir del N°

REGALO

¡En cada número 2 DVDs!

Realizo el pago con: □ tarjeta de crédito nO Válida hasta Fecha y firma obligatorios:

□ cheque a la dirección de la editorial Software-WydawnictwoDeseo recibir la factura antes de realizar el pago □

Page 11: LiNUX+ DVD 1

novedadesaktualności

8

actualidades

Noticias

Linux+ 1/2004

OpenOffice.org 1.1.1Los programadores del proyecto OpenOffice.org facilitaron la versión 1.1.1 de su paquete de oficina. Incluye las correcciones de los errores detectados (más de 500), pero también se introdujeron unas funcionalidades nuevas: OOoDic Autopilot (descarga de manera automática de uno de 87 diccionarios) y el soporte ampliado para idiomas, en el que se utilizan puntos para dividir las partes decimales de las enteras.http://www.openoffice.org/

GNOME 2.6Los programadores del proyecto GNOME facilitaron la versión 2.6 de su entorno gráfico de trabajo. Entre la enorme cantidad de nuevas funcionalidades que se encuentran en la versión final podemos destacar la interfaz más intuitiva en el asistente de ficheros (Nautilus); la ventana Ordenador con sistemas de ficheros, portadores y recursos de la red intercambiables (como Mi Ordenador en Windows XP); la ventana de diálogo ampliada para seleccionar un fichero; cambios dinámicos del sistema de teclado, la inclusión de botones multimedia entre las combinaciones de teclas dinámicas (antes accesible en Acme de fuera); facilidades en la selección de la imagen de fondo en el escritorio; varios applets cómodos en el escritorio. Además, en GNOME 2.6 se encuentran nuevas versiones de aplicaciones, entre otras, la del navegador Epiphany y del programa de teleconferencias GnomeMeeting.http://www.gnome.org/start/2.6/

Linspire – nuevo nombre de LindowsOSLa lucha en el juzgado por la denominación LindowsOS en algunos países se decidió a favor de la empresa Lindows Inc. (p.e. en Francia), pero en otros a favor de Microsoft, o todavía continúa. No se puede vender el sistema con la misma denominación en todo el mundo, por eso, la empresa decidió cambiar el nombre de su producto por Linspire. De este modo, Microsoft debería acabar con las demandas a la empresa. Dentro de poco, todos productos serán accesibles con la denominación nueva.http://www.linspire.com/

SUSE Linux 9.1

Durante las ferias CeBIT 2004, Novell presentó la versión inicial del sistema

SUSE 9.1, esta vez basada en el núcleo de la rama 2.6. ¿Qué tipo de novedades podemos encontrar en el sistema? Aquí tenéis un lis-tado de elementos más importantes de esta distribución de Linux:

n núcleo Linux 2.6.4;n entorno gráfico KDE 3.2.1 y GNOME

2.4.2;n servidor de ficheros y de impresión

Samba 3;n programa de gráficos GIMP 2.0;n programa de edición de videos Main-

Actor 5.2;n paquete de oficina OpenOffice.org 1.1.1;n herramienta para grabar discos CD/

DVD K3b 0.11.7;n asistentes de información Kontact 0.8.1

y Ximian Evolution 1.4.6;n programa de administración de bases

de datos Rekall 2.2.0b1.

El nuevo núcleo del sistema Linux en la versión 2.6 introduce varias soluciones nuevas, p.e. ALSA (Advanced Linux Sound Architecture), una arquitectura avanza-da de soporte del sonido por el sistema Linux, la cual es ahora su componente integral. Además, se ha implementado la perfeccionada interfaz ACPI (Advanced Configuration and Power Interface – avan-zada intefraz de configuración y admi-nistración de la alimentación), que per-mite administrar con más efectividad la alimentación y deja prolongar el tiempo de funcionamiento de ordenadores portá-tiles alimentados con batería.

En GNOME 2.4.2 se puso hincapié en la utilidad y la comodidad de manejo y, al mismo tiempo, se ofrecieron varias modificaciones importantes, entre otras, la herramienta para grabar CDs, el cliente universal de envío instantáneo de mensa-jes (Gaim) y la configuración simplificada de impresión (con ayuda del sistema CUPS - Common Unix Printing System). Se implementaron mejoras importantes en el campo de la facilidad de acceso. La nueva infraestructura Gnopernicus facilita el uso del escritorio a las personas invidentes y a las que no ven bien y ofrece herramien-tas que hacen uso del entorno GNOME más fácil a las personas minusválidas.

En KDE 3.2.1 se introdujeron más de diez mil modificaciones, gracias

a que se construyó la versión de escri-torio KDE más rápida y más estable. Entre las novedades se encuentra: la nueva versión del organizador per-sonal Kontact, que facilita el acceso a la interfaz unificada para los mensajes de correo electrónico, la agenda, el libro de direcciones y los apuntes. El cliente del envío instántaneo de mensajes Kopete per-mite contactarse de manera rápida a través de las redes MSN, AIM, ICQ, IRC, Yahoo Messenger y Jabber. Disponemos también de un módulo integrado de verificación de ortografía en formularios enviados por Internet y en los mensajes del correo electrónico. Se ampliaron funcionalidades del programa Konqueror, que permite ad-ministrar los ficheros y mirar las páginas web. Con ayuda de Konqueror los usua-rios pueden importar las pestañas desde el programa Internet Explorer, mirar de ma-nera rápida los directorios con imágenes, las carpetas y los servicios de la red, copiar CDs con música y mostrar por pantalla las imágenes guardadas en cámaras digitales y en dispositivos portátiles USB con memoria flash. La herramienta KWallet cumple función del repositorio central con contraseñas y datos de acceso.

SUSE 9.1 es el primer paquete de Linux que incluye versiones demostrativas del programa de edición de texto Textmaker y de la hoja de cálculo Planmaker de la empresa Softmaker.

Otra novedad es la base de datos Rekall y la edición actual del software para el so-porte de correo electrónico Moneyplex de la empresa Matrica.

La versión Professional SUSE 9.1 per-mite arrancar este sistema en los procesa-dores de 32 y 64 bits.

Se puede adquirir el sistema SUSE 9.1 a partir de 6 de mayo.

SUSE 9.1

Page 12: LiNUX+ DVD 1

núcleo Linuxaktualnościactualidades

Noticias

10 Linux+ 1/2004

Escalera al cieloCon Kolivas recientamente ha publicado el desarrollo de su idea, el cual consiste en un nuevo algoritmo de clasificación de procedimientos, llamado por él staircase scheduler. Como se puede esperar de Con, en esta clasificación destaca la importancia de interacción. Scheduler todavía está en la fase de pruebas, pero las primeras pruebas muestran que en muchos casos se comporta de manera parecida, o mejor que el de la serie oficial del núcleo 2.6. Además, asegura una mejor interacción y responsividad. Asimismo, parece que la aplicación arranca más rápido y las prioridades de procesos son reales y más previsibles.http://kerneltrap.org/node/view/2744

Futuro de OSSDurante el desarrollo de los núcleos 2.5, se agregó ALSA (Advanced Linux Sound Architecture) a la línea principal de Linux, la cual llegó a ser el subsistema básico del soporte de sonido en Linux. Antes de esto, una función similar cumplía OSS (Open Sound System), que después de la inclución de un sistema nuevo, reescrtito y perfeccionado se designó como depreciado (ing. deprecated). Todavía hay usuarios de este sistema, incluso dispuestos a mantenerlo, ya que algunas de las tarjetas se soportan solamente por OSS. Los adversarios de mantener OSS en el núcleo argumentan que el uso de dos subsistemas que tengan las mismas funcionalidades no tiene sentido. La suerte de OSS todavía no está predestinada, sin embargo, se lo guardará como un integrante de núcleos de la serie 2.6.http://kerneltrap.org/node/view/2718

Preemptible o no preemptibleHasta hace poco tiempo, era obvio que en un empleo normal en Linux, el núcleo debería ser preemptible. No obstante, el modo de uso de Linux cambió un poco y resulta que un núcleo con el parche que permitiera su preempción simplemente funciona mejor. Sin embargo, no todos son entusiastas de agregar en sus núcleos las opciones CONFIG_PREEMPT. Por ejemplo, Andrea Arcangeli es su adverario y cree que la preempción del núcleo ocasionará sólo un peor rendimiento. Hay que recordar que un núcleo preemptible tiene mejor rendimiento, medido por retrasos medios y no por retraso pesimista. http://kerneltrap.org/node/view/2702

Nuevo VM

Todas las personas interesadas en el desarrollo del núcleo de la serie

2.4 a lo mejor se acuerdan de un ines-perado y muy comentado cambio del subsistema entero de la memoria virtual cuando se publicó la versión 2.4.10. La solución fue propuesta por Andrea Arcan-geli. En principio, esta sustitución provo-có disputas y mucho ruido, sobre todo porque tuvo lugar en el curso del de-sarrollo de una serie estable del núcleo. Quizás por eso, todas las mejoras más serias del subsistema de la memoria virtual, ahora y en un futuro cercano, se introducirán con mucha más prudencia. Andrea Arcangeli desde hace ya tiempo se prepara para introducir las siguien-tes modificaciones. Tienen que ver con la eliminación del proceso inverso (existente en el núcleo 2.6) de mapear la memoria (rmap) y sustituirla por una solución más escalable. Esta sustitución podría mejorar el uso de grandes cantida-des de memoria RAM en los procesadores de 32 bits. La necesidad de introducir las modificaciones propuestas surge del hecho de que cada vez más usuarios, sobre todo los de los sistemas comercia-les, esperan que Linux dé soporte a una mayor cantidad de memoria RAM que la actual.

Andrea Arcangeli, esta vez probable-mente como representante de los intere-ses de SuSE, no es la primera ni la única persona que procura conseguirlo. En los núcleos Red Hat se utiliza el mecanismo 4G/4G, propuesto por Ingo Molnar. Linus Torvalds no lo acceptó al considerar esta solución del problema demasiado rápida y poco elegante y, por tanto, no se incorporó en la serie oficial de núcleos. Andrea Arcangeli empezó a trabajar sobre VMde Linux de manera bastante metódica, beneficiándose de los trabajos anterio-res y de los conocimientos de otros programadores. Indicó rmap, o sea, elmapeo inverso de la memoria, como el primer culpable de la falta de posibili-dad de soportar 32 GB de memoria en Linux.

El objetivo de rmap ha sido la ace-leración del intercambio de memoria a través del mantenimiento de listas de revocaciones a las páginas. De este modo se solucionaron algunos problemas de rendimiento, pero a coste de la memo-ria utilizada con este objetivo. Todas las gestiones que hay que realizar para que

rmap utilice menos memoria no tienen éxito y su cantidad crece junto a la RAM disponible y al número de procesos que la utilizan. Por causa de todo esto, el so-porte actual del subsistema de memoria virtual no es muy escalable y no es apto para grandes sistemas. Andrea Arcange-li intenta encontrar una solución de esta situación, sirviéndose de la técnica de mapeo inverso de objetos, que al prin-cipio propuso Dave McCracken. Gracias a esta solución, no es necesario guardar en la memoria las llamadas cadenas rmap, relativas a los fragmentos de me-moria donde están copiados los ficheros. En cuanto a las páginas equivalentes a los ficheros, encontramos las posicio-nes adecuadas en el array de páginas, utilizando otras estructuras de datos, no relacionadas directamente con el mapeo inverso. Son estructuras que describen

Andrea Arcangeli

Estructura VMA es suficiente para el núcleo para que encuentre la adecuada página de la memoria

Page 13: LiNUX+ DVD 1

[email protected]

11

sección llevada por Maja Królikowska

www.lpmagazine.org

Reiser4Los autores de Reiser4, un sistema de ficheros de contabilidad que va a sustituir a Reiserfs, prometen que su producto ya está preparado para usar. Han anunciado que para que su éxito sea completo sólo les falta corregir dos errores pequeños. Cuando lo hagan, intentarán colocar Reiser4 en los núcleos de la serie 2.6. Por ahora, animan a todo el mundo que pruebe y utilice su software, puesto que ellos mismos ya no pueden llevar a cabo el pad del sistema. La documentación de Reiser4 es especialmente interesante; está llena de nociones matemáticas bastante complicadas y describe unos algoritmos bastante complejos, lo que puede desanimar un poco a los potenciales usuarios.http://www.namesys.com/v4/v4.html

PRAMFSSteve Longerbeam ha anunciado que la empresa MontaVista, que se ocupa principalmente de los dispositivos empotrados, ha publicado el sistema de ficheros PRAMFS. Este sistema se utilizará cuando se precise de acceder a fragmentos de memoria RAM, de manera propia de los sistemas de ficheros. La firma MontaVista procura patentar este invento, pero promete no patentar ninguno de los proyectos publicados en GPL.http://kerneltrap.org/node/view/2585

KrefA partir de la versión 2.5.45 se implementó un nuevo tipo Kobject para los objetos del núcleo. En principio, iba a ser un tipo sencillo que facilitaría de modo uniforme contar las revocaciones, etc. En la práctica, Kobject se desarrolló bastante y es un tipo de junta dentro de todo un modelo de dispositivos. Para las personas interesadas solamente en contar revocaciones, Greg Kroah-Hartman inventó el tipo kref, con sus funciones kref_init, kref_get, kref_put. Andrew Morton muy rápido aprobó Kref y lo incorporó al núcleo oficial. http://lwn.net/Articles/75289/

NetpollHace poco, en los núcleos de la serie 2.6, apareció el mecanismo Netpoll, antes disponible en forma de unos parches separados o también en el árbol -mm. Netpoll permite soportar las funciones del núcleo de bajo nivel, que pueden enviar paquetes por la red sin emplear toda la capa de la red y sin activar interrupciones. Algunos ejemplos del empleo de Netpoll son: Kgdbeth, que permite debugar el núcleo a través de la red, y Netconsole, el cual facilita la consola remota. http://lwn.net/Articles/75289/

las así llamadas áreas de memoria vir-tual (VMA - Virtual Memory Areas). Este parche se llama objrmap-core.

El parche elaborado se refiere sola-mente a los ficheros, lo que no permite renunciar del todo al modo corriente de mapeo inverso; junto con los ficheros se mapea también la memoria anónima, o sea, destinada a la pila, o la memoria colocada con ayuda de malloc(), no rela-cionada con un objeto definido (fichero). El parche que sustituye rmap, destinado a este tipo de memoria, se llama anon-vma. Su funcionamiento se basa en el he-cho de que las páginas anónimas surgen como resultado del comando de memoria notificado por el procedimiento. Si se produce una situación así, esta memoria no se divide entre los procesos y no necesita la cadena rmap; es suficiente la indicación de VMA oportuno por lo que se puede describir el mapeo en el espacio de direcciones de un proceso determinado.

Es más difícil si se ejecuta fork(). En este caso, más arrays de páginas pueden indicar cualquier página de memoria vir-tual y no se puede usar una sola VMA. Andrea Arcangeli diseñó una nueva estructura de datos para usarla en estas situaciones. Es una lista de estructuras que representan VMA. Si el núcleo quie-re desmapear la página, es suficiente pasar por esta lista. Esta solución tiene sus defectos: los cálculos son compli-cados. Con esta solución, el tiempo de preparación de una página destinada a la área de intercambio, desgraciada-

mente no va a ser estable y vaa aumentar con el número de proce-sos que dividan entre sí la página. En opinión de Ingo Molnar, esto es inadmi-sible porque disminuye el rendimiento para mejorar el soporte de una cosa que, a su juicio, es completamente anti-cuada.

El tercer parche en el conjunto de An-drea Arcangeli es prio_tree, el cual acelera la búsqueda de VMA adecuadas.

De lo que Andrea escribió en li-nux-kernel resulta que da su obra por terminada. Declaró también que SuSE planifica ubicarla en versiones próximas. Linus Torvalds, en principio, aceptó estos cambios en el subsistema de me-moria virtual, pero de esta manera no se lo empleó hasta los trabajos sobre 2.6, es decir, tan sólo después de incluir los parches en los núcleos de la serie -mm. Andrew Morton ya ha aceptado la implementación de modificaciones de Andrea, pero afortunadamente planifica realizarlas poco a poco, de manera siste-mática.

Aquí merece la pena entender que los parches que transforman los mecanis-mos de mapeo inverso de la memoria vir-tual contienen 4.600 líneas de código que se encuentran en 60 ficheros. Es una pena que el autor no quiera introdu-cir algunos cambios revolucionarios de este tipo durante los trabajos sobre los núcleos en desarrollo. Es sorprendente que las modificaciones más significativas casi siempre se realicen en las versio-nes estables. No sabemos para cuánto tiempo se destabilizará la serie 2.6 con la introducción de las modificaciones descritas. Es curioso, ya que por el con-tenido de los mensajes de Andrea resulta que él no ve nada malo en esto. Parece como si realizara sus objetivos princi-pales y apenas le preocupara el orden de los trabajos impuesto ¨desde arriba .̈ Por desgracia, tales situaciones, entre otras, demuestran los defectos en el desarrollo del modelo de algunos proyectos de Soft-ware Libre.

http://lwn.net/Articles/77215/http://lwn.net/Articles/74295/http://lwn.net/Articles/76338/

La situación se complica cuando se ejecuta el proceso hijo

Page 14: LiNUX+ DVD 1

debianaktualności

12

actualidades

Noticias

Linux+ 1/2004

Puro puerto AMD64 de 64 bitsA varios developers les interesa mucho la versión doble de Debian de 32 y de 64 bits para AMD64. Técnicamente es posible realizarla, pero, por desgracia, no es nada fácil. Ninguna de las grandes distribuciones realiza este tipo de funciones. Sin embargo, estaría bien si Debian soportara AMD64, por lo menos, como una pura plataforma de 64 bits. Sería más fácil y más rápido realizarlo. Es muy probable que se continúe desarrollando las dos ideas de uso de AMD64.http://lists.debian.org/debian-amd64-0402/msg00235.htmlhttp://lists.debian.org/debian-amd64-0402/msg00263.html

El sistema principal de ficheros en LVM+RAIDUno de los usuarios de Debian escribió que, utilizando un HOWTO disponible en la red, había conseguido configurar Debian de manera que arrancara desde el sistema de ficheros que se encuentra en LVM (Logical Volume Manager), que a su vez estaba en RAID. Resulta que no fue tan difícil ejecutarlo. La descripción detallada de los pasos que realizó este usuario se encontraba en su mensaje.http://lists.debian.org/debian-user-0402/msg05104.htmlhttp://www.midhgard.it/docs/index_en.html

¿Para qué necesitamos las arquitecturas antiguas?Como ocurre antes de cada publicación de Debian, circulan mensajes en los que se propone lanzarlo con más presteza a costa de eliminar o empeorar el soporte para las arquitecturas antiguas o menos populares. Martin Michlmayr, en respuesta a uno de estos mensajes, ha explicado que va a soportar estas arquitecturas tanto tiempo cuanto haga falta. Además, ha afirmado que los paquetes para estas arquitecturas se construyen de manera automática, de suerte que no reportan gran trabajo a los developers. Aparte de esto, Debian aprovecha la oportunidad de participar activamente en los tests de GCC, XFree86, del núcleo, lo que influye en la mejora de la calidad de Software Libre en todas las arquitecturas.http://lists.debian.org/debian-vote-0403/msg00851.htmlhttp://lists.debian.org/debian-vote-0403/msg00852.html

Democracia en Debian

Últimamente se han organizado dos votaciones importantes: una para

determinar el destino de la sección non-free y otra para elegir, como cada año, el Líder del Proyecto.

Sin duda, ha sido la primera votación la que ha desatado las emociones más fuertes y las disputas más calientes. Se han presen-tado dos propuestas opuestas:

n retirar el soporte activo de la sección non-free;

En la próxima versión de Debian se eliminará la sección non-free, y tampoco habrá más ediciones estables de sección non-free. El proyecto Debian dejará de soportar de manera activa a la sección misma. Se anulará la Cláusula 5. del Contrato Social.

n reafirmar el soporte para la sección non-free;

Dado que algunos de nuestros usuarios aún tienen que utilizar unos programas que no son conformes a las normas de DFSG (Debian Free Software Guidelines), se reafirma la obligación de mantener las secciones contrib y non-free en el archivo del proyecto. Estas secciones incluyen unas versiones comprimidas de tal software; al mismo tiempo se faci-litará la infraestructura de Debian, por ejemplo, el sistema de rastreo de errores y grupos de discución, con el objetivo de ayudar a conservar los paquetes de software de tipo non-free.

Se discutió mucho sobre la interpretación y el significado de la Cláusula 5. del Con-trato Social que tiene el siguiente contenido: „Reconocemos que algunos de nuestros usuarios necesitan programas que no sigan las Directrices de Software Libre de Debian. Para este software hemos creado las áreas «contrib» y «non-free» en nuestro archivo de FTP. El software en es-tos directorios no es parte del sistema Debian, aunque ha sido configurado para usarse con este sistema.”

El resultado de la primera de las pro-puestas votadas fue que se cambiaría un documento básico de Debian: su Contrato Social. Por esta razón, para su aprobación se requiere una mayoría de 3 a 1. La segunda propuesta requirió una mayoría relativa. El modo de contar votos en Debian es bastante atípico y fue descrito en el documento con los resultados de la votación. Basta con

decir que la primera propuesta de cambios en el Contrato Social y de eliminación de la sección non-free ni siquiera alcanzó una ma-yoría relativa, por no hablar de una mayoría de 3:1. Por el contrario, la segunda alcanzó sin problema una mayoría de votos exigida y se la aprobó oficialmente.

La elección del Líder del Proyecto fue la segunda votación importante en el entorno de Debian. Ganó claramente Martin Michl-mayr, dejando atrás a Branden Robinson. El último lugar lo ocupó, de acuerdo con las previsiones, Gergely Nagy, que tomó parte solo por “el puro placer de participar”. Parece que fue una elección muy buena para Debian. Además, parece que Martin no tendrá una tarea muy difícil a la hora de cumplir con los objetivos de su anuncio electoral, ya que la mayoría de ellos son una continuación natural de actividades que realizaba hasta ahora y que consisten en la mediación, coordinación y mejoramiento de comunicación entre Martin y los develo-pers. ¡Adelante Martin!

http://www.debian.org/social_contract.pl.htmlhttp://lists.debian.org/debian-devel-announce/2004/debian-devel-announce-200403/msg00019.htmlhttp://www.debian.org/vote/2004/platforms/tbm

Martin Michlmayr ha vuelto a ser elegido Líder de Debian

Page 15: LiNUX+ DVD 1

[email protected]

13www.lpmagazine.org

sección llevada por Grzegorz Prokopski

Aplastamiento de bugsDurante un fin de semana de marzo se han celebrado los días de lucha contra los errores. Como siempre, la acción fue coordinada por el canal #debian-bugs en el servidor irc.debian.org. Entre otras cosas, gracias a este tipo de actividades, disminuye el número de errores.http://lists.debian.org/debian-devel-announce-0403/msg00012.htmlhttp://bugs.debian.org/release-critical/

Paquetes GNOME-Sharp y MonoEn Debian unstable aparecieron unospaquetes relacionados con el proye-cto Mono, es decir, con una implemen-tación libre creada por la empresa Ximian, del C# de Microsoft. Según las noticias que se oyen, Mono se ace-rca a la versión 1.0, por eso, ya es hora de instalar estos paquetes en Debian.http://packages.debian.org/gnome-sharp

¿Un APT rápido? ¡NetSelect-APT!Este pequeño programa encuentra automáticamente la fuente de paque-tes Debian más rápida por el momento y automáticamente genera un sources.list adecuado que enseguida puede ser utilizado por APT.http://packages.debian.org/netselect-apt

BloGTKEsta pequeña aplicación GTK permite de manera cómoda soportar los sistemas Blogger, Movable Types y otros que utilizan MetaWeblog API. En la época de la creciente popularidad de blogs, parece claro la necesidad de construir programas de este tipo. A partir de ahora se pueden encontrar también en Debian.http://packages.debian.org/blogtk

Linux 2.6 en WoodyAdrian Bunk ha facilitado unos paquetes que permiten arrancar los núcleos de Linux de la serie 2.6 en Debian Woody. Estos paquetes están basados en las versiones de la distribución inestable, pues pueden no resultar tan estables como los paquetes originales de Woody. Además, aunque permitan el uso de núcleos de la serie 2.6, esto no significa que se puedan aprovechar todas las modificaciones nuevas.http://www.fs.tum.de/~bunk/packages/woody/kernel-26.html

Vuelta de GIFsEl 7 de julio de este año expira la patente internacional de compresión GIF/LZW. Se ha deliberado si se publicará Sarge antes de aquel plazo, porque en caso contrario se podría iniciar el traslado de programas que contienen el código de este algoritmo de compresión de non-free y contrib a la sección main.http://lists.debian.org/debian-legal-0402/msg00168.html

Sarge – ¿está cerca? ¿Lejos: en qué punto?

Teniendo en cuenta que ya es una tra-dición que las versiones estables de

Debian aparezcan una vez cada dos años (sin contar las actualizaciones), no es de sorprender que la próxima edición de Sarge despierta mucho interés. Merece la pena mencionar que Sarge, como distribución de prueba, sigue en fase de evaluación. Las versiones nuevas de paquetes importantes suelen pasar de unstable a testing; por eso, podemos estar seguros de que Sarge en el momento de su publicación lanzará un software bastante nuevo, aunque ya testeado.

Sirva de ejemplo GNOME; hace poco un grupo especial de developers se empezó dedicar a GNOME. Hace un mes GNOME 2.4 se encontraba en la distribución testing, mientras tanto se acababa de publicar la versión 2.6. Para asegurarse de que los usuarios de Sarge dispondrán de la mejor versión posible de GNOME, enseguida han decidido crear paquetes de GNOME 2.6 para que pueda encontrarse en testing antes de la publicación Sarge.

Lo mismo sucede con XFree86. La ver-sión 4.3 dispone de unas correcciones pro-pias de Debian que le permiten soportar 11 arquitecturas y acaba de entrar en unstable, con el fin de alcanzar testing antes de la publicación de Sarge. Hay que mencionar que no podemos contar con la versión 4.4, procedente del proyecto XFree86, a causa de cambios en el modo de licenciar que han sido rechazados por la mayoría de distri-buciones de Linux.

El nuevo Instalator de Debian cada semana soporta la mayor cantidad de ar-

quitecturas. Resulta que después de añadir las primeras arquitecturas, la adición de las siguientes ya ha sido mucho más fácil y rápida. Estos trabajos siguen inacabados, pero se nota que el resultado final, impres-cindible para la publicación de Sarge, se al-canzará dentro de poco tiempo. Se trabaja también mucho para que el Instalador sea más cómodo en el uso. Joey Hess calculó cuántas veces hay que teclear actualmente para instalar Debian, empleando el nuevo instalador y resulta que es necesario te-clear 11 veces, de las que diez son tecleos de [Enter].

Bien conocido es el problema relaciona-do con el número de errores críticos para la publicación, que siempre es muy visible antes del lanzamiento de cada versión. En este momento están detectados más de 300 errores, pues a los developers les queda mucho trabajo para corregirlos.http://lists.debian.org/debian-devel-announce-0402/msg00009.htmlhttp://kitenet.net/~joey/blog/entry/11_keys-trokes_to_debian-2004-03-04-01-58.html

Estamos más cerca del lanzamiento de Debian Sarge

Seguramente, gracias a la facilidad de migración de CVS y una arquitectura

bien pensada y coherente, el sistema de control en la versión Subversion gana po-pularidad cada vez en más proyectos. Hace poco se liberó la versión 1.0. RapidSVN que es un cliente gráfico de este moderno sistema de control de la versión, muy có-modo para el usuario. Ya se puede conse-guir en el repositorio de paquetes deDebian.http://packages.debian.org/rapidsvn

RapidSVN

RapidSVN

Page 16: LiNUX+ DVD 1

mandrakeaktualności

14

[email protected] sección llevada por Daniel Koćactualidades

Noticias

Linux+ 1/2004

Mandrake 10.0 en AMD64 Beta1Como sabe todo el mundo, el futuro de los ordenadores PC está relacionado con los procesadores de 64 bits. Las construcciones AMD gozan de estima, por ahora principalmente en el uso con servidor, pero dentro de un tiempo, con la bajada de precios se encontrarán en los ordenadores de escritorio. Recientemente MandrakeSoft ha lanzado una versión Beta de distribución Mandrake 10.0 Community, justamente para estos procesadores. Junto con todos los rasgos conocidos del procesador de 32 bits, la versión para arquitectura AMD64 contiene un soporte mejorado de la interfaz Serial ATA; esto incluye el soporte para controladores Promise, Silicon Image y VIA, y un soporte experimental con una aceleración de 32 bits GL para tarjetas que funcionan bajo XFree86. Se pueden descargar las imágenes ISO Beta1 desde los servidores FTP o por el cliente del protocolo BitTorrent.http://www.mandrakelinux.com/en/100amd64beta.php3

Paquetes GNOME 2.6 para MandrakeMuy pronto, después de publicar el entorno GNOME en la versión 2.6 aparecieron unos paquetes no oficiales para Mandrake 10.0 Community, que no es mucho más antiguo, pero que todavía está provisto de GNOME 2.4. Para agregar el repositorio elaborado a su instalador de paquetes, en la consola del administrador hay que ejecutar el comando siguiente:urpmi.addmedia gnome-2.6 http://wwwra.informatik.uni-rostock.de/~waschk/Mandrake/GNOME2.6/RPMS with synthesis.hdlist.czSe puede continuar la instalación tanto con la ayuda de un instalador gráfico, como en el modo textual con Urpmi. Estos paquetes serán útiles para aquellas personas impacientes que no quieren arriesgarse con un ramo no estable de la distribución que se llama Cooker, en el que pronto aparecerá el nuevo GNOME. En seguida, después de publicarse esta información, aparecieron personas interesadas en la versión GNOME 2.6 para Mandrake 9.2, pero por desgracia no hubo ninguna respuesta a esta petición.http://www.pclinuxonline.com/modules.php?name=News&file=article&sid=8648

¡MandrakeSoft vuelve al juego!

El 30 de marzo de 2004, la empresa MandrakeSoft volvió a su situación

normal; al terminar el período de su pro-tección determinado por ley.

La empresa tuvo problemas finan-cieros, ya en los tiempos de su anterior director, que fue demasiado generoso al firmar contratos con sucesivos clientes, sin fijarse en la posibilidad de cumplir con las condiciones de estos contratos, y que tenía demasiadas expectativas acerca de, entre otros, el desarrollo de una sección de capacitación en negocios. El resultado ha sido que los usuarios del sistema no estaban seguros, en aquel tiempo difícil para la empresa, de si su distribución sobreviviría de esta for-ma.

Tampoco ayudó la sustitución de directores; durante mucho tiempo, la empresa MandrakeSoft no ha logrado alcanzar la fluidez financiera, aunque su distribución ha tenido repetidos éxitos.

Al final, se presentó en el juzgado una propuesta de un estado especial para la empresa, que la protegiera de la quiebra, hasta que llegara el dinero contante y vi-vificador.

De este modo, después de 14 meses de funcionamiento de la empresa Man-drakeSoft, el juzgado aceptó un plan de nueve años para la salida de apuros. La situación mejoró de manera significativa ya a finales de 2003; fue el primer trimestre desde hacía cuatro años provechoso para la empresa. Ayudaron su restructurización, los ahorros y la concentración en la oferta principal, o sea, en la distribución Mandrake Linux.

http://www.mandrakesoft.com/company/press/pr?n=/pr/corporate/2462

La empresa MandrakeSoft vuelve también a bolsa

PCLinuxOS 2k4 se desarrolla

El señalamiento 2k4 en el nombre del sistema PCLinuxOS de la distri-

bución de Linux basada en Mandrake Linux, probablemente signifique el año 2004. Por desgracia, no sabemos cuándo exactamente se estrenará PCLinuxOS. Por ahora, Texstar, su autor se concentra en la actualización rápida del repositorio con paquetes. Por eso, ya podemos des-cargar paquetes con el nuevo GNOME 2.6 o con el sistema de gráficos XFree86 4.4, que fueron rechazados por gran parte de otras distribuciones (esto incluye, entre otros, el Mandrake materno) a causa de la licencia.

La próxima versión, todavía de de-mostración Preview6, probablemente ya contendrá el núcleo de la serie actual 2.6 y KDE, por lo menos en la versión 3.2.2 (o más nueva).

Podemos conocer las soluciones intro-ducidas, instalando Preview5 y actualizan-do los paquetes hasta el estado existente,

desde el repositorio de paquetes de Texstar. Si no lo hacemos, sólo nos resta tener pa-ciencia...

http://www.pclinuxonline.com/pclos/index.htmlhttp://ftp.ibiblio.org/pub/Linux/distributions/contrib/texstar/pclinuxos/apt/pclinuxos/2004/

Texstar cuida mucho la presentación gráfica de su distribución de Linux

Page 17: LiNUX+ DVD 1

auroxaktualnościactualidades [email protected]

15

sección llevada por Robert Główczyński

www.lpmagazine.org

NoticiasAurox Live en revistasEn PC Magazin, la revista alemana dedicada a la informática (edición 5/2004 con DVD) salió Aurox Live 1.4.1. La distribución se encontró en una buena compañía: de una edición especial SuSE 9.0 y Knoppix 3.3, con que se presentaron las posibilidades de Linux.http://www.pc-magazin.de/

Soporte de modems en Aurox LiveLas últimas versiones de Aurox Live se completaron con drivers para los winmodems más populares. La versión 1.4.2 permitió conectarse con Internet con ayuda de modems PCI, compatibles con el driver SmartLink (también con algunos chipsets de Intel, como ICH4). En la edición 1.4.4 se agregó la versión de drivers Conexant HSF sin limitar el campo (5.03.27mbsibeta02122600); se reconocieron también algunos modems SmartLink USB (testeados en ASMAX neo V.92 USB). Asimismo, se corrigió el configurador de la red (con esta herramienta se puede tanto iniciar como finalizar la conexión por medio de winmodem).

ConferenciasA mediados de marzo “Pingüinos”, una organización que propaga el uso de Linux en Hannover (Alemania), organizó una presentación de Aurox. Se podía obtener información sobre el sistema, y a cada participante se le entregó un disco con Aurox Live. El 23 de marzo se podía también escuchar sobre Aurox, su uso y sus méritos en una conferencia Dev.Con en Varsovia (Polonia). Asimismo, tuvo lugar una conferencia sobre la plataforma .NET en Aurox (el proyecto Mono). Durante LinuxExpo en Praga (República Checa), los visitantes pudieron ver una presentación de Aurox como sistema para casa, oficina o escuela.

LinuxTag 2004Desde el 23 hasta el 26 de junio, se celebrarán las siguientes ferias/conferencias LinuxTag. Como el último año, tendrán lugar en Karlsruhe (Alemania) y, al igual que hace un año, se podrá encontrar con los programadores de Aurox, intercambiar opiniones o comprar la versión nueva de la distribución. Os invitamos cordialmente a que vengáis al stand de la editorial Software-Wydawnictwo http://www.linuxtag.org/2004/index.html

Aurox 9.4

En junio de 2004 aparece la próxima ver-sión de Aurox, una distribución cono-

cida de Linux, desarrollada en Polonia. En Aurox 9.4, como antes, se utilizan paquetes básicos de Fedora Core 1. En comparación con la edición 9.3, el sistema se actualizará de modo significativo. Los nuevos paque-tes son accesibles en la sección unstable del repositorio Yuma (para probar los paquetes experimentales, hay que agregar la sección unstable a base y updates).

OpenOffice.org, ya en la versión 1.1.1,se construirá con el empleo de scripts desar-rollados por Ximian (http://ooo.ximian.com), con una colección de parches separada, destinada para Aurox. La nueva versión de este popular paquete de oficina abre mucho mejor los documentos MS Office. El paquete openoffice.org-i18n, con el so-porte de idiomas nacionales, se dividirá en unos paquetes menores, destinados a los idiomas respectivos. De este modo, en una instalación con el soporte de idioma único se ahorrará más de 250 MB. En la distribu-

ción se incluirán también las traducciones de ficheros con ayuda de OpenOffice.org.

El nuevo Aurox dispondrá de un en-torno KDE en la versión 3.2.1 y con KOffice 1.3 al que se agregarán, entre otros, unos filtros de importación de documentos MS Word.

Probablemente se adjunte a la distri-bución el núcleo 2.6, en un disco adicional; como opción.http://www.aurox.org/

Nueva presentación gráfica de OpenOffice.org 1.1.1

Actualizaciones en Aurox 9.3

Se han publicado ya las primeras ac-tualizaciones y nuevos paquetes para

Aurox 9.3. Desde los repositorios Yuma se pueden descargar: la nueva edición de núcleo, los paquetes XFree86 y otras corre-ciones preparadas para Fedora Core 1, y las nuevas versiones de algunas herramientas de configuración.

El núcleo 1.2174.nptl en la actualiza-ción de Fedora Core 1 contiene modifica-ciones de los drivers gamma DRI, SSTFB, aacraid, vt8231, ncpfs. Se ha corregido también el error en la función do_mremap (CAN-2004-0077).

En la edición 55 de paquetes Xfree86 se hallan, por ejemplo, algunas correciones de errores de seguridad: CAN-2004-0083, CAN-2004-0084, CAN-2004-0106 en libX-font y un soporte perfeccionado AGP para tarjetas Radeon.

En los paquetes con drivers del subsis-tema de impresión (ghostscript, hpijs, foomatic, gimp-print) se ha actualizado la base de da-tos sobre los drivers Foomatic para la versión 3.0, el conjunto de drivers de impresoras de tinta Gimp-Print para la versión 4.2.6 y el driver HP Inkjet para la versión 1.5.

El paquete hwdata con la base de datos del equipo contiene unos listados actuali-zados de monitores, posibilitando el uso de

la tarjeta gráfica ATI Radeon 9200SE y de la tarjeta de red de 3com 3c940.

El paquete mutt, con un cliente popular del correo electrónico para la consola de texto, contiene una correción trasladada desde la versión 1.4.2 (pad del programa después del recibo de un email especial-mente elaborado: CAN-2004-0078).

El paquete tcpdump contiene correciones de los errores de descodificación en ISAKMP y RADIUS (CAN-2003-0989, CAN-2004-0055), que pueden llevar a tomar control sobre el sistema por medio de unos paquetes adecuadamente preparados.

En el paquete system-config-packages se ha modificado el modo de ordenar paquetes, reduciendo la necesidad de cambio de CDs durante el proceso de agregación de paquetes adicionales al sistema por medio de la herramienta Agregar/Eliminar programas.

En el paquete MPlayer se ha mejorado el arranque de la versión con la interfaz gráfica.

En los repositorios Yuma se encuentran también, entre otras, las versiones nuevas de los paquetes: SDL (1.2.7), libxine (1.0 RC3b), alsa-lib y alsa-driver (1.0.3), evolution (1.4.6), gnumeric (1.2.8) y kickpim (0.5.3).

Page 18: LiNUX+ DVD 1

kdeaktualności

16

actualidades

Noticias

Linux+ 1/2004

¿YaST liberado?YaST, una herramienta básica de configuración de la distribución SuSE, ha de ser disponible bajo licencia de GPL. Aunque estas noticias todavía no se han confirmado, es una buena señal tanto para los usuarios del mismo YaST, como para los de KDE. ¿Por qué? Por una razón muy sencilla: si se lo libera, YaST puede llegar a ser para KDE una herramienta de configuración del sistema independiente, utilizada tanto por los usuarios de SuSE, como también por los de Debian, Slackware o PLD.http://dot.kde.org/1080146702/

KDE 3.2.1Aunque la siguiente versión de KDE – con el número 3.2.1 – es únicamente una versión “corregida”, que contiene un mil o incluso más errores eliminados, no obstante, son unos errores muy importantes que influían tanto en la estabilidad, como en la seguridad del entorno. Por lo tanto, merece la pena en tiempo libre actualizar nuestro entorno.http://dot.kde.org/1078855423/

KasablancaA lo mejor el nombre no nos sugiere mucho, pero la tarea principal de esta programa es muy simple: es un sucesivo cliente FTP. La versión 0.3, la última en el momento de escribir el presente texto, junto con unas funciones estándar propias de todos los clientes FTP, dispone ante todo de un soporte para codificar los datos con ayuda de SSL/TLS (los dos sistemas de conexión para la autorización usan los comandos TLS, no SFTP). En resumen, es un cliente sencillo para usuarios exigentes.http://kasablanca.berlios.de/

KickPIMAplicación con el nombre KickPIM se define muy bien con palabras: acceso rápido. Este programa, o más bien applet, ha sido creado para posibilitar al usuario el acceso desde el nivel de panel. Applet da soporte al libro de direcciones, al envío de correo electrónico y tiene la función de recordar sobre acontecimientos importantes (p.e. cumpleaños). Un suplemento digno de atención.http://kickpim.sourceforge.net/

Sonido desde DVD servido en bandeja de plataDVD Audio Extractor, que es única-mente un script del programa Kommander, sirve para lo que muchas veces hacen los adictos a p.ej. bandas sonoras: copiar al formato MP3/OGG las rutas de sonido desde nuestro DVD, y luego (como una opción) quemarlas con ayuda de la aplicación K3b para un disco. Sencillo, claro y gratis.

KBear – cliente FTP

Un usuario común y corriente de Linux, hasta hace poco, no tenía

mucha alternativa en cuanto a los clien-tes FTP. Sin embargo, esta situación con el paso de tiempo empezó a cambiar. Principalmente, porque cada vez más usuarios necesitaban un cliente FTP sen-cillo, similar a Total (Windows) Commander. La necesidad agudiza el ingenio, pues se comenzaron a construir cantidades innu-merables de clientes FTP, tanto de texto como gráficos, independientes de diferen-tes entornos gráficos. Hace poco se puso de moda el uso de programas integrados de cualquier modo con el entorno gráfico empleado. Hace mucho tiempo para KDE fue formado Krusader, desarrollado hasta hoy día administrador de ficheros, pero ya se han publicado nuevos programas “especializados” en mirar los recur-sos FTP. Uno de ellos es precisamente KBear, al cual podemos comparar con el popular GFTP, escrito con ayuda de librería GTK.

¿Qué puede hacer KBear? Casi todo lo que un buen cliente FTP debería poder hacer, pero voy a mencionar sólo sus fun-ciones más importantes:

n interfaz basada en Qt con sistema de ventanas “interiores” - MDI (Multi Do-cument Interface);

n soporte del protocolo sftp (FTP protegi-do con el uso de SSH);

n soporte de cortafuegos;n soporte de proxy/SOCKS;n posibilidad de importación de pestañas

FTP desde varios clientes;n posibilidad de desconectar el progra-

ma automáticamente, después de un tiempo determinado /despúes de fina-lizar la descarga;

n barras de herramientas configurables y atajos de teclado;

n “brujo automágico” (wizard) que nos ayuda a configurar el programa des-pués de arrancarlo por primera vez;

n posibilidad de previsualizar imágenes en miniaturas (thumbnails);

n disponible traducción al español;n logeo del curso de la sesión FTP.

Desde luego, KBear es un programa bajo la licencia GPL (GNU General Public License), pues son asequibles sus fuentes y paquetes binarios para respectivas distribuciones de Linux.

KBear, a primera vista, me sorprendió, sobre todo, por su modernidad y por sus posibilidades de configuración o de ajuste, según nuestras preferencias (a veces nos falta este tipo de programas para Linux).

InstalaciónEmpecemos, pues, la instalación de nuestro candidato al cliente FTP usado todos los días. La instalación se limita a unos pasos estándar. Comenzamos como siempre descargando las fuentes de nuestro programa desde la pági-na principal del proyecto (las fuentes también se encuentran en el CD/DVD). A continuación, descomprimimos el ar-chivo descargado a cualquier lugar elegi-do en el disco duro. Luego pasamos a un directorio con las fuentes y ejecutamos los siguientes comandos:

./configure --prefix=´kde-config --prefix´

make ; make install

Si la instalación se ha realizado sin proble-mas, elegimos en el menú KDE la posición “Ejecuta el comando...” y escribimos kbear o buscamos nuestro cliente directamente en el menú.

Existe la posibilidad de instalar el programa desde paquetes binarios, que se pueden descargar desde la página principal del proyecto (también están incluidos en el CD/DVD). Actualmente los paquetes RPM con la última versión son disponibles sola-mente para SuSE 9.0.

Os deseo que lo paséis bien transmi-tiendo ficheros, con KBear arrancado, que merece un lugar firme en el listado de pro-gramas utilizados a diario.

http://kbear.sourceforge.net/http://www.kde-apps.org/content/show.php?content=10741

KBear

Page 19: LiNUX+ DVD 1

[email protected]

17

sección llevada por Paweł Biliński

www.lpmagazine.org

Monitor ISDNBuena noticia para los usuarios de conexiones ISDN: pronto aparecerá Kisdnmonitor, un pequeño programa que os facilitará la administración y el control de capacidad de conexión. Todos los que tienen ISDNSERVER instalado pueden ver diagramas de su propia conexión, cualquier tipo de archivo y estadísticas, en otras palabras, pueden seguir de cerca su propia ISDN. Es una herramienta útil, sobre todo, en situaciones cuando necesitamos unos logs actuales y correctamente modificados, en realidad, ya desde la instalación de este programa pequeño, pero muy útil.http://www.elogix.ch/linux_en.html

¿ Firefox de plástico?A lo mejor la mayoría de vosotros ya ha visto el estilo de ventanas con el nombre Plastik, que ya se ha empleado como estándar en KDE 3.2. ¿Hay alguien a quién no le gustaría tenerlo por separado, aparte de KDE? No hay ningún impedimiento para poder disfrutar con un diseño “plástico” de nuestros navegadores preferidos: Firefox y Mozilla. Se han generado pieles para los dos, usando los iconos Crystal, cuyo autor es un artista con el seudónimo Everaldo.http://www.kde-look.org/content/show.php?content=11442http://www.kde-look.org/content/show.php?content=11337

Convertamos un poco...Otra aplicación para personas a las que les gusta un manejo fácil. Esta vez, el objetivo de nuestro programa de nombre muy sencillo, Konverter, es la conversión con ayuda de Mencoder exterior de todo tipo de ficheros vídeo en .... otros formatos vídeo y con empleo de varios descodificadores. El Konverter permite además “recortar” un fichero destinado a la conversión o cambiar unos detalles con respecto al formato elegido. http://kde-apps.org/content/show.php?content=9884

Consejo: KDialog¿A quién de nosotros no le gustaría crear un programa, incluso muy pequeño, que funcionara en un entor-no gráfico y además en KDE. Progra-madores de este entorno nos lo hanfacilitado: han creado una herramienta que se llama KDialog. Permite gene-rar de un modo muy sencillo, p.e. unfrontend gráfico para nuestro scripten Bash. Por ejemplo, con un coman-do kdialog –msgbox “Hola, mundo” crea-remos una ventana con el mensaje“Hola, mundo” y con un sólo click“OK”.http://developer.kde.org/documentation/tutorials/kdialog/t1.html

KMLDonkey – cliente P2P para KDE

En este número me gustaría explicaros unas cuestiones relativas a las aplica-

ciones P2P (Peer2Peer) destinadas para KDE. Voy a empezar por un programa dedicado al protocolo P2P: es una versión de cliente del popular MLDonkey para el entorno KDE. Miremos las funciones de KMLDon-key:

n “K Borrico” está construido a base de la librería Qt y de librerías kdelibs;

n es capaz de realizar las mismas funcio-nes que GUI original para MLDonkey;

n tiene una opción de arranque automá-tico del demonio de MLDonkey duran-te el inicio del cliente;

n genera en modo real diagramas gráfi-cos del ancho de banda utilizado;

n permite controlar nuestro MLDonkey desde el nivel de teléfono móvil por medio de la aplicación MobileMule;

n facilita el uso de un añidado navegador de sitios web relativos a MLDonkey;

n contiene el plug-in KIOSlave, que per-

mite pasar del nivel del navegador Konqueror a directorios con los ficheros actualmente descargados y con los ficheros cuya descarga se ha finalizado (p.e. mldonkey:/Default/downloading/).

El cliente descrito es muy eficiente. El pla-cer de utilizarlo en KDE se intensifica con la posibilidad de descargar un applet especial para panel KDE, el cual nos indica, p.e. el número de ficheros descargados y la veloci-dad de descarga/transmisión de datos.

http://www.kmldonkey.org/http://mobil.emule-project.net/

KMLDonkey

Apollon – frontend para GIFT

Junto a unas aplicaciones especializadas destinadas a mirar los recursos de una

red P2P concreta, existen programas con ayuda de los cuales podemos conectar a varias redes al mismo tiempo. Esto supo-ne un rastreo en recursos de muchas redes por medio de un sólo programa y es posible gracias al programa GIFT, que se construyó hace bastante tiempo, pero hasta ahora se puede utilizarlo con éxito para unas tareas tan fáciles como, por ejemplo, la descarga de un solo fichero. La situación cambió gra-cias al proyecto que se llama Apollon. Es un frontend gráfico para GIFT que de manera significativa nos facilita el trabajo con este programa. Para aprovechar los beneficios del cliente descrito, primero hay que insta-lar y configurar el mismo GIFT. La instala-ción básica de este programa nos permitirá contactar a la red OpenFT, pero podemos también ampliar sus funcionalidades por el uso de plug-ins adecuados.

Apollon funciona con mucha estabilidad, lo que facilita la creación de unas condiciones convenientes para aprovechar en totalidad las posibilidades de cada protocolo empleado. Tenemos un GUI sencillo, dividido en “subpáginas”.

Lo primero que vemos después de arrancar el programa es una página

con un resumen y estado de conexiones y con un listado de plug-ins descargados. Otras pestañas son: la página de búsque-das, el listado de ficheros descargados y el navegador de ficheros de sonido des-cargados. Además, Apollon – como cada aplicación P2P buena – tiene una opción de docking en la bandeja del sistema.

Les recomiendo este pequeño y cómodo programa a todos los que quieren encontrar de manera rápida un fichero determinado en recursos de varias redes P2P (esto incluye el popular KaZaA) y descargarlo sin estudiar una tonelada de manuales de sistemas o documentación.http://apollon.sourceforge.net/http://gift.sourceforge.net/http://developer.berlios.de/projects/gift-fasttrack/http://sourceforge.net/project/showfiles.php?group_id=34618&package_id=89837

GIFT

Page 20: LiNUX+ DVD 1

linuxfreshaktualności

18

Noticias

actualidades

Linux+ 1/2004

SCREEM 0.10.0A los autores de las páginas web que en su trabajo utilizan el programa SCREEM, seguramente les agradará la aparición de la nueva versión de este programa, basada en la línea de desarrollo 0.9.x. Comparándola con la versión estable anterior, obtenemos muchas mejoras en la interfaz del usuario y correcciones de los errores advertidos. Aunque no es un editor tipo WYSIWYG (que tanto les gusta a algunos webmasters), debería interesar a todos los autores. http://freshmeat.net/projects/screem/

GFTP 2.0.17Este programa es uno de los más populares clientes FTP. Después de unos meses que habían pasado desde la edición de su versión anterior, se amplió con el soporte para el protocolo FTPS. Por ahora, se codifica sólo una conexión de control. Además, se agregaron modificaciones menores que, por ejemplo, permiten mostrar el desarrollo de la acción de copiar en la barra de título o desactivar el soporte para IPV6.http://freshmeat.net/projects/gftp/

GIMP 2.0.1Por fin ha aparecido la siguiente versión estable del popular editor de gráficos. Es la primera versión con soporte oficial, no sólo en sistemas tipo Unix, sino también en Windows y Mac OS X. Tiene una nueva interfaz basada en la librería GTK+ en versión 2 y, gracias al empleo de la propiedad „cambios de skins”, se puede cambiar el aspecto del programa. Además, la ventana de diálogo ahora tiene la opción de ”docking”. Se ha agregado el soporte para formatos MNG y SVG, así comose ha proporcionado un soporte correcto de datos EXIF (grabados en ficheros JPG por cámaras digitales).http://freshmeat.net/projects/thegimp/

Grip 3.1.8Desde luego, muchas personas que disponen de colecciones de CDs de música de vez en cuando hacen sus propias mezclas, escogen de varios discos sus canciones preferidas y las graban en uno. Se puede también guardar una mayor cantidad de canciones en el disco duro en forma de ficheros MP3 o OGG, gracias a que no tenemos que cambiar los CDs. En estas situaciones podemos valernos de Grip, que es capaz no sólo de reproducir música , sino también de grabarla en el disco duro. Además, tiene soporte para encoders externos, con lo que podemos grabar rutas en forma de ficheros en formato MP3 o Ogg Vorbis. Hace poco se lanzaron nuevas versiones que incluyen, sobre todo, correcciones de los errores advertidos.http://freshmeat.net/projects/grip/

WINE 20040309

Aunque muchas aplicaciones de Win-dows tienen buenos equivalentes

que funcionan bajo Linux, a veces es nece-sario arrancar un programa determinado desde Windows. Por esta causa se han creado varios proyectos cuyo objetivo es facilitar esta misión. Uno de ellos es WINE (Wine Is Not Emulator). Wine, como su nombre indica, no es un emulador. Es una alternativa a la aplicación de Windows-API (Application Programming Interface). Para la mayoría de los usuarios lo más im-portante es que este programa posibilite arrancar muchos programas destinados para Windows bajo el control de sistemas tipo Unix. Es sustancial que Wine pueda funcionar sin el sistema Windows insta-lado, aunque para algunas aplicaciones puede resultar necesario copiar algunas librerías DLL adicionales.

En la página web de Wine (http://www.winehq.org/ ) se puede encontrar un listado de las aplicaciones soportadas (en sección Support-->Applications). Allí se puede también leer la información relativa tanto a la instalación como al mo-do de arrancar determinados programas. Además, el sitio incluye comentarios de los usuarios, que muchas veces ayu-dan a resolver nuestros propios proble-mas con un programa determinado.

Podemos instalar Wine desde las fuen-tes, pero actualmente se ofrecen unos pa-quetes preparados para las distribuciones más populares.

Para arrancar los programas, es sufi-ciente ejecutar el comando: wine nom-

bre_programa.exe. De este modo pode-mos, por ejemplo, arrancar una copia del popular cliente IRC – mIRC. Basta con pasar al directorio donde está instalado (si todavía tenemos Windows en el disco) y realizar el comando wine mirc.exe. Podemos también (si no disponemos de Windows) arrancar solamente el progra-ma de instalación (p.e. wine config.exe) y volver a instalarlo. Según el programa, puede instalarse enseguida y sin proble-mas, como p.e. el juego StarCraft, o requerir más esfuerzo.

Muchos problemas con el arranque de los programas Windows tienen que ver con la cuestión de escalar la imagen. Si trabajamos, p. ej. con resolución 1024x768, evidentemente no querremos que un juego antiguo cambie su resolución

a 640x480. Este problema se puede resol-ver si forzamos el arranque de programas en la ventana. En el fichero de configura-ción ~/.wine/config modificamos y confi-guramos dos opciones:

„Managed” = „Y”

„Desktop” = „640x480”

Estas opciones se encuentran en la sección [x11drv]. Desde luego, otros programas quizás exijan varios procedimientos. A veces, es necesario introducir en el re-gistro claves determinadas (ficheros con la extensión .reg en el directorio ~/.wine/ ), copiar las librerías DLL necesarias para el programa, o efectuar modificaciones en el fichero de configuración del programa arrancado.

Si queremos, podemos servirnos de una línea de comandos parecida a la de Windows. Basta con arrancar el pro-grama wcmd. Las definiciones de discos a las que tenemos acceso se encuentran al principio del fichero. ~/.wine/config. Ade-más, ejecutando algunos comandos de esta línea, podemos arrancar programas. Vámonos, por ejemplo, al disco con el di-rectorio windows (tras ejecutar el coman-do C:), luego entremos en el directorio (cd windows). Para abrir el Bloc de Notas só-lo necesitamos proporcionar su nombre: notepad.exe.

En esta versión se han corregido varios errores. Además, se ha simplificado un po-co la sintaxis del fichero de configuración (cuestiones relacionadas con el modo de definir los discos ). Se ha mejorado también una parte de librerías DLL.

http://freshmeat.net/projects/wine/http://linux.magma-net.pl/Linux/wine.php

Juego Zeus bajo Wine

Page 21: LiNUX+ DVD 1

[email protected]

19

sección llevada por Piotr Machej

www.lpmagazine.org

PHP 4.3.5Puesto que cada vez hay más páginas web que utilizan PHP, probablemente no es necesario presentar a nadie este lenguaje de script. Se utiliza con más frecuencia en los sitios web, puesto que ofrece un soporte muy bueno para las bases de datos, y permite tratar datos y mostrarlos de forma adecuada. Por la facilidad de su sintaxis, es fácil aprenderlo, lo que también es una de las causas de su popularidad. La versión actual tiene, ante todo, correcciones de errores (entre otras, las relacionadas con la asignación de memoria). Junto con errores principales, se modificaron más de 140 errores menores y de fuentes de problemas. En muchos sitios web, la seguridad depende en gran medida de PHP y por eso merece la pena actualizar nuestro software.http://freshmeat.net/projects/php/

Ethereal 0.10.3En el trabajo de un administrador de red es imprescindible usar herramientas tales como analizadores de protocolos de la red, conocidos popularmente como sniffers. Permiten interceptar paquetes remitidos en la red y analizar su contenido, lo que puede ayudar a encontrar fuentes de problemas. Uno de estos programas es Ethereal. El objetivo de sus autores es la creación de un programa abierto que pueda igualar a sus competidores comerciales. A juzgar por el índice de funciones (Ethereal p. ej. se arregla con 500 protocolos y puede utilizar ficheros grabados por otros programas de este tipo), no les falta mucho para conseguirlo. En la versión actual se modificaron algunos errores relacionados con la seguridad. Todos los usuarios de este programa deberían actualizarlo.http://freshmeat.net/projects/ethereal/

FVWM 2.4.18Hay muchos Asistentes de ventanas. FVWM tiene unos requisitos relativamente pequeños en cuanto al equipo, sin embargo, nos ofrece muchas funcionalidades y la posibilidad de ajustar el aspecto de la interfaz al gusto del usuario. Los usuarios con más experiencia pueden crear sus propios temas nuevos, en cambio, los principantes pueden hacer uso de una gran colección de temas existentes. Disponemos de la transparencia, caracteres alisados, sombras de caracteres, un menú dinámico y muchas otras funciones. La nueva versión incluye mejoras en la seguridad. http://freshmeat.net/projects/fvwm/

VMWare Workstation 4.5.1

VMWare Workstation es un software que nos permite arrancar varios

sistemas operativos a la vez, dentro de un sólo ordenador. Con más exactitud, crea el llamado ordenador virtual, en el que podemos arrancar varios sistemas: DOS, Windows, Linux, Novell y otros. Gracias a ello, podemos trabajar, por ejemplo, en Aurox con Windows XP y el último Man-drake arrancado en las ventanas. Es más, los ordenadores virtuales pueden conec-tarse en una red con nuestro ordenador personal (por tanto, pueden también tener acceso a Internet).

¿Entonces, con qué objetivo se puede utilizar? Hay muchas posibilidades de su aplicación. Podemos, por ejemplo, hacer pruebas de una distribución nueva sin necesidad de asignarle una partición en el disco. Esto ocurre porque VMWare guarda los datos de los sistemas parti-culares, instalados en los ficheros en el disco. Los programadores pueden probar sus aplicaciones en un par de entornos a la vez, y los administradores pueden examinar soluciones nuevas en la red entre máquinas virtuales. Éstos son solamente algunos ejemplos de muchas de sus fun-cionalidades.

Desgraciadamente, VMWare es un producto comercial. Sin embargo, tenemos la posibilidad de probar el pro-grama durante 30 días. Basta con regis-trarnos en el sitio web de VMWare (http://www.vmware.com/ ) y descargar la clave de evaluación y los binarios del programa. Después de instalarlo y arrancarlo, pode-mos agregar nuevos sistemas.

Durante el procedimiento de agregar un sistema nuevo (File --> New --> New Virtual Machine), tenemos que responder a unas preguntas. Tras seleccionar una configuración normal (podemos también servirnos de la opción Custom con el obje-tivo de ajustarla mejor a nuestras necesi-dades), indicamos qué sistema operativo vamos a instalar. A continuación, introdu-cimos el nombre de nuestro ordenador vir-tual y el directorio, en el que se colocarán sus ficheros. Este directorio debe hallarse en una partición con mucho espacio libre porque allí también se colocará un fichero con el disco duro virtual, en el que vamos a instalar el sistema huésped.

VMWare ofrece varios modos de co-nectar el ordenador virtual con la red. Si

tenemos una dirección IP libre, podemos proporcionarla a nuestro ordenador nuevo y utilizar la conexión tipo redes unidas (bridged networking). En otro caso, NAT debería ser suficiente. Desde luego, si no queremos que el ordenador virtual tenga acceso a la red externa, podemos conec-tarlo a una red de un solo servidor (host-only networking) o impedir del todo el acceso a la red (Do not use a network connection).

Si hemos elegido la opción Custom, podemos además indicar la cantidad de memoria accesible desde el ordenador virtual y asignar un espacio determinado en el disco. Si queremos que el fichero que contiene el disco duro virtual se amplie, según las necesidades, o sea, incluso si le asignamos 4 GB de espacio, hasta que no llenemos el disco del ordenador virtual, el fichero será relativamente menor.

Nos queda ahora arrancar nuestro or-denador (Start this virtual machine) e instalar el sistema que hemos elegido. VMWare es capaz de utilizar tanto las unidades CD, FDD como conexiones USB unidas con nuestro ordenador.

Después de instalar el sistema, vale la pena indicar File --> Install VMWare Tools lo que, por ejemplo, nos permitirá mejorar las propiedades gráficas del ordenador virtual.

En su nueva versión, VMWare ha me-jorado el soporte para las distribuciones de Linux que utilizan el kernel de la serie 2.6, así como el soporte para el sistema Windows 95, arrancado en procesadores rápidos. Además, se ha ampliado la di-mensión máxima de memoria accesible para ordenadores virtuales, se ha perfec-cionado la implementación SCSI y se han realizado algunas que otras modificacio-nes más.

http://freshmeat.net/projects/vmware/

Windows y Linux codo con codo...

Page 22: LiNUX+ DVD 1

entrevista

20 Linux+ 1/2004

Entrevista con Alexandre Julliard, responsable por el proyecto Wine

Krzysztof Krawczyk: ¿Podrías presen-tarte a nuestros Lectores? ¿A qué te dedicas y qué haces en tu tiempo libre (si lo tienes)?

Alexandre Julliard: Tengo 33 años y soy ingeniero de software, actualmente desempeño el cargo de director de tecnolo-gía de la empresa CodeWeavers, en la que dirijo el desarrollo del proyecto Wine. Soy de origen suizo, pero ahora vivo cerca de San Francisco.

Durante gran parte de mi tiempo libre me ocupo también del trabajo en Wine, hago cosas divertidas por las que nadie me pagaría. Como aficionado, me dedico a la astronomía, aprovechando el tiempo agra-dable de California, y a viajar en moto a lo largo de la bella costa de California.

KK: ¿Cómo empezaste a trabajar en el proyecto Wine?

AJ: En 1993, cuando ya me había ocu-pado un poco de Linux, sentí que debía participar de algún modo en el desarrollo de Software Libre. En aquel tiempo, se reunió un grupo para iniciar trabajos rela-tivos al emulador del sistema Windows. Me pareció una buena ocasión de hacer algo para mejorar Linux. Me junté con ellos y comenzamos a realizar pruebas de arranque del solitario de Windows en Linux.

KK: ¿De qué te ocupas principalmente ahora? ¿Creo que no me equivoco al decir que son unas tareas parecidas a las de Linus Tor-valds (Andrew Morton, Marcelo Tosatti) en el núcleo de Linux?

AJ: Sí, es en gran parte el mismo trabajo: verificación de cambios que nos envía la gente, su aceptación o rechazo y, de vez en cuando, lanzamiento de nuevas versiones. Además, muchas veces invento código propio ante todo de bajo nivel. Me ocupo también del desarrollo de herramientas para CodeWeavers.

KK: ¿Cuánta gente elabora o ayuda en la elaboración de Wine? ¿Conoces a la mayoría de ellos?

AJ: Siempre ha sido difícil definir un número exacto de personas involucradas en proyectos de este tipo, pero creo que hay cerca de 50 colaboradores fijos y un gran número de ocasionales. Conozco a la mayoría de los principales programadores porque se han celebrado varias conferencias de creadores de Wine, en las que hemos tenido la oportunidad de conocernos unos a otros.

KK: ¿Reciben los programadores prin-cipales de Wine (Core Team) un salario por su trabajo? ¿Dónde encontráis fondos para ello?

AJ: Nadie recibe dinero directamente del proyecto Wine, pero muchos de los principales programadores de Wine traba-jan para la empresa CodeWeavers, donde dedican gran parte del tiempo al desarro-llo de Wine. CodeWeavers gana dinero principalmente en la venta de la herra-mienta CrossOver Office y en el soporte técnico relacionado con Wine.

KK: ¿Es difícil administrar un proyecto como Wine?

AJ: Bueno, eso requiere mucho tiempo, porque hay varias modificaciones que hay que probar, y algunas de ellas son bastante complicadas. Sin embargo, me gusta mi profesión, pues no resulta tan difícil.

KK: ¿Te acuerdas del primer parche que elaboraste?

AJ: A lo mejor eso tuvo que ver con la visualización del menú y ocurrió durante los dos primeros años del proyecto. Tra-bajamos en una pequeña aplicación de Windows, tipo “Hola mundo”, provista de un menú. Mi tarea consistió en hacer visualizarlo en la pantalla. Ya hace mucho tiempo se escribió de nuevo este código en su totalidad.

En el DVDEn el DVD se encuentran los

archivos de fuentes y binarios de la herramienta Wine.

DVDDespués de arrancar la distri-bución Linux+ Live DVD en el

sistema se podrá acceder a Wine.

Page 23: LiNUX+ DVD 1

21www.lpmagazine.org

entrevistaentrevista con Alexandre Julliard

KK: ¿Cuál es tu campo preferido de tu trabajo en Wine?

AJ: Me gusta ocuparme de las cues-tiones relacionadas con bajo nivel, tales como el soporte de hilos, administración de memoria, sistemas de ficheros, etc. Me gusta sobre todo el trabajo con el servidor Wine, que es un procedimiento separado que sustituye el núcleo de Windows. Es más independiente de API Windows y tengo más libertad en el modo de implementarlo. No obstante, tiene muchos aspectos intere-santes concernientes al rendimiento.

KK: Hace tiempo, corrían rumores sobre el uso de la licencia LGPL para Wine. ¿De qué se trataba? ¿Por qué justamente LGPL?

AJ: Anteriormente, Wine tuvo una licencia más liberal, pero hace un par de años algunas empresas empezaron a trabajar en versiones cerradas de Wine. Entonces, decidimos que LGPL sería mejor para Wine, ya que aseguraría que las per-sonas que ganaran con nuestro trabajo, a la vez, tendrían que colaborar y compartir con nosotros sus soluciones. Teniendo en cuenta las características de Wine, es esencial que se facilite el funcionamiento de algunas aplicaciones comerciales con Wine, por eso, todavía no hemos elegido ninguna licencia con más restricciones, como GPL.

KK: ¿Qué opinas acerca de los pro-ductos TransGaming y CodeWeavers? ¿Es WineX o CrossOver Office muy diferente devuestro Wine original? ¿Cómo colaboráis?

AJ: CrossOver Office no se diferencia en casi nada de Wine porque todas las modifi-caciones que CodeWeavers introduce en Wine se incluyen en el árbol oficial de Wine. Intentamos estar lo más cerca posible del Wine público, porque en el caso contrario, se producirían problemas innecesarios.

Son más significativas las diferencias en el modo de construir estas herramientas que las de su código. WineX difiere de Wine en que TransGaming ya no participa en el desarrollo de Wine. Por eso, su versión es cada vez más diferente de la nuestra, que en mi opinión es muy desventajoso.

KK: Macromedia planifica modificar su software para que funcione de manera correcta con Wine. ¿Qué tipo de problemas existen en actualidad en Flash MX?

AJ: No lo sé, porque no he examinado con atención Flash MX. Me imagino que la cuestión tiene que ver con problemas típicos, con los que nos topamos a la hora de ocuparnos de una aplicación nueva, como caídas accidentales, problemas con la visualización de la interfaz, carencia de algunas funciones, etc... Me imagino que nos enteraremos de qué tipo de problemas han sido, cuando veamos las modificaciones que se han tenido que introducir en Wine en esta ocasión.

KK: Creo que hace poco he leído que pronto aparecerá la versión 1.0... ¿Cuándo podemos esperarla y por qué se retrasa su publicación?

AJ: Primero, queremos terminar muchas funciones, sobre todo en el campo de la interfaz de usuario y de la facilidad de configuración. Además, quedan algunos problemas internos que tienen que solucionarse. El listado com-pleto se puede encontrar en la página http://www.winehq.org/site/todo_lists. Vamos a publicar la versión 1.0, cuando esté lista. Es todo lo que puedo prometer.

KK: ¿Tú mismo utilizas Wine? ¿Con qué objetivo?

AJ: Lo utilizo de vez en cuando para arrancar el paquete Microsoft Office pero, en verdad, ya no lo necesito. He encon-trado los equivalentes de Linux para todas las aplicaciones de Windows que utilizaba. Actualmente principalmente arranco Wine para probarlo y desarrollarlo, pero no como usuario.

KK: ¿Utilizas Linux en tu trabajo o en casa? Si es así, ¿qué distribución de Linux y por qué?

AJ: Empleo Debian, sobre todo, porque en mi opinión es la distribución más segura. Tengo tanto trabajo con los errores en Wine que no quiero buscarlos en el resto del sistema.

KK: ¿En tu opinión qué lugar debería ocupar Wine en un sistema moderno de escri-torio?

AJ: Creo que Wine es indispensable para facilitar a la gente el “transbordo”

a la estación de trabajo Linux; hay tantas aplicaciones Windows que la sociedad Open Source no es capaz de garantizar los equivalentes de todas. Por otro lado, creo que Wine debe ser un componente de una solución completa, asequible de modo paralelo a las aplicaciones nativas de Linux. Si la gente pudiera arrancar todas sus aplicaciones bajo Wine, desde luego, el empleo de Linux no tendría mucho sentido.

KK: Existen varias distribuciones de Linux que pretenden ser muy parecidas a Win-dows. Por ejemplo, se declaraba que Lindows iba a ser casi lo mismo, con ayuda de Wine. ¿Qué opinas de esto?

AJ: Creo que es una buena idea crear un producto parecido a Windows, si la intención es atraer a los usuarios actua-les de este sistema. Hay muchas cosas que Microsoft construyó bien y no es necesario hacer algo diferente solamente por espíritu de contradicción. Desde luego, hay también muchos campos en los que se puede perfeccionar el estado existente. Por esta razón, está bien tener varias distribuciones que experimentan de muchas maneras con la construcción del entorno.

KK: ¿Cuál es tu juego preferido de Linux?AJ: No, no juego, ya que los juegos

ocupan demasiado tiempo. En vez de jugar prefiero hacer códigos.

KK: ¿Crees que es posible que un día Wine sea “perfecto”? ¿O casi perfecto? Me refiero al siguiente escenario: compro un paquete nuevo con el programa Windows y lo arranco sin pro-blemas en mi distribución de Linux con ayuda de Wine.

AJ: Sí, por lo menos eso espero. Nunca será 100% perfecto, pero creo que podemos acercarnos a un estado en el que la mayo-ría de la gente no notará la diferencia. Pero todavía no es así.

KK: ¿Has estado alguna vez en Polonia? ¿Te gustaría visitar nuestro país?

AJ: No, no he tenido la oportunidad de visitar Polonia. Espero que algún día lo haga.

KK: Gracias por la conversación. AJ: Gracias por el interés.

Figura 1. Alexandre Julliard

En Internet:• Página principal del proyecto Wine: http://www.winehq.org/

Page 24: LiNUX+ DVD 1

entrevista

22 Linux+ 1/2004

Entrevista con Jeremy White, fundador de la empresa CodeWeavers

Krzysztof Krawczyk: ¿Podrías presen-tarte a nuestros Lectores? ¿A qué te dedi-cas y qué haces en tu tiempo libre (si lo tienes)?

Jeremy White: Soy fundador y presi-dente de la empresa CodeWeavers, lo que significa que me dedico a buscar maneras de ayudar a la gente a solucionar sus problemas con Wine para que pue-dan utilizar sus aplicaciones preferidas de Windows en Linux. Esto significa también que pretendo encontrar el modo de tener en mi empresa 15 o más hackers Wine. Total que mi trabajo consiste también en responder al correo todo el día.

Trabajo más de lo que debería, pero todo mi tiempo libre lo paso con la familia. Me gusta, sobre todo, jugar con mis dos hijos (6 y 8 años).

KK: ¿Por qué has creado CodeWeavers y cuándo has empezado colaborar con Wine?

JW: Fundé la empresa CodeWeavers en 1996. Dos años después, durante la búsqueda del emulador Atari 2600, me topé con Wine. En aquel tiempo pensé (y sigo pensando así) que esel proyecto más atrevido que había visto en mi vida. Me prometí que siuna vez me tocaba la lotería, me jubilaría y empezaría a desarrollar Wine.

En 1999, cuando Linux comenzó a sonar fuerte, cambié completamente los principios de mi empresa: el proyecto

Wine llegó a ser el centro de nuestro interés. Entonces contraté a Alexandre (responsable de Wine) y empecé a ayudar a la gente que comenzaba a trabajar con Linux.

KK: ¿Cuántas personas trabajan en tu empresa?

JW: Hemos contratado a aproximada-mente 20 personas.

KK: ¿A qué os dedicáis principalmente ahora?

JW: En este momento estamos pasando un período muy ajetreado a causa de la publicación planificada de CrossOver Office 3.0 que dispondrá del soporte para unas aplicaciones total-mente nuevas.

Además, destinamos mucha energía en nuestro Centro de Compatibilidad y las herramientas relacionadas con él.Esperamos construir un sistema que permita usar Wine para arrancar la mayoría de las populares aplicacio-nes.

KK: ¿Es rentable tu empresa? JW: Sí. Hemos sobrevivido con los

ingresos de los últimos 3 años gracias a la generosidad de la sociedad y de nuestros clientes.

KK: ¿Es difícil administrar una empresa de este tipo?

JW: Por un lado sí, por otro, no. Es difícil basar tu modelo de negocios en el software Open Source, particular-mente, porque en el curso de los últimos años siempre nos ha faltado dinero. De

DVDDespués de arrancar la distri-bución Linux+ Live DVD, en el

sistema se podrá acceder a Wine.

Page 25: LiNUX+ DVD 1

23

entrevista con Jeremy White entrevista

www.lpmagazine.org

todas formas, el primer desafío es tener paciencia en la colaboración con toda esta gente, entusiasmada con el proyecto Wine, porque a la vez hay que buscar a un grupo reducido capaz de ayudar en la financiación del trabajo que estamos realizando.

No obstante, ahora trabajo con el mejor equipo de todos con los que he tenido la oportunidad de colabo-rar, por tanto, estoy entusiasmado por poder dirigir a unos trabajadores así.

A Jon, mi director operativo, le gusta repetir de bromas que cualquier imbécil podría dirigir con éxito un grupo tan bueno como el nuestro.

KK: ¿Cuál es tu campo preferido del tra-bajo sobre Wine y cuál fue el reto más difícil que superaste?

JW: Oh, es una pregunta difícil. Hay muchas cosas que me gustan en Wine. A decir verdad, siempre me ha impresio-nado lo bien que funciona Word; lo utilizo todos los días, pues eso siempre me llena de orgullo.

Sin embargo, me gusta el soporte de juegos en Wine, principalmente porque es el resultado del trabajo de los voluntarios. Admiro mucho a toda esta gente que dedicó tanto tiempo suyo para posibilitar el arranque de juegos.

KK: ¿Qué piensas sobre la empresa Trans-Gaming? ¿Es WineX muy distinto de vuestro producto?

JW: TransGaming se enfrentó a los mismos desafíos que nosotros: cómo ganar

dinero con un software Open Source, cuando, a decir verdad, hay poca gente que utiliza Linux en sus ordenadores, y sólo algunos de ellos están dispuestos a pagar por software.

Creo que tuvieron que tomar decisiones igual de difíciles, pero, en efecto, se apartaron del Wine oficial. Pues sí, WineX en realidad es bastante diferente del Wine oficial.

Tengo esperanza que en un futuro colaboremos todos juntos, Wine y WineX arranquen los juegos sin problemas y no sea necesario instalar Windows.

KK: ¿Y cómo colaboráis con WineHQ?¿Cuáles son las diferencias principales entre el Wine original y vuestro CrossOver Office?

JW: Colaboramos bastante estrecha-mente con WineHQ. En realidad, reali-zamos nuestros principales trabajos de desarrollo dentro del proyecto Wine, así que todas las correcciones se presentan al público.

Las diferencias básicas entre “nuestro” Wine, y el Wine de WineHQ son las siguientes:

– en el curso de preparación de la edición siguiente “congelamos” el código, de ahí que nuestros productos son más estables;

– tenemos un par de parches (al margen, todos accesibles desde nuestra página web), que permiten resolver de un modo poco elegante pero eficaz algu-nos problemas. En el Wine original, Alexandre nunca aceptaría estos cambios, pero que, a pesar de todo, mejoran el funcionamiento de algunas aplicaciones.

KK: ¿Cuáles son las propiedades principa-les de la herramienta CrossOver Office 2.1?

JW: Bueno, su idea principal es facilitar la instalación y el arran-que de un conjunto de programas bien conocidos de Windows, como:MS Office, Notes, Photoshop, Quicken, etc.

Dentro de este proyecto el cliente recibe el soporte técnico, de manera que dispone de un grupo de perso-nas a quienes puede acudir si algo falla. Además, si es un cliente potente puede contar con alguien que introdu- zca en Wine unos cambios esenciales para que soporte sus aplicaciones pro-pias.

En efecto, CrossOver es un agente que nuestros clientes pueden utilizar para ayudar en el desarrollo del proyecto. Con casi todo el dinero para CrossOver que se nos entrega, se financia direc-tamente a los programadores de Wine (tenemos sólo 4 empleados que no hacen códigos).

KK: ¿Podrías comparar CrossOver Office con Win4Lin o WMware, y también CrossOver Server con MS Terminal Server o con Citrix?

JW: Si arrancas la aplicación que soportamos, CrossOver es mejor, sin duda alguna.

Las aplicaciones se arrancan igual que si fueran nativas del sistema Linux, p.e. en el menú se ofrecen os iconos apropiados. Todo funciona a una velocidad normal, puedes tam-bién reducir la aplicación en el asistente de ventanas del modo que más te guste.

Es más, dentro del servidor tienes todas las ventajas de graduación de sistemas Linux: puedes arrancar tres veces más clientes en el mismo equipo.

Al mismo tiempo, eliminamos la necesidad de disponer de una licencia del sistema Microsoft y, por consiguiente, la solución obtenida es mucho más barata.

Desde luego, existen inconvenien-tes de este sistema: no arrancaremos todas las aplicaciones ni funcionarán de manera estable. Por eso, Win4Lin, VMWare o MS Terminal Server nos aventajan en su soporte del mayor número de programas del que soporta-mos nosotros, y también por el hecho de que en la mayoría de los casos funcionen perfectamente.

KK: Algunas empresas, p.e. Disney Ani-mation, os pagan para que introduzcáis unas funcionalidades adicionales en Wine. ¿Podrías decir algo al respecto?

JW: Claro. Por lo general se dirigen a nosotros empresas grandes para recibir el soporte de unas aplica-ciones específicas que utilizan. Gene-ralmente, empezamos evaluando la dificultad de la tarea y luegopresentamos una estimación degastos. Después de regatear un pocoy si aceptamos el precio, iniciamostrabajos para mejorar Wine, de modoque soporte sus aplicaciones.

Gracias a este tipo de colaboraciones, en Wine aparece el soporte para muchas

Figura 1. Jeremy White

Page 26: LiNUX+ DVD 1

entrevista

24 Linux+ 1/2004

aplicaciones diferentes. Lo mejor de todo esto es que el resultado de los trabajos para un cliente determinado lo aprove-charán todos, pues Wine es cada vez más perfecto. A veces cuesta mucho y requiere mucho tiempo, pero para algunos vale la pena: así fue en el caso de Disney.

KK: Macromedia planifica modificar su software para que trabaje correctamente bajo Wne. ¿Qué tipo de problemas existen actual-mente en Flash MX que exijan una solución así?

JW: A decir verdad, Flash MX y Dream-weaver MX funcionan bastante bien en CrossOver. En versiones de estas apli-caciones de 2004 se utilizó una tecnogía licenciada de la que no dispone Wine, por lo que no funcionarán con Wine.

KK: ¿Tú mismo utilizas Wine (CrossOver) y con qué objetivo?

JW: Claro, que sí. Todos los días. Utilizo Word y Excel con bastante frecuencia: Word para preparar unos documentos de negocios y Excel para elaborar varias análisis. Este último lo utilizo también para seguir progresos del grupo de scouts de mis hijos.

Además, a veces participo en la ofi-cina en unas partidas de Diablo II, pero últimamente no hemos tenido tiempo para esto.

KK: ¿Utilizas Linux en el trabajo o en tu casa? Si es así ¿cuál distribución de Linux y por qué?

JW: Sí, utlizo Linux en el trabajo desde hace casi 7 años, y en mi casa desde hace 5 años. Me he valido de varias distribuciones, entre otras, Slack-

ware, Red Hat, Debian, Caldera (!) o SuSE.

Actualmente, trabajo con Red Hat 7.2,muy estable, y no la voy a actuali-zar porque es tan estable y funciona tan bien que tengo miedo de estro-pear algo. En casa utilizo Debian unstable (quería tener un pro-grama MythTV que funcione correcta-mente).

KK: ¿Existen varias distribucionesde Linux, que pretenden ser muy similares a Windows. Por ejemplo, Lindows anunciaba que iba a ser casi lo mismo con ayuda de Wine. ¿Qué opinas de esto?

JW: Lindows es una distribución bien pensada de Linux. La gente de Lindows quiere preparar Linux para todo el mundo. Trabajan duro para que Linux sea sencillo y, a la vez, fácil de manejar, lo que en realidad supone una buena dirección en el desarrollo de Linux.

Además, Michael Robertson y su empresa disponen de un marketing y public relations buenos, dado que pro-pagan la existencia de Linux entre la gente a gran escala, lo que antes nadie KK: ¿Colaboráis estrechamente con Xandros y SuSE. Qué piensas sobre estas distribuciones de Linux?

JW: Creo, que las dos son buenas. Xandros tiene una interfaz fácil de mane-jar para el usuario, y SuSE es una seria distrubución universal.

KK: ¿Tuviste un plan de abrir Wine Test Center? ¿Cuál fue la idea de Center? ¿Qué es el Centro de Compatibilidad Cross-Over?

JW: Wine Test Center es una de las ideas que voy a realizar cuando me toque la lotería. La idea consiste en comprar 1.000 aplicaciones y facilitar su instala-ción y arranque bajo Wine. Este tipo de actividades realizaríamos en el centro de pruebas.

Centro de Compatibilidad (http://c4.codeweavers.com/ ) es nuestro primer paso en esta dirección. Queremos posibilitar el surgimiento de sociedades virtuales relacionadas con una aplica-ción que les gustaría arrancar. Pueden colaborar con nosotros en el desar-rollo de unas versiones nuevas de Cross-Over y cuidar que sus aplicaciones tengan mejor soporte. Pueden tam-bién compartir sus experiencias conotros usuarios. Desde luego, puedentambién prestarnos ayuda económica.

KK: ¿Tienes tu juego preferido de Linux o de Windows que se arranca en Linux ?

JW: Bueno, Tom Wickline acaba de enviarme una parte de Civilización III, la que arrancó con el empleo de Cross-Over. Tengo que preguntarle como lo consiguió.

KK: ¿Crees que un día CrossOver será “perfecto”? ¿O casi perfecto? Me refiero a un escenario así: compro un paquete nuevo con el programa para Windows y sin problemas lo arranco en mi distribución de Linux con ayuda de Wine.

JW: Es mi objetivo principal. ¿Si un día será “perfecto”? No, probable-mente no, pero tengo la intención de acer-carme lo más posible a este objetivo. Me gustaría alcanzar un estado en el que al cliente le sorprenda y le asombre cuando algo no funcione bien, en vez de una situación de ahora, cuando le sorprende que algo funcione perfectamente.

KK: ¿Has estado alguna vez en Polonia? ¿Te gustaría visitar nuestro país?

JW: No, todavía no he estado, pero me gustaría ir a Polonia.¿Es una invi-tación?

KK: Desde luego. Gracias por el tiempo que nos has dedicado.

JW: No hay de qué. Gracias por tu interés.

En Internet:• Página principal de la empresa

CodeWeavers: http://www.codeweavers.com/

Figura 2. Los developers de Wine se reunen todos los años en la conferencia WineCon para hablar del desarrollo del proyecto

Page 27: LiNUX+ DVD 1
Page 28: LiNUX+ DVD 1

gráficos

26 Linux+ 1/2004

GIMP 2.0

Ya han pasado más de tres años desde la publicación de GIMP 1.2, el programa de gráficos más popular para el sistema

Linux y familia BSD, equivalente de Pho-toshop en Windows; el proyecto cambió de modo significativo. La prueba de esto son las descripciones de modificaciones reali-zadas en las siguientes versiones (ramo de desarrollo – 1.3.x), que se pueden observar en el sitio web http://cvs.gnome.org/lxr/source/gimp/.

Actualmente podemos conocer la primera versión estable del ramo 2.0, publicada el 23 de marzo de 2004. En este artículo voy a presentar las innovaciones más interesantes de GIMP 2.0.

Nuevo GIMPA la pregunta ¿a quién está dirigido el nuevo GIMP? se puede responder sin vacilar: a todo el mundo. Les interesará ante todo a los diseñadores gráficos, a las personas que se dedican al tratamiento digital de fotos, a los autores de páginas web, ilustradores de libros o creadores de animaciones por ordenador. Todos los que desean ocuparse de la creación de imágenes digitales y, a lo mejor, de su posterior publicación, deberían conocer las funciones de la recién publicada versión 2.0, que resultan muy desarrolladas en comparación con la versión anterior.

El uso del programa es muy sencillo, lo que en la práctica significa que el cono-cimiento del ”taller técnico”ocupa relativa-mente poco tiempo.

Además, GIMP es un producto com-pletamente gratuito, desarrollado como

Software Libre bajo licencia GPL. Frente a unos programas comerciales vendidos en el mercado, destinados al tratamiento de imágenes, para muchos GIMP es una alternativa muy interesante, que funciona muy bien en la práctica.

Desde el punto de vista del usuario que ha utilizado las versiones anterio-res de GIMP, la versión 2.0 trae muchos cambios importantes: una interfaz cohe-rente basada en la librería GTK+ 2.0, enor-mes posibilidades de la configuración del entorno de trabajo, una herramienta de rutas perfeccionada, menú visuali-

Propiedades de GIMP 2.0:– soporte básico del modelo de colores

CMYK;– soporte del formato SVG en las

rutas;– soporte para todas las fuentes que

se encuentran en el sistema;– nueva interfaz del usuario basada en

GTK+ 2.0;– soporte ampliado del formato .PSD

(Adobe Photoshop) y .XCF (GIMP);– herramientas nuevas o perfecciona-

das para crear y seleccionar rutas y ejecutar operaciones sobre ellas;

– muchos scripts nuevos (sobre todo filtros);

– posibilidad de coexistir con GIMP 1.2 en el mismo sistema;

– asignación de un conjunto de plug-ins Video a un modulo separado GAP.

Kamila Folta

En el DVDEn el DVD se encuentran paque-

tes fuentes de GIMP.

DVDDespués de arrancar la distribu-

ción Linux+ Live DVD en el menú Linux+/Graphics/The GIMP, se

podrá acceder a la posición para el arranque de GIMP.

Page 29: LiNUX+ DVD 1

27www.lpmagazine.org

gráficosgimp 2.0

zado en la ventana de la imagen, atajos de teclado para todas las opciones del menú y la posibilidad de redefinir-las, soporte básico del modelo de colo-res CMYK, soporte del formato SVG, herramienta de texto, escrita entera-mente desde el principio y muchos otros.

Desde el punto de vista de un pro-gramador, un cambio importante es la facilitación del API perfeccionado a las librerías de plug-ins libgimp en el len-guaje Python (extención Gimp-Python). Como resultado, disponemos del acceso directo a objetos tales como imagen, capa o canal; sin necesidad de manipu-lar sus números ID, como sucede en el lenguaje de script Script-Fu. Otra ventaja de la ampliación del producto es que no implica la necesidad de utilizar sola-mente la base de procedimientos PDB (Procedural Database), porque permite usar toda la librería libgimp y facilita el acceso a muchas funciones de nivel más bajo.

Soporte básico del modelo de colores CMYKUna de las novedades interesantes en GIMP, sobre todo para los que desean imprimir su trabajo, es la posibilidad de transformar la imagen creada en el modelo de colores RGB al modelo de colores CMYK. En el menú Filtros->Colo-res->Descomponer podemos encontrar el filtro adecuado.

Su funcionamiento consiste en trans-formar el modelo ”fuente” de colores de la imagen (p.e. RGB) al modelo ”meta” (p.e. CMYK). Después de la transforma-ción, la imagen nueva se compone de una sucesión de capas que representan partes integrantes en el modelo meta. Es interesante que este filtro ofrezca la posibilidad de conversión en otros modelos de colores; en el listado

encontramos, entre otros: RGB, RGBA, CMY, CMYK, HSV, Alfa, LAB, YCbCr_ITU_R470.

La operación de descomponer inte-grantes del modelo es una operación reversible; para unir las capas sirve el filtro del menú Filtros->Colores->Componer.

Es tan sólo un germen del soporte CMYK en GIMP, pero teniendo en cuenta el enorme interés de usuarios por esta funcionalidad, podemos sospechar que se trabajará para desarrollarla.

Hay que subrayar que GIMP 2.0 desgraciadamente no soporta el modelo CMYK, tal como lo hace el afamado Pho-toshop, es decir, como uno de los modos de tratamiento de la imagen. Es probable-mente una de las faltas más importantes de GIMP, desde el punto de vista de las personas que quieren utilizarlo en tipo-grafía.

Soporte del formato SVGLa herramienta de GIMP que sirve para crear rutas (descritas con vectores utili-zando las curvas de Bezier) en la versión 2.0 se amplió por una función de mucho valor: ahora se puede grabar cada una de las rutas en formato SVG. Además, se puede elaborar una ruta nueva a través de la importación del fichero SVG (Scallable Vector Graphics). SVG es un formato propuesto por W3C y basado en

Figura 2. Agregación de capas como efecto produce una imagen de entrada

Figura 1. Uso del filtro que descompone la imagen en integrantes de colores

Page 30: LiNUX+ DVD 1

gráficos

28 Linux+ 1/2004

el lenguaje XML para grabar los gráficos vectoriales, que poco a poco llega a ser un estándar en gráficos. La ventaja principal del formato SVG es que las aplicaciones existentes lo soportan universalmente, entre otros, los programas de gráficos de la empresa Adobe.

Dentro del proyecto GNOME se ha elaborado un programa perfecto para crear gráficos vectoriales, basado en SVG – Sodipodi. La unión de estos dos

excelentes programas de gráficos, deGIMP y Sodipodi, abre nuevas posi-bilidades para los artistas. Sodipodi ofrece un amplio abanico de herra-mientas cómodas y eficientes para crear los gráficos vectoriales, que luego en su forma final podemos trasladar a GIMP y componer en una imagen de rastreo.

Fuentes en GIMPEn GIMP 2.0, la importación de infor-mación sobre fuentes tipográficas se realiza, como en la mayoría de los programas modernos que funcionan bajo X11, con ayuda de un programa que se llama Font-config. En el fichero de configuración /etc/fonts/font.conf se encuentra la información sobre las fuentes instaladas en el sistema (grabadas en formato XML), y sobre todo las rutas de directorios que las con-tienen. Una de ellas es ~/.fonts, un sub-directorio del directorio raíz del usuario corriente.

Si queremos agregar una fuente al conjunto existente, es suficiente inser-tarla en este directorio. GIMP utiliza font-config, por eso la fuente agregada se visualizará enseguida (las fuentes se graban en el fichero cache, por eso puede resultar necesario volver a construir un fichero con informa-ción sobre fuentes; para ello, hay que arrancar el programa fc-cache con el parámetro que es a la vez el nombre del

directorio, donde se encuentra el fichero con la fuente).

En GIMP 2.0 se ha puesto mucha atención en la utilización de fuentes True Type con codificación local. Se ha incluido el soporte de unos idiomas tan lejanos a nuestro sistema de codificación, como indonesio o coreano.

InterfazFijémonos en la versión final de GIMP 2.0 y las modificaciones más importantes de la interfaz renovada del usuario; además, algunas novedades y curiosidades de las que simplemente vale la pena saber, p.e. el uso del modo de pantalla entera (normalmente a esta opción le corresponde el botón [F11]).

Iconos Ya el primer vistazo a la ventana prin-cipal del programa, que contiene un conjunto de iconos de herramientas, basta para apreciar el aspecto estético del uso de GTK+ 2.x. Los nuevos iconos de colores son solamente el principio de una lista de sorpresas. El menú principal desarrollado, las ventanas dediálogo de herramientas para el trata-miento de colores o el menú que permite realizar operaciones sobre la imagen o capa han sido reavivados, gracias a la colocación de iconos que los represen-tan, diseñados con una maestría casi artística.

Historia de GIMPEn diciembre de 2000 empezó una nueva era en la historia de uno de los programas más populares de trata-miento gráfico con el nombre de GIMP (GNU Image Manipulation Program). En aquel tiempo, tras la publicación de GIMP 1.2, Sven Neumann y Michael Natterer enviaron a la lista de discusión gimp-developer un documento titulado: ”The future of The GIMP” (”Futuro de GIMP”). Fue una forma de declaración de principios de sus autores acerca de su desarrollo.

GIMP 1.2.xTodo el mundo reconoció la línea de publicaciones de GIMP 1.2.x como una línea estable (ing. Maintenance Branch). Perteneció al primero de los ramos de GIMP, descritos por autores del documento. Su desarrollo posterior iba a ser limitado a unas pequeñas correciones del código existente, y sus versiones nuevas (versiones 1.2.x) podrían ser publicadas sólo en caso de encontrar errores serios.

GIMP 1.3.xLa línea de GIMP 1.3.x se planificó como una línea ”de trabajo”. Uno de los objetivos principales de esta edi-ción de GIMP fue basar el código en la librería GTK+ en versión 2.0 y limpiar internas estructuras de datos. No se iban a introducir modificaciones impor-tantes tanto del conjunto de tareas realizadas como del aspecto del pro-grama.

GIMP 2.0.xLos autores dejaron la idea de GIMP 2.0 para un futuro bastante lejano, por eso no se definieron bien los planes respecto a la versión. El uso de librerías GEGL (para la con-versión de imagen) y GCim (extensión XML para GTK) pareció lo más impor-tante.

Figura 3. Utilizando Nautilus se puede rápido mirar las fuentes instaladas en el sistema

Page 31: LiNUX+ DVD 1

29www.lpmagazine.org

gráficosgimp 2.0

MenúEn las versiones anteriores se accedía a las opciones del menú pulsando el botón derecho del ratón en el campo de la ventana con la imagen y en la última versión es posible hacerlo de otro modo. Esto interesará sobre todo a los usuarios de GIMP que opinaban que el uso del menú anterior era incómodo. Ahora podemos verlo en la barra del menú, que se encuentra en la ventana con la imagen. El menú contextual sigue siendo accesible por medio del botón derecho del ratón, por tanto, la modifica-ción no influirá en los hábitos adquiridos de los usuarios avanzados. Las opiniones llenas de entusiasmo de las personas que usan la versión 1.3 demuestran que la modificación ha sido recibida con alegría y, en algunos casos, con un suspiro de alivio.

PestañasLas pestañas, con ayuda de las cuales se puede configurar el contenido de las ven-tanas de diálogo, han sido modificadas de manera muy innovadora, la cual permite ajustar el entorno GIMP a las necesidades individuales.

La propiedad más importante de las pestañas, respecto a su utilidad, es la movilidad: podemos trasladarlas entre las ventanas de diálogo, con lo que disfrutamos de posibilidadesextraoridinarias de configuración del”puesto de trabajo” al modo másapropriado para cada usuario. Cadauna de las pestañas de las ventanas

de diálogo puede ser agregadao eliminada con ayuda del menú con-textual de la pestaña. Otras opciones incluidas en este menú permiten cam-biar el modo de etiquetar las pestañas. Un elemento visible que identifica la pestaña, puede ser un texto, un icono o un icono + un texto. Hay nueve tamaños diferentes de iconos; elementos que representa la pestaña (p.e. Gradientes, Brochas o Tipografía) podemos visualizarlos en forma de listado o escala (tabla).

Atajos de tecladoLos atajos de teclado definidos en el programa siguen siendo los mismos, al grupo de atajos ya conocidos se han añadido unos nuevos (p.e. la posi-bilidad de recortar la imagen o capa hasta el límite de área marcada). Los hábitos que hemos adquirido en el trabajo con la versión anterior delprograma, a lo mejor muy importantes para nosotros, nos ayudarán mucho también en esta versión. En Internet ha aparecido un listado final de atajos de teclado para los comandos de GIMP 2.0, que se puede conseguir en la dirección http: / /www.webone.com.au/ ~oc /gimp/keybindings.pdf

GIMP hace posible una asignación dinámica de los atajos de teclado de comandos que se encuentran en el menú, y permite modificar de manera sencilla los valores predeterminados de los atajos. A modo distinto de la versión 1.2, esta opción está por defecto desactivada. Para poder utilizarla hay que activarla en la ventana ”Preferencias” (Preferencias->Interfaz->Usar combinaciones de teclasdinámicas). También es posible volvera utilizar los atajos de teclado estándarsin necesidad de volver a arran-car GIMP. Además, disponemos de una opción de grabación automática de atajos cuando cerramos el programa y de impor-tación automática cuando lo arrancamos.

Figura 4. La ventana de herramientas del programa GIMP antigua (a la izquierda) y nueva (a la derecha)

Figura 5. Resultado de la utilización de la librería GTK+ 2.x, presentado en el ejemplo de ventana de diálogo que sirve para modificar el nivel de colores de la imagen (la antigua: a la iquierda, la nueva: a la derecha)

Page 32: LiNUX+ DVD 1

gráficos

30 Linux+ 1/2004

PreferenciasNo se podría adaptar el entorno de trabajo en GIMP a nuestros gustos, sin ayuda de la desarrollada ventana ”Preferencias”. Se ha transformado la división de opciones en categorías de forma que su uso en la versión nueva resulta incluso más cómodo y más intuitivo. Se ha modificado la ubicación de opciones que se encuen-tran en la categoría ”Sesión” (registro de la ubicación de ventanas o del estado de un dispositivo antes de cerrar el pro-grama): estas opciones han sido traslada-das a la categoría ”Interfaz”.

A la opción existente de elegir información visualizada en la barra de título de la ventana con la imagen se ha añadido la posibilidad de confi-gurar la información que aparece en la barra de estado. Para grabar esta información se utiliza un formato de texto sencillo. Un gran número de modelos ofrecidos puede servir de base para definir y grabar sus propios modelos.

Se ha agregado también la opción de definir el color que rodea la parte visible del lienzo para dibujar. El color puede ser importado desde el motivo corriente, utilizado en el sistema, puede ser igual que el color del campo seleccionado claro u oscuro, o definido de manera libre por el usuario. Este tipo de ajuste

se puede aplicar tanto en la vista de la imagen en modo de ventana, como en la vista de pantalla entera.

En cada una de estas vistas se puede además definir la visualización de tales elementos como barras del menú, de estado, y de líneas verticales y hori-zontales.

Se ha añadido también una opción ”Memoria máxima para deshacer” a las opciones que regulan el uso de recursos. Permite definir el tamaño de memoria que puede ser utilizada para guardar información u operaciones ejecutadas durante el trabajo. Si se la explota en su totalidad, la información sobre una parte de las operaciones realizadas ante-riormente se perderá y el proceso será irreversible.

Otra novedad es la posibilidad de seleccionar cualquiera de los motivosdefinidos en la categoría ”Interfaz”. Actualmente, junto a un motivopredeterminado, también se encuen-tra allí el motivo ”Pequeño” quepermite reducir el tamaño de elementos gráficos GTK. Gracias a la reducción, en el escritorio queda más espacio libre para colocar p.e. ventanas de gráficos. En la ventana de preferencias se puede tam-bién configurar una escala por defecto

Figura 6. Las pestañas permiten una configuración libre de herramientas y de las vistas y adaptan el entorno del trabajo a las necesidades actuales (un ejemplo de configuración de pestañas en GIMP, utilizada por la autora)

Figura 7. Podemos anidar las pestañas en el interior de un modo libre y trasladarlas entre las ventanas llamadas ”puertos”

Page 33: LiNUX+ DVD 1

31www.lpmagazine.org

gráficosgimp 2.0

de la imagen. Se puede configurar la escala de cada imagen con ayuda de la opción del menú Imagen-->Configurar la rejilla.

Casi todos los cambios realizados en la ventana ”Preferencias” son visualizados enseguida, sin necesidad de volver a arrancar el programa. Por eso, se pueden testear los ajustes de GIMP en un instante, y lo más importante, se ahorra nuestro valioso tiempo.

HerramientasEntre las nuevas herramientas vamos a encontrar verdaderas ”perlas”. Las apreciarán todos los usuarios que tra-bajan con GIMP a diario y las personas, a las que incluso las modificaciones más pequeñas introducidas en la nueva versión facilitarán el trabajo de modo significativo.

DesplazamientoPodemos toparnos con novedades entre las herramientas que a primera vista parecen no ofrecernos nada nuevo. Una de estas herramientas es, por ejemplo, ”Mover” (tecla [M]). Podemos utilizarla para desplazar tres tipos de objetos: capas, campos seleccionados y rutas. Podemos mover objetos del tipo elegido en opciones de la herra-mienta: las obtenemos pulsando con el botón izquierdo el icono de la herra-mienta (tres iconos representan los tipos de objetos). También es posible cambiar

el tipo de objetos desplazados durante el uso de esta herramienta: ”capa” es un tipo seleccionado por defecto; si pulsa-mos y retenemos la tecla [Alt], cam-biaremos el tipo de objeto en”campo seleccionado”, en cambio, sipulsamos y retenemos la tecla [Ctrl]se podrá desplazar objetos tipo”ruta”. Además, se puede cambiar el funcionamiento de la herramienta si pulsamos [Shift], el cual cambia el modo de seleccionar el objeto que que-remos desplazar: podemos elegir el objeto (ruta, capa) activo (es decir,elegido del listado de capas/rutas)u objeto sobre el cual en el momento dado se encuentre el indicador del ratón (o de otra herramienta utilizada).

”Mover” puede ser activado enel momento en que se utiliza otraherramienta: para hacerlo hay quepulsar y retener el espacio. Elnúmero de todas las combinacio-nes de posibles modos del funcio-namiento de esta herramienta puedeprovocar dolor de cabeza. Sinembargo, si los conocemos, tene-mos gran libertad de actuacióny podemos aumentar la eficiencia denuestro trabajo.

Abrimos, por ejemplo, cualquier imagen con la tecla [R] y activamos la selección de campos rectangulares, la marcamos y, después de pulsar la tecla [M] y escoger un tipo adecuado de objeto, desplazamos el campo seleccio-nado.

SelecciónEs difícil imaginarnos el trabajo con un programa de gráficos sin la posibilidad de seleccionar unos campos de la imagen y realizar en ellos operaciones gráficas. Para seleccionar campos en GIMP sirven varias herramientas: selección de campos rectangulares, selección de campos elípticos, selección manual de campos, selección decampos avecinados, selección con ayudade curvas de Bezier y selección de formas en la imagen. En la ventana de diálogo que presenta las opciones de la herramienta actualmente seleccio-nada para seleccionar un fragmento de la imagen, se han agregado unos elementos que ofrecen cuatro modos de la herramienta: sustitución, agregación, desmarcación o recorte del campo seleccionado.

Vale la pena fijarnos en una curio-sidad que servirá a todos los que usen con frecuencia la opción de selección, y que se encuentra en Editor de selección (Diálogos-->Editor de selección), que es una ventana de diálogo nueva, que reune el conjunto de operaciones de selección: seleccionar la imagen entera, renunciar a la selección, desmarcar, grabar en el canal el campo seleccionado, grabar en la ruta el campo seleccionado y recor-tar el campo seleccionado.

Abramos, por ejemplo, cualquier imagen, elijamos con el ratón deentre herramientas la opción de marcar campos según colores. Luego pulsemos cualquier parte de la imagen: se marcará un campo del mismo color.

TransformacionesLa herramienta que facilitaba escalar, girar, recortar o cambiar de perspec-tiva (según la opción seleccionada de la herramienta), en GIMP 2.0 ha sido sustituida por una serie de cuatro herramientas. Cada una de ellas es responsable de realizar una de las transformaciones arriba mencio-nadas. Como resultado de esta modi-fcación, ha sido posible colocar en la ventana de diálogo ”Opciones de herra-mienta”: unas opciones propias de transformación determinada. Las pro-piedades de transformaciones ahorapueden ser guardadas por separado.

La posibilidad de seleccionar el algoritmo de interpolación (falta de interpolación, interpolación lineal

Figura 8. La opción de actualizar la mayoría de los ajustes del programa sin necesidad de volver a arrancarlo es una ventaja importante de GIMP; la ventana de preferencias ofrece varias opciones nuevas e interesantes y vale la pena conocerlas

Page 34: LiNUX+ DVD 1

gráficos

32 Linux+ 1/2004

y cúbica) es una novedad entre lasopciones de las herramientas. Se lautiliza para convertir la imagen transformada y elegir una escala de selección (falta de escala, denomina-ción de número de líneas de escala,denominación de distancia entre líneas de escala), asequibles en forma de listas que se pueden des-envolver.

Otra modificación importante es la posibilidad de transformar no sólo la capa corriente, como se podía hacer en GIMP 1.2, sino también el actual campo seleccionado y la actual ruta. Estaúltima propiedad es particularmente significativa para las personas que utilizan con mucha frecuencia la herramienta destinada a crear rutas.

Como ejemplo, abrimos cualquier imagen, con tecla [E] activamos la opción de seleccionar campos elípticos, la seleccionamos y, después de pulsar los botones [Shift]+[R] y escoger el tipo de objeto adecuado, transforma-mos el campo seleccionado.

Herramienta de rutasYa a primera vista el manejo de esta herramienta en su nueva versión parece ser más sencillo de aquello al que ya nos hemos acostumbrado. Una interfaz renovada permite manipular con nodos respectivos, de manera que ya no hay que cambiar modos de trabajo en la ventana con opciones de herramienta. Todas las operaciones: agregación, elimación y desplazamiento de nodos, agregación de nuevas rutas, y modificación de la forma de curvas que componen la ruta son accesibles por medio de las teclas [Alt], [Shift]

y [Ctrl]. Las rutas, tratadas de modo parecido al de las capas, se pueden visualizar u ocultar en la vista general de la imagen, activando o desactivandoun icono que ya conocemos: la visibilidad del objeto (que representa un ojo) en el listado de rutas defini-das. Además, estas rutas se pueden dibujar utilizando la pincelada enla ruta, cuyos detalles hay quedefinir con ayuda de la ventanade diálogo ”Seleccione un estilo de trazo”.

Plug-insA todos los que busquen nuevas sensa-ciones les recomiendo la página http://registry.gimp.org/, que contiene un con-junto de plug-ins elaborados por gente que ha llegado a la conclusión que merece la pena aprovechar las modi-ficaciones para GIMP. Los plug-ins que se encuentran allí están divididos por categorías (conversión, ruido, mapas de colores, opciones de canales, transformaciones, derrubio, artísticos) y por tipo (referentes a varias versionesde GIMP y elaboradas en varios len-guajes: Python, Perl o Script-Fu).Por ejemplo, en la categoría de plug-ins ”artísticos” podemos encontrar opciones, gracias a las cuales nuestra imagen va a ser recuadrada o con una serie de puntos ”derrubiados”.

Asimismo, se puede introducir efectos de luz (luz de punto o diri-gida) y de refracción; desde la cate-goría ”imagen” se puede descargar un plug-in que posibilita marcar de manera triangular o crear imágenes este-reoscópicas, o uno que divide la imagen en n iguales partes rectangulares (n = col * row, col – número de colum-nas, row - número de filas). Estos plug-ins se han elaborado para las

Figura 9. Editor de selección permite su vizualización y realización de operaciones en el campo marcado

Figura 10. Ventana de diálogo ”Selección del estilo de pincelada” permite definir los detalles de pincelada en una ruta escogida

Page 35: LiNUX+ DVD 1

33www.lpmagazine.org

gráficosgimp 2.0

versiones anteriores de GIMP (de 1.0 a 1.3),pues no tenemos seguridad de quetrabajen con la última versión. De todasformas, ya se han oído noticiasque los plug-ins se seguirán utilizando(tanto más que se ha creado unaAPI bien documentada que permiteescribir los scripts en el lenguajePython: http://mmmaybe.gimp.org/docs/python/pygimp.html).

GIMP Animation PackageAntes de lanzar la versión 2.0 GIMP, se publicó la primera versión del paquete de animación en GIMP 2.0 - GIMP Anima-tion Package (ftp://ftp.gimp.org/pub/gimp/plug-ins/v2.0/gap/testing/ ). Este paquete amplía las posibilidades de GIMP en el campo de creación de animaciones, que se generan en base a un conjunto de recuadros (en la versión 1.2 fue la parte integral de GIMP). Por desgracia, todavía no está disponi-ble una página web destinada a este paquete que incluya su documenta-ción completa junto con ejemplos de su uso. Sin embargo, es uno de los pri-meros plug-ins escritos para GIMP 2.0, por eso, vamos a examinarlo atenta-mente.

El rasgo más importante de GIMP-GAP, que en realidad no es uno, sino un conjunto de plug-ins, es la posibili-dad de realizar operaciones sobre un

conjunto de imágenes, de modo parecido a la operación sobre una sola imagen. Cada recuadro de ani-mación puede tener varias capas; se puede pasar de un recuadro a otro con ayuda de un atajo de teclado, y las operaciones realizadas en la imagen pueden ser automáticamente propaga-das a todos los recuadros del campo elegido.

Se pueden generar los recuadros de vídeo de varios maneras: en base a unsólo fichero (.xcf ) (se crea un definidonúmero de copias), en base a unaimagen compuesta de varias capas(entonces cada una de capas llega a serun recuadro de animación) y en basea un conjunto de ficheros de imágenesexistentes en el sistema, siempre quese conserve una composición denombres determinada (el mismo prefijo,al que sigue el número de recuadro,p.e. anim_001.xcf, anim_002.xcf,etc.). Sinembargo, MovePath pertenece a ungrupo de herramientas útiles paragenerar animaciones. Sirve para definir las rutas por donde se moverán los obje-tos animados.

Los pasos entre los recuardos están descritos con ayuda de una serie deparámetros, que definen escalamiento,rotación o cambio de perspectiva que van a ser aplicados en un objeto ani-mado. Los plug-ins ofrecen también

la posibilidad de convertir recuadros en una imagen de varias capas, de realizar operaciones típicas de una capaa todos los recuadros de un campo determinado (fijar la visibilidad, agre-gar, cambiar el orden, agregar másca-ras de capa) o el uso del efecto bluebox,que permite hacer un color transparente.

Con el uso del plug-in Playback se puede visualizar la animación creada y definir los parámetros tales como el tamaño, la rapidez de reproducción, el límite de recuadros animados o el lazo cerrado.

ResumenEl repaso de novedades de GIMP pre-sentado arriba nos da una idea sobrelos cambios que se han producido en este proyecto durante los últimos años. Estos cambios al principio teníanque servir para la reorganizaciónde códigos fuente y para pasar a lalibrería GTK+ en la versión 2.x. Luego empezaron a evolucionar hacia el per-fecionamiento de implementacionesexistentes y la aplicación de fun-ciones completamente nuevas delprograma; en efecto, han originadouna herramienta enteramente modifi-cada, enriquecida y, ante todo, en comparación con las versiones ante-riores, mucho más cómoda en el uso diario.

Figura 11. Herramienta para definir las rutas por donde se mueven los objetos animados y un conjunto de plug-ins en el paquete GIMP GAP

En Internet:

– Página principal de GIMP: http://www.gimp.org/– Página web de los developers de

GIMP: http://developer.gimp.org/– Manual sobre GIMP: http://manual.gimp.org/– Libro sobre GIMP: http://gimp-savvy.com/BOOK/– Grupo de Usuarios de GIMP (Gimp

User Group): http://gug.sunsite.dk/– Consejos para gráficos: http://www.handson.nu/– Portal para los gráficos de Linux: http://www.linuxartists.org/– Documento “Futuro de GIMP”: http://kt.zork.net/gimp/gd20010522_

43.html

Page 36: LiNUX+ DVD 1

gráficos

3434 Linux+ 1/2004

Photoshop en LinuxPiotr Truszkowski

Linux, por lo común, no se usa en las agencias de gráficos, ni en oficinas DTP, debido al limitado número de programas destina-

dos a la edición de gráficos y a la compo-sición de textos. Programas como GIMP y Scribus, aunque dispongan de varias funcionalidades útiles, al mismo tiempo tienen muchas faltas que no permiten emplearlos de una manera profesional, p.e. en GIMP falta un verdadero soporte del formato CMYK. Estas soluciones son poco populares, lo que también es un obstáculo. Por esta razón, me gustaría mostraros cómo arrancar bajo Linux el programa más popular de edición de gráficos de mapas de bits (Adobe Photoshop) y un programa menos conocido que goza cada vez de más aprobación entre los profesionales: el paquete Adobe InDesign; una herramienta de composición de textos. Con estos dos programas podemos crear documentos totalmente profesionales. El sistema ope-rativo libre y las aplicaciones Windows juntas. API Win32 para Linux/Unix con denominación Wine vigilará el conjunto de programas. ¿Suena peligroso? Probable-mente. Pero en realidad no lo es tanto.

WinePara empezar nuestra aventura con Pho-toshop, tenemos que disponer del paquete Wine, facilitado por API Windows en sis-temas de Unix, que incluye también Linux. Con este objetivo utilizaremos la versión Wine-20031212, porque en algunas de las últimas ediciones se han detectado errores (la versión 20040408 permite arrancar Pho-toshop solamente con algunas configura-ciones del sistema Linux). Empezamos

en la página principal del proyecto, con la dirección http://www.winehq.org/. En el menú Download seleccionamos Source y uno de los servidores espejo, del que vamos a descargar la versión de Wine antes mencionada. Despúes de descargar el fichero, ejecutamos el comando tar -xzvf Wine-20031212.tar.gz, con lo que se descomprimirá el archivo. Pasamos al directorio wine-20031212, creado después de descomprimir el directorio:

cd wine-20031212

Ahora tenemos que ocuparnos de la com-pilación de nuestro Wine. Necesitaremos:

n núcleo, por lo menos en la versión 2.2.x;n paquete X11 development;n GCC en por lo menos la versión 2.7.2;n si queremos imprimir, opcionalmente

CUPS y CUPS-devel.

Los paquetes antes mencionados se encuentran en la mayoría de las distribu-ciones populares de Linux. Después de instalar estas herramientas, en el directo-

Figura 1. Arranque de Adobe Photoshop

DVDDespués de arrancar la distribu-

ción Linux+ Live DVD, podremos utilizar Wine.

En el DVDEn el DVD encontrarás paquetes fuentes Wine

y las versiones de evaluación Adobe Photoshop, Adobe

InDesign y Adobe Illustrator (las versiones inglesas facilita-das a nuestros Lectores por la

empresa Adobe).

Page 37: LiNUX+ DVD 1

35www.lpmagazine.org

gráficosAdobe Photoshop y Linux

rio con las fuentes Wine (wine-20031212) ejecutamos los comandos siguientes:

n ./configure –prefix=/usr – configu-ración del programa (variable –prefix=/usr define el lugar de su instalación);

n make depend – creación de las depen-dencias adecuadas;

n make – compilación adecuada;n make install – instalación del pro-

grama en el sitio que indicamos con la variable --prefix.

Si todo se ha realizado con éxito (no se nos han mostrado ningún error durante la compilación y el programa wine se halla en el directorio /usr/bin/ ), nuestro emulador está casi listo para trabajar.

Configuración de WinePero ¿para qué nos servirá un programa, si no tenemos sus ficheros de configura-ción? A continuación, nos ocuparemos

de estos ficheros. En el directorio con las fuentes se encuentra el directorio documentation, y en este directorio el subdirectorio samples con los ficheros de configuración para nuestro Wine. Al principio, creamos un directorio oculto con el nombre wine en nuestro directorio personal:

cd /home/nombre_usuario

mkdir .wine

Copiamos los ficheros de configuración a nuestro directorio oculto wine:

cp wine-20031212/documentation/samples/S

*.* /home/nombre_usuario/.wine/

Nos queda construir unos subdirectorios adecuados:

mkdir /home/nombre_usuario/.wine/c

mkdir /home/nombre_usuario/.wine/c/ S

windows

mkdir /home/nombre_usuario/.wine/c/S

windows/Fonts

mkdir /home/nombre_usuario/.wine/c/ S

windows/system

A continuación, nos ocuparemos de la edición de fichero config, que se halla en el directorio oculto .wine, para ajustarlo a las necesidades de nuestro Photoshop. En realidad, nos interesa sólo una varia-ble: ”Windows” = “versión_windows”. En el lugar versión_windows, escribimos win98, como en el Listado 1. Además, tenemos que definir las variables res-ponsables de puntos, como la disquetera y el CD-ROM, así como los discos duros. Guardamos las modificaciones.

Nos queda solamente copiar las fuentes de Windows a nuestro directorio oculto wine para que Photoshop muestre por pantalla todos los elementos de modo correcto:

Figura 2. Las fuentes de Windows

Listado 1. Indicación de la versión de Windows

[Version]

; Windows version to imitate S (win95,win98,winme,nt351)

”Windows” = “win98”

; DOS version to imitate

;”DOS” = “6.22”

Figura 3. El trabajo con varios gráficos no da problemas

Page 38: LiNUX+ DVD 1

gráficos

3636 Linux+ 1/2004

cp /lugar_montar_disco_con_windows/S

windows/Fonts/*.*

Nuestro Wine ha sido configurado. Ya es hora de obligar a Photoshop a colaborar con él.

Adobe PhotoshopNos concentramos en la versión de 30 días de este popular programa de grá-ficos (se adjunta en el DVD). Para arran-car el instalador, ponemos en marcha la consola del sistema, pasamos al direc-torio con el instalador y ejecutamos el comando:

wine Adobe_Photoshop7_trial.exe

Se arrancará el instalador que nos guiará durante todo el proceso de instalación. Merece la pena seleccionar: C:/Photoshop como ruta de instalación; gracias a esta selección no tendremos que escribir una ruta larga para arrancar el programa como tal. Después de la instalación, escribimos:

wine /home/nombre_usuario/.wine/c/S

Photoshop/Photoshop.exe

Después de un rato deberíamos ver la pan-talla de bienvenida del programa recién instalado.

Adobe InDesignAdobe InDesign es un popular pro-grama de composión de textos. Junto con su gran competidor, Qurak, ha llegado a ser un estándar en los depar-tamentos DTP. La gran ventaja de Adobe InDesign es su construcción de módulos. Podemos instalar módulos y plug-ins adicionales y de este modo ampliar el programa con nuevas funcio-nalidades.

El procedimiento para instalar el programa no se distingue mucho del presentado en la descripción de Adobe Photoshop. Puede resultar impor-tante copiar el contenido del directorio con la versión de instalación del pro-grama al disco duro. La configuración de WINE presentada arriba no exige cambios. Para instalar el programa, ejecutamos el comando wine Adobe_

InDesign.exe. Se arranca el instalador que nos guiará paso a paso por el proceso de instalación. Os recomiendo instalar el programa en el siguiente sitio: C:/Indesign, con lo que el arran-que del paquete con WINE será más fácil. En este caso, para arrancar el programa, ejecutamos el siguiente comando:

wine /home/nombre_usuario/.wine/S

c/Indesign/Indesign.exe

Después de un rato, el programa estará listo para trabajar.

Adobe Type ManagerPara trabajar con fuentes empleadas en el software Adobe Photoshop e InDesign, se construyó el programa Adobe Type Manager. Es una herramienta intere-sante que sirve para agregar y eliminar fuentes. Realizamos la instalación con ayuda de WINE que ya hemos visto. El modo de instalar se limita a ejecutar

Figura 4. El soporte completo del formato TIFF supone una enorme ventaja

Figura 5. Adobe InDesign

Page 39: LiNUX+ DVD 1

37www.lpmagazine.org

gráficosAdobe Photoshop y Linux

el comando: wine Setup.exe y seguir paso a paso los comandos de instalador. Lo mejor es instalar el programa en el directorio C:/TM. Lo arrancamos con el comando:

wine /home/nombre_usuario/.wine/c/TM/S

atmfm.exe

Adobe Image ReadyAdobe Image Ready es un programa avan-zado para elaborar varios tipos de banners, prospectos de publicidad y animaciones. Forma parte del paquete Adobe Photo-shop y se instala junto a éste. Para arrancar Adobe Image Ready, escribimos:

wine /home/nombre usuario/.wine/c/S

Photoshop/ImageReady.exe

Para simplificar...Si no queremos emplear un comando largo cada vez que arranquemos los programas descritos, podemos crear scripts que lo harán por nosotros.

Para preparar un script así, tenemos que escribir los siguientes comandos:

– touch nombre_script.sh – se creará un fichero con el nombre que indicamos;

– mcedit nombre_script.sh – se editará el fichero elaborado por nosotros.

Un script de ejemplo del programa Adobe Photoshop será así:

#!/bin/bash

cd /home/nombre_usuario/.wine/c/Photoshop

wine Photoshop.exe

Después de crear el script, lo grabamos pulsando la tecla [F2] y salimos del editor con la tecla [Esc]. Tenemos que atribuir al script los derechos de acceso necesa-rios:

chmod 777 nombre_script.sh

Ahora, para arrancar el programa Adobe Photoshop, es suficiente hacer click en el script. Analogamente, podemos construir scripts del resto de los programas, sólo cambiando la ruta del programa arran-cado.

ResumenAdobe Photoshop, InDesign y Type Manager son solamente algunos de los programas destinados para el sistema Windows, que se pueden arrancar sin mayores obstáculos en Linux con ayuda de Wine. La comodidad del tra-bajo es suficiente y el conjunto trabaja de modo estable, incluso con una sobre-carga. La calidad del trabajo no se difiere de la calidad que tenemos al arrancar Adobe Photoshop en su propia plata-forma de sistema, es decir, Microsoft Windows. De todos modos, hay que recordar que Wine no es perfecto y no podemos esperar que arranque todos los programas en Windows. Los pro-blemas los han proporcionado, entre otros, Adobe Illustrator y Corel Draw. Muy a menudo, la misma versión Wine en varias distribuciones de Linux puede funcionar de manera distinta, debido a la diversidad de versiones de librerías utilizadas en distribuciones particulares, y las distintas versiones de núcleos de sistema y de configuración relacionadas a ellos.

Querido Lector, espero que la ins-trucción presentada te posibilite el uso de programas descritos y el trabajo en ellos te proporcione por lo menos tanta alegría cuantos esfuerzos con-lleva su arranque. Especialmente para vosotros en nuestra página web (http://www.lpmagazine.org) os presentamos laconfiguración de Wine con la que hemos probado el software des-crito. Os recomendamos también lasediciones comerciales de Wine, cuyos autores ofrecen una consulta técnica y disponen de un listado de aplicacio-nes con soporte correcto. A los usuarios que desean utilizar, p. ej. Microsoft Office, les recomendamos CrossOver Office y a los aficionados a la diversión – WineX. ¡Qué lo paséis bien!

Figura 6. Type Manager preparado para trabajar

Figura 7. Image Ready. ¿Algún banner?

En Internet:• Página principal del proyecto WINE: http://www.winehq.org/• Página principal del fabricante de

CrossOver Office: http://www.codeweavers.com/• Página principal del fabricante

WineX: http://www.transgaming.com/

Page 40: LiNUX+ DVD 1

integración de Linux y Windows

3838 Linux+ 1/2004

Cooperative LinuxKrzysztof Krawczyk

Cooperative Linux (abreviación: CoLinux) es un proyecto abie-rto, cuyo fin es la facilitación de arranque nativo en los

sistemas Microsoft Windows. Al contrario a otras soluciones de este tipo, como por ejemplo VMware comercial, un driver especial para el sistema central genera el núcleo de CoLinux en el modo privi-legiado (del superusuario). Mediante un cambio constante de conexión entre el sistema central y el virtual, CoLinux es tan eficaz y tan funcional, como un Linux normal, puesto en marcha de manera independiente en un ordenador determi-nado. Además, se utilizó el mismo for-mato binario de grabación de programas ejecutables y, por eso, no hay problema con el arranque de distribuciones no modificadas de Linux.

Actualmente se puede conseguir la versión 0.5.4 de este software. En el artí-culo, os voy a enseñar cómo utilizar esta solución bajo el sistema Windows XP.

InstalaciónSi disponemos de la versión Linux+ con DVD, encontraremos los ficheros nece-sarios en el directorio Linux+/System/CoLinux. En caso contrario, en el página del proyecto hay fuentes, así como una versión completa y recompilada de CoLi-nux. Vamos a elegir la segunda opción.

Descomprimimos el fichero colinux-20040225-bin.tar.gz bajo Linux o bajo Windows. En el primer caso, realizamos simplemente tar xzvf nombre_paquete, en cambio, en el segundo caso, utilizamos Tar tipo cygwin o WinRAR.

En el directorio obtenido colinux-20040225-bin vamos a encontrar, entre otros, el subdirectorio TAP-Win32 con un

driver virtual de la red para el sistema Windows, el fichero de configuración default.colinux.xml y el fichero ejecutable colinux-daemon.exe. Todo el contenido del archivo lo copiamos al directorio C:/Colinux (podemos escoger otro directorio, pero entonces tendremos que modificar la ruta en el fichero de configuración).

Driver TAP-Win32Al principio instalamos el driver TAP-Win32. Permite crear una red local interna entre el arrancado CoLinux y Windows.

Arrancamos Panel de control y allí elegimos la opción Agregar o eliminar pro-gramas. En Asistente para agregar hardware pulsamos el botón Siguiente. El sistema intenta encontrar por sí mismo un equipo nuevo, luego nos pregunta si el equipo ha sido ya conectado (elegimos: sí). En consecuencia, se nos mostrará un listado del equipo instalado. Luego elegimos en el listado: Agregar hardware, después afirma-mos que queremos indicar manualmente el equipo para instalar. Nuestro driver ya está preparado, por eso, de Tarjetas ethernet escogimos la posición: Del discoe indicamos la ubicación del driver: fichero OemWin2k.inf del directorioC:\Colinux\TAP-Win32. Es el TAP-Win32Adapter y después de pulsar Siguiente, finalizamos la acción de agregarlo.

Cuando en el Panel de control elijamos ahora Conexiones de red, veremos una conexión local nueva en la catego-ría: Red LAN o Acceso rápido, relacionada con el driver TAP-Win32. Hasta el momento de arrancar CoLinux, la cone-xión señalará que el cable de la red está desconectado, pero a pesar de esto, estará activa.

En el DVDEn el DVD se hallan unos

paquetes fuentes y binarios de CoLinux, como también dos re-

presentaciones de unas distribu-ciones hechas de Linux

(Debian y Gentoo).

Page 41: LiNUX+ DVD 1

39www.lpmagazine.org

integración de Linux y Windowscolinux

ConfiguraciónEn el fichero default.colinux.xml se halla la configuración de CoLinux. Vamos a uti-lizar la que se encuentra en el Listado 1;abrir la imagen de la distribución completa de Linux sin activar la memoria de intercambio.

En la primera opción (block device) definimos la partición (p.e. /dev/cobd0 es la primera partición montada en CoLinux – index=”0”) y su ubicación en el sistema Windows. Dentro del proyecto CoLi-nux se han preparado varias imágenes

de distribuciones completas de Linux. Vamos a servirnos del fichero Debian-3.0r0.ext3.1gb.bz2 (contiene Debian con unos programas básicos). Después de descomprimirlo, cambiamos su nombre por root_fs y lo movemos al directorio C:/Colinux.

En la segunda opción (bootparams) indicamos qué parámetros queremos transmitir al núcleo de Linux. El sistema principal de ficheros se encuentra en una partición antes definida, por eso, admiti-mos que root=/dev/cobd0.

En la opción image definimos el nombre del núcleo de CoLinux, que ya se halla en el directorio C:/Colinux y es un fichero vmlinux.

En la penúltima opción (memory), indicamos la cantidad de memoria que deseamos asignar para CoLinux: 32 MB debe ser suficiente en el trabajo con Linux en modo de texto, pero destinamos 64 MB, porque vamos a utilizar el servidor de los X.

En la última opción (network) defini-mos el driver de la red – dejamos TAP.

ArranqueTras la preparación de un driver virtual y tras la configuración de CoLinux, podemos arrancar el programa colinux-daemon.exe. En una consola DOS apa-recerán los mensajes sobre la acción de arrancar CoLinux y, después de un rato, se abrirá una ventana adicional con Debian ya iniciado.

Cuando se muestra la opción de entrar en el sistema, utilizamos la cuenta root (sin contraseña). En ese momento podemos empezar un trabajo normal con Linux (Figura 1).

RedSi deseamos utilizar Internet en CoLi-nux, en Windows tenemos que permitir a otros usuarios de la red que utilicen la conexión con Internet propia de este ordenador. Para hacerlo, en: Panel de con-trol elegimos: Conexiones de red, y luego en: Propiedades de Conexión de área local (con Internet) en la pestaña Avanzadas indicamos la opción adecuada.

Volvemos a arrancar CoLinux. Debian dispondrá de una red configu-rada con la dirección IP 192.168.0.40, y nuestro Windows recibirá la IP192.168.0.1. Por último, en el fichero /etc/resolv.conf escribimos la IP del servi-dor DNS que utilizamos normal-mente.

Cuando realicemos apt-get update, podremos volver a instalar el resto de paquetes necesarios de la red, p.e. apt-get install mc lynx mutt (administrador de ficheros Midnight Commander, navegador web Lynx y cliente del correo Mutt).

Figura 2. CoLinux utiliza una conexión con Internet ya existente

Figura 1. CoLinux después de arrancar Debian y entrar en el sistema

En Internet:• Sitio web de CoLinux: http://www.colinux.org/

Page 42: LiNUX+ DVD 1

integración de Linux y Windows

4040 Linux+ 1/2004

X WindowAhora en CoLinux tenemos acceso única-mente al modo de texto, por eso, si quere-mos trabajar en el modo gráfico, tenemos que usar servidor tipo cygwin de los X o la herramienta VNC. Elegimos la segunda opción, porque es la más fácil.

Al principio instalamos y configu-ramos el sistema X Window (apt-get install x-window-system-core): esco-gemos cualquier driver de gráficos, p.e. VGA, la resolución 1024x768 y la intensi-dad de colores de 16 bits.

Luego instalamos el entorno gráfico, p.e. Window Maker – apt-get install

wmaker y el servidor VNC - apt-get install vncserver, y en Windows, el cliente ]VNC desde el sitio web http://www.realvnc.com/.

Cuando arancamos el servidor VNC:

vncserver -geometry 1000x685 -depth 16

tenemos que indicar la contraseña de la sesión. Luego aparecerá el mensaje:

New ‚X‘ desktop is colinux:1

En este momento arrancamos el cliente VNC en Windows, escribimos la direc-ción: 192.168.0.40:1 y la contraseña antes determinada. Se nos mostrará una pan-talla vacía del servidor de los X. Cuando escribimos en la consola el comando wmaker, podremos trabajar en el entorno gráfico.

FinalizaciónCoLinux se encuentra en una temprana etapa de desarrollo, pero ya es útil. Merece la pena conocer este modo de uso de Linux.

Figura 3. Trabajo en el entorno gráfico de Linux

Listado 1. Ejemplo de fichero default.colinux.xml

<?xml version=“1.0“ encoding=“UTF-8“?>

<colinux>

<block_device index=“0“ path=“\DosDevices\c:\Colinux\root_fs“ enabled=“true“>

</block_device>

<bootparams>root=/dev/cobd0</bootparams>

<image path=“vmlinux“></image>

<memory size=“64“></memory>

<network index=“0“ type=“tap“ name=“TAP“></network>

</colinux>

Page 43: LiNUX+ DVD 1
Page 44: LiNUX+ DVD 1

Linux en la red

4242 Linux+ 1/2004

Samba 3.0 – un controlador completo del dominio Windows NTRafał Szcześniak

La versión 3.0 del paquete Samba ha supuesto un cambio radical en su campo de uso. Por pri-mera vez se ha facilitado un

controlador completo del dominio Win-dows NT bajo la licencia de GNU GPL. Ha sido un enorme cambio de calidad, ya que permite a los destinatarios la sus-titución total del Controlador Principal del Dominio (PDC) que funciona en el sistema Windows NT 4.0 Server por un paquete Samba 3.0, que puede funcionar en cualquier sistema Unix. Este cambio significa no sólo la posibilidad de usar otra plataforma del sistema, sino también de realizar la migración del entorno antiguo a un servidor nuevo.

En el presente artículo, os voy a ense-ñar qué pasos hay que seguir para confi-gurar de manera correcta PDC en Samba y cómo realizar el proceso de migración de datos desde el sistema Windows NT.

¿Por qué merece la pena?Cuando apareció el sistema Windows 2000, la empresa Microsoft cambió su modelo del dominio, utilizado en los sistemas de la línea NT. Un dominio plano, basado en el mecanismo de cifrar los códigos NTLM y de autorización reto-respuesta, fue susti-tuido por una estructura jerárquica Active Directory y la autorización en un protocolo modificado Kerberos V. Este cambio supuso el fin del desarrollo de los dominios Win-dows NT y un fin cercano del soporte téc-nico para este tipo de soluciones. Al mismo tiempo, en muchas redes que funcionan hoy en día, las posibilidades que ofrece

Windows NT son completamente sufi-cientes, pues la adquisición de una versión nueva del sistema de la empresa Microsoft es un gasto infundado (y considerable). La versión 2.2 de Samba fue una opción, pero el nivel del soporte para mecanismos del dominio Windows NT era demasiado bajo. Las funciones básicas en muchos casos resultaban insuficientes. La edición de Samba 3.0 llenó el vacío dejado por la versión 2.2. El soporte ofrecido para todas las funcionalidades de PDC y muchas de sus propiedades nuevas pueden causar el efecto de que los usuarios finales sus-tituyan el servidor Windows NT 4.0 en la red por el servidor Samba de manera imperceptible.

Un servidor sencillo – Samba 3.0.xUna configuración básica de Samba es el primer paso y es muy aconsejable para los administradores de este servidor, y de la red SMB en general, que tienen menos experiencia. Aunque el listado de paráme-tros en el fichero smb.conf ya tiene más de 300 posiciones, por suerte, la mayoría de ellos tiene valores predeterminados y por eso es realmente fácil alcanzar el mínimo. Cuando iniciamos la configuración, supo-

Listado 1. Configuración sencilla de Samba

[global]

netbios name = VALHALLA

workgroup = SAMBANET

En el DVDEn el DVD hay paquetes

fuentes de Samba, varios suplementos al programa

(p.e. configuradores gráficos o herramientas para analizar el funcionamiento de la red local).

DVDDespués de arrancar la distri-bución Linux+ Live DVD, en el

menú Linux+/ se podrá acceder la posición Samba Server. Al principio hay que arrancar el

servidor, luego Konqueror u otra herramienta que permita revisar

recursos SMB de la red local para entrar en un recurso que facilita el acceso al directorio

/tmp en el sistema iniciado.

Page 45: LiNUX+ DVD 1

43www.lpmagazine.org

Linux en la redsamba 3.0.x

nemos que la configuración principal de la red ha sido correcta y por eso será posible realizar conexiones TCP/IP con el servidor nuevo.

La configuración más fácil de Samba es un sólo parámetro en el fichero smb.conf. El parámetro define la información relacionada con la dificultad de prever con acierto el valor predeterminado: el nombre del grupo de trabajo, o (dentro de poco) del dominio. Si, a pesar de todo, no se proporciona el nombre, el servidor

Samba predeterminará que el nombre es WORKGROUP. El nombre NetBIOS del servidor será el mismo que el resultado de la realización del comando hostname. Sin embargo, a lo mejor por analogía con los sistemas Windows, se suelen definir los dos nombres; nuestro fichero inicial smb.conf tendrá el mismo contenido que en Listado 1.

Desde luego, los nombres expues-tos aquí sirven solamente de ejemplo. Este tipo de configuración permite encontrar en el entorno de la red el ser-vidor VALHALLA, que se colocará en el grupo de trabajo SAMBANET. Sin embargo, sólo será posible mirarlo; por dos causas: primero, Samba funciona por defecto con protección a nivel de usuario (security = user) y con con-traseñas codificadas. Esto significa que,para conectarse al servidor, es necesa-ria previa autorización y, para realizar una autorización, hay que tener una cuenta determinada. Segundo, en la configuración básica antes descrita, no hay ningún recurso definido ofrecido por

el servidor, de ahí que incluso una prueba exitosa de conectarse será inútil.

Vamos a agregar unas líneas adiciona-les a la configuración antes mencionada. (Listado 2). De este modo se amplía la configuración por una coparticipación con el nombre directorio (este nombre se mostrará en la red). Esto permite el uso del directorio /tmp del sistema de ficheros de lservidor destinados a escribir (writeable = yes), solamente para usuarios autoriza-dos de manera correcta, que disponen de

Listado 2. Configuración de un servidor normal de ficheros

[global]

netbios name = VALHALLA

workgroup = SAMBANET

passdb backend = tdbsam

[directorio]

path = /tmp

public = no

writeable = yes

Figura 1. La conexión con el servidor Samba en marcha

Listado 3. Primer paso en el camino hacia PDC

[global]

netbios name = VALHALLA

workgroup = SAMBANET

passdb backend = tdbsam

local master = yes

domain master = yes

preferred master = yes

[directorio]

path = /tmp

public = yes

writeable = yes

Listado 4. Controlador de dominio completo

[global]

netbios name = VALHALLA

workgroup = SAMBANET

passdb backend = tdbsam

local master = yes

domain master = yes

preferred master = yes

domain logons = yes

use spnego = no

logon path = \\%L\profiles\%U

[NETLOGON]

path = /usr/local/samba/netlogon

public = no

writeable = no

[profiles]

path = /usr/local/samba/profiles

public = no

writeable = yes

[directorio]

path = /tmp

public = yes

writeable = yes

Page 46: LiNUX+ DVD 1

Linux en la red

4444 Linux+ 1/2004

una cuenta (public = no). Samba guarda la cuenta en un fichero especial, y el paráme-tro passdb backend define el tipo de este fichero. Este parámetro no es necesario porque su valor por defecto hace posible el uso de los ficheros smbpasswd, que hemos conocido en la versión 2.2. Aquí lo hemos utilizado porque el resultado final debe ser Controlador Principal de Dominio y es, entre otros, este modelo de bases de cuen-tas lo que posibilita el empleo completo de funcionalidades de Samba como PDC.

Después de extender el fichero, tene-mos que realizar el comando smbpasswd -a admin para crear una cuenta. Por medio de este comando se puede conectar al ser-vidor Samba. Todos los pasos realizados hasta ahora facilitan la conexión con el ser-vidor, que está presentado en la Figura 1.Allí se ve una coparticipación particular Printers que significa que Samba está configurada por defecto para el soporte de impresoras con ayuda de comandos MS-RPC, es decir, utilizando los mismos métodos que los aplicados en sistemas Windows NT/2000/XP/2003.

Esta configuración básica ya permite compartir el número indefinido de fiche-ros con varios usuarios, cada uno de los cuales tendrá una cuenta generada del mismo modo que lo hemos mostrado antes. En esta situación, se puede dar un paso adelante: el servidor asumirá el papel de Controlador Principal de Dominio.

Ascenso al papel de PDCEl Controlador de Dominio, además de autorizar a los usuarios del dominio, realiza también muchas otras tareas. Una de ellas es la de reunir información sobre los ordenadores conectados y desconec-

tados en el dominio. Su segunda tarea consiste en guardar las configuraciones de todos los usuarios. Para realizar la primera tarea sin estorbos, el PDC tiene que ser al mismo tiempo ¨Domain Master Browser ,̈ lo que muchas veces significa una configuración del servidor WINS. Todo esto para crear en el PDC un ser-vicio que convierte los nombres NetBIOS en direcciones IP, del mismo modo a como lo hace el servidor DNS con los nombres de dominios de Internet. Para realizarlo, en el fichero smb.conf hay que introducir unos parámetros nuevos (Lis-tado 3).

Gracias a esta configuración, Samba puede ganar “elecciones en Internet” del Domain Master Browser con una pequeña ventaja sobre sus competidores, y permite ojear todo el dominio/grupo de trabajo, que puede extenderse fuera de subred local.

El segundo paso que finaliza la confi-guración del PDC es la facilitación de una coparticipación especial de NETLOGON, perfiles móviles (ing. roaming profiles) y la activación de autorización de los usuarios del dominio.

El primer elemento es propio de todos los controladores de dominio Windows NT y sirve para almacenar los scripts de logear y los ficheros de normas del sistema

Figura 2. Varios métodos de operar con las cuentas en el servidor Samba

Figura 3. Agregación del sistema Windows 2000 Professional al dominio controlado por el servidor Samba

Page 47: LiNUX+ DVD 1

45www.lpmagazine.org

Linux en la redsamba 3.0.x

(ing. policy files), que se “aglutinan” al con-tenido del registro del usuario que se está logeando.

Los perfiles móviles se almacenan en una coparticipación aparte y guardan el mismo contenido que el directorio “Documents and Settings” en Windows 2000 o “WINNT\Profiles” en Windows NT 4.0.

La configuración que va a cumplir todas estas funciones se encuentra en el Listado 4. El servidor iniciado con esta configuración está listo para soportar el dominio. Contiene coparticipaciones nece-sarias de NETLOGON y profiles, además posibilita el uso de la función del PDC (domain logons = yes) y apaga el soporte de compatibilidad con Active Directory (use spnego = no), que en caso de dominios Windows NT puede producir unos proble-mas innecesarios.

Cuentas de usuarios y agregación de estaciones de trabajoAntes de que sea posible agregar al dominio un ordenador, hace falta añadir unas cuentas adecuadas. Partiendo de la versión 3.0, es posible hacerlo de distintas maneras.

Se soportan métodos locales, es decir, el comando smbpasswd que ya hemos mencionado, pero funciona también

un soporte para métodos remotos. Con ayuda de unas llamadas a MS-RPC se pueden crear las cuentas necesarias, pero hay que recordar que cada cuenta creada en Samba tiene que disponer de un UID en el sistema operativo local en el que funciona Samba.

Si en el caso de arrancar el Samba únicamente con los sistemas Windows NT 4.0, es suficiente un método local, en el caso de Windows 2000 es imprescindi-ble conocer métodos remotos. Cada uno de los sistemas de estaciones de trabajo tiene que tener una cuenta adecuada en el servidor Samba. Es la llamada cuenta de estación de trabajo confiable (ing. works-tation trust account). Como otros tipos de cuentas, puede crearse de forma local o remota. Solamente mediante el segundo método es posible agregar Windows 2000 al dominio. Es así porque la agregación de este sistema en realidad sucede en dos etapas. La primera etapa es la creación de una cuenta de estación de trabajo confiable, y la segunda es la transmisión de contraseñas apropiadas a las cuentas. Para crear una cuenta, hay que introducir el nombre y la contraseña del usuario que podrá hacerlo. Aquí llegamos al grano. El único usuario por defecto que dispone de esta posibilidad es el root, y si nadie tiene derecho a escribir en el fichero de cuen-tas de Samba, hace falta crear (de forma local) una cuenta para este usuario:

smbpasswd -a root

La contraseña aquí dada puede ser com-pletamente diferente a la utilizada en el sistema. Una cuenta creada de esta

Figura 4. Mensaje que notifica la agregación del sistema al dominio

Listado 5. Parte del resultado obtenido tras la realización del comando pdbedit, respecto a una cuenta creada

Unix username: phobos$

NT username:

Account Flags: [W]

User SID: S-1-5-21-1495415059-780168309-2423844128-5008

Primary Group SID: S-1-5-21-1495415059-780168309-2423844128-5001

Full Name: PHOBOS$

Home Directory: \\%N\phobos_

HomeDir Drive:

Logon Script:

Profile Path: \\valhalla\profiles\phobos_

Domain: SAMBANET

Account desc:

Workstations:

Munged dial:

Logon time: 0

Logoff time: Fri, 13 Dec 1901 21:45:51 GMT

Kickoff time: Fri, 13 Dec 1901 21:45:51 GMT

Password last set: Fri, 03 Oct 2003 11:04:46 GMT

Password can change: Fri, 03 Oct 2003 11:04:46 GMT

Password must change: Fri, 24 Oct 2003 11:04:46 GMT

Page 48: LiNUX+ DVD 1

Linux en la red

4646 Linux+ 1/2004

manera facilita la realización de operacio-nes remotas en base a cuentas de usuarios. Se puede hacer con ayuda del sistema Windows o utilizar la herramienta net, que es una novedad en Samba 3.0.x. La ejecución del siguiente comando:

net rpc user add <nombre_cuenta> -U root

causará la agregación de una cuenta con el nombre dado. Ya que aquí se utilizan métodos remotos, en otro sistema se puede realizar el comando:

net rpc user add <nombre_cuenta> -U root

Como consecuencia de esta llamada, se agregará una cuenta también en el servi-dor remoto Samba.

Por medio del mismo mecanismo se añadirá una cuenta determinada, cuando

queramos conectar el sistema Windows 2000 con un dominio recién creado (Figura 3 y 4).

Con este método se puede agregar al dominio casi cualquier número de siste-mas, además de añadir cuentas. Es posible ver el listado completo de las cuentas crea-das ejecutando el comando:

pdbedit -L -v

Se mostrarán todos los detalles respecto a las cuentas que se hallan en el fichero tdbsam (cuyo fragmento se puede ver en el Listado 5). Es digno de mencio-nar que allí se almacenan varios datos sobre la ubicación del perfil, descripción de la cuenta, etc. La colocación de la base de cuentas en el fichero tdbsam hace posible guardar y modificar toda esta información. El fichero smbpasswd no tiene estas propiedades y, por ello, es menos útil a la hora de crear un servi-dor PDC.

Migración de un dominio existente Incluso una configuración simple de PDC, cuya base es Samba, puede resultar inútil si hay que reproducir manualmente el entorno existente del dominio Windows NT. En caso de una red grande, donde hay una cantidad significativa de cuentas de usuarios, la falta de una opción de migrar las bases de cuentas hace imposible el uso de Samba como un PDC nuevo. Por este motivo la capacidad de efectuar este proceso fue una de las condiciones para lanzar la versión 3.0 estable.

Para efectuar la migración, hay que realizar los siguientes pasos:

– modificar la configuración de Samba cambiando su papel a BDC;

– crear una cuenta del servidor Samba como BDC en el controlador de domi-nio que está migrado;

– desactivar los procesos de Samba y crear unas cuentas adecuadas en el sistema Unix;

– realizar comandos de descarga del contenido de base de cuentas de

usuarios desde el PDC utilizado hasta ahora.

El cambio de configuración en smb.conf significa solamente la eliminación de la funcionalidad de Domain Master Brow-ser (domain master = no). De esta manera el servidor no intenta ¨ganar unas elec-ciones¨ en el dominio y al mismo tiempo conserva el soporte de logeo en el domi-nio. En este caso, el servidor Samba es el Controlador de Dominio de Respaldo (ing. Backup Domain Controller - BDC). Desde luego, hay que cambiar el nombre del dominio al nombre del dominio des-tinado a la migración. El Listado 6 repre-senta el contenido completo.

El siguiente paso es la creación de una cuenta BDC apropiada en el contro-lador principal, que sigue funcionando en el sistema Windows NT 4.0 Server. Esta cuenta se genera con ayuda de una herramienta estandár (se llama Server Manager), que posibilita la agregación del servidor BDC o de un miembro ordinario del dominio. En este caso nos interesa la primera opción.

Antes de descargar la información del servidor Windows NT, hay que apagar dos procesos de Samba: nmbd y smbd, y después crear una estructura adecuada de cuentas de grupos. Aunque existe la posiblilidad de realizarlo con ayuda del parámetro add group script, se reco-mienda la creación manual de grupos respectivos conforme a sus equivalentes al lado de Windows NT. La migración será más cómoda, si al lado del servidor Samba creamos unos grupos que corres-pondan a los grupos básicos del dominio Windows NT, y los que fueron generados por el administrador en el entorno del dominio. La Tabla 1 presenta un listado de los principales grupos.

Por supuesto, el listado de grupos en un caso concreto del dominio migrado es mucho más largo. Las redes más grandes tienen sus grupos de función y, como en cada dominio, los así llamados grupos “bien conocidos”: Administrators, Power Users, etc. Cada uno de estos grupos puede tener su equivalente en forma de un grupo Unix y relacionado con él número GID. Antes de asociar los grupos de WinNT y Unix, es muy importante agregar el servidor Samba al dominio. Con este objetivo ya se ha creado una cuenta BDC en el servidor Windows NT y se ha modificado debi-

Listado 6. El BDC para realizar la migración

[global]

netbios name = VALHALLA

workgroup = NTNET

passdb backend = tdbsam

local master = yes

domain master = no

preferred master = yes

domain logons = yes

use spnego = no

logon path = \\%L\profiles\%U

[NETLOGON]

path = /usr/local/samba/netlogon

public = no

writeable = no

[profiles]

path = /usr/local/samba/profiles

public = no

writeable = yes

[directorio]

path = /tmp

public = yes

writeable = yes

Tabla 1. Los principales grupos del dominio migrado y ejemplos de sus equivalentes

Grupo WinNT Grupo UnixDomain Admins root/wheel

Domain Users users

Domain Guests nogroup

Page 49: LiNUX+ DVD 1

47www.lpmagazine.org

Linux en la redsamba 3.0.x

damente la configuración de Samba. Así que nos queda ejecutar (como root) el comando:

net rpc join NTNET -U admin%sekret

El parámetro “admin%sekret” es simple-mente el nombre y la contraseña de un usuario con autorización del administra-dor por el lado del servidor Windows NT. Si la agregación es exitosa, aparecerá el mensaje: “Joined domain NTNET”. En este momento se descarga el identificador SID del dominio, lo que facilitará hacer una reproducción exacta de sus grupos en los grupos del sistema local.

Asimismo, es hora de generar la misma reproducción:

net groupmap modify ntgroup=”Domain S

Admins”

net groupmap modify ntgroup=”Domain S

Users”

net groupmap modify ntgroup=”Domain S

Guests”

Para ver el resultado de estos procedi-mentos, hay que ejecutar el comando net groupmap list. Lo presenta el Lis-tado 7.

Merece la pena notar que todos los grupos pertenecientes al dominio han sido reproducidos. Se los reconoce a través de un identificador SID más largo

(S-1-5-21-...). Las tres cifras más grandes componen el SID del dominio, el cual ha sido descargado del servidor Win-dows NT durante la agregación del servidor Samba al dominio (Figura 5). Ya es hora de descargar las cuentas de usuarios. Hay que recordar que cada cuenta nueva tiene que disponer del UID que le corresponda. Podemos utilizar el parámetro add user script, teniendo en cuenta el carácter diferente de los nom-bres en Windows NT. La ejecución del comando:

net rpc vampire -S NTPDC

descarga unas cuentas particulares de la base SAM del servidor Windows NT con el nombre NTPDC. Cuantas más cuentas se descargan, mayor posibilidad existe de que se produzca un error, por lo general, como resultado de no haber una cuenta de Unix o una conversión. Por eso, puede ocurrir que se consiga realizar el proceso completo tan sólo después de un par de pruebas. El comando “pdbedit -L” permite verificar al corriente el conte-nido actual de la base de cuentas de usuarios.

Las siguientes etapas de migración consistirán en la descarga de perfiles móviles del servidor Windows NT, y este proceso será auxiliado por herramientas de este sistema. Consiste en la realiza-

ción de copias de ficheros, de ahí que hay que prestar atención que los directorios con perfiles almacenados en el servidor Unix tengan el propietario que corres-ponda al perfil y derecho de acceso que permita una actualización, p.e. del escritorio. Por supuesto, todas estas etapas tienen que producirse después de volver a asignar a Samba el papel de PDC (domain master = yes) y después de arrancar los demonios nmbd y smbd.

ProblemasLa mayoría de los usuarios que empiezan a utilizar el servidor nuevo, basado en el sistema Unix y Samba , suponen errónea-mente que de manera fácil dispondrán de un equivalente exacto de Windows NT. Olvidan que el sistema Unix tiene un carácter diferente y, donde se pueda, hay que valerse de sus propios mecanismos, entre otras, en cuestiones relacionadas con derechos de acceso, en vez de tratar de ajustarlo a los mecanismos Windows a través de unas exageradas combina-ciones de parámetros en smb.conf (aquí el más popular es el parámetro “valid users”).

Es igual de sorprendente que muchos administradores realicen la migración sin planificar un modelo nuevo de pro-tección y sin realizar una simulación del comportamiento del entorno. Es una prueba de falta de imaginación y no se pueden justificar estas acciones, incluso si se efectúa una migración del dominio Windows NTa Active Directory. La transformacióndel entorno PDC en el sistema Unixy Samba abre varias posibilidadescomo, por ejemplo, almacenamientode cuentas en una base de datos derelación o el soporte de una red dis-persa de servidores de ficheros, pero efectuar este cambio sin una pla-nificación razonable puede llevar a muchas frustraciones.

Listado 7. El resultado de una reproducción simple de grupos

System Operators (S-1-5-32-549) -> -1

Domain Guests (S-1-5-21-1991581395-1712338148-1893690239-514) -> nogroup

Replicators (S-1-5-32-552) -> -1

Guests (S-1-5-32-546) -> -1

Power Users (S-1-5-32-547) -> -1

Print Operators (S-1-5-32-550) -> -1

Domain Users (S-1-5-21-1991581395-1712338148-1893690239-513) -> users

Administrators (S-1-5-32-544) -> -1

Account Operators (S-1-5-32-548) -> -1

Backup Operators (S-1-5-32-551) -> -1

Users (S-1-5-32-545) -> -1

Domain Admins (S-1-5-21-1991581395-1712338148-1893690239-512) -> root

Figura 5. Estructura del identificador SID

En Internet:• Sitio web del proyecto Samba: http://www.samba.org/• Manual sobre Samba: http://www.oreilly.com/catalog/

samba/chapter/book/

Page 50: LiNUX+ DVD 1

primeros pasos

4848 Linux+ 1/2004

MLDonkeyPiotr Machej

Quizás no sea un secreto para nadie que enorme canti-dad de recursos en Inter-net no son sólo accesible

a través de las páginas web, sino también a partir de archivos facilitados por los usuarios. Los programas P2P (Peer to Peer) han sustituido con el paso de tiempo a los populares FTP (File Transfer Protocol). Programas de este tipo se siguen desarrollando y ganando cada vez más popularidad, a pesar de su persecución por parte de los medios de comunicación y de consorcios del ramo de entretenimiento. Ha llegado a tal punto que incluso las distribuciones de Linux se facilitan a través de la red P2P.

Cuando necesitamos un fichero determinado, no es difícil: arrancamos el programa y lo descargamos de las personas que, en todo el mundo, lo han facilitado en sus discos. En el pre-sente artículo me gustaría describir el programa MLDonkey, gracias al cual podemos intercambiar nuestros fondos de archivos.

MLDonkey (el cliente más potente de la red eDonkey2000) apoya tam-bién otras redes, tales como OverNet, BitTorrent, FastTrack, Soulseek, Gnutella, Napster o Direct Connect. Es un cliente universal. Una de sus ventajas es la opción de administración remota (tam-bién desde el nivel de clientes en el sistema Windows). Les invito a conocer este programa.

InstalaciónPodemos elegir entre un par de modelos del programa MLDonkey. Desde el sitio web del proyecto (véase el recuadro En Internet), tenemos acceso a unos paquetes fuentes. En la página del usuario SpiralVo-ice, en el foro MLDonkey World, encontra-remos los paquetes binarios universales. Podemos también buscarlos en la Red ya preparados, destinados a nuestra distribu-ción de Linux.

Voy a describir la instalación de un paquete compilado estáticamente. Si disponemos de la versión Linux+ DVD, los paquetes necesarios se encuentran en el directorio Linux+/MLDonkey/SpiralVoice. En el caso contrario, empe-zaremos abriendo en el navegador el sitio web http://www.8ung.at/spiralvoice/. En el momento de escribir este artí-culo, la versión 2.5-16d era la última; vale la pena comprobarlo en la página principal del proyecto. En el sitio men-cionado hay que encontrar un enlace al fichero mldonkey-2.5-16d.static.i386-Linux.rar.

En caso de que en nuestra dis-tribución Linux no tengamos el programa Unrar, el paquete rarlinux-3.3.0.tar.gz es asequible en el DVD en el directorio Linux+/MLDonkey/Unrar, o podemos decargarlo de la página http://www.rarsoft.com/download.htm. Lo descomprimimos (tar xzvf

rarlinux-3.3.0.tar.gz) y en el directo-rio creado rar como root ejecutamos el comando make.

DVDDespués de arrancar la distribu-

ción Linux+ Live DVD, en el menú Linux+/P2P accederemos a las

posiciones para arrancar el servi-dor MLDonkey y sus clientes

(de texto, de gráficos y a través de la web). Al principio hay que

arrancar el servidor, y luego uno de sus clientes, p.e. a través de

la web. Si configuramos la red de modo correcto, podremos buscar los ficheros en Internet y marcar-

los para bajarlos.

Page 51: LiNUX+ DVD 1

49www.lpmagazine.org

primeros pasos redes p2p

El archivo rar, junto con el programa MLDonkey, lo ponemos en un directorio nuevo (p.e. ~/mldonkey, generado con el comando mkdir ~/mldonkey) y lo des-comprimimos con el comando unrar x

mldonkey-2.5-16d.static.i386-Linux.rar. Obtenemos tanto ficheros ejecutables (servidor y clientes), como unos ficheros de ejemplo de configuración y la docu-mentación.

Hay que recordar que no se puede arrancar el servidor MLDonkey, impres-cindible para el funcionamiento del pro-grama, desde el nivel del usuario root, sino desde el usuario común (con el comando ./mlnet en el directorio creado).

Hay que recordar también que antes de arrancar mlnet siempre hay que pasar al directorio que contiene este programa, porque MLDonkey crea unos ficheros temporales en el subdirectorio temp del directorio corriente, y hace pasar en su totalidad los archivos descargados al subdirectorio incoming, que se encuentra en el directo-rio corriente. Si arrancáramos el pro-grama cada vez desde un directorio diferente, tendríamos que contar con que no continuaría con la descarga de los ficheros que había empezado a bajar ya antes.

Clientes de MLDonkeyYa hemos arrancado el servidor, pero no sabemos cómo administrarlo. Pode-mos escoger entre tres interfaces dife-rentes.

A la primera se puede acceder tras ejecutar el comando telnet 127.0.0.1

4000. Es una interfaz solamente tex-tual, por eso, puede que no les guste a muchos Lectores. Después de realizar los comandos ? y ??, obtenemos una lista de comandos posibles. Si en el segundo caso conseguimos un listado completo de todos los comandos, en el primero sólo salen los que se usan con más frecuencia.

Si no nos gusta la interfaz textual, gracias a la ejecución del comando

./mlgui, arrancaremos un programa basado en la librería GTK. Esta interfaz gráfica es bastante cómoda, pero yo per-sonalmente prefiero la tercera opción, es decir, el acceso a través de la web. Es suficiente abrir una página con la direc-ción http://127.0.0.1:4080/ en el nave-gador para conseguir entrar en un sitio en que aparezcan de manera cómoda y clara las instrucciones actualizadas del funcionamiento del servidor.

El Lector seleccionará la interfaz: lo mejor es familiarizarnos con todas y luego elegir la que más nos guste.

Podemos también buscar en la Red otros clientes para MLDonkey, tanto los que funcionan bajo X11, como en el entorno Windows.

Configuración básicaDespués de instalar el programa pode-mos utilizarlo inmediatamente, aunque vale la pena conocer las opciones de configuración alcanzables y aju-starlas a nuestras propias necesidades y medios.

Todas las opciones de configuración se hallan en los ficheros con la extensión ini, que se encuentran en nuestro ejemplo de directorio ~/mldonkey. Podemos cambiarlas, editando directamente losficheros o utilizando la interfaz textual o gráfica. A continuación voy a presentar un par de opciones importantes en la interfaz mlgui.

Figura 2. En eDonkey2000 también se pueden encontrar las distribuciones de Linux

Figura 1. Cuando nos hallamos detrás del firewall, podemos tener problemas al conectarnos con los servidores eDonkey2000

Page 52: LiNUX+ DVD 1

primeros pasos

5050 Linux+ 1/2004

Así, después de ejecutar ./mlgui desde el directorio ~/mldonkey, aparecerá la ven-tana de la interfaz. Por ahora nos interesa el menú File-->Settings o el icono Settings que se halla a la derecha (en la versión nueva).

No tocamos la pestaña GUI, que sirve solamente para escoger el aspecto de la interfaz que más nos guste. El campo Password puede llamar nuestra atención, pues se supone que MLDonkey permite conectarse a los clientes sólo desde un ordenador local (127.0.0.1), por eso es mejor no inventar la contraseña: claro, a excepción de que haya más personas que utilicen nuestro ordena-dor.

Vayámonos a la pestaña Client. Aquí se encuentra la mayoría de las opciones esenciales. En la pestaña Main definimos nuestro nombre en la red eDonkey. Hace poco mencionamos el campo Allowed IPs en la pestaña Interfaces. En este campo se comprenden los números IP de los ordenadores, desde los que podemos administrar nuestro servidor MLDonkey. No cambiamos el resto de las opciones de esta pestaña.

Las opciones probablemente más importantes para la mayoría de los usuarios de los programas P2P se hallan en la pestaña Bandwidth. Aquí podemos configurar la rapidez máxima de descarga (Maximal Download Bandwidth) y del envío de datos (Maximal Upload Bandwidth). Los valores supuestos son de 50 kB/s y de 7 kB/s. Sin embargo estos valores resultarían „mortales”, por ejemplo, para los usuarios de módems, de ahí que haya que ajustarlos a los parámetros de su propia conexión. Si nuestro ordenador funciona dentro de una red del barrio o de vecinal, vale la pena acordarnos de otros usuarios: no exageremos con una configuración de valores demasiado altos.

En la pestaña Paths podemos definir dónde se colocarán los ficheros tempora-les (Temp directory), y dónde se copiarán los ficheros descargados en totalidad (Incoming directory). Si tenemos intención de descargar ficheros grandes, hay que prestar atención a que estos directorios se hallen en una partición con mucho espacio libre.

Por fin, la última pestaña, Plugins. Contiene una configuración propia de plug-ins destinados al soporte de las respectivas redes. Merece la pena echar un vistazo a todas las opciones en las pestañas concernientes a las redes que utilicemos. Por ejemplo, en la pestaña eDonkey fijémonos en la opción Force High ID. Si la marcamos, MLDonkey de manera automática se des-conectará de los servidores que nos han asignado un ID bajo (Low ID). Es útil, si queremos tener la posibilidad de bajar los ficheros de un modo más rápido. Hay que recordar que si nuestro ordena-dor está detrás de Masquerade o NAT, y en el router no tenemos acceso a puer-tos oportunos, nunca conseguiremos un ID alto (High ID). Éste se proporcionasolamente a los clientes con los quese puede conectar desde fuera. Si en este caso marcamos la opción arriba mencionada, podemos olvidarnos de la conexión con cualquier servidor eDon-key.

Por otra parte, en la pestaña DC (rela-cionada con la red Direct Connect), hay que prestar atención a la opción Firewalled. Debemos marcarla, cuando, como ya se ha mencionado, estemos detrás de Masquerade o NAT.

Facilidades en MozillaCuando terminemos de configurar nues-tro programa, seguramente nos gustará bajarnos algunos archivos. Podemos encontrarlos con ayuda del buscador disponible a los clientes o con ayuda de los sitios web (así llamados link farm), que contienen enlaces a los archivos, a menudo verificados, facilitados en las redes P2P. En caso de utilizar el bus-cador, probablemente nos parezca bien que MLDonkey recuerde los resultados de la búsqueda. Así, luego podremos volver a mirarlos. Muchos ficheros resultan ser falsos (en vez del buscado, recibimos un fichero completamente diferente con distinto nombre). Por eso, merece la pena utilizar el link farm; por

desgracia, hace poco la policía suiza cerró el más popular, Sharereactor. Los enlaces encontrados allí (con nombres que empiezan con ed2k:), los pode-mos pegar en el campo de texto que se encuentra en la pestaña Downloads del cliente. Sin embargo, este método no es muy cómodo. Sería mejor si, después de pulsar con el ratón en el enlace ed2k: del sitio web, el fichero estuviera agregado a la cola de descarga en MLDonkey. Si para buscar las páginas web utilizamos Mozilla, no deberíamostener problemas con la selección de esta opción.

Con este objetivo arrancamos Mozi-lla como usuario privilegiado (root). Abrimos el sitio http://www.informatik.uni-oldenburg.de/~dyna/mldonkey/ y ele-gimos el enlace a la última versión de archivo responsable de atender el pro-tocolo ed2k: en Mozilla (actualmente es mldonkey_protocol_handler-1.3.xpi, que sepuede encontrar en el directorio ~/mldonkey/ed2k_mozilla/ ). Aparacerá una ventana de advertencia contra posibles peligros resultantes de la descarga del programa desde el sitio web. Pulsa-mos el icono Instalar. Cuando aparezca la inscripción Instación finalizada, pulsamos el icono OK. Ahora ya podemos cerrar el buscador, y volver a abrirlo desde el nivel de usuario corriente. Si la insta-lación ha estado libre de errores, des-pués de elegir el enlace ed2k: en elsitio web, MLDonkey iniciará la descargadel fichero elegido.

Figura 3. Sitio web MLDonkey World, donde se puede encontrar mucha información sobre el programa

En Internet:• Sitio web de MLDonkey: http://www.nongnu.org/mldonkey/• Información sobre el proyecto

MLDonkey: http://savannah.nongnu.org/projects/

mldonkey/• Manejo del protocolo ed2k: en

Mozilla: http://www.informatik.uni-

oldenburg.de/~dyna/mldonkey/• Sistema de soporte de MLDonkey

World: http://mldonkey.org/• Paquetes binarios de MLDonkey

para Linux: http://www.8ung.at/spiralvoice/

Page 53: LiNUX+ DVD 1

redes p2p

51www.lpmagazine.org

primeros pasos

DCGUI-QtPiotr Truszkowski

DCGUI-Qt es a lo mejor el cliente más popular de la red Direct Connect para el sistema Linux. En el presente

artículo describiré las reglas básicas de tra-bajo con este programa.

InstalaciónEl procedimiento de instalación es están-dar (./configure, make, make install), pero para funcionar el programa necesita la librería dclib, la cual tendremos que instalar antes, así como el programa.

ConfiguraciónEstá bien configurar español como idioma de trabajo. Podemos hacerlo de la manera siguiente: Fichero–>Opciones–> GUI. Después de hacer click en el icono del pececito y después de seleccionar el español, volvemos a arrancar el sis-tema.

Al principio, pasamos al menú de configuración, al que se accede después de elegir Fichero–>Opciones. Nos concen-tramos en una configuración básica que permitirá conectarnos con el hub.

En la pestaña Identificación definimos:

– Apodo – nuestro alias. Si estamos de-trás del cortafuegos, tenemos que agre-gar un marcador [psv] delante de nues-tro apodo. Por ejemplo: [psv]Mar;

– Velocidad – velocidad de nuestra cone-xión.

En la pestaña Descarga, definimos:

– Directorio de descargas – directorio al que se copiarán los ficheros durante su descarga;

– Mover descargas terminadas a este

directorio – directorio al que se tras-ladarán los ficheros descargados por completo;

– Directorios compartidos – con ayuda del icono con una cruz verde agrega-mos directorios con ficheros que desea-mos compartir;

– Cantidad máxima de slots – un slot equivale a una persona que puede des-cargar nuestros ficheros;

En la mayoría de los hubs se exige la atribución de tres slots, así que si esta-mos conectados con dos hubs, tenemos que cambiar la cantidad de slots en 6.

En la pestaña Conexión seleccionamos Modo pasivo/modo activo. Si estamos detrás del cortafuegos, tenemos que seleccionar el modo pasivo. Por esta razón aparecerán limitaciones, p. e. no podremos descargar los ficheros de otro usuario que se encuen-tre detrás del cortafuegos. No obstante, si no nos encontramos detrás del cortafue-gos, podemos escoger el modo activo. Así podremos descargar los ficheros de todos los usuarios de la red Direct Connect (si él dispone de unos slots libres).

En la pestaña Otros se encuentra Lista de hubs. Es un sitio muy importante. Aquí escri-bimos las direcciones de listas de hubs con las que intentaremos conectarnos. El pro-grama DCGUI-Qt tiene un listado ya inclu-ido en su interior. Al principio será suficiente porque contiene más de 12.000 hubs.

Después de introducir todos estos cambios, hacemos click en el botón Grabar. Hemos configurado un cliente de la red Direct Connect.

Ahora podemos dar un paso siguiente: descargar la lista de hubs accesibles para nosotros a nuestro disco duro. Pulsamos en el menú en Mostrar lista de hubs. En este momento el listado está vacío; lo cambia-mos. Hacemos click en el segundo icono de la izquierda (con una flecha verde y una caja abierta). Ahora tenemos que esperar un momento. Mientras tanto podemos prepararnos un té. Cuando regresemos, el listado debería estar lleno de hubs.

Búsqueda y descarga de ficherosEl icono con una lupa sirve para buscar los ficheros. Podemos introducir allí la frase que buscamos, definir su tamaño mínimo/

Figura 1. DCGUI-Qt (http://dc.ketelhot.de/)

máximo y su tipo (video, mp3, programa u otro). En la pestaña Hubs vale la pena marcar la opción Hubs públicos, de este modo se buscará en todos los hubs que se hallan en nuestra lista la relación con nues-tra frase. Introducimos los datos necesarios y pulsamos en Buscar. La búsqueda en más de 12.000 hubs ocupará poco tiempo (depende de la rapidez de la conexión; puede tardar de un par de minutos a un par de horas). Si varias personas disponen del fichero que buscamos, fijémonos en la cantidad de slots que tiene cada uno de estos usuarios. Tenemos que recordar que un slot equivale a una descarga. Cuantos más slots tienen los usuarios encontrados por nosotros, mejor. Para descargar el slot del usuario, hay que conectar con el hub en el cual se encuentra el fichero (pulsa-mos con el botón derecho del ratón en una persona seleccionada y elegimos Conectar al hub). Después de conectar con el hub, seleccionamos en el menú los resultados de la búsqueda del usuario determinado, hacemos click con el botón derecho del ratón y elegimos: Descarga. El programa nos preguntará: ¡Puedes iniciar una multi-descarga!; vale la pena decir sí, puesto que podremos sumar la transferencia cuando descargamos el mismo fichero desde otros usuarios.

ResumenEl programa DCGUI-Qt es un cliente cómodo de la red DC y por eso merece nuestro interés.

Page 54: LiNUX+ DVD 1

primeros pasos

5252 Linux+ 1/2004

BitTorrentDaniel Koć

Generalmente, para trans-ferir ficheros se utiliza el protocolo FTP. Sin embargo, la aparición de

Napster provocó una auténtica revolu-ción en este campo. Desde el momento de su aparición, como setas después de la lluvia, empezaron a construirse sis-temas de intercambio directo de fiche-ros entre usuarios, que por lo común se llaman P2P (Peer To Peer). Uno de los rasgos básicos de este tipo de redes es su capacidad para descargar ficheros por fragmentos (heredado de FTP), otro rasgo (ya propio de este sistema) es la capacidad para combinar el fichero de destino desde varias fuentes. BitTorrent se puede describir simplemente como la unión entre el método tradicional y el método moderno de compartir los ficheros.

Información básicaPara descargar los ficheros con este sistema, sólo hay que instalar el cliente (el estándar requiere la presencia de Python) y tener acceso a la red. Está bien unir los ficheros con la extensión .torrent por medio del programa de cliente BT bajo nuestro navegador preferido o bajo el cliente de correo. Gracias a este procedimiento, la descarga de ficheros con BitTorrent será tanto o más fácil como a través del FTP normal. El cliente normal es accesible tanto a través de la interfaz gráfica (btdownloadgui.py), como con la de texto (btdownloadcurses.py).

La única diferencia entre BitTor-rent y FTP consiste en el hecho de que durante la descarga se registra de modo

dinámico nuestro ordenador como la siguiente fuente potencial de este fichero. Esto no tiene mucha importancia si somos el único usuario que descarga y todo funciona como durante una sesión normal de FTP. Pero en el caso cuando se conectan otras personas, el tráfico se divide entre el servidor y los clientes. Con este objetivo se utilizan unos algoritmos especia-les que provocan, entre otros, la des-carga, como primeros en el orden, de los fragmentos de ficheros que son menos accesibles.

Es fácil darse cuenta de que el aumento del número de clientes no empeora la capacidad de esta red, ya que

el que recibe es a la vez el que da. Por eso, es fácil escalar el sistema de modo dinámico, sin intervención del operador. Lo utilizan los usuarios que no tienen que esperar en la cola para obtener los ficheros necesarios, y los administrado-res cuyos servidores no se sobrecargan a causa del tráfico intenso de los paquetes.

BitTorrent permite con facilidad empezar a compartir ficheros como ser-vidor de espejo: cada uno de sus clientes a la vez cumple la función de servidor, por eso, basta no cerrar la ventana de descarga después de su finalización o volver a abrirla para registrarnos (no tengáis miedo: no vamos a volver a des-cargar el mismo fichero si todo está en

Figura 1. BitTorrent en acción

Page 55: LiNUX+ DVD 1

53www.lpmagazine.org

primeros pasosredes p2p

orden). La existencia de una sóla dirección del fichero permite evitar la búsqueda de recursos facilitados. Comparado con los servidores espejo tradiciona-les (ing. mirrors) FTP, éstos se utilizan automáticamente en caso de necesidad. Es también un modo más seguro queotras redes Peer2Peer, puesto que incluso si faltan los usuarios dispuestosa compartir los ficheros, siempre tene-mos acceso a los ficheros en el servidor.

InstalaciónEn las distribuciones de Linux que tengan un paquete construido de BitTorrent sólo hay que instalarlo (por ejemplo, en Mandrake urpmi bittorrent y en Debian apt-get install bittorrent). Si no lo tenemos, simplemente hay que descargar y descomprimir el paquete desde la página del proyecto (http://

bitconjurer.org/BitTorrent/download.html) u otra solución para las personas valientes: descargar la versión de trabajo desde el depósito de CVS. De todos modos, el programa después de descargarlo está inmediatamente listo para funcionar y no es necesario rea-lizar compilación alguna porque se trata de normales scripts de Python (btdownloadcurses.py y btdownloadgui.py). En el paquete se encuentra el conjunto de software para el cliente y para el servidor.

En acciónPara demostrar como se descarga el fichero BitTorrent, realizamos la descarga del fichero del juego Return to Castle Wolfenstein: Enemy Territory. Este fichero grande (más de 250 MB) y popular es un ejemplo per-fecto del uso de BitTorrent, además podre-mos divertirnos después de descargarlo. Si ya hemos instalado BitTorrent, escri-bimos en el navegador web la dirección http://zerowing.idsoftware.com/BT/torrents/ y pulsamos en el fichero et-linux-2.56-2.x86.run.torrent. El navegador todavía no sabe qué hacer con el fichero de este tipo; seleccionamos su arranque con ayuda de script btdownloadgui.py. Podemos también grabar el fichero .torrent en nuestro disco, para despuésejecutar de la línea de comandos:

Figura 3. Esquema de funcionamiento de BitTorrent

btdownloadgui.py et-linux-2.56-2.x86.run.torrent. A veces es la única solución,en el caso cuando el navegador, envez de preguntar qué hacer, muestrapor pantalla su contenido binario.Ahora solamente hay que indicar el direc-torio en el que queremos grabar los datos y después esperar un rato largo.

La Figura 1 representa la ventana de descarga del fichero por BitTor-rent 3.3, llamada desde el navegador Mozilla. Esta versión nos indica no sólo el tiempo estimado de descarga de nuestro juego de ejemplo y el uso de la conexión por los dos lados, sino tam-bién el número de bytes descargados y enviados.

ResumenEl estándar alto y la transportabilidad del código, demuestran el gran potencial de BitTorrent. En los usos más sencillos se comporta de modo similar a FTP, por eso parece ser un sucesor de este protocolo. En los últimos meses, a simple vista, se ha notado el aumento del número de ficheros compartidos, ante todo los ficheros grandes y popu-lares, como por ejemplo imágenes ISO de distribuciones populares o paquetes de instalación de juegos, que antes provo-caban dolor de cabeza a los administra-dores y la frustración de los usuarios.

En Internet:

• Página principal de BitTorrent: http://bitconjurer.org/BitTorrent/• Extensa colección de recursos relati-

vos a BT: http://smiler.no-ip.org/BT/BTlinks.php• RTCW: Enemy Territory (versión

completa para jugar en la red): http://zerowing.idsoftware.com/

BT/torrents/et-linux-2.56-2.x86.run.torrent

Figura 4. Página principal de BitTorrentFigura 2. Soporte Suprnova.org

Page 56: LiNUX+ DVD 1

equipo

5454 Linux+ 1/2004

Cámara digital en LinuxPiotr Wolny

La cámara digital sólo con un ordenador forma parte de una totalidad funcional, pues junto con el equipo obtenemos

software y drivers para MS Windows que facilitan la realización de unas operacio-nes más importantes, es decir, la lectura de las fotos tomadas, su edición básica y la eliminación de la cámara. Además, hace posible el empleo de la memoria de la cámara como un sistema adicional de ficheros.

Por lo general, ni en los CDs vendidos con la cámara, ni en las páginas web de sus fabricantes, encontraremos información alguna sobre Linux. Sin embargo, en nue-stro sistema operativo hallaremos un soft-ware que cumplirá, al menos, la mayoría de las funciones „originales“ de los pro-gramas facilitados para funcionar con MS Windows. En este caso, una de las ventajas de Linux es la posibilidad de seleccionar, por lo menos, entre un par de programas adaptados a trabajar en varios entornos: GNOME, KDE y línea de comandos.

Nuestro objetivoDespués de las tareas relativas a la configuración, el uso de la cámara digital en Linux resultará muy fácil. Tras conectar la cámara, se puede arrancar de manera automática una aplicación determinada, p.e. FlPhoto. Al pulsarla en Import->Camera se importarán miniaturas de todas las fotos a la memoria de la cámara. Podemos marcar todas o una parte de ellas y, a continuación, indicar el nombre del directorio donde se copiarán las imágenes. FlPhoto hace posible, no sólo una visualización de fotos descargadas (p.e. a modo de diaporama), sino también su edición. Disponemos de una serie de

funcionalidades como: la rotación, los ajustes de brillo/contraste, la escala de imágenes, el encuadre, etc. A todas estas opciones se accede a través del menú Image. Las fotos ya editadas enseguida las podemos colocar en ficheros HTML, dispuestos para publicar en Internet. Es suficiente pulsar en Album->Export, escribir la cabecera y el pie de página

¿Qué cámara elegir?El listado de cámaras que pueden funcionar bajo Linux con ayuda del software GPhoto2 consta, actualmente, de casi 400 cámaras. A este listado hay que agregar, asimismo, un grupo numeroso de cámaras compatibles con USB Storage que no causan problemas en nuestro sistema operativo. Últi-mamente, los fabricantes principales, tales como Canon o HP, han decidido emplear en sus productos un protocolo común PTP. El soporte de PTP con GPhoto2 ya ha funcionado de modo estable y con la utilización de casi todas sus funcionalidades. Las posibles faltas seguramente serán eliminadas en un futuro cercano.

Por esta razón, cuando compramos una cámara digital, podemos guiarnos sobre todo por su calidad y por su precio, porque la mayoría de las cáma-ras que hay en el mercado funcionan bajo Linux. Para estar totalmente segu-ros, antes de la compra, vale la pena comprobarlo en una lista de cámaras que funcionan bajo Linux en Internet, que podemos encontrar en el recuadro „En Internet“. En ella veremos las cáma-ras más populares, como por ejemplo: HP PhotoSmart 320, PhotoSmart 435, Canon PowerShot A60 y PowerShot A70, Canon Powershot S45, Minolta Dimage E223 y muchas otras.

En el DVDEn el DVD se hallan paquetes fuentes de GPhoto2, así como

otras herramientas de soporte de cámaras digitales.

DVDDespués de arrancar la distribu-

ción Linux+ Live DVD, en el menú Linux+/Multimedia se accede

a unas posiciones para poner en marcha programas de soporte

de cámaras digitales.

Page 57: LiNUX+ DVD 1

55www.lpmagazine.org

equipocámaras digitales

sus propios protocolos de transmisión de datos, elaborados por los respectivos fabri-cantes. En caso de cámaras conectadas por USB, hay cierta estandarización. A decir verdad, muchas cámaras antiguas usan sus propios protocolos, sin embargo, actual-mente, la mayoría de productos nuevos usa USB Storage o Picture Transfer Protocol (PTP), cada vez más popular.

Por supuesto, la existencia de unas normas seguidas por todos facilita la elaboración de un software que funcione bajo el control de Linux. Como resultado, con Linux instalado, podemos acceder a la cámara fotográfica de dos maneras, según la cámara que tengamos:

– por medio de un soporte para USB Sto-rage, que se encuentra en el núcleo del sistema;

– con ayuda del programa GPhoto2 (http://www.gphoto.org/ ).

A continuación, nos fijaremos en la instala-ción del modelo Canon PowerShot A60. El dispositivo está reconocido por GPhoto2 a partir de su versión 2.1.2. Si nuestra distribución de Linux no dispone de esta versión, afortunadamente, nuestra cámara también es compatible con el protocolo PTP que posibilita el acceso a ella, usando las versiones más antiguas de GPhoto2, que incluyen las distribuciones populares de Linux.

GPhoto2 facilita el soporte completo para cientos de cámaras que aprovechan sus propios protocolos y, a su vez, proporciona un soporte parcial para cámaras que trabajen con PTP. La mayoría de las cámaras que no funcionan con Gphoto2, funcionarán utilizando el driver usb-storage, colocado en el núcleo (el recuadro Protocolo USB Storage).

Preparación indispensableSin tomar en consideración la distribución de Linux que utilizamos, deberíamos encontrar en ella unos paquetes hechos con programas básicos. Precisaremos al menos de:

• hotplug – programa responsable de, entre otros, la instalación „al vuelo“ de dispositivos USB que van a ser conectados;

• GPhoto2 – drivers de cámaras digita-les (en el paquete GPhoto2 se puede también encontrar un programa que funciona desde la línea de comandos gphoto2, que garantiza la ejecución de todas las operaciones);

• GTKam - un frontend gráfico sobre GPhoto2.

Podemos instalar también FlPhoto, que se halla en varias distribuciones de Linux (un frontend alternativo para GTKam sobre GPhoto2, escrito para GNOME) y GTKam-gimp, es decir, un plug-in para GIMP que hace posible la importación directa de una imagen desde la cámara al programa. Los usuarios de versiones nuevas de KDE dis-ponen, además, del programa Kamera. Con ayuda de este programa se facilita el acceso a las fotos en la cámara, después de escribir en el navegador Konqueror la dirección: camera://.

Si tenemos una cámara digital másantigua, sobre todo, una de las que se cone-ctan a través del puerto en serie, enlugar de GPhoto2 podemos utilizar GPhoto(la penúltima versión del programa).

En caso de cámaras conectadas a USB, también tenemos que facilitar el soporte de este puerto a través del núcleo de Linux. Las distribuciones actuales de Linux disponen del soporte para USB,

Figura 1. Esquema del funcionamiento de una cámara fotográfica bajo LinuxProtocolo USB StorageAlgunas cámaras fotográficas, general-mente de las empresas Olympus, Nikon, Minolta, Sony y Casio, usan una especificación USB Storage para comunicarse con el ordenador. Como su nombre indica, USB Storage se creó para las memorias masivas. Después de conectar una cámara de este tipo, p.e. en las últimas distribuciones de Mandrake, en nuestro escritorio de forma automática se mostrará un icono que representa el dispositivo de memoria masiva. En la mayoría de los casos de otras distribuciones, podemos „montar“ este tipo de cámara en el sistema de ficheros del mismo modo a como se hace con el disco duro o el CD.

Si el núcleo de nuestro Linux fue compilado con el soporte de USB y SCSI, podemos acceder a nuestra cámara con la ayuda de un par de comandos simples:

modprobe usb-storage

modprobe vfat

mkdir /mnt/camara

mount -t vfat /dev/sda1 /mnt/camara

Cuando compilamos el núcleo de forma manual, para este tipo de cámaras, debemos escoger SCSI support, SCSI disk support, SCSI generic support y, por supuesto, el soporte USB, es decir, usb-uhci o usb-ohci y usb-storage.

Hay que prestar atención porque en algunos casos el dispositivo scsi tendrá otro nombre de sda1, del ejemplo arriba mencionado. Sin embargo, el nombre correcto debería aparecer en el fichero /var/log/messages en el momento de conectar la cámara. Puede ser útil tam-bién el comando fdisk -l /dev/sga (o sgb, sgc...), por medio del cual vamos a encontrar unas particiones que se pueden montar.

Hay que recordar también que la cámara debe ser desmontada antes de desconectar.

HTML con el álbum y el directorio donde se colocará nuestro trabajo.

¿Cómo funciona en Linux?Actualmente, cámaras digitales se conectan con mayor frecuencia al enlace USB, soportado en su totalidad por Linux, aunque todavía se pueden encon-trar modelos conectados a puertos en serie.

Las cámaras más antiguas, conec-tadas precisamente por “COM“ , utilizan

Page 58: LiNUX+ DVD 1

equipo

5656 Linux+ 1/2004

pero podemos tener problemas cuando nosotros mismos compilemos el núcleo si no marcamos la opción relativa a USB. En el núcleo hay que tener el módulo usb-uhci o usb-ohci, según la placa madre que ten-gamos, y usbcore. Después de arrancar los módulos y ejecutar el comando gphoto2 --list-ports, en la lista de vuelta debería aparecer usb:. Ahora podemos conectar la cámara digital durante un rato, ajustarla al modo en que podrá intercambiar datos con el ordenador y realizar el comando gphoto2 --auto-detect. Como resultado, obtenemos una línea para nuestra Canon:

USB PTP Class Camera usb:

Si nuestra distribución de Linux incluye libgphoto2 , al menos en la versión 2.1.2, entonces aparecerá:

Canon PowerShot A60 usb:

No es más que el principio del proceso de instalación, pero podemos asegurarnos de que el soporte de USB y la conexión a la cámara funcionan de manera correcta.

Funcionamiento de HotplugHotplug es un demonio que funciona en el fondo cuyo objetivo es la instalación de dispositivos USB (y también otro tipo de dispositivos que se vayan conectando en el transcurso del trabajo en el ordenador) „al vuelo“, es decir, sin participación del usuario. En el caso de la cámara digital, su primera y la más importante tarea es la asi-gnación de la autorización de acceso a este dispositivo a un usuario determinado (o a varios usuarios) porque GPhoto2 no puede arrancarse desde la cuenta root. Con ayuda de hotplug también podemos obtener el arranque automático de una aplicación en el momento de conectar la cámara digital. Hablaremos de ello más adelante.

Cuando en el conjunto de dispositivos USB aparece un dispositivo nuevo, p.e. como resultado de conectar con la cámara digital o en el momento de ponerla en marcha, el demonio hotplug lee el identifi-cador del fabricante (Vendor) y el del pro-ducto (Product). Compara estos datos en un listado de los dispositivos que reconoce el sistema, que se encuentra en el fichero /etc/hotplug/usb.usermap. Si el dispositivo que va a ser conectado no se halla en el listado, no pasa nada. Si una de las líneas /etc/hotplug/usb.usermap contiene un identificador idéntico al del fabricante y al del producto, se arrancará un script determinado. Su objetivo es la “instalación” del dispositivo. Encontraremos el nombre del script en la primera columna de usb.usermap – en nue-stro caso será usbcam. Este script por defecto se encuentra en el directorio /etc/hotplug/usb/. Vamos a ver como funciona esto en la práctica aplicándolo en dos distribuciones de Linux.

Aurox Linux 9.3En Aurox 9.3, después de instalar Gphoto2, obtenemos un script hecho /etc/hotplug/usb/usbcam y el listado de cámaras digi-tales soportadas en el fichero /etc/hotplug/usb.usermap. En este momento, podemos activar la visualización de comunicados del sistema en la consola (tail -f /var/

log/messagess) y conectar la cámara . En el caso de nuestra PowerShot A60, aparecen las inscripciones siguientes:

May 7 13:54:11 localhost kernel: hub.c:

May 7 13:54:11 localhost kernel: usb.c:

May 7 13:54:14 localhost /etc/hotplug/

usb.agent:

May 7 13:54:14 localhost /etc/hotplug/

usb.agent:

Vemos pues que el dispositivo ha sido reconocido y el script /etc/hotplug/usb/usbcam ha sido ejecutado.

Ahora, ya podemos arrancar una apli-cación que nos facilitará el acceso cómodo a las fotos, p.e. descrito a continuación GTKam.

Si hotplug enseguida no reconociera nuestra cámara:

May 7 20:05:48 aurox /etc/hotplug/

usb.agent:

tendríamos que realizar modificaciones. La línea arriba mencionada es el comuni-cado del demonio hotplug que nos notifica que en el fichero /etc/hotplug/usb.usermap no se encuentra la línea que describa el dispositivo 0x4a9/0x3074, es decir, nuestra PowerShot A60.

Tenemos que „engañar” un poco a nuestro demonio hotplug y decirle que nuestro dispositivo está soportado. Para conseguirlo, podemos abrir cualquier editor /etc/hotplug/usermap y agregar allí la inscripción con nuestra cámara. Para facilitarnos la tarea, podemos, p.e. encon-trar la línea donde en la tercera columna aparecerá 0x04a9 y en la cuarta 0x3047

Figura 2. Sitio web del proyecto GPhoto2

Figura 3. GTKam – programa básico para trabajar con la cámara digital

Page 59: LiNUX+ DVD 1

57www.lpmagazine.org

equipocámaras digitales

(línea responsable de la más antigua Canon Digital IXUS). Entonces, en lugar de 0x3047, que se halla en la cuarta columna, escribimos 0x3074, es decir, el identifica-dor de nuestra cámara digital. Después de conectar la cámara, el sistema la recono-cerá de manera correcta.

Mandrake Linux 10En Mandrake 10 podemos instalar los paquetes necesarios con ayuda del Centro de Control Mandrake->Administración con Soft-ware. Después de la instalación, como en Aurox, aparecerán /etc/hotplug/usb.usermap y /etc/hotplug/usb/usbcam que cumplen exactamente la misma función que la antes descrita en Aurox. Si no se menciona nuestra cámara en usb.usermap, lo mejor es realizar los mismos procedimientos que en la descripción anterior en Aurox Linux, o sea, agregar allí la inscripción por nuestra cuenta.

Pero si lo que queremos es únicamente el acceso a la cámara, en Mandrake Linux hay un método más sencillo: basta con pulsar en el menú en Configuración->Otros->Usuarios y añadir a nosotros mismos, o sea, p. ej. al usuario “piotr“, al grupo del sistema usb. Tras esta operación tenemos que deslogearnos y volver a logearnos. Entonces, cuando demos el comando groups, en el listado de los grupos de los que somos miembro estará usb. Esto es suficiente para poder arrancar GTKam u otros programas.

Instalación desde las fuentesLa última versión de GPhoto2 a menudo resulta muy útil, porque cada versión nueva soporta cámaras cada vez más modernas. A veces, nuestro aparato no está soportado completamente por la distribución de Linux que tenemos, por ejemplo, en Debian Woody se incluyó una versión bastante antigua de GPhoto2 que no funcionaba con mi modelo, incluso a través del protocolo PTP. Por suerte, la compilación desde las fuentes resultó ser fácil y rápida.

Los programadores del proyecto GPhoto2 actualmente facilitan el resultado de su trabajo: tres paquetes de fuentes, accesibles en la dirección: http://www.gphoto.org/download/:

• libgphoto2-2.1.4.tar.bz2 – incluye drivers para los dispositivos;

• gphoto2-2.1.4.tar.bz2 – incluye el pro-grama gphoto2 que funciona desde la línea de comandos;

• gtkam-0.1.10.tar.bz2 – frontend gráfico sobre gphoto2, basado en librerías GTK+ 2.0.

Para realizar la compilación, nos faltan en el sistema libusb-dev, pkg-config, y para GTKam: libgtk+-2.0-dev, que seguramente encontraremos en nuestra distribución de Linux. Prestemos atención, sobretodo, a libusb-dev, porque el programa podrá

compilarse sin ella, pero no será capaz de trabajar con ninguna cámara USB.

El primer paso indispensable si noso-tros mismos compilamos GPhoto2 es la eliminación del sistema de su versiónanterior. Luego, descomprimimos y compi-lamos libgphoto2 con los comandos:

bunzip2 libgphoto2-2.1.4.tar.bz2

tar xvpf libgphoto2-2.1.4.tar

cd libgphoto2-2.1.4

./configure

su

[contrasea]

make install

A continuación, pasamos al directorio, donde se encuentran importados los ficheros restantes (cd ..). Ejecutamos los comandos:

tar xjfvp gphoto2-2.1.4.tar.bz2

cd gphoto2-2.1.4

export PKG_CONFIG_PATH=/usr/lib/ S

pkgconfig:/usr/local/lib/pkgconfig

./configure; make

su

[contrasea]

make install

Compilamos el paquete GTKam del mismo modo que Gphoto2 descrito antes y úni-camente cambiamos los nombres de los ficheros y de los directorios.

Después de compilar e instalar todos los programas, nos falta configurar el demonio hotplug. Para ejecutarlo, hay que crear dos ficheros: /etc/hotplug/usb.usermap y /etc/hotplug/usb/usbcam. Ya hemos des-crito sus propiedades antes.

El primero de los ficheros necesarios (usb.usermap) se puede crear mediante el comando /usr/lib/libgphoto2-2/print-

usb-usermap >/etc/hotplug/usb.usermap.

Figura 4. Con ayuda de FlPhoto podemos crear de manera rápida una página HTML con nuestras fotos

Figura 5. Página HTML elaborada con el programa FlPhoto

Page 60: LiNUX+ DVD 1

equipo

5858 Linux+ 1/2004

Es un comando relativo a nuevas versiones de GPhoto2, ya que en las antiguas lo ejecutaban con el comando:

gphoto2 --print-usb-usermap S

>/etc/hotplug/usb.usermap.

Como segundo paso ( /etc/hotplug/usb/usbcam) tenemos que seleccionar un par de ejemplos de ficheros, que encontraremos en las fuentes libgphoto2, en el directorio packaging/linux-hotplug. El que elijamos lo colocaremos en /etc/hotplug/usb/ con el nombre usbcam.

En Debian Woody, lo mejor es elegir usbcam.group y luego agregar a todos los usuarios que van a utilizar la cámara digital al grupo del sistema camera. Podemos elegir también usbcam.user, pero hay que escribir en este fichero (en su octava línea) el nombre de un sólo usuario que será quien pueda utilizar la cámara. En otras distribuciones de Linux podemos seleccionar usbcam.console. No podemos olvidar que el fichero /etc/hotplug/usb/usbcam tiene que tener el atributo de ejecución (chmod a+x /etc/

hotplug/usb/usbcam).

Programas de uso práctico

GTKamEl programa principal para el soporte de cámaras fotográficas es GTKam. Antes de

arrancarlo, hay que conectar la cámara al ordenador y ajustar el modo adecua-do para su funcionamiento. Después de arrancar GTKam, en la ventana de la izquierda, deberíamos ver el nombre de nuestra cámara, eventualmente con la inscripción “USB PTP Class Camera“. Si no es así, en el menú Camera hay que elegir la posición “Select camera“ y luego “detect“. Si tampoco tene-mos éxito, al final de este artículo se hallan unas sugerencias donde se puede buscar las causas de los posibles proble-mas.

Con la ayuda de GTKam podemos, sobre todo, mirar las fotos en la cámara e importarlas al ordenador. Además, hay otras funciones como: eliminar fotos, tomar fotos (“capture“), grabar el fichero en la cámara, y realizar operaciones en los directorios. Sin embargo, no todas las cámaras disponen de estas las funciones y, en algunos casos, una parte de ellas hasta ahora no cuenta con el soporte de GPhoto2 y al mismo tiempo el de GTKam.

GTKam-gimpEs un plug-in para GIMP, con el que podemos importar la imagen desde la cámara fotográfica, de un modo pare-cido a la importación de imágenes desde el escáner. Tenemos la posibilidad de elegir entre dos opciones: importar una foto tomada antes, grabada en la cámara -

“Load from camera“, o bien tomar una foto nueva - “Capture form camera“. El trabajo con este programa es cómodo, sobre todo, cuando queremos editar en GIMP, con la mayor rapidez, las fotos toma-das; entonces no necesitamos arrancar ningún otro programa.

FlPhotoFlPhoto es una aplicación un poco más avanzada de GTKam con un empleo parecido. Con la ayuda de esta aplica-ción, podemos, no sólo importar fotos desde la cámara, sino también impri-mirlas, mirarlas a modo de diaporama, o exportarlas a las páginas HTML. Con el programa se pueden realizar las operaciones básicas de edición de fotos: encuadre, rotación, escala de imá-genes, etc.

KameraEl programa Kamera se llama también io_slave para el navegador Konqueror. Gracias a este programa, en las versiones nuevas KDE, obtenemos el acceso a los ficheros de la cámara sin la utilización de otros programas adicionales, aparte del propio navegador Konqueror. Es suficiente escribir en él, en vez de una dirección web, camera:// y podre-mos mirar, copiar, eliminar ficheros de la cámara digital, de un modo pare-cido a otros archivos en el sistema. El funcionamiento se parece un poco al uso de muchos drivers para MS Windows, donde se procede a la integración con el programa Internet Explorer. Podemos agregar y testear nuestra cámara al mismo tiempo por medio de Centro de Control->Disposi-tivos periféricos->Cámara digital.

Línea de comandosPara muchos usuarios el empleo del programa gphoto2 será el modo más cómodo de trabajar con una cámara digital. El programa funciona desde la línea de comandos. Es el método más rápido en muchos casos; es sufi-ciente realizar, p.e. el comando gphoto2 -P para importar todos los ficheros desde la cámara al disco duro. Otros comandos usados con frecuencia son, p.e. gphoto2 -L - que muestra todos los ficheros de la cámara, o gphoto2 -p <nr1>-<nr2> - que importa ficheros de <nr1> a <nr2>.

Figura 6. Después de instalar GTKam-gimp, en GIMP aparecerán unos comandos nuevos relativos a la importación desde la cámara fotográfica

Page 61: LiNUX+ DVD 1

59www.lpmagazine.org

equipocámaras digitales

Arranque automático de la aplicación.Seguramente algunos usuarios deseen tener GTKam u otra aplicación que arranque automáticamente justo después de conectar la cámara al ordenador. Desde luego, no es difícil. Para ello, tene-mos que encontrar el script usbcam.x11-app que se halla en la distribución fuente libgphoto2, en el directorio packaging/linux-hotplug, aunque en muchas dis-tribuciones está colocado junto con la documentación GPhoto2, en el directorio /usr/share/doc/libgphoto2.

Después hay que copiar este fichero al directorio /etc/hotplug/usb y cambiar su nombre por usbcam. Además, tene-mos que realizar algunas modificacio-nes:

• en la línea 8 hay que indicar al usuario distinto de root;

• en la línea 15 definimos la aplicación que ha de ser arrancada;

• en la línea 23 tenemos que corregir DIRECTORY=~$USER por HOME=~$USER.

En suma, hay que verificar si la ubi-cación de los programas su y env cor-responde a la información de nuestro fichero. Después de grabar el fichero, por supuesto, le asignamos el atributo de ejecucción (chmod a+x /etc/hotplug/

usb/usbcam) y lo testeamos. La informa-ción sobre los posibles errores en el script debería hallarse en syslog.

En caso de problemasPor supuesto, pueden producirse algunos problemas:

• Si no podemos acceder a nuestras fotos en la cámara, tenemos que verificar en qué lugar aparece el problema. Pri-mero hay que comprobar si GPhoto2 detecta el puerto al que está conectada la cámara, por ejemplo, con el comando gphoto2 --list-ports. Si no encontra-mos allí nuestro puerto en serie, por supuesto, hay que mirar los ajustes de BIOS del ordenador, verificar si no está ocupado por otra aplicación, etc. En el caso de los puertos USB, tenemos que asegurarnos si se han importado los módulos responsables de soporte del puerto USB (lsmod).

• Los drivers de cámaras fotográficas de GPhoto2 funcionan en userspace, es decir, no son módulos del núcleo. Tenemos que importar al núcleo el soporte de USB (o los puertos en serie), pero no podemos importar módulos para algunas cámaras digitales (p.e. Kodak dc2xx). Estos módulos, de manera eficaz, imposibili-tarán el funcionamiento de GPhoto2.

• Si GPhoto2 encuentra el puerto USB y seguimos sin ver nuestro cámara en él, podemos comprobar el resultado de la ejecución del comando cat /proc/bus/usb/devices. Entre muchas líneas que se devuelven tras este comando, deberían encontrarse también, entre

otras, aquellas que describen nuestra cámara (a su fabricante y a su módelo). La falta de estas líneas significa un problema con el cable, o que no hemos ajustado el modo de la cámara para que pueda intercambiar datos por puerto USB.

• El error más corriente es la regulación incorrecta de los derechos de acceso a puertos USB. Gphoto2, por lo gene-ral, devuelve entonces el comunicado Error (Could not claim the USB device o Could not find USB device) (vendor 0x0000, product 0x0000). Tenemos quevolver a mirar los comunicados en el fichero /var/log/messages, que aparecen después de conectar la cá-mara. Probablemente hayamos come-tido un error en la configuración hotplug. Unos comunicados parecidospueden mostrarse si dos aplicacionesdistintas intentan al mismo tiempo acceder a nuestra cámara.

• Si tenemos problemas con el demonio hotplug, podemos intentar aumentar el número de comunicados que el demo-nio envía a syslog. Con este objetivo hay que “descomandar“ una línea queempieza por #DEBUG=yes en el fichero /etc/hotplug/usb.agent, sin olvidarnos de los derechos de ejecución del fichero /etc/hotplug/usb/usbcam.

Figura 7. Kamera, o sea, un suplemento a Konqueror, gracias al cual tenemos acceso a la cámara a través del navegador

En Internet:• Sitio web del proyecto GPhoto2,

dedicado a todo tipo de software de cámaras digitales para Linux:

http://www.gphoto.org/• Información sobre cámaras Casio

y USB Storage: http://www.harald-schreiber.de/• Información sobre cámaras Konica

KD-200Z y USB Storage: http://www.willamowius.de/konica_

kd200z.html• Listado general de cámaras que

funcionan bajo Linux: http://www.teaser.fr/~hfiguiere/linux/

digicam.html• Información sobre dispositivos USB

en Linux: http://www.linux-usb.org/• Sitio web del programa FlPhoto,

incluye, entre otros, paquete rpm para Red Hat/Aurox:

http://www.easysw.com/~mike/flphoto/

Page 62: LiNUX+ DVD 1

para programadores

6060 Linux+ 1/2004

Nuestro programade mensajería instantáneaMarek Sawerwain

Python, de modo parecido a Perl, además del lenguaje en sí, ofrece una amplia selección depaquetes adicionales que reali-

zan varias operaciones. PYRO es uno de ellos.

PYRO es una librería escrita, desde luego, sólo y exclusivamente en Python, que permite crear aplicaciones dispersas. No se limita a una única plataforma, ya que exige solamente Python y el acceso al protocolo TCP/IP. La idea de esta tec-nología es similar a la de CORBA o RMI, pero mucho menos complicada. Basta con decir que el archivo con la librería ocupa poco más de 180 kB. Un tamaño pequeño y unas exigencias reducidas no limitan las posibilidades que ofrece esta librería. Por ejemplo, es posible realizar una migración dinámica de objetos (para ser más especí-fico: su código de bytes) entre los servido-res existentes.

Las aplicaciones dispersas nos hacen pensar en tecnologías más avanzadas, sin embargo, nadie prohibe su aplicación en otros campos, p.e. para preparar scripts dispersos o sencillas aplicaciones. En este artículo me gustaría presentar como ejemplo una aplicación simple escrita en PYRO.

Elaboramos un programa de mensajería instantáneaPython es un lenguaje muy bueno (aunque sea un lenguaje de script y no el compi-lado) y a la vez un rico entorno de ejecu-ción sea cual fuere la plataforma empleada de hardware y de programas. Es una

propiedad característica de Java. Significa que se puede utilizar Python para elaborar aplicaciones completas y que, además, es bastante fácil trasladarlas entre platafor-mas.

Con ayuda de este artículo, vamos a escribir nuestro propio programa de mensajería instantánea (Figura 1) similar a los populares ICQ o Jabber.

Para simplificar la creación del pro-grama, vamos a utilizar la librería PYRO para transmitir los mensajes entre usua-rios. Desde luego, nosotros mismos pode-mos comunicarnos por la red, pero PYRO simplificará este problema de manera significativa.

Para preparar la interfaz gráfica uti-lizaremos GTK+, o sea, el paquete PyGtk. Las respectivas ventanas, aunque no son muy complicadas, han sido creadas con el programa GLADE-2.

En resumen, para elaborar nuestra aplicación necesitamos dos librerías adi-cionales: PYRO y PyGtk.

Arquitectura del programaEl programa de mensajería instantánea elaborado por nosotros es en realidad un programa disperso.

Existe un objeto central que imple-menta todos los métodos necesarios para transmitir los mensajes: es nuestro servidor de comunicación. La aplicación se llama TalkSrv (desde luego, el nombre es libre). Los correspondientes clientes se conectan sólo y exclusivamente a un servidor de comunicación determinado. Hablando de otra manera, es una topolo-

En el DVDDentro del DVD se encuen-

tran los ficheros de fuentes del programa, todas las librerías

necesarias, así como los listados del artículo.

Page 63: LiNUX+ DVD 1

61www.lpmagazine.org

para programadorespyro

gía en estrella, presentada en forma esque-mática en la Figura 2.

El servidor principal de comunicación no es el único que vamos a aplicar. Hay también otros dos adicionales, relaciona-dos con la infraestructura de PYRO.

El primer servidor, muy importante para nuestro programa, es el servidor de eventos (event server). Cumple una función informativa, p.e. informa a un cliente determinado que tiene un mensaje nuevo. El cliente consigue la conexión con el servidor de comunicación y conecta al

servidor de eventos, más específicamente, se inscribe en un canal apropiado donde puede recibir los mensajes dirigidos directamente a él. Se inscribe también en un canal del servidor donde el servidor de comunicación notifica unos mensajes generales dirigidos a todos los clientes.

En el curso del inicio de la conexión con el servidor de comunicación o con el servidor de eventos, utilizamos el servidor de nombres que cumple la función de un servidor auxiliar. Indica las direcciones IP de los dos servidores.

PYRO emplea mensajes tipo broadcast de la red TCP/IP, por eso, la red en la que va a trabajar nuestro programa de mensa-jería tiene que disponer de viabilidad para enviar este tipo de mensajes. Si queremos que nuestro programa funcione en una red real, tenemos que señalar las direccio-nes URI, indicando las máquinas directas. PYRO no exige las direcciones en cifras, pues también se pueden utilizar direccio-nes de símbolos.

Empezamos desde el final, es decir, por el servidorEn el Listado 1, como también en el DVD anexo a la revista, se presenta la imple-mentación del servidor de comunicación. La mayoría del código es la clase TalkSrv. Procede de dos clases de base: de la clase Pyro.core.ObjBase, que es una base de

Figura 2. Un esquema general/topología del cliente de mensajería creado

Modo de instalar libre-rías PYRO y PyGtkLa instalación de la librería PyGTK desde luego exige la existencia de GTK+ y de Python, de manera óptima en la versión 2.2 o la última 2.3. Merece la pena instalar el paquete GtkGLArea: así obtendremos el acceso a la librería OpenGL. PyGtk tiene un script confi-gure, por eso la configuración y la com-pilación, como siempre en estos casos, se limita a tres comandos: ./configure ; make ; make install. No es nece-sario indicar con ayuda de --prefix el directorio porque el script detectará de manera independiente el Python insta-lado y colocará el paquete PyGtk en sus directorios.

La instalación de la librería PYRO se realiza de manera un poco dis-tinta. Con ayuda del script setup.py instalamos el paquete, realizando el siguiente comando: python setup.py

install. Al principio, se nos pregunta si queremos instalar unos scripts adi-cionales que inician el funcionamiento de los servidores de nombres y de eventos. Por supuesto, lo aprobamos. A continuación, tenemos que indicar el directorio al que se copiarán los scripts. Lo mejor es escribir /usr/bin. Luego se procederá a la compilación de ficheros e instalación del paquete. Merece la pena mencionar que junto con los scripts ns y es, que arrancan los servidores, existe una herramienta gráfica xnsc, con la cual se puede visualizar los servidores arrancados y finalizar o reiniciar dichos servidores de nombres.

Figura 1. Una conversación realizada por medio de nuestro programa de mensajería

Page 64: LiNUX+ DVD 1

para programadores

6262 Linux+ 1/2004

Listado 1. Código del servidor de comunicación

#! /usr/bin/python

import sys

import Pyro.core

import Pyro.naming

from Pyro.EventService.Clients import Publisher

class TalkSrv(Pyro.core.ObjBase, Publisher):

def __init__(self):

Pyro.core.ObjBase.__init__(self)

Publisher.__init__(self)

self.msg={}

self.list=[]

def InfoText(self):

print “llamamiento lnfoText”

return “TalkServer v1”

def GetActiveList(self):

return self.list

def RegisterName(self, name):

if self.list.count(name)==0:

self.list.append(name)

self.publish(“server”, name+“ register”);

print “llamamiento RegisterName conseguido”, name

return 0

else:

print “llamamiento RegisterName no conseguido

(id está en el listado)”, name

return -1

def UnregisterName(self, name):

if self.list.count(name)==1:

self.list.remove(name)

self.publish(“server”, name+“ unregister”);

print “llamamiento UnregisterName conseguido”, name

return 0

else:

print “llamamiento UnregisterName no conseguido

(id no está en el listado)”, name

return -1

def UpdateName(self, oldname, newname):

self.list.remove(oldname)

if self.list.count(name)==0:

self.list.append(name)

self.publish(“server”, name+“ register”);

print “llamamiento UpdateName conseguido”, name

return 0

else:

print “llamamiento UpdateName no conseguido

(nuevo id está en el listado)”, name

return -1

def SendMsg(self, mesg, to_name, from_name):

print “llamamiento SendMsg”,mesg,’ a:’,to_name,’

de:’,from_name;

self.msg[to_name]=[mesg, from_name]

self.publish(to_name, “has_msg”)

return 0;

def GetMsg(self, name):

print “llamamiento GetMsg”, name

if self.msg.has_key(name):

tmp=self.msg[name]

del self.msg[name]

return tmp

else:

return Null

Pyro.core.initServer()

ns=Pyro.naming.NameServerLocator().getNS()

daemon=Pyro.core.Daemon()

daemon.useNameServer(ns)

uri=daemon.connect(TalkSrv(), “TalkSrv”)

print “TalkServer está dispuesto.”

daemon.requestLoop()

todos los objetos remotos, y de la clase Publisher, que representa el servidor de eventos. Utilizando los métodos de esta última (más concretamente, el método publish) vamos a situar los mensajes en el servidor de eventos.

El proceso de arrancar el servidor exige un par de líneas de código que en la mayoría de los casos serán muy parecidas, sin reparar en el servidor empleado. Inicia-mos pues el sistema, encontramos el servi-dor de nombres y obligamos a emplearlo, registramos nuestra clase y arrancamos el bucle principal (Listado 2).

Estos son todos los pasos principales que hay que realizar para posibilitar el uso de un dispositivo remoto. Es digno de mencionar que el objeto remoto obte-nido de este modo está compartido por todos los clientes. En el caso de nuestro

programa de mensajería, este tipo de implementación del objeto remoto es imprescindible.

La clase TalkSrv realiza los siguientes pasos, relacionados con el soporte de men-sajes transmitidos. Primero, el usuario debería registrar su identificador en el ser-vidor de comunicación. Se lo realiza por medio del método RegisterName. Durante el proceso de desconexión del servidor, el programa cliente realiza una operación inversa a través del método Unregister-Name. La llamada a estos métodos provoca también el envío de un mensaje al servidor de eventos. Por eso, el software del cliente puede actualizar su listado de usuarios activos.

Disponemos también del método UpdateName, destinado a cambiar el iden-tificador.

Todos los identificadores se guardan en un listado que se puede descargar desde el servidor con el método GetActi-veList. En este listado siempre aparecen las personas conectadas al servidor en un momento dado.

La transmisión de mensajes se rea-liza con ayuda de dos métodos: SendMsg y GetMsg. El primero, como su nombre indica, permite transmitir el mensaje del cliente al servidor. La llamada de este método ocasiona también la transmisión del mensaje al servidor de eventos, por eso, se informará a un cliente oportuno de que hay un mensaje para él. En nuestro pro-grama, si el cliente recibe una información así, automáticamente se invoca el método GetMsg, o sea, se descarga el mensaje regis-trado en el servidor. Como vemos, los men-sajes se colocan en el directorio msg, pero el

Page 65: LiNUX+ DVD 1

63www.lpmagazine.org

para programadorespyro

servidor no los guarda; cuando llegue el siguiente mensaje, el anterior será borrado.

La implementación de los métodos descritos arriba no es difícil, p.e. el regis-tro del identificador y la verificación de si alguien no lo ha registrado antes se limita a verificar si en el listado ya se encuentra un nombre así (Listado 3).

El proceso de envío del mensaje al servidor consiste en una sola llamada del método publish, donde en el primer argu-mento, colocamos el tema y en el segundo, el contenido del mensaje:

self.publish(“server”, name+” register”);

La inicialización correcta de la clase TalkSrv es esencial, por eso en el cons-tructor __init__ hay que inicializar las clases de base y nuestras variables auxiliares: list con usuarios activos y la variable msg, es decir, el catá-logo en el cual guardamos mensajes (Listado 4).

La librería PYRO es tan flexible que permitiría el empleo de una instancia del servidor de nombres y el de even-tos junto al objeto TalkSrv en un solo script. No obstante, esto haría nuestro script más complicado, por eso tenemos que arrancar ambos servidores auxi-liares por sí solos; lo mejor es hacerlo desde consolas separadas para que se observe bien los posibles comunicados sobre errores.

Al principio arrancamos el servidor de nombres (comando ns), a continuación, el servidor de eventos (comando es). Cuando estos dos servidores funcionan, sólo nos queda arrancar nuestro servidor de comu-nicación.

La Figura 2 presenta esta situación.

Programa del clienteEl script entero que implementa el servi-dor de comunicación se escribie bastante rápido y ocupa muy poco espacio. Aunque ofrece tan sólo una función básica: lleva a cabo la transmisión de mensajes en su totalidad.

La creación del cliente producirá más problemas (Listado 5). El cliente fun-ciona en el entorno X Window y utiliza la librería GTK+. No ocasionará problemas la comunicación con el servidor (la llamada a los métodos del objeto remoto no está en contradicción con el tratamiento de datos sobre eventos GTK+), sino la recepción de mensajes desde el servidor. Una solución es el empleo de un hilo independiente. Por suerte, GTK+ y PyGTK funcio-nan bien con hilos, sobre todo sicreamos nuestra propia señal y laconectamos con la ventana principal de nuestra aplicación. Esto facilitará

Listado 2. Arranque del sistema, localización del servidor de nombres , “orden” de su uso, registro de la clase y arranque del bucle principal

Pyro.core.initServer()

ns=Pyro.naming.NameServerLocator().getNS()

daemon=Pyro.core.Daemon()

daemon.useNameServer(ns)

uri=daemon.connect(TalkSrv(), “TalkSrv”)

daemon.requestLoop()

Listado 3. Registro del identificador y verificación de si un identificador determinado no se ha registrado todavía

def RegisterName(self, name):

if self.list.count(name)==0:

self.list.append(name)

self.publish(“server”, name+” register”);

print “llamamiento RegisterName conseguido”, name

return 0

else:

print “llamamiento RegisterName no conseguido (id está en el listado)”, name

return -1

Listado 4. Constructor de la clase TalkSrv

def __init__(self): Pyro.core.ObjBase.__init__(self) Publisher.__init__(self) self.msg={} self.list=[]

Figura 3. Principales eventos que son transformados por el cliente y el servidor

Page 66: LiNUX+ DVD 1

para programadores

6464 Linux+ 1/2004

Listado 5. Código del cliente

#! /usr/bin/python

import sysfrom Pyro.ext import remotefrom Pyro.EventService.Clients import Subscriberfrom threading import Threadimport gobjectimport gtkimport gtk.glade# variables globales

your_nick=’’; talks={}# funciones de retorno

def UpdateActiveList(): person_list_data.clear() for i in TalkSrv.GetActiveList(): if i!=your_nick: iter= person_list_data.append() person_list_data.set(iter, 0, i)def OnEndBTN(*args): TalkSrv.UnregisterName(your_nick) ; sys.exit()def OnTalkBTN(*args): global talks ; col= person_list.get_cursor() if col!=None: iter= person_list_data.get_iter(col[0]) active_nick= person_list_data.get_value(iter, 0) t=Talker() ; talks[active_nick]=t t.run(active_nick)def OnCreateTalker(*args): global talks ; active_nick=args[2] t=Talker() ; talks[active_nick]=t iter_end=t.RcvText.get_buffer().get_end_iter() t.RcvText.get_buffer().insert(iter_end, args[3]+’\n’) t.run(active_nick)def OnEndNickBTN(*args): global your_nick, el your_nick=NickEDT.get_text() if TalkSrv.RegisterName(your_nick)==0: el=EventListener() ; el.name=your_nick el.start() ; nickwin.hide() mainwin.show() ; UpdateActiveList() else: dialog=gtk.MessageDialog(nickwin, gtk.DIALOG_MODAL | gtk.DIALOG_DESTROY_WITH_PARENT,

gtk.MESSAGE_INFO, gtk.BUTTONS_OK,

“Este nick pertenece a otra persona,”) dialog.run() dialog.destroy()# clase que soporta los eventos a venir

class TalkSrvEvent(Subscriber): def __init__(self): Subscriber.__init__(self) def event(self, event): global talks if event.subject==’server’ andS event.msg==your_nick+” unregister”: self.abort() return if event.subject==’server’: UpdateActiveList() if event.subject==your_nick and event.msg==’has_msg’: msg=TalkSrv.GetMsg(your_nick) active_nick=msg[1] if not talks.has_key(active_nick): mainwin.emit(“create_talker”,mainwin,active_

nick, msg[0]) else: t=talks[active_nick]

iter_end=t.RcvText.get_buffer().get_end_iter() t.RcvText.get_buffer().insert(iter_end, msg[0]+’\n’) t.talkwin.show()class EventListener(Thread): def __init__(self): Thread.__init__(self) ; self.setDaemon(1) ; self.name=’’ def run(self): self.listener = TalkSrvEvent() self.pattern = self.name + “|server” self.listener.subscribeMatch(self.pattern) self.listener.listen()# clase responsable de ventana de conversación

class Talker: def __init__(self): self.talk_win_xml=gtk.glade.XML(‘TalkWin.glade’) self.talkwin=self.talk_win_xml.get_widget(“TalkWin”) self.EndTalkBTN=self.talk_win_xml.get_widget(“EndTalkBTN”) self.SendTextBTN=self.talk_win_xml.get_widget(“SendTextBTN”) self.RcvText=self.talk_win_xml.get_widget(“RcvText”) self.SendText=self.talk_win_xml.get_widget(“SendText”) def OnEndTalkBTN(self, *args): self.talkwin.hide() def OnSendTextBTN(self, *args): self.iter_begin=self.SendText.get_buffer().get_start_iter() self.iter_end=self.SendText.get_buffer().get_end_iter() self.text=self.SendText.get_buffer().get_text(self.iter_S

begin, self.iter_end) TalkSrv.SendMsg(self.text, self.to_nick, your_nick) self.SendText.get_buffer().delete(self.iter_begin,S self.iter_end) def run(self,name): self.to_nick=name self.talkwin.set_title(“Conversación con”+name) self.EndTalkBTN.connect(‘clicked’, self.OnEndTalkBTN) self.SendTextBTN.connect(‘clicked’, self.OnSendTextBTN) self.talkwin.show()# importación de los ficheros glade

main_win_xml=gtk.glade.XML(‘MainWin.glade’)nick_win_xml=gtk.glade.XML(‘NickWin.glade’)mainwin=main_win_xml.get_widget(“MainWin”)EndBTN=main_win_xml.get_widget(“EndBTN”)lista_osob=main_win_xml.get_widget(“ListaPersonas”)TalkBTN=main_win_xml.get_widget(“TalkBTN”)nickwin=nick_win_xml.get_widget(“NickWin”)EndNickBTN=nick_win_xml.get_widget(“EndNickWinBTN”)NickEDT=nick_win_xml.get_widget(“NickEDT”)mySigID=gobject.signal_new(“create_talker”, gtk.Window,S gobject.SIGNAL_RUN_LAST, gobject.TYPE_BOOLEAN, (gtk.Window,S

gobject.TYPE_STRING, gobject.TYPE_STRING))# conexión de señales

mainwin.connect(‘destroy’, OnEndBTN)mainwin.connect(‘create_talker’, OnCreateTalker)EndBTN.connect(‘clicked’, OnEndBTN)TalkBTN.connect(‘clicked’, OnTalkBTN)EndNickBTN.connect(‘clicked’, OnEndNickBTN)person_list_data=gtk.ListStore(gobject.TYPE_STRING)person_list.set_model(person_list_data)nick_column=gtk.TreeViewColumn(‘Nick\’s’,S

gtk.CellRendererText(), text=0)person_list.append_column(nick_column)mainwin.hide()TalkSrv=remote.get_remote_object(‘TalkSrv’)UpdateActiveList()nickwin.show()while gtk.main_iteration_do(False): pass

Page 67: LiNUX+ DVD 1

65www.lpmagazine.org

para programadorespyro

la transmisión de la señal desde el nivel de hilo al bucle principal de aplicación GTK+.

El funcionamiento de nuestro pro-grama es el siguiente: el primer paso es la creación de la ventana principal y de la ventana en la cual se introduce el iden-tificador. Después de conectar el soporte de señales, la ventana principal se oculta y nuestro cliente pide el identificador y procura registrarlo. Después del registro, se activa el hilo, en el que se reciben los mensajes desde el servidor de eventos y se muestra la ventana principal. La ventana de conversación aparece en dos casos: cuando el usua-rio selecciona a una persona activa del listado y pulsa el botón Talk o cuando el programa recibe el comu-nicado de que hay un mensaje nuevo. Después de leer el mensaje, se lo coloca en la ventana de conversación, que dispone de su propia clase con el nombre Talker.

Construimos la interfazEs la tarea más fácil, ya que utilizamos el programa GLADE-2 en su versión para GTK+ 2.0. En la documentación de ayuda que se encuentra en el DVD las ventanas están registradas en ficheros separados, pero se puede, como en la Figura 3, colocar las tres ventanas en un solo pro-yecto.

Antes de empezar a construir la interfaz, necesitamos dos variables:

your_nick=’’

talks={}

En la primera variable se guarda nuestro “nick”, es decir, el identificador. En cambio, la segunda variable (tipo catálogo) cumple una función muy importante: en ella se guardan las ventanas de conversación con otros usuarios.

La descarga de las ventanas, la conexión a las señales o la visualización de cualquier ventana es un procedimiento simple que se limita a unas cuantas líneas del código.

La descarga de la ventana principal y de la ventana, en la cual solicitamos nues-tro identificador (NickWin), se realiza de modo siguiente:

main_win_xml=gtk.glade.XML(‘MainWin.glade’)

nick_win_xml=gtk.glade.XML(‘NickWin.glade’)

La descarga de widgets o conexión de señales es propio de PyGTK (Lista-do 6).

El único elemento de GUI que hay que configurar, es el listado de personas activas. Es un widget tipo GtkTreeView, pero este código también es caracterí-stico de la aplicación GTK+. Todo el pro-ceso está compuesto de tan sólo cuatro líneas. En la primera, creamos el listado en el que guardamos las series de señales:

person_list_data=gtk.ListStore S

(gobject.TYPE_STRING)

luego unimos nuestro listado con el widget person_list:

person_list.set_model(person_list_data)

ahora elaboramos otra columna que visua-liza el texto y la agregamos al widget:

nick_column=gtk.TreeViewColumn(‘Nick\’s’,

gtk.CellRendererText(), text=0)

person_list.append_column(nick_column)

Listado 6. Ejemplos de descarga y de conexión de señales en PyGTK

person_list=main_win_xml.get_widget(“ListaPersonas”) nickwin=nick_win_xml.get_S

widget(“NickWin”)

EndNickBTN=nick_win_xml.get_widget(“EndNickWinBTN”)

NickEDT=nick_win_xml.get_widget(“NickEDT”)

EndNickBTN.connect(“clicked”, OnEndNickBTN)

Listado 7. Creación de una nueva señal.

mySigID=gobject.signal_new(“create_S

talker”,

gtk.Window, gobject.SIGNAL_RUN_LAST,

gobject.TYPE_BOOLEAN,

(gtk.Window, gobject.TYPE_STRING,

gobject.TYPE_STRING))

Listado 8. Fragmento del método run con el que se realiza la operación de inscribirse en mensajes determinados.

self.pattern = self.name + “|server”

self.listener.subscribeMatch(self.S

pattern)

self.listener.listen()

Figura 4. Arrancamos el servidor de nombres, el de eventos y el servidor de comunicación

Page 68: LiNUX+ DVD 1

para programadores

6666 Linux+ 1/2004

La creación de una nueva señal es muy importante. Con ayuda de esta señal se informará a la ventana principal de la recepción de un nuevo mensaje. En el soporte de esta señal, creare-mos una ventana nueva (si la ventana todavía no se ha grabado en el catálo-go) o mostraremos las ventanas exis-tentes.

En la función signal_new tenemos cuatro argumentos (Listado 7). El primer argumento es el nombre de la señal. El segundo en el que aparece el valor gobject.SIGNAL_RUN_LAST significa elorden de llamar a las señales, en el momento cuando se informa a la ventana sobre su recepción. El valor dado significa que nuestra señal se soportará casi la última (se llama la tercera etapa del soporte de la señal). En el tercer argumento defi-nimos el valor de la función de soporte create_talker (es un valorlógico). En el último, cuarto argu-mento describimos el aspecto delos argumentos de la función de retorno. Son la clase de la ventana

y dos argumentos tipo string. Elprimero de ellos indica el nick dela persona que remite el mensaje y el segundo argumento, el contenido del mensaje.

A la señal creada añadimos la fun-ción de retorno para la ventana principal de la aplicación mainwin:

mainwin.connect(‘create_talker’, S

OnCreateTalker)

Gracias al uso del programa GLADE para construir interfaces, el proceso de su creación se redujo al mínimo y la gran parte del código en el pro-grama de mensajería, respecto a la inter-faz, se limita a la conexión del soportede señales a los widgets.

Registro del identificadorLa obtención de referencias para el objeto remoto antecede a todas la ope-raciones relacionadas con el servidor de comunicación. PYRO simplifica este proceso. Gracias al empleo del servidor

de nombres, basta con una sóla línea de código:

TalkSrv=remote.get_remote_object(‘TalkSrv’)

Para que el código sea más corto, en nuestro programa de mensajería no se aplican excepciones para detectar situaciones erróneas. Por eso, si no conseguimos referencias, el programa de mensajería no arrancará y en la con-sola aparecerá información de error. Sin embargo, si todo está bien, podremos registrar nuestro identificador. El regis-tro se realiza con la función OnEndNick-BTN:

TalkSrv.RegisterName(your_nick)

El código completo de esta función se encuentra en el Listado 5. Allí ini-ciamos también el hilo que recibe los eventos.

Tratamiento de mensajes recibidos desde el servidor de eventos La clase que procesa los eventos de manera directa se llama TalkSrvEvent y hereda de la clase PYRO con el nombre Subscriber. En ella hay que definir el método event. Se la llama cuando llega el mensaje. Vale la pena subrayar que TalkSrvEvent es una parte integrante de la clase EventListener, en la cual se inscribe en tipos de mensajes deter-minados. El servidor de eventos remite varios comunicados, por eso nuestro cliente se inscribe sólo en los mensajes que tengan el texto server en el tema o el valor de nuestro identificador. En este procedimiento utilizamos una expresión regular, de ahí la señal pipe (Listado 8).

El hilo, después de su iniciación, llama al método run. El último comando de este método inicia la acción de escu-char; el hilo funcionará hasta que en la clase TalkSrvEvent se llame el método abort(). Esto provocará el cese del trabajo del objeto que escucha y, en consecuen-cia, el final del trabajo del hilo.

Como ya se ha dicho antes, cuando finalizamos el trabajo del cliente, se quita nuestro identificador desde el servidor de comunicación. En resultado, nuestro cliente recibe el mensaje desde el ser-vidor de eventos de que la persona con un determinado identificador ha aban-

Listado 9. Método abort – interrupción del funcionamiento del objeto que escucha

def event(self, event): if event.subject==’server’ and event.msg==your_nick+” unregister”: self.abort() return

Figura 5. Ejemplo de colocación de tres ventanas en un sólo proyecto

Page 69: LiNUX+ DVD 1

67www.lpmagazine.org

para programadorespyro

donado el sistema. Si comparamos este identificador con el nuestro (la variable your_nick) y son iguales, podemos, por medio del método abort, interrumpir el funcionamiento del objeto que escucha. La función event es como en el Listado 9.

Todos los mensajes tipo server con-ciernen al registro de usuarios, por ello, si no se realiza la susodicha función if, nuestro soporte de eventos actualizará el listado de personas activas:

if event.subject==’server’:

UpdateActiveList()

El último evento es la recepción del men-saje:

msg=TalkSrv.GetMsg(your_nick)

El mensaje recibido debería ubicarse en la ventana de conversación. La variable msg, en realidad, es una lista de dos elementos. Bajo el índice cero se halla el contenido del mensaje y, bajo el primer índice, el identificador del usuario que lo remitió.

Hay dos opciones relacionadas con la ventana. La primera: la ventana todavía no existe y hay que construirla, enviando la señal create_talker. La segunda: si la ventana ha sido creada antes, basta con agregar el texto recibido al widget de texto (GtkTextView) y hacer visible la ventana. Para reconocer si la ventana ha sido creada antes, utiliza-mos el catálogo. Verificamos si existe una clave con el valor equivalente al identi-ficador del usuario con el que hablamos (Listado 10).

Para añadir el texto recibido, hay que leer el iterador de la memoria del texto y luego utilizar el método insert. Su primer argumento es el iterador. Como se aprecia en el ejemplo anterior, es un iterador que indica el final del

texto. En cambio, en el segundo argu-mento indicamos el texto que queremos agregar.

Ventana de conversaciónEn la clase Talker, que representa la ven-tana de conversación, gran parte del código está relacionada a la construc-ción de la interfaz y la agregación de señales. Hay dos funciones importantes de retorno, relacionadas con dos boto-nes. La primera (OnEndTalkBTN) aparece cuando el usuario pulsa el botón End. En este caso la ventana sólo se oculta: self.talkwin.hide(). No se elimina el campo donde se hallan los mensajes reci-bidos. Cuando aparece nuevo mensaje, con el uso del catálogo talks, verificamos si no se ha abierto la ventana anterior-mente y agregamos el mensaje recién recibido a los existentes.

Un papel mucho más importante es el que cumple la función OnSendTextBTN, relacionada con el botón Send. Tenemos que volver a utilizar los iteradores para leer el texto que se encuentra en el widget SendText. Puesto que leemos el texto entero, necesitamos los iteradores del prin-cipio y del final:

self.iter_begin=self.SendTextS

.get_buffer().get_start_iter()

self.iter_end=self.SendTextS

.get_buffer().get_end_iter()

Cuando disponemos de iteradores, la descarga del texto consiste en llamar la función get_text:

self.text=self.SendText.get_buffer()S

.get_text(self.iter_begin, self.iter_end)

El proceso de enviar el mensaje consiste en llamar al método SendMsg desde el objeto TalkSrv. Además, elimina-mos el contenido de SendText con la fun-ción delete, en la que hay que indicar

los límites. En nuestro caso son iterado-res del principio y del final antes leídos.

TalkSrv.SendMsg(self.text,S

self.to_nick, your_nick)

self.SendText.get_buffer()S

.delete(self.iter_begin, self.iter_end)

ResumenEn el programa de mensajería instan-tánea, como en cualquier otro programa,siempre se puede corregir algo. Pode-mos utilizar, como en otros programas de mensajería, iconos o podemos for-matear el texto. No será difícil, puestoque el componente GtkTextView nosda las mismas posibilidades. El textoen sí puede ser codificado y el pro-ceso de registro y el de transmisión de mensajes debería ser más seguro, por lo menos, poder introducir una contraseña. En esta versión, el servidor recibirá sin impedimientos los mensajes de todos los usuarios porque no hay procedimiento de registro. Además, por medio de la eliminación del servidor de nombres y de la asignación de una dirección invariable URI para los servidores de nombres y de eventos, podemos adaptar el resultado de nuestro trabajo para que funcione en Internet; entonces obtendre-mos un programa de mensajería instan-tánea totalmente funcional y, lo que es más importante, escrito por nosotros mismos.

Listado 10. Creación de una ventana de conversación o agregación del mensaje recibido del interlocutor.

active_nick=msg[1]if not talks.has_key(active_nick): mainwin.emit(“create_talker”,mainwin,active_nick, msg[0])else: t=talks[active_nick] iter_end=t.RcvText.get_buffer().get_end_iter() t.RcvText.get_buffer().insert(iter_end, msg[0]+’\n’) t.talkwin.show()

En Internet:

• Página principal del proyecto PYRO: http://pyro.sourceforge.net/• Página principal del proyecto PyGTK: http://www.daa.com.au/~james/ software/pygtk/

Figura 6. Página principal del proyecto PyGTK

Page 70: LiNUX+ DVD 1

para jugadores

68 Linux+ 1/2004

America’s ArmyKrzysztof Wolski

¿Has soñado con ingresar en el Ejército, pero no han aceptado tu candidatura? ¿O, al contrario, has hecho todo lo posible para

evitarlo, pero siempre has tenido ganas de ver como es la vida de un soldado? America’s Army es un juego que te per-mitirá convertirte en un soldado de las Fuerzas Armadas Americanas. Podrás participar en un entrenamiento y, des-pués de su terminación satisfactoria, tomar parte en varias misiones difíciles e interesantes. Podrás jugar con enemi-gos y compañeros reales, con quienes te comunicarás a través de Internet. Este tipo de sensaciones y muchas otras (p.e. estancia en una cárcel militar por haber tirado por accidente a un soldado de tu grupo) te suministrará el juego descrito en este artículo.

America’s Army forma parte de una familia de juegos tipo FPP, es decir, el partido se lo observa con los ojos del héroe. Los jugadores pueden conseguir el juego totalmente gratis.

InstalaciónEl juego se puede descargar desde la página principal http://www.americasarmy.com/downloads/. Por des-gracia, su volúmen representa un obstáculo porque es un fichero com-primido de tamaño de más de 650 MB. Para los que disponen de una conexión permanente, el tiempo puede suponer el único obstáculo para decargarlo. El juego es accesible en versiones para los sistemas Linux, Windows y Macintosh. Desde luego, a nosotros nos interesa la versión para Linux.

Después de descargar el fichero, hay que arrancarlo (sh ./myops200-lnx.run) y seguir las instrucciones. El juego des-comprimido e instalado ocupa casi 1.6 GB de espacio en el disco, y para funcio-nar requiere un equipo que cumpla con

los siguientes requisitos mínimos:

• procesador Pentium 1.0 GHz o compa-tible;

• 256 MB de memoria RAM;• tarjeta gráfica con memoria de 64 MB y

con soporte de 3D;• CD-ROM;• módem u otro tipo de conexión con Internet

PilotajeLas teclas básicas con las que se puede mover el soldado en el juego son las siguientes:

• Shift – andar o correr• pulsar dos veces en W/Alt – sprint• C – ponerse de cuclillas (si presiona-

mos por segunda vez, volvemos a la posición de pie)

• X – arrastrarse (si presionamos por segunda vez, volvemos a la posición de pie)

• A – moverse a la izquierda • D – moverse a la derecha• S – retroceder• ESPACIO – saltar• T – hablar con otros participantes del

juego (chat)• Botón izquierdo del ratón – disparar• Botón derecho del ratón – cambiar el

modo de funcionamiento de fusil (tiro singular/ráfaga)

• Movimientos con ratón – volver la cara

• R – recargar el arma • F – desbloquear el fusil que dejó de

funcionar • Z – acercarse, cuando apuntamos

con el fusil• 1 – fusil• 2 – granada • 3 – granada de humo• 4 – granada ensordecedora• H – quitar el seguro de la granada• M – llamar al médico

DVDDespués de arrancar la distribu-

ción Linux+ Live DVD desde el menu Linux+/

Games se podrá acceder a la posición que arranca el juego

America’s Army.

Page 71: LiNUX+ DVD 1

69www.lpmagazine.org

para jugadoresamerica’s army

Iniciamos el juegoAntes de empezar el juego, os recomiendo visitar otra vez la página principal del juego; y más precisamente la dirección http://www.americasarmy.com/register.php Merece la pena registrarnos en la página porque de este modo tenemos la posi-bilidad de guardar nuestros resultados obtenidos en el juego en el servidor. El identificador y que se nos facilite durante el registro la contraseña hay que escribir-los en los campos determinados, después de pulsar el botón Personal Jacket.

Antes de empezar el juego con los enemigos, vale la pena prepararnos. Hacemos click en el botón Training y seleccionamos el tipo de entrenamiento que vamos a organizar para nuestro sol-dado. Todos los tipos de entrenamiento están descritos. Por ejemplo, el primer entrenamiento es el aprendizaje de pre-cisión en la puntería: el soldado aprende a tirar en los blancos estáticos. La tarea consiste en dar en por lo menos 23 de 40 blancos. Disponemos de 2 cargadores: cada uno de ellos con 20 cartuchos. Desde luego, durante todo el entrenamiento nos instruye un soldado con grado militar superior al nuestro, y nos explica paso a paso lo que hay que hacer. Las teclas más útiles en el juego se han ubicado en el recuadro Dirección.

Después de terminar con éxito el entrenamiento, podemos remitir el resul-tado obtenido al servidor.

El entrenamiento es una buena preparación para el partido. El acceso a las misiones se consigue mediante el botón Deployment. En ese lugar podemos escoger entre el modo Multiplayer y la misión que queremos jugar: Missions. Como en el entrenamiento, todas las misiones están descritas. Para empezar la misión, hay que hacer click en el botón Deploy.

Sin embargo, volvamos al modo mul-tiplayer, donde podemos seleccionar entre el juego por Internet (Internet) o por la red local (LAN). Podemos también ajustar el

filtro de servidores (decidimos qué servi-dores se mostrarán por pantalla (Filtro)) o chatear (Chat).

Si quremos jugar en Internet, tenemos que pulsar el botón Refresh List: buscará servidores con los que podremos conectarnos. Con cada uno de ellos aparece un símbolo que define el tipo de servidor, p.e el servidor oficial de autores del juego.

En el listado de servidores, junto con sus denominaciones vamos a encontrar una cantidad máxima de usuarios y una cantidad de usuarios que todavía puede participar en el juego. Después de selec-cionar el servidor pulsamos el botón Join y después de un momento nos conectare-mos con el servidor.

Si se ha realizado la conexión, tenemos que decidirnos a qué grupo queremos unirnos. Además, podemos también familiarizarnos con el objetivo de la misión (y con su identificador), con los enemigos y también con la descripción de la situación. Aparte de esto, podemos conocer los resultados obtenidos hasta ahora. Si pulsamos el botón Autoselect, el servidor puede seleccionar un grupo en vez de nosotros.

En el menú principal del juego vamos a encontrar también la configuración del juego. Allí se hallan las opciones: Video (relacionada con la resolución de la pantalla del juego, el brillo, el contraste, etc.), Details (detalles gráficos), Audio (configuración del sonido), Network (tipo de conexión con Internet), Controls (modos de pilotar en el juego), Input (regulación de sensibilidad del ratón) y Hud (regulación del aspecto de pantalla del juego).

ResumenAmerica’s Army es un juego estupendo. Podemos jugar en Internet, por eso nunca nos aburriremos con él. Podemos también jugar en la red local con nuestros amigos, sin demoras provocadas por el acceso a unos servidores sobrecargados.

El juego incluye unos gráficos cuida-dos y unos sonidos muy realistas. En un ordenador provisto del procesador Athlon 1,4 GHz, tarjeta gráfica GeForce2 64MB y 512 MB RAM se puede jugar sin ningún impedimento a una resolución de 800x600. Si la cambiamos a una resolución más alta, aparecen problemas con los gráficos y con el sonido.

Es un juego más que prueba que para Linux también se construyen buenos juegos, como para Windows.

Figura 1. Aspecto de la pantalla del juego

Juego en la red localLa preparación de nuestro propio servidor del juego America’s Army es una actividad realmente muy sen-cilla, que no debería ocasionar problemas incluso a un usuario princi-pante del ordenador. Arrancamosel servidor desde la consoladel sistema, por eso podremos jugar cuando al mismo tiempo nuestro servi-dor esté funcionando. Merece la pena empezar echando un vistazo en el listado de mapas que podemos utili-zar. Con este objetivo realizamos el comando:

ls /lugar_instalación_juego/Maps/

Para arrancar el servidor en una red local, hay que efectuar los siguientes comandos:

cd /lugar_con_instalación_juego/Sistema

./server-bin lan nombre_mapa.aao

Para arrancar el servidor global (accesible en Internet), en vez del parámetro lan hay que introducir el parámetro global. Apare-cerá la línea siguiente:

./server-bin global nombre_mapa.aao

Si queremos jugar en la red local, y no tenemos una conexión con Internet (el juego intentará conectarse con el servidor oficial del fabricante), hay que arrancar el juego (se creará el directorio .armyops200con ficheros de configuración) y, a con-tinuación, desconectarlo (para editar los ficheros de configuración). Nos ocupa-remos de la modificación del fichero que permite jugar sin tener conexión con Internet. Con este objetivo realizamos el siguiente comando:

mcedit /home/tu_nombre_usuario/.armyops200/

Sistema/ArmyOps.ini

Nos interesa la variable ServerSetting=AGP_GameMultiPlayer.bRequireAuthorization bRequireAuthorization=true, donde el conte-nido true lo cambiamos por false. Guarda-mos los cambios y ya podemos arrancar el servidor del juego.

En Internet:– Página principal del juego America’s

Army: http://www.americasarmy.com/

Page 72: LiNUX+ DVD 1

para jugadores

70 Linux+ 1/2004

Unreal Tournament 2004Piotr Truszkowski

Unreal Tournament es un juego de destreza de acción, visto en primera persona (FPS). La edición 2004 es la tercera

versión de este título después de Unreal Tournament y de Unreal Tournament 2003. Sin duda, es la mejor y es posible que se convierta en el siguiente bestseller mundial. Es, a la vez, el primer juego a lo grande, pues ya en la caja podemos admi-rar el logotipo que representa el pingüino que bien conocemos.

La trama es muy sencilla (¿Quién requiere que un juego FPS tenga una trama complicada?), como en la mayoría de los juegos de este tipo. Tenemos, pues, un torneo en que solamente los mejores pueden ganar. El mejor de los mejores ganará la copa Unreal Tournament. Podemos ganarla eliminando a todos los oponentes. ¿Sencillo? Sencillo. Entonces hablemos del juego en sí.

3...2...1...¡Ya!Podemos elegir entre la versión en DVD o en 6 CDs. No importa la versión que adquiramos, el instalador de Linux se encuentra en cada una de ellas. Para ins-talar el juego, hay que montar la unidad CD/DVD, dirigirnos al punto de instala-ción y copiar el fichero linux-installer.sh en nuestro disco duro. A continuación, desmontamos la unidad CD/DVD y en el lugar en que hemos copiado el susodi-cho instalador, ejecutamos el comando: sh linux-installer.sh.

¡A jugar!El nuevo Unreal Tournament ya durante el primer arranque causa una muy buena impresión. El menú del juego es claro (un poco al estilo de los tebeos) y contiene las opciones ubicadas de una manera razonable. Aunque Unreal Tournament 2004 se destine, ante todo, a jugar de modo multiplayer, podemos también jugar con

los oponentes que dirija el ordenador (unos bots muy bien programados), o de modo Single Player, en que paso a paso vamos a hacer carrera para obtener el rango de maestro. El juego nos ofrece varios modos de partidos:

– Bombing run – Este modo consiste en pasar la “pelota” a la base del enemigo y colocarla en la portería. Hay que subrayar que el jugador que tiene la “pelota”, no puede utilizar su arma, por eso el resto del grupo debe cubrirle.

– Invasion – Tenemos que detener a una ola de enemigos que nos atacan. Los jugadores con experiencia, a lo mejor notan que varios tipos de enemigos fueron traspasados de la primera parte del juego.

– Onslaught – En mi opinión, es indudablemente el modo más interesante del juego. Tenemos nuestra propia base con un reactor. ”Las plantas eléctricas” rodean nuestra base. Tenemos que tomar tantas “plantas eléctricas” para situarnos lo más cerca posible del reactor en la base del enemigo. Después de conquistar la “planta eléctrica” que se encuentre más cerca de la base del enemigo, el reactor llega a ser sensible a los ataques. Para nosotros es la señal para destruirlo. De este modo podemos movernos en varios vehículos. Nos esperan tanto máquinas terrestres, como voladoras. Para entrar en un vehículo, tenemos que acercarnos a él y pulsar [Enter]. La vuelta en un tanque de verdad causa impresión.

– Assault – Tenemos que realizar varias tareas. Un modo muy complejo e interesante.

– Mutant – El primer jugador que mate a alguien se convierte en un mutante. El mutante es dos veces más rápido, tira con más rapidez y es parcialmente

Figura 1. Los gráficos nos dejan sin respiración

transparente. Tiene sólo un defecto: para sobrevivir tiene que matar, porque si no está activo, pierde su energía de valor. Los otros jugadores intentarán cazarlo, y la persona que lo mate, se convierte ella misma en un mutante.

Impresiones audiovisualesEl nuevo Unreal cautiva con sus gráficos. Aunque algunas personas digan que es demasiado cursi por los colores cálidos, la presentación gráfica está al muy alto nivel. Los efectos especiales son increíbles. Al ver las imágenes del humo o de las explosiones de los vehículos lanzados al aire y que después caen a tierra, uno simplemente queda sin respiración.

ResumenUnreal Tournament 2004 es un juego crucial. En ningún otro juego de Linux vais a encontrar unos gráficos así y tampoco vais a sentir escalofríos de emoción durante el partido. Podemos jugar día y noche sin parar. ¿Defectos? Seguramente los requisitos del equipo. Necesitamos: un procesador rápido (más de 1 Ghz), una tarjeta gráfica del sistema nVidia con 64 MB de memoria de mínimo (por lo menos GeForce2) y un disco duro acelerado. Te recomiendo calurosamente la adquisición de este juego.

Page 73: LiNUX+ DVD 1
Page 74: LiNUX+ DVD 1

[email protected] lectura sección llevada por Piotr Truszkowski

72 Linux+ 1/2004

Linux System Security: The Administrator’s Guide to Open Source Security Tools, Second Edition

Autores: Scott Mann, Ellen L. Mitchell, Mitchell Krell, Mitch KrellEditorial: Prentice Hall PTR, 2nd edition (2003)ISBN: 0130470112Número de páginas: 896

La seguridad del software que utilizamos en nuestro servidor de Internet es una prioridad. Cada administrador de red que se precie debería fijar en ella su atención particular. No obstante, a menudo la diversidad del software Open Source y el número de soluciones posibles, cuyo objetivo es aumentar nuestra seguridad, es tan grande que es difícil seleccionar la mejor solución. Frecuentemente, después de elegir un producto, tenemos problemas con su configuración para que cumpla nuestras exigencias. El libro “Linux System Security”, describe de una manera muy accesible, los aspectos de una configuración segura del software Open Source y, en mi opinión, es la mejor fuente de información relativa a este tema. Fundo esta opinión, entre otros, en el conjunto de temas descritos con muchos detalles y en su diversidad. Podemos leer sobre sistemas de ficheros, derechos de acceso a ellos, contraseñas que se utilizan una sola vez, modos de funcionar de PAM, programas IDS, configuración de cortafuegos (ipchains, iptables) y modos de escuchar el movimiento en la red. Sin embargo, el libro que estás leyendo, queri-do Lector, será una fuente de conocimientos a la que vas a volver varias veces. Es un libro que te servirá por muchos años, siempre actual e indispensable. Aunque la versión del manual que reseno está escrita en inglés, de verdad la recomiendo calurosamente.

Autor de reseña: Piotr Truszkowski ([email protected])

Red Hat Linux 9 -- Professional secrets

Autores: Naba BarkakatiEditorial: Wiley Publishing, Inc.ISBN: 0764541311Número de páginas: 1038

En realidad, este libro tiene un sólo defecto que, desgraciadamente, puede quitarles ganas de leerlo a algunas personas interesadas; está escrito en inglés. No obstante, para los que no tienen dificultades con la lectura en este idioma, el libro será de mucho valor. En más de mil páginas vamos a encontrar la información sobre todos los aspectos del trabajo con el sistema Red Hat Linux. Empezando por la instalación del sistema y por un software adicional, pasando por la configuración de dispositi-vos, servicios, servidores y, para terminar, cuestiones relacionadas con la programa-ción y la administración. Las instrucciones y las consultas del libro serán útiles tanto a los principantes, como a las personas con conocimiento avanzado de Linux. Vamos a enterarnos qué programas hay que utilizar para realizar tareas determinadas (p.e. programas de oficina, de gráficos) y qué hay que instalar/configurar para disponer de una función particular en nuestro ordenador (programar en Java, arrancar corta-fuegos, servidor ftp y muchos otros). El libro va a ayudar a los que desean ocuparse profundamente de Linux, ya que el autor explica qué, cómo y porqué funciona así.El orden del contenido está bien pensado, por eso, sin problema podemos “saltar” de un capítulo a otro y, gracias a las referencias, encontrar los temas que nos interesen. El libro toca muchas cuestiones y, al mismo tiempo, es bastante detallado. Por ejem-plo, la descripción de la instalación ocupa más de 50 páginas, porque el autor explica con todos los pormenores qué pasa en cada momento; se presentan también varias

opciones y variantes de instalación. Gracias a este método de tratamiento, podemos entender el modo de funcionamiento de cada elemento del sistema y en caso de tener un problema (incluso poco corriente), tendremos más oportunidades de solucionarlo. Debido a esto, el libro es universal. Hay que recordar que la versión 9 de Red Hat Linux es la última edición de este sistema y que además no es muy ”joven”. Sin embargo, el libro no pierde nada de su actualidad, si disponemos de un sistema más moderno, basado en Red Hat (p.e Fedora Core o Aurox). El cono-cimiento adquirido nos permitirá utilizar de modo cómodo las distribuciones mencionadas y, después de tomar en consideración algunas diferencias, cada distribución de Linux.Junto con el libro se vende la versión del sistema Red Hat Linux 9 en dos discos.

Autor de reseña: Jarosław Górny ([email protected])

Page 75: LiNUX+ DVD 1
Page 76: LiNUX+ DVD 1