58
La Revista de Software Libre y Código Abierto Programación: Entendiendo ADO .NET con Mono y PostgreSQL (III) Ojo del novato: Entendiendo las particiones Taller: Cómo montar un segundo disco duro en gnu/Linux Pencil: Programa para animaciones 2D Opinión: El Software desde otro punto de vista Photorec: Recuperar archivos eliminados Además: Desafío! - Zona de Links - Eventos 2008 GRAILS: Framework para el desarrollo de aplicaciones web (Parte I) Número 14 ABRIL 2008

La Revista de Software Libre y Código Abierto - mclibre.org · .NET con Mono y PostgreSQL (III) ... aplicación, primero debemos crear los dominios correspondientes, de la siguiente

Embed Size (px)

Citation preview

  • La Revista de Software Libre y Cdigo Abierto

    Programacin: Entendiendo ADO .NET con Mono y PostgreSQL (III)

    Ojo del novato: Entendiendo las particiones

    Taller: Cmo montar un segundodisco duro en gnu/Linux

    Pencil: Programa para animaciones 2D

    Opinin: El Software desde otro punto de vista

    Photorec: Recuperar archivos eliminados

    Adems: Desafo! - Zona de Links - Eventos 2008

    GRAILS: Framework para el desarrollo de aplicaciones web (Parte I)

    Nmero 14ABRIL 2008

  • "Copyright20062008Begins.Seotorgapermisoparacopiar,distribuiry/omodificarestedocumentobajolostrminosdelaLicenciadeDocumentacinLibredeGNU,Versin1.2ocualquierotraversinposteriorpublicadaporlaFreeSoftwareFoundation;sinSeccionesInvariantesni

    TextosdeCubiertaDelanteraniTextosdeCubiertaTrasera.Puedesconsultarunacopiadelalicenciaenhttp://www.gnu.org/copyleft/fdl.html".

    Renunciaderesponsabilidad:Todas las noticias, recomendaciones,artculos y comentarios expresados enBegins son propias de sus autores y nonecesariamente representan la opinindeBegins.

    LoscontenidosqueseofrecenenBeginshansidoprobadosporelautor,ynohanpresentado ningn inconveniente alrealizarlo, pero an as, Begins no seresponsabilizaporlosdaosoperdidadeinformacin que lleve la realizacin deestasinstrucciones.

    RedaccinRodrigo Ramrezscar Callelex SandovalEsteban Saavedra LopezMartin MarquezGabriel LopezWilson CastilloLuis lvarez

    [email protected]@[email protected]@[email protected]@[email protected]@hotmail.com

    Revisin y correccinric Bezscar CalleGuillermo Molleda

    [email protected]@[email protected]

    Staff y CoordinacinLuis lvarez Aldayscar CalleDionisio Fernndezlvaro ParraRodrigo Ramrezlex Sandoval Moralesric Bez Bezama

    [email protected]@[email protected]@[email protected]@[email protected]

    Arte y Diseolex Sandoval Moraleshttp://www.microteknologias.cl

    Luis lvarez Aldayhttp://www.muestrate.cl/

    Editorial

    ElnombreylogodeBeginssoninvencindeRobinOsorioAdaptacin:LuisAlvarezA.

    Examinemos nuestra conciencia... somos conscientes de que, por el simple hecho de utilizar software libre estamos llevando la contraria al que posiblemente sea EL MAYOR MONOPOLIO DEL MUNDO?

    No en todos los sitios se bebe Coca-Cola. Ni en todos los sitios se conducen Ford. Tampoco se utilizan en todos los sitios la misma marca de gafas de sol o de pantalones. Pero con el software, la abrumadora implantacin del software privativo de Microsoft Windows hace que el panorama sea bien distinto.

    Por eso repito: examinemos nuestra conciencia. Estamos haciendo lo suficiente para combatir ese monopolio? Cuando un amigo nos pide ayuda porque su Windows se ha llenado de virus, o porque tiene problemas con tal o cual programa... qu hacemos?

    Desde Begins os invitamos a ser coherentes con el pensamiento del software libre. Ayudar a un amigo es algo fundamental, pero nada nos impide que le ayudemos DESDE EL SOFTWARE LIBRE.

    Tiene problemas grabando DVDs con el Nero? Hablmosle de K3B, de Gnomebaker, de Brasero... y ayudmosle a que se desenvuelva con ellos. Tiene virus campando a sus anchas por el disco duro? Hagmosle ver la ventaja de no estar preocupado por virus. Podemos demostrrselo y, adems, ayudarle con ello.

    Quiz sea el momento de ir a las trincheras y pelear. Por qu no negarnos a resolver problemas de sistemas privativos? Es una forma de batalla mucho ms eficaz de lo que parece, comprubalo.

    Saludos, linuxeros :D

    Equipo de Begins

    http://www.gnu.org/copyleft/fdl.htmlmailto:[email protected]:[email protected]:[email protected]:[email protected]:[email protected]:[email protected]:[email protected]:[email protected]:[email protected]:[email protected]:[email protected]:[email protected]:[email protected]:[email protected]:[email protected]:[email protected]:[email protected]://www.microteknologias.cl/http://www.muestrate.cl/
  • EquipoestabledeBegins

    scarCalleGutirrezNick: ReyGecko

    Polica en el ayuntamiento de Pinto (Madrid- Espaa).Actualmente est en la carrera de informticaen la Universidad Nacional de Educacin a Distancia.Ubicacin: Pinto, Espaa.

    DionisioFernndezMoraNick: ZeRobLaCkIngeniero de Ejecucin en Computacin e Informtica. Co-Fundador de LinuxChillan.Ubicacin: Chilln, Chile.

    rickBezBezamaNick:Erick

    Periodista,activistasocialporellibreconocimiento.Socio y fundador del Centro de Difusin de SoftwareLibre (www.cdsl.cl) Editor de www.softwarelibre.cl,integra equipo de traductores de Ubuntu, colaboradordeWikipedia.orgUbicacin:Santiago,Chile

    LuisAlvarezAldayNick: PapeluisWebmaster y Diseador Grfico amateur, administra el portal www.muestrate.clUbicacin: Normalmente en este planeta. Chilln AlvaroParraUrbina

    Nick: Alverich

    Ingeniero agrnomo en la Universidad de Concepcin, Chile.Ubicacin: Chilln, Chile

    BeginsesrealizadaenteramenteconSoftwareLibreMaquetacinyempaquetadoPDF

    IlustracionesyDiseoVectorial

    Diseo3D

    CapturasdepantallaKSnapshot

    PAGINA03BEGINS

    AlexSandovalMoralesNick: DarkSoft

    Programador computacional, administra un sitio web para promover Linux. (http://www.microteknologias.cl)Ubicacin: Pealoln, Chile

    RodrigoRamrezNorambuenaNick: Decipher

    Ingeniero de Ejecucin en Computacin e Informtica. Participa en LinuxChillan casi desde sus inicios.Ubicacin: Chilln, Chile.

    Retoquedeimagen

    The GIMP

    http://www.cdsl.cl/http://www.softwarelibre.cl/http://www.microteknologias.cl/
  • Grails: Framework para el desarrollo de aplicaciones Web (Parte I)

    Pg5

    Contenido

    Taller: Cmo montar un segundo disco duro en gnu/Linux

    Pg45

    PhotoRec: Recuperando tus archivos eliminados desde Linux

    Pg23

    Ojo del novatoEntendiendo las particiones

    Pg14

    Programacin: Entendiendo ADO .NET con Mono y PostgreSQL (III)

    Pg30

    FLISOL 2008El Festival Latinoamericano de Instalacin de Software Libre (FLISoL) es el evento de difusin de Software Libre ms grande en Latinoamrica. Se realiza desde el ao 2005 y su principal objetivo es promover el uso del software libre, dando a conocer al pblico en general su filosofa, alcances, avances y desarrollo

    Pg35

    Programas: PENCIL y la animacin en 2D, cuadro a cuadro.

    Pg36

    Zona de Links

    Pg34 Eventos

    Pg44

    Destacado

    Artculos

    Secciones

    PAGINA04BEGINS

    Opinin: El software libre desde otro punto de vista

    Pg53

    Taller: Xming+PuTTY, administrar grficamente y remotamente un servidor Linux

    Pg55

    Participa en la revista!

    EntreteBeginsPg29

  • Qu es un framework

    Es una estructura de soporte definida en la cual otro proyecto de software puede ser organizado y desarrollado.

    Se han convertido en la piedra angular de la moderna ingeniera del software.

    Es una estructura software compuesta de componentes personalizables e intercambiables para el desarrollo de una aplicacin.

    En otras palabras, es una aplicacin genrica incompleta y configurable a la que podemos aadirle las ltimas piezas para construir una aplicacin concreta.

    Objetivos de un framework

    Desarrollo rpido. Desarrollo estructurado. Reutilizacin de cdigo. Disminuir el esfuerzo en el desarrollo. Aprovechar las funcionalidades ya

    implementadas, no debemos reinventar la rueda.

    Nos concentramos directamente en la solucin del problema.

    Tener como aliado a las metodologas de desarrollo giles (XP, AD).

    PAGINA05BEGINS

    Introduccin

    Hoy en da, con la aparicin de nuevas metodologas y herramientas en el mbito de la ingeniera de software, el desarrollo de aplicaciones web ha tomado un curso un tanto distinto a lo que se tenia hace unos aos atrs, sto representa que, si antes con el desarrollo y herramientas tradicionales demorbamos semanas y/o meses en disearlas, meses o hasta aos en desarrollarlas completamente; hoy en da con la aparicin de los frameworks ste tiempo se ha reducido considerablemente, representando que ahora con la ayuda de estas nuevas herramientas como son los frameworks y teniendo como aliado a las metodologas giles de desarrollo, podemos disear nuestras aplicaciones en cuestin de minutos u horas, y terminar su desarrollo en una par de semanas.

  • PAGINA06BEGINS

    Patrn MVC

    Desde la aparicin de RoR (Ruby on Rails) el padrino de todos los frameworks de desarrollo de aplicaciones web, el patrn MCV ha cobrado una notable importancia, sobre todo por su cualidad de dividir en capas el desarrollo de un proyecto o aplicacin web.

    Modelo: Encargado de modelar y contener la lgica del dominio de la aplicacin.

    Vista: Encargada de contener la lgica de presentacin.

    Controlador: Encargado de ser el engranaje entre el modelo y la vista, y tambin contener la lgica del negocio.

    Filosofa de Grails Reutilizacin de cdigo. Desarrollar aplicaciones web de forma

    rpida, sencilla y divertida. Utilizar los mejores componentes

    actualmente disponibles. Combinar todo en un paquete fcil de usar. Grails provee el pegamento, de tal forma

    que ud. no haga el suyo.

    Caractersticas de Grails Se basa en el patrn MVC. Tiene todo lo necesario para desarrollar

    aplicaciones Web. Soporta Ajax. Posee buena documentacin. Es multiplataforma. Posee una numerosa comunidad de

    desarrolladores y usuarios. Inspirado en Ruby on Rails (Padrino de la

    mayora de los Frameworks). Est en constante desarrollo.Componentes de GrailsHibernate: El estndar defacto para ORM en el mundo de Java.Spring: El mas popular framework para Java.Quartz: Un framework que permite realizar tareas programadas.SiteMesh: Un framework robusto y estable para renderizar diseos (layouts).

    Preparando nuestro entorno de trabajo.

    Para empezar a trabajar y desarrollar aplicaciones web en Grails, precisamos cumplir algunos requisitos como:

    Tener instalado el JDK de Java. Tener instalado algn gestor de base de

    datos (Sqlite, MySQl, PostgreSQL, MS-SQL, Oracle, entre otros).

    Que es Grails Es un framework para el desarrollo de

    aplicaciones web. Es la respuesta de groovy y java para Ruby

    on Rails. Permite el desarrollo de aplicaciones web de

    forma rpida.

  • PAGINA07BEGINS

    Instalacin de Grails Obtener la ultima versin estable de Grails

    desde su sitio web [1]. Descomprimir Grails en un directorio de su

    preferencia, al cual tenga acceso el usuario. Establecer la variable de entorno

    GRAILS_HOME. Adicionar $GRAILS_HOME/bin en el path.

    Para confirmar que nuestra instalacin es correcta, introducimos el comando grails en la lnea de comando.

    Estructura de un ProyectoHoy en da, los frameworks mantienen una forma similar de estructurar sus proyectos, imaginemos como si se tratase de un organigrama donde se consideran las siguientes partes:

    Un proyecto contiene una o varias aplicaciones

    Una aplicacin tiene uno o varios mdulos Un mdulo tiene una o varias acciones Una accin puede o no estar asociada a

    una vista

    Grfico 1: Uso del comando grails

    Nuestra mi primera aplicacinPara una mejor comprensin del potencial de Grails en el desarrollo de aplicaciones web, realizaremos una aplicacin paso a paso.

    Nuestra pequea aplicacin se enmarca en un entorno donde se mantiene el registro de eventos (congresos jornadas, etc), a los cuales concurren varios expositores de diferentes nacionalidades y donde cada uno de estos tiene una o mas conferencias que impartir.

  • PAGINA08BEGINS

    Creacin de una aplicacin

    Grfico 2: Crear una aplicacin

  • PAGINA09BEGINS

    Estructura de directoriosAl igual que la mayora de los frameworks orientados al desarrollo de aplicaciones web, Grails cuando crea los proyectos y aplicaciones, por defecto crea una estructura de directorios definida, estructura que nos permite mantener un orden y conocer exactamente donde se encuentran todos y cada uno de los componentes de nuestra aplicacin.

    Ejecucin de la aplicacinOtra caracterstica similar que poseen la mayora de los frameworks, va referida a que estos vienen con un pequeo servidor de aplicaciones que nos permite ejecutar y probar nuestros desarrollos, debemos considerar que estos pequeos servidores de aplicacin solo deben ser utilizados en etapas de prueba o pequeos desarrollos, ya que para entornos mas grandes o de produccin debemos hacer uso de servidores de aplicacin mas robustos, orientados y con soporte al lenguaje propio del framework; en el caso de Grails se puede hacer uso de Tomcat, Jboss, Websphere entre otros.

    El pequeo servidor de aplicaciones que acompaa a Grails es Jetty, como lo muestra la figura.

    Grfico 3: Estructura de la aplicacin

    Grfico 4: Iniciando la aplicacin

  • PAGINA10BEGINS

    Ejecutando nuestra aplicacin

    Grfico 5: La aplicacin ejecutndose

    Modelado del dominioPara describir el dominio de nuestra aplicacin, primero debemos crear los dominios correspondientes, de la siguiente forma para todos y cada uno de los dominios de nuestra aplicacin:

    Grfico 6: Creando los dominios

  • PAGINA11BEGINS

    Grails cuando crea un dominio, inicialmente crea slo clases vacas en el directorio GestionEventos/grails-app/domain/, las cuales debemos modificar e incluir los siguientes contenidos:

    /grails-app/domain/Evento.groovy

    class Evento { String nombre String ciudad Date inicio Date final String sitioweb}/grails-app/domain/Expositor.groovy

    class Expositor { String paterno String materno String nombre String nacionalidad String email}

    /grails-app/domain/Conferencia.groovy

    class Conferencia { String titulo String resumen Date fecha}

    RelacionesLas relaciones de nuestro modelo deben verse reflejadas en nuestros dominios. Grails permite mantener relaciones de 1 a 1, de 1 a muchos y de muchos a muchos. Para nuestro ejemplo las relaciones son las siguientes:

    Un evento tiene muchas conferencias Un expositor puede impartir muchas

    conferencias

    class Evento { String nombre String ciudad Date inicio Date final String sitiowebstatic hasMany = [conferencias:Conferencia]}

    class Expositor { String paterno String materno String nombre String nacionalidad String emailstatic hasMany = [conferencias:Conferencia]}

    class Conferencia { String titulo String resumen Date fecha Evento evento Expositor expositor static belongsTo = [Evento,Expositor]}

    ScaffoldingScaffolding es un trmino introducido por Rails, para representar la generacin de los artefactos que permiten un uso mas sencillo y rpido de las interfaces y sus operaciones bsicas, denominados de forma genrica CRUDs (Create, Read, Update y Delete) o ABDs (Altas Bajas y Modificaciones).

    Grails permite 2 tipos de scaffolding, dinmicas y estticas; en esta primera parte del tutorial slo consideraremos el scaffolding dinmico.

    Estas relaciones deben figurar en los dominios y ficheros correspondientes como se muestra a continuacin:

    Grfico 7: Creando los controladores

  • PAGINA12BEGINS

    Para esto debemos realizar las siguientes operaciones:

    Crear los controladores para cada uno de los dominios.Modificar los controladores, de tal forma que permitan generar los scaffold de forma dinmica.

    Los controladores para nuestra aplicacin deberan tener los siguientes contenidos:

    class EventoController { def scaffold = Evento }

    class ExpositorController { def scaffold = Expositor }

    class ConferenciaController { def scaffold = Conferencia }

    Ejecucin y pruebasUna vez corriendo nuestra aplicacin podemos empezar a probar todas y cada una de las caractersticas provistas por los scaffolds generados: Formularios Ventanas de dilogo Relaciones Efectos JavaScript en ciertos campos ....

    Grfico 7: Creando los controladores

    Grfico 8: Nuestra aplicacin y sus controladores

  • PAGINA13BEGINS

    Grfico 10: Listado de Eventos

    Grfico 9: Creacin de un nuevo Evento

    Esteban Saavedra LpezLder de la Comunidad Atix (Oruro Bolivia)

    Activista de Software Libre en BoliviaEmail: [email protected]

    Website: http://jesaavedra.opentelematics.org

    Referencias

    [1]http://www.grails.org[2]Getting Started with Grails[3]The Definitive Guide to Grails

    mailto:[email protected]://jesaavedra.opentelematics.org/http://www.grails.org/http://www.grails.org/http://www.grails.org/
  • Elojodelnovato

    PAGINA14BEGINS

    NOTA A continuacin se mostrarn ejemplos de uso del editor departiciones de Ubuntu. Puedes practicarlas CON PRECAUCIN, perosin miedo. No realizars ningn cambio en tu disco duro mientras queno pulses el botn Aplicar. Antes de pulsar ese botn, podrsdeshacer tus acciones pulsando el botn Deshacer.

    Uno de los mayores problemas con el que cualquier novato se enfrenta a la hora de plantearse la instalacin de un sistema Linux es el de las particiones. Y no es extrao, porque un manejo equivocado de las mismas puede ocasionarnos muchsimos problemas, prdida de datos, etc. Hoy vamos a tratar de perderles el miedo. :)

    Para eso, tomaremos como ejemplo las imgenes que nos muestra el gestor de particiones que viene de serie con Ubuntu, GParted (localizable en Sistema > Administracin > Editor de particiones). As conseguiremos un doble objetivo: familiarizarnos con el entorno grfico de GParted y, adems, entender mejor el funcionamiento de nuestro disco duro, ese gran desconocido...

    Podemos entender nuestro disco duro como si fuese una habitacin de nuestra casa. En principio, supongamos que tenemos la habitacin vaca, sin un solo mueble siquiera. Eso sera como tener nuestro disco duro SIN FORMATEAR. Una captura:

    Como vemos, GParted nos muestra un espacio gris de 10 GB que se encuentra sin asignar, es decir, sin formatear.

    El disco duro as no nos sirve para almacenar datos, primero debemos darle formato. Sera algo as como amueblar la habitacin con un enorme archivador lleno de cajones donde poder guardar documentos.

  • Elojodelnovato

    PAGINA15BEGINS

    Podramos hacerlo si seleccionamos (haciendo clic encima) la regin gris sin asignar y luego pinchamos en el botn Nuevo que sealo aqu:

    En ese momento se abrir un men como ste:

    Este men tiene varias cosas interesantes. Para empezar, podemos pinchar sobre las flechas que estn en los extremos del recuadro y arrastrarlas para definir el tamao de la particiones con una interfaz grfica muy intuitiva. Podemos definir exactamente el tamao de la particin desde la casilla Tamao nuevo (MiB), donde los 10237 MiB de la captura anterior corresponden, aproximadamente, a 10 GB.

    Al crear una particin, debemos definir si se trata de una particin primaria, lgica o extendida. Vamos por partes:

    Las particiones primarias seran la divisin ms bsica de nuestro disco duro, siendo reconocidas por cualquier sistema operativo que soporte su sistema de archivos. Por eso, si hacemos dos particiones NTFS en un sistema Windows, al reiniciar veremos que existen C:\ y D:\ pero si en ese sistema hacemos una particin EXT3, Windows no lo reconocer y asignar una letra porque no soporta (no quiere soportar?) el sistema de archivos EXT3, que es el que utilizan prcticamente todos los sistemas Linux.

    Estas particiones primarias tienen una limitacin muy importante: slo podemos tener 4 en nuestro disco duro. Para resolver eso se crearon las particiones extendidas y las particiones lgicas.

  • Elojodelnovato

    PAGINA16BEGINS

    Las particiones extendidas son algo parecido a las fsicas, pero sirven nicamente para contener en su interior una infinidad de particiones lgicas. Por tanto, no permiten alojar directamente un sistema de archivos en su interior, sino otras particiones.

    Las particiones lgicas se deben crear dentro de una particin extendida. stas s que pueden ser formateadas con cualquier tipo de archivos (FAT, FAT32, NTFS, EXT2, EXT3, REISERFS, REISER4, JFS, SWAP...).

    Veamos todo esto con ejemplos.

    NOTA - Cuando ejecutamos esto desde un livecd de Ubuntu 7.10, nosencontraremos con este mensaje de error:

    No debemos asustarnos. Al releer la tabla de particiones, GParted se cierramostrando ese error, pero habr realizado los cambios correctamente. Slohabr que iniciarlo de nuevo desde Sistema > Administracin > Editor departiciones.

    Partiendo de la ltima captura, vamos a crear una particin primaria, con un sistema de archivos NTFS que ocupe la totalidad de nuestro disco duro. Tras aadir y aplicar los cambios en la interfaz de GParted, se ejecutar un proceso que nos dar como resultado esto:

    Con el formateo del disco duro, lo que estamos haciendo es prepararlo para que podamos escribir en l y luego localizar los datos eficazmente. Hay varios tipos de archivadores que podemos elegir para amueblar la habitacin. En este caso, est amueblada con un archivador tipo NTFS, que es el sistema usado por los ltimos sistemas Windows (Vista y XP).

  • Elojodelnovato

    PAGINA17BEGINS

    Muchos discos duros se encuentran formateados de esta manera. se es el motivo de elegir este tipo de archivos y esta configuracin, para que a muchos les resulte familiar.

    Podemos modificar nuestras particiones de la forma descrita antes. Pinchamos sobre la particin que queremos modificar (en este caso la nica que hay) y luego pinchamos sobre el botn Redimensionar/Mover, ajustndola al tamao deseado. Tras todo ello, pinchamos en el botn de Aplicar los cambios:

    Como vemos, tenemos un espacio sin asignar (es decir, sin formatear) a la derecha del espacio formateado. Ahora crearemos ah otra particin del modo ya explicado: seleccionando la zona sin formatear, pinchando en el botn Nuevo, definiendo el tipo de particin y el sistema de ficheros (en este caso, vamos a elegir FAT32, pero podra ser cualquier otro). El resultado ser ste:

    Tambin en muchos casos de PCs domsticos nos encontramos con una configuracin de la tabla de particiones como la que acabamos de ver. Normalmente, en la particin grande se encuentra instalado Windows y en la particin pequea se encuentra alguna copia de seguridad, recuperacin del sistema, etc. Por decirlo de algn modo, tenemos dos archivadores en nuestra habitacin. Uno de ellos grande y otro ms pequeo.

    Hasta ahora hemos visto slo particiones primarias Y las particiones extendidas y lgicas? Bien, no hay problema. Del mismo modo que hasta ahora, vamos a desplazar las dos particiones existentes hacia la izquierda y dejaremos un hueco libre al final de nuestro disco duro, llegando a esta configuracin:

  • Elojodelnovato

    PAGINA18BEGINS

    Obviamente, para dejar espacio sin formatear en el disco duro, hemos debido reducir el tamao de alguna particin. En este ejemplo, hemos reducido el tamao de la particin ms grande hasta dejarla con 3,92 GB, manteniendo igual el tamao de la particin pequea.

    Pues bien, en el espacio que queda sin formatear en la parte derecha de nuestro disco duro ser donde coloquemos una particin extendida. Tan sencillo como hemos hecho hasta ahora (seleccionamos el espacio sin formatear, pinchamos en botn Nuevo y en el men que sale, elegimos particin extendida):

    Aqu no podemos elegir el sistema de ficheros. Por qu? Ya lo dijimos antes: las particiones extendidas slo permiten alojar particiones lgicas. Tras aplicar los cambios, tendremos esto:

  • Elojodelnovato

    PAGINA19BEGINS

    Si nos fijamos, vemos que debajo de la particin extendida se ha puesto otra lnea que pone sin asignar. Claro. Hasta que rellenemos la particin extendida con particiones lgicas, ese espacio ser considerado como sin asignar. Pero ahora tendremos la ventaja de que no estaremos limitados por el mximo de 4 particiones que ocurra con las particiones primarias. Lo demostraremos creando 5 particiones dentro de nuestra recin creada particin extendida:

    Ahora tenemos un montn de particiones y de sistemas de ficheros disponibles en nuestro disco duro. A que no fue tan difcil?

    Y nos planteamos esta pregunta: cmo podramos preparar nuestro disco duro para instalar nuestra distribucin de Linux favorita? Evidentemente, lo primero que deberamos hacer sera hacer hueco para que nuestra distribucin tenga un lugar fsico en el que poder instalarse. Ubuntu hace eso muy fcilmente, lo vamos a comprobar con el disco duro particionado tal y como lo hemos visto en la ltima captura.

    Bien, pues desde GParted lo vamos a dejar de esta otra manera:

  • Elojodelnovato

    PAGINA20BEGINS

    Iniciando Ubuntu 7.10 y pinchando en el botn de Instalar, en el 4 paso acabamos llegando a las temidas particiones. En nuestro ejemplo, nos ha mostrado esta ventana:

    Con lo que hemos aprendido sobre las particiones ya no deberamos tener miedo a enfrentarnos con la configuracin de nuestro disco duro. Analicemos las posibilidades que nos ofrece el instalador de Ubuntu 7.10:

    1.- Guiado cambia el tamao de SCSI1, particin #1 (sda) y usa el espacio que deja libre: Si la seleccionamos, lo que har esta opcin es cambiar el tamao de la particin sda1 (la de 3,92 GB en la penltima captura), reducir su tamao al 52% y proceder a instalar Ubuntu en el espacio que ha dejado libre tras reducir ese tamao. Si te fijas, podemos cambiar esa proporcin del 52% a otra que nos parezca mejor, teniendo en cuenta que hay que dejar sitio para los archivos que estn en cada particin.

    2.- Guiado utilizar todo el disco: Si seleccionamos esta opcin, Ubuntu se apropiar de TODO nuestro disco duro, BORRANDO cualquier particin y dato que se encuentre dentro. Es una opcin muy sencilla y eficaz, pero slo si no vamos a compartir ese disco duro con ningn otro sistema operativo. Por tanto, cuidadito...

    3.- Guiado utilizar el espacio libre contiguo ms grande: Recordemos la ltima captura que hicimos del disco duro. Ves el espacio sin asignar que hay a la derecha ocupando 3,89 GB? Pues seleccionando esta opcin estaremos dicindole a Ubuntu que se instale ah, en ese sitio. No os preocupis por nada ms, todo lo har l automaticamente.

    4.- Manual: Esta opcin es un poco ms avanzada con la que se puede optimizar nuestra instalacin, pero no recomendada para usuarios novatos a no ser que sigan alguna gua como la que publicamos en el Ojo del Novato de Begins 12.

  • Elojodelnovato

    PAGINA21BEGINS

    Por tanto, si tenemos una configuracin parecida a la mostrada en la penltima captura, lo ms sencillo sera elegir la opcin 3 y esperar a que Ubuntu termine de forma automtica con la instalacin.

    Eso es todo por hoy. No se pretende que uno sea un experto en particiones tras leer estos consejos, pero seguramente ayudar a ms de un nuevo usuario de Linux. Y, quiz, acabe despertando la curiosidad por aprender en todava ms usuarios.

    Disfrutad de Linux. Un saludete :D

    scar Calle Gutirreza.k.a. reygecko

    miembro del equipo de Begins

  • Begi

    ns n

    o ha

    cob

    rado

    abs

    olut

    amen

    te n

    ada

    por l

    os a

    viso

    s pu

    blic

    ados

    en

    la re

    vist

    a.

    http://www.installfest.net/ - http://www.flisol.net/

    PAGINA22BEGINS

    Instala Software Libre en tu PC Comparte con otros tu experiencia Asiste gratuitamente

    http://www.installfest.net/http://www.flisol.net/
  • Quizs en alguna ocasin te has quedado congelado al revisar una carpeta y est se encuentra vaca.

    O llegas de unas estupendas vacaciones. Crees que has copiado tus fotos en el disco duro y acabas de borrarlas de la tarjeta de memoria de la cmara. No aparecen en ninguna parte.

    Buscas informacin en Internet y te encuentras con mensajes que no es posible recuperar archivos eliminados en Linux. Qu hacer?

    Primero, no perder la calma. Segundo, no seguir guardando archivos en el disco para evitar sobreescribir los datos perdidos. Tercero, seguir esta gua, que espero sea de utilidad para esos momentos crticos y puedas recuperar esos preciosos bytes.

    Existen muchos programas que permiten recuperar archivos eliminados. En esta ocasin veremos el programa PhotoRec.

    PhotoRec es un software de recuperacin de archivos de datos diseado para recuperar archivos perdidos incluyendo videos, documentos, etc. desde discos duros y Cds, adems de fotos perdidas (de ah su nombre 'Photo Recovery') desde memorias de cmaras digitales.

    PhotoRec ignora el sistema de archivo e intenta comprender los datos, de esta forma puede trabajar aunque el sistema de archivo del dispositivo se encuentre severamente daado o haya sido re-formateado.

    PAGINA23BEGINS

  • PAGINA24BEGINS

    PhotoRec es libre, esta aplicacin open source multi-plataforma es distribuida bajo la licencia GPL. PhotoRec es el compaero del programa TestDisk, una aplicacin para la recuperacin de particiones perdidas o daadas sobre una amplia variedad de sistemas de archivos y permite hacer discos que no inician en discos arrancables nuevamente.

    Por razones de seguridad, PhotoRec usa acceso de solo-lectura para manipular la unidad o memoria desde el cual se desea recuperar los datos perdidos.

    Importante: Tan pronto como una imagen o archivo sea eliminado accidentalmente, o descubres que has perdido un archivo, NO guardes ninguna imagen o archivo ms en ese dispositivo o unidad de disco duro; de lo contrario podras sobreescribir tus datos perdidos.

    Esto significa que cuando utilices PhotoRec, no deberas elegir guardar los datos recuperados en la misma particin donde ellos estaban almacenados.

    SISTEMAS OPERATIVOS

    PhotoRec puede correr en los siguientes sistemas: DOS/Win9x Windows NT 4/2000/XP/2003 Linux FreeBSD, NetBSD, OpenBSD Sun Solaris Mac OS X

    Y puede ser compilado en la mayora de los sistemas Unix.

    SISTEMA DE ARCHIVOS

    Photorec ignora el sistema de archivos, de esta forma puede trabajar aunque el sistema de archivos se encuentre seriamente daado.

    Puede recuperar archivos perdidos desde los siguientes sistemas de archivos: FAT NTFS EXT2/EXT3 HFS+

    INSTALACIN

    Visita la pgina del proyecto:

    http://www.cgsecurity.org/wiki/TestDisk_Download

    Descarga el paquete que mejor se acomode a tu sistema. En est gua utilizaremos el archivo:

    testdisk-6.8-1.i386.rpm

    Pero tambin existen paquetes para Windows, MacOS X, OS2 y cdigo fuente.

    La instalacin es realmente sencilla, desde una consola escribe el siguiente comando:

    sudo rpm -ivh testdisk-6.8-1.i386.rpm

    http://www.cgsecurity.org/wiki/TestDisk_Download
  • PAGINA25BEGINS

    RECUPERAR ARCHIVOS

    En una consola escribe el siguiente comando como root:

    photorec

    En la consola aparecer informacin de las unidades que el programa ha detectado. En el caso de esta gua, el programa ha detectado un disco duro y una unidad USB (que podra ser una memoria SD, un pendrive, etc.)

    El programa adems nos indica que los medios sern accedidos en modo de solo-lectura (RO).

    Debemos seleccionar el medio que ser analizado, para ellos utilizamos las teclas de cursor y Enter.

  • PAGINA26BEGINS

    Luego debemos indicar al programa el tipo de tabla de particin que posee el medio desde el cual queremos rescatar los datos.

    Para el caso de esta gua, el tipo de tabla de particin sera Intel.

    Despus debemos seleccionar la particin que queremos analizar, en este caso, la particin FAT32 del disco USB.

  • PAGINA27BEGINS

    Y luego seleccionamos la opcin Search que se encuentra en la parte inferior de la pantalla, presionando Enter.

    El programa comenzar la bsqueda de archivos en la unidad indicada.

    Dependiendo del tamao de la unidad a analizar, y de la potencia del equipo, el proceso podra durar bastante tiempo.

    Paciencia!

    El programa indica el tipo de archivo y la cantidad de archivos de ese tipo que ha recuperado.

  • PAGINA28BEGINS

    Finalmente, el programa crear una carpeta llamada recup_dir en donde almacenar los archivos recuperados.En este caso, he recuperado imgenes de mi artista favorita, la hermosa Myriam Hernandez.

    Enlaces:

    http://www.cgsecurity.org/wiki/PhotoRechttp://www.cgsecurity.org/wiki/TestDisk

    Alex Sandoval [email protected]

    Miembro del equipo de Begins

    Pero este programa puede ser utilizado para recuperar cualquier tipo de archivo desde cualquier medio. Aunque hay que tener presente, que no hace milagros!

    http://www.cgsecurity.org/wiki/PhotoRechttp://www.cgsecurity.org/wiki/TestDiskmailto:[email protected]
  • PAGINA29BEGINS

    Ayuda a Tux a llegar al servidor de la compaa, y salvarlo de ser secuestrado por el malvado virus Guindous2003. Sers capz?

    http://www.onebillionmazes.com/

    http://www.onebillionmazes.com/
  • PAGINA30BEGINS

    Programa de animacin 2D cuadro por cuadro

    Quin no intent alguna vez siendo nio, intentar dibujar sobre un papel las escenas que iban a conformar una historieta? Seguro que nadie se ha librado y ahora podrs continuar creando comic con Pencil, un software de animacin y dibujo que permitir aquellos que nos gusta la creacin de animacin 2D desplegar nuestra imaginacin. El programa es de cdigo abierto y gratuito.

    Actualmente existen muchos programas de animacin, pero qu hace especial a este programa. Nada mas que se enfoca a la animacin cuadro por cuadro y se basa al dibujo tradicional de mano alzada. Pencil no tiene intencin de competir con flash, ya que es necesario dibujar a mano alzada cada fotograma para conseguir una animacin.

  • PAGINA31BEGINS

    Herramientas de dibujo

    Pencil es un programa de animacin muy fcil de aprender, en estos momentos se puede encontrar slo en ingles pero no se asusten es muy intuitivo ya que muchas de las herramientas con las que cuenta ya las hemos visto en otros programas de dibujo como por ejemplo Gimp.

    Herramientas de colores

    El programa cuenta con su herramienta de colores en la cual puedes modificar el color que ms te agrade una vez aadido dando doble click sobre el color se abre una pequea ventana en la cual puedes colocar el nombre del color nuevo.

    Herramientas de lnea de tiempo

    Por otro lado Pencil cuenta tambin con su barra de lnea de tiempo y la clsica de papel cebolla en la cual puedes ver un dibujo sobre otro, su reproductor integrado para ver la secuencia de como va nuestro trabajo.

    Herramientas de Pencil

    Sobre una pizarra que incluye todos los elementos necesarios en cualquier aplicacin de dibujo te encontrars con diversas opciones: la herramienta lpiz, el pincel de dibujo, el cubo de pintura, la goma de borrar Tienes tambin una herramienta que permite ampliar o reducir el tapiz, un selector de colores, un modificador de curvas, una herramienta para mover objetos dentro de la escena. En esencia, un entorno de trabajo intuitivo y fcil de usar, sobre el que slo debes dar rienda suelta a tu imaginacin para conseguir lo que te propones.

  • PAGINA32BEGINS

    Pantalla de trabajo

    El programa cuenta con cuatro capas de trabajo: que son mapa de bits, capa vectorial, capa de sonido y capa de video. En las cuales podras colocar los elementos al que corresponda cada uno.

    Exportacin de trabajo concluido

    Una vez concluido nuestro trabajo de animacin, lo podemos exportar a Flash/swf si estamos utilizando un sistema operativo Windows o gnu/Linux, y en MacOS lo podemos exportar a Flash/swf y Movie/Mov.

    Ventajas de usar Pencil v0.4.3b

    Una de las grandes ventajas que tiene al ser software libre, es que puede ser modificado lo que significa que siempre podr ser mejorado y ampliado en caractersticas. Otra de las ventajas es su sencillez de uso y la calidad en los dibujos hechos, ya que se puede considerar un trabajo artesanal.

    Desventajas de usar Pencil

    Algunos podramos considerar que no tiene desventajas, pero si ests acostumbrado al clsico programa que tiene opciones de crear motion y scripts para facilitar la gran carga de estar dibujando, entonces se puede decir que esta es la desventaja, ya que para obtener una animacin de movimentos reales se necesitan 24 fotogramas por segundo, lo que significa que se necesita dibujar 24 veces algn movimiento para verse real, pero eso depende de la calidad que le quieras dar a la animacin. La decisin es toda tuya y puedes usar los frames (o cuadros) que creas correctos.

  • PAGINA33BEGINS

    Gabriel Lpez [email protected]

    Mxico

    Conclusin

    Este programa promete mucho, pero para eso necesitamos poner nuestro granito de arena para nuevas versiones en las cuales se tiene contemplado exportacin a formato .Mov. Un total agradecimiento a Pascal Naidon y Patrick Corrieri por este proyecto hecho realidad y a todos los programadores que han colaborado.

    Antes de terminar, si quieres ver a Pencil en accin, nada mejor que ver unos vdeos:

    http://www.youtube.com/watch?v=ZhtMkeEbpXkhttp://www.youtube.com/watch?v=hQZrYZ-yRDshttp://www.youtube.com/watch?v=y0ZjGvez83g

    Enlaces:

    http://www.les-stooges.org/pascal/pencil/index.php?id=Homehttp://blog.batiburrillo.net/2008/04/08/pencil-un-software-tradicional-de-animacion-en-2d.htm

    mailto:[email protected]://www.youtube.com/watch?v=ZhtMkeEbpXkhttp://www.youtube.com/watch?v=hQZrYZ-yRDshttp://www.youtube.com/watch?v=y0ZjGvez83ghttp://www.les-stooges.org/pascal/pencil/index.php?id=Homehttp://blog.batiburrillo.net/2008/04/08/pencil-un-software-tradicional-de-animacion-en-2d.htm
  • PAGINA34BEGINS

    BSDCon: Barcelona 2008

    Congreso de diversas conferencias sobre sistemas operativos basados en BSD.

    Lugar: Universitat Politcnica de Catalunya.Campus Nord, edificio C6, aula E101. Espaa

    Fecha: 19 - 20 de Abril del 2008 Web: http://bcn.bsdcon.net/

    RailsConf 2008

    Conferencia oficial dedicada a Rails. Evento cargado de conferencias, sesiones, seminarios y foros.

    Orientada a mostrar modelos de negocios, paradigmas de desarrollo y estrategias para empresas incorporar Rails.

    Lugar: Portland, Oregon, USA.

    Fecha: 29 mayo al 01 junio de 2008

    Web: http://en.oreilly.com/rails2008

    GUADEC 2008

    Conferencia anual de usuarios y desarrolladores de GNOME Europa

    Lugar: Universidad de Baheehir, Instanbul, Turquia.

    Fecha: 7 al 12 de julio, 2008.

    Web: http://guadec.expectnation.com/

    GUAdemy

    Luego del xito de la primero versin donde se establecieron colaboraciones entre desarrolladores de KDE y GNOME se realiza este ao la segunda versin.

    Lugar: Universidad Politcnica de Valencia, Valencia, Espaa

    Fecha: 25 al 27 de abril de 2008

    Web: http://www.guademy.org/

    DudesConf

    Evento que tiene por fin reunir los contribuidores del proyecto Debian GNU/Linux.

    Lugar: Facultad de Informtica de la Universidad de La Corua. Campus de Elvia. Espaa

    Fecha: 2 al 4 de Mayo de 2008.

    Web: http://www.dudesconf.org/2008/

    http://bcn.bsdcon.net/http://en.oreilly.com/rails2008http://guadec.expectnation.com/http://www.guademy.org/http://www.dudesconf.org/2008/
  • FLISOL 2008

    El Festival Latinoamericano de Instalacin de Software Libre (FLISoL) es el evento de difusin de Software Libre ms grande en Latinoamrica. Se realiza desde el ao 2005 y su principal objetivo es promover el uso del software libre, dando a conocer al pblico en general su filosofa, alcances, avances y desarrollo.

    Tal como lo dice el sitio oficial, FLISOL se ha convertido en el evento de difusin ms grande del Software Libre y es por eso que para este nmero le damos un apartado especial.

    Para el equipo que trabaja en Begins, FLISOL siempre ha sido una fecha especial. Para su primera versin se cre LinuxChillan y en la segunda se dio el vamos a esta revista publicando en esa oportunidad el primer ejemplar.

    Por eso hacemos una extensa invitacin a participar, organizar y asistir al FLISOL 2008. No es necesario que vivas en algn lugar determinado ... FLISOL se hace a travs de todo Latinoamerica, si en tu localidad no existe uno, organiza tu propio FLISOL -en Chilln ciudad de Chile nos tom tan solo 1 semana para llevar y organizar el ao 2005 el FLISOL.

    El evento se compone de instalaciones de Software Libre a computadores que llevan los asistentes y en paralelo conferencias, talleres y ponencias sobre temas en torno al Software Libre. Todo esto en un mismo da -el 26 de abril de 2008- en muchas ciudades en todo Latinoamerica.

    Si la invitacin te pareci interesante pues asiste este 26 de abril a tu FLISOL mas cercano y disfruta del evento que es de carcter gratuito, as que son muchas razones por lo que no te puedes perder.

    Para ms informacin visita la web http://www.flisol.net/

    Si tienes organizado un evento y deseas que para la prxima edicin de Begins aparezca enva los datos a [email protected]. Si ya pas no te preocupes, puedes enviar la cobertura de la actividad.

    Atentamente

    Equipo de Revista Begins

    Imgen por Patricio Maciel (daleduro), CC BY-SA 3.0 Unported

    PAGINA35BEGINS

    http://www.flisol.net/mailto:[email protected]://creativecommons.org/licenses/by-sa/3.0/
  • Programacin

    EntendiendoADO.NETconMonoyPostgreSQL(III)Introduccin

    ADO .NET es la evolucin de la tecnologa ADO (Active X Data Objects) que permite la comunicacin de aplicaciones con bases de datos relacionales en sistemas operativos Microsoft, ADO fue diseado para ser dependiente de la plataforma y trabajar de manera siempre conectada con la fuente de datos al momento de hacer operaciones, ADO .NET adems de tener clases para trabajar con este modelo, presenta clases para trabajar con datos de una manera desconectada, esto es extrayendo los datos de la fuente mediante una consulta, desconectndose y manteniendo una copia en memoria, hacer la cantidad de operaciones necesarias y devolverlos a la fuente de datos de donde fueron tomados para mantener los cambios.

    EnestedocumentomostraremosmedianteunformularioelusodelasclasesdeADO.NETenunescenariodedatosdesconectadoycmoestemodelofuncionaconsoftwarelibreysobresistemasoperativosdeMicrosoft,usandolaplataforma.Netdelproyectomonohttp://www.gomono.comyelservidordebasesdedatosPostgreSQLhttp://www.postgresql.org.

    La clase Dataset y el modelo desconectado

    El modelo desconectado de ADO .NET se centra en la clase DataSet la cual es una representacin en memoria de la estructura de datos similar a la estructura de una base de datos relacional.Para nuestro ejemplo crearemos una script para la base de datos pubs (creada anteriormente).

    Listado 3.1 Script para crear la tabla jobs con un registroCREATE TABLE jobs ( job_idserialNOT NULL PRIMARY KEY, job_desccharacter varying NOT NULL, min_salaryintegerNOT NULL, max_salaryintegerNOT NULL);INSERT INTO jobs(job_desc,min_salary,max_salary)VALUES('Programador',1000,2000);Ejecutamos el script en PostgreSQL para crear la tabla.

    PAGINA36BEGINS

    http://www.go-mono.com/http://www.postgresql.org/
  • Ejecutamos el script en PostgreSQL para crear la tabla.

    Programacin

    Una vez con la tabla creada usaremos el siguiente listado para mostrar, agregar y eliminar datos usando las clases: NpgsqlDataAdapter, Dataset y CommandBuilder las cuales son esenciales para realizar operaciones en el modelo de datos desconectado y las explicaremos en el resto de este documento.Listado 3.2 Formulario GTK# para demostrar el trabajo con datos de manera desconectadausing System;using Gtk;using System.Data;using Npgsql;namespace Godel.Listados {class Listado3_4 : Gtk.Window {

    private Label lbMsg = new Label("");private Entry txtId = new Entry();private Entry txtDescr = new Entry();private Entry txtsalaryMin = new Entry();private Entry txtsalaryMax = new Entry();private Button btnNew = new Button(Stock.New);private Button btnDel = new Button(Stock.Delete);private Button btnCommit = new Button("Sincronizar");private Button btnAdd = new Button(Stock.Add);private Button btnCancel = new Button(Stock.Cancel);private DataSet ds = null;private NpgsqlDataAdapter dataAdapter = null;private NpgsqlConnection conn = null;private int numRecord = 0,regId = 0,maximumRecord = 0;private HScrollbar navigatorBar = null;

    PAGINA37BEGINS

  • Programacin

    public Listado3_4(): base("Listado 3.4"){BorderWidth=8;SetDefaultSize(208,220);this.DeleteEvent += new DeleteEventHandler(OnWindowDelete);Frame frame = new Frame ("Registro de profesiones");Add(frame);VBox MainPanel = new VBox (false, 8);frame.Add(MainPanel);Table table = new Table (4, 2, false);table.RowSpacing=2;table.ColumnSpacing=2;MainPanel.PackStart(table);Label lbjob_id = new Label("id");table.Attach(lbjob_id,0,1,0,1);txtId.IsEditable = false;table.Attach(txtId,1,2,0,1);Label lbjob_desc = new Label("Descripcion");table.Attach(lbjob_desc,0,1,1,2);table.Attach(txtDescr,1,2,1,2);Label lbmin_salary = new Label("Sueldo minino");table.Attach(lbmin_salary,0,1,2,3);table.Attach(txtsalaryMin,1,2,2,3);Label lbmax_salary = new Label("Sueldo maximo");table.Attach(lbmax_salary,0,1,3,4);table.Attach(txtsalaryMax,1,2,3,4);HButtonBox controlPanel = new HButtonBox();controlPanel.Layout=ButtonBoxStyle.Start;controlPanel.PackStart(btnNew, false, true, 8);controlPanel.PackStart(btnDel, false, true, 8);controlPanel.PackStart(btnCommit, false, true, 8);MainPanel.PackStart(controlPanel,false,false,0);HButtonBox AddPanel = new HButtonBox();AddPanel.Layout=ButtonBoxStyle.Start;AddPanel.PackStart(btnAdd, false, true, 8);AddPanel.PackStart(btnCancel, false, true, 8);MainPanel.PackStart(AddPanel,false,false,0);Adjustment adj = new Adjustment(0, 0, 1, 1, 0, 0);navigatorBar = new HScrollbar(adj);HBox browsePanel = new HBox();browsePanel.PackStart(navigatorBar, true, true, 8);MainPanel.PackStart(browsePanel, false, false, 0);MainPanel.PackStart(lbMsg,true,false,0);btnNew.Clicked += new EventHandler(btnClickedNew);btnDel.Clicked += new EventHandler(btnClickedDel);btnCommit.Clicked += new EventHandler(btnClickedCommit);btnAdd.Clicked += new EventHandler(btnClickedAdd);btnCancel.Clicked += new EventHandler(btnClickedCancel);navigatorBar.ChangeValue += new ChangeValueHandler(navigatorBar_ChangeValue);ShowAll();setAdd(false);bindData();

    }

    public void OnWindowDelete(object o, DeleteEventArgs args) {Application.Quit();

    }

    PAGINA38BEGINS

  • Programacinvoid btnClickedNew(object o, EventArgs args){

    clearTexts();regId = MAXIMUNRECORD;regId++;txtId.Text = regId.ToString();setAdd(true);

    }void btnClickedDel(object o, EventArgs args){

    if(navigatorBar.Value > 0){DataRow r = ds.Tables[0].Rows[Convert.ToInt32(navigatorBar.Value)];r.Delete();displayReg(ds,Convert.ToInt32(navigatorBar.Value -1));

    }}void btnClickedCommit(object o, EventArgs args){

    try {//abrimos la conexion al serverconn.Open();//creamos el constructor de comandosNpgsqlCommandBuilder cmdBuilder = new NpgsqlCommandBuilder(dataAdapter);int rowsAffected = dataAdapter.Update(ds,"jobs");using (Dialog dialog = new

    MessageDialog(this,DialogFlags.Modal,MessageType.Info,ButtonsType.Ok,"(" + rowsAffected.ToString()+ ") registro(s)

    afectado(s)",0)) {

    dialog.Run ();dialog.Hide ();

    }}catch(NpgsqlException e){ lbMsg.Text = e.Message; }finally { conn.Close(); }

    }void btnClickedAdd(object o, EventArgs args){

    if(txtId.Text.Length > 0){

    DataRow r = ds.Tables[0].NewRow();r["job_id"] = txtId.Text;r["job_desc"] = txtDescr.Text;r["min_salary"] = txtsalaryMax.Text;r["max_salary"] = txtsalaryMin.Text;ds.Tables[0].Rows.Add(r);displayReg(ds,MAXIMUNRECORD - 1);setAdd(false);

    }else { lbMsg.Text = "Teclee un ID"; }

    }void btnClickedCancel(object o, EventArgs args){

    setAdd(false);displayReg(ds,MAXIMUNRECORD-1);

    }

    PAGINA39BEGINS

  • Programacin

    private void setAdd(bool b){if(b){

    btnAdd.Show();btnCancel.Show();btnNew.Hide();btnDel.Hide();btnCommit.Hide();

    }else{

    btnAdd.Hide();btnCancel.Hide();btnNew.Show();btnDel.Show();btnCommit.Show();

    }txtDescr.IsEditable = b;txtsalaryMin.IsEditable = b;txtsalaryMax.IsEditable = b;

    }private void bindData(){

    conn = new NpgsqlConnection("Server=127.0.0.1;Port=5432;User Id=postgres;Password=chikome;Database=pubs;");

    dataAdapter = new NpgsqlDataAdapter("SELECT job_id,job_desc,min_salary,max_salary FROM jobs",conn);

    ds = new DataSet();try{ dataAdapter.Fill(ds,"jobs");}catch(NpgsqlException e){ lbMsg.Text = e.Message; }finally { conn.Close(); }displayReg(ds,numRecord);

    }private void displayReg(DataSet ds,int row){

    MAXIMUNRECORD = ds.Tables[0].Rows.Count;navigatorBar.SetRange(0,MAXIMUNRECORD - 1);DataTable tbJobs = ds.Tables[0];if(tbJobs.Rows.Count != 0){

    txtId.Text = Convert.ToString(tbJobs.Rows[row][0]);txtDescr.Text = Convert.ToString(tbJobs.Rows[row][1]);txtsalaryMin.Text = Convert.ToString(tbJobs.Rows[row][2]);txtsalaryMax.Text = Convert.ToString(tbJobs.Rows[row][3]);

    }lbMsg.Text = "Registro " + Convert.ToString(row + 1) + " de " +

    MAXIMUNRECORD;navigatorBar.Value = row;

    }public int MAXIMUNRECORD{

    set{ maximumRecord = value; }get{ return maximumRecord; }

    }

    PAGINA40BEGINS

  • private void clearTexts(){txtId.Text = "";txtDescr.Text = "";txtsalaryMin.Text = "";txtsalaryMax.Text = "";

    }[STAThread]public static void Main(string[] args){

    Application.Init();new Listado3_4();Application.Run();

    }private void navigatorBar_ChangeValue(object o, ChangeValueArgs args){

    numRecord = Convert.ToInt32(navigatorBar.Value);displayReg(ds,numRecord);

    }}}

    Programacin

    EnlafuncinbindData()usamoselmtodofill()delaclaseNpgsqlDataAdapterparaejecutarlaconsultaSQLyalmacenarlosdatosdevueltosenlaclaseDataSet,elmtodofill()recibecomoargumentoselnombredelainstanciaDataSetyelnombredelatabladelacualprovienelainformacin.

    PAGINA41BEGINS

  • UnavezconlainformacinenelDataSetpodemostrabajarconlosdatosdemaneradesconectada,lasfuncionesdelegadasbtnClickedAddybtnClickedDeloperanexclusivamenteconlosregistrosalmacenadosenelobjetoDataSetmedianteunobjetoDataRowutilizandolosmtodosAdd()yDelete()respectivamente.

    Programacin

    ElobjetoNpgsqlDataAdapterademsdehacerelllenadodelDataSetestambinresponsabledequeloscambioshechosseanaplicadosalservidordedatosutilizandoelmtodoUpdate(),recuperandolacantidadderegistrosafectadosenunavariabledetipoentera.int rowsAffected = dataAdapter.Update(ds,"jobs");

    PAGINA42BEGINS

  • NpgsqlCommandBuilderconstruyeloscomandosINSERT,DELETEyUPDATEbasandoseenelesquemadelDataSet,yqueesimportanteparaqueseejecutenestoscomandosalmomentodesincronizar.NpgsqlCommandBuilder cmdBuilder = new NpgsqlCommandBuilder(dataAdapter);LaclaseNpgsqlDataAdapternecesitaunaconexinfsicaalservidordelabasededatos,silaconexinnoestaabierta,laclaseNpgsqlDataAdapterseencargadeabrirlaycerrarla,estaprcticanoesmuyrecomendable,lomejoresabrirycerrarlaconexinmanualmentesinolvidarejecutarladentrodelbloquetry/catch/finallyparaunamayorseguridad.

    Programacin

    Conclusin

    ADO.Netpresentacapacidadesmuypotentesparaeltrabajoconbasesdedatosrelacionalesque son aprovechables dentro del ambiente GNU/Linux, mi intencin fue mostrar enresumen las caractersticas ms elementales y significativas de ADO .Net recomiendo lassiguientesreferenciasparaunamayorprofundidadeneltema.

    Sobrematerial de PostgreSQL recomiendo el excelente sitio http://www.postgresql.cl/ yparaADO.NEThttp://npgsql.projects.postgresql.org/docs/manual/UserManual.htmlLosejemplospuedenserdescargadosdehttp://www.humansharp.com/index.php?var=code

    EstedocumentoestprotegidobajolalicenciadedocumentacinlibreFreeDocumentacionLicense del ProyectoGNU,para consultaver el sitiohttp://www.gnu.org/licenses/fdl.txt ,todapersonaquelodeseeestautorizadaausar,copiarymodificarestedocumentosegnlospuntosestablecidosenlaLicenciaFDL

    [email protected]

    PAGINA43BEGINS

    http://www.postgresql.cl/http://npgsql.projects.postgresql.org/docs/manual/UserManual.htmlhttp://www.humansharp.com/index.php?var=codehttp://www.gnu.org/licenses/fdl.txtmailto:[email protected]
  • PAGINA44BEGINS

    El origen de todoMuchos de nosotros nos declaramos seguidores del

    software libre. Incluso tratamos de apoyarlo promoviendo iniciativas como esta misma publicacin, ayudando en foros, instalando sistemas libres a nuestros amigos... somos acaso los nicos? Se trata de la paranoia de cuatro locos?

    Desde hace muchos aos (25 exactamente), la Free Software Foundation o Fundacin para el Software Libre trata de lograr que los usuarios de computadoras seamos cada da un poco ms libres.

    Que ese objetivo (idealista?) se consiga o no, depender en buena medida de nuestra actitud ante la vida y la fuerza que pongamos en conseguirlo, educando a nuestros vecinos y conocidos sobre la creciente importancia que tiene el software libre.

    Por eso es de reconocer con especial mencin el trabajo que realiza la FSF. Todos podemos colaborar con ellos comprando ropa, distribuciones, donaciones... o simplemente dndola a conocer a nuestras amistades. Eso hacemos ahora, esperamos que sea de provecho:

    http://www.fsf.org/Os animamos especialmente a enteraros de los motivos que mueven a la FSF a realizar un

    llamamiento para boicotear a Trend Micro. Vedlo vosotros mismos aqu:http://www.fsf.org/blogs/community/boycottTrendMicro.html

    Valiente, descarado, irreverente, emprendedor, inteligente... el blog de Jorge Cortell es una caja de sorpresas donde podremos encontrar multitud de reflexiones sobre el software libre, hacking, nuevas tecnologas, etc. Muy recomendable.

    http://www.cortell.net/

    Interesantsimo el comienzo de su libro Suidad (en ingls Shelfness).

    http://www.cortell.net/suidad/

  • Larazndemontarunsegundodiscoduroesdiversa,desdeganarunpocomasdeespaciolibre hasta organizar mejor la estructura dearchivodenuestrosistema.

    En los sistemas operativos Unix/Linuxsolamenteexisteunnicorbol dedirectoriosdondese organizan losarchivos.Noexisteelconcepto de unidad de disco propia desistemas operativos tales como MSDOS oWindows.

    Cada dispositivo de disco (disco duro, CDROM, pendrive, etc.) aloja un sistema dearchivosque,conceptualmente,noesmsqueunrboldedirectorios.Dichorbolpuedeserintegrado en el rbolnico de Unix utilizandounpunto demontaje. El punto demontajeescualquier directorio a partir del cual sevisualizarelsistemadearchivosmontado.Siel punto de montaje contena ficheros, estosdesaparecern, para visualizar los deldispositivomontado.

    Actualmente el sistema de archivos NTFS deMicrosoft utilizado en Windows tambinsoporta puntos de montaje de volmenes,asignndole letrasestndares de dispositivos,(G:,F:),ocarpetasqueestnsituadasdentrodeunvolumenntfs.

    Esimporteentenderesosnuevosconceptosyaquealmontarelsegundodiscoduroennuestrosistema operativo GNU/LINUX no lo va areconocerautomticamenteyaquenoexisteelconceptodeunidadesdediscocomoC:,F:,G:,ahquemontarelsegundodiscomanualmentecomoseexplicoanteriormente,enlossistemasoperativosUnix/Linuxtodoslosdispositivossonarchivos, por ende hablaremos de punto demontajeparaunsistemadearchivo.

    Nota: Se borrarn los datos del nuevo discoduro, haganuna copiade seguridadde todoslosdatosdelordenador.

    Es importante verificar que el segundo discoeste bien conectado es decir que estepuenteado como disco esclavo (o maestro) yconectadoa su respectivo cable IDEo SATA,configurar el Setup de la mquina para quereconozcaelsegundodiscosegnseaelcaso.

    PAGINA45BEGINS

  • NombredelosdispositivosdealmacenamientoenGNU/LINUX

    DiscoIDEhda...............primerdiscohdb...............segundodiscohdc...............tercerdiscohdd...............cuartodisco

    Lasparticionesseenumerandelasiguientemanera:

    hda1.....particin1delprimerdiscohda2.....particin2delprimerdiscohdb1.....particin1delsegundodiscohdb2.....particin2delsegundodiscohdc1.....particin1deltercerdiscohdc2.....particin2deltercerdisco

    DiscoSCSIsda.......primerdiscoscsisdb.......segundodiscoscsisdc.......tercerdiscoscsisdd.......cuartodiscoscsi

    Lasparticionesseenumerandelasiguientemanera:

    sda1......particin1delprimerdiscosda2......particin2delprimerdiscosdb1......particin1delsegundodiscosdb2......particin2delsegundodisco

    DiscodiscosSerialAta(SATA)

    SonreconocidosporGNU/LINUXcomodiscosSCSI

    Disquetesfd0.......paralaprimeradisqueterafd1.......paralasegundadisquetera

    Cdromcdrom0paraelprimerlecto/grabadordeCdscdromparaelsegundolecto/grabadordecds

    Bastayadeteora,manosalaobra.

    El objetivode la presenteguaes montarunsegundodiscoduro yaprendercmomovercualquier particin al nuevo disco duro. Ennuestrocaso,moveremos/homealnuevodiscoduroo si loprefierepodrusareldiscoparaotrotipodeinformacin.

    Comosevaamover/homealnuevodiscoduroreiniciamos la mquina y seleccionamossingleuser mode, la segunda opcin delcargadordearranquegrub.Comosemuestraenlasiguienteimagen:

    PAGINA46BEGINS

  • La razn de arrancar de este modo es evitarque entremos en modo multiusuario ytengamos algn proceso abierto que nospuede traer problemas al momento de mover/homealnuevodisco.

    Nossaldrlasiguientepantalla:

    Es importante que identifique bien cual es eldiscoprimariodondetienemontadoelsistemade archivo GNU/LINUX, y el segundo disco.Tomenotasobrecomoloestareconociendoelsistema.

    FDISK

    Es una herramienta para la manipulacin departiciones. Para mayor informacin consultaman fdisk, con esta herramienta tambinpodemosborrarycrearlasnuevasparticiones.Paraesteguanosevaautilizar,sevaausarcfdiskquemuestraunainterfazmsamigable.

    Una vez identificado el segundo discoprocedemosaborrarsusparticionesycrearlanuevaparticinparaGNU/LINUX.

    #fdisk/dev/hdx

    Dondelaxeslaletraqueleasignoelsistema.

    PAGINA47BEGINS

    Introducimos la clave de root, debe aparecernombremquina:~# en la consola. Yescribimoselsiguientecomando

    #fdiskl

    Elcomandofdisklnosdainformacindelosdiscosdurosconsusrespectivasparticionesypuntosdemontaje.

  • Una vez finalizado el borradode la particinnos muestra la siguiente pantalla dondeseleccionamos [ New] para crear la nuevaparticinGnu/Linux.

    PAGINA48BEGINS

    Seleccionamos la opcin [ Delete ] y lasiguientepantallamostrarelespaciolibre,enelcasoqueeldiscotengamasdeunaparticinprimaria repetiremos el mismo proceso para cadaunadeellas.

    Seleccionamos la opcin [ Write ] para guardar los cambios.

    Respondemos yes para borrar la particin.

    Nos pregunta que tipo de particin se va crear seleccionamos [ Primary ] (Primaria)

  • El toque final para el nuevo disco es darleformatoparaesoescribimos.

    #mkfs.ext3/dev/hdx1(Recuerdesustituirhdxyelnmeroporloqueasignelsistema)mke2fs1.40WIP(14Nov2006)Etiquetadelsistemadeficheros=TipodeSO:LinuxTamaodelbloque=4096(bitcora=2)Tamaodelfragmento=4096(bitcora=2)524288nodosi,1048564bloques52428bloques(5.00%)reservadosparaelsperusuarioPrimerbloquededatos=0Maximumfilesystemblocks=107374182432bloquedegrupos32768bloquesporgrupo,32768fragmentosporgrupo16384nodosiporgrupoRespaldodelsperbloqueguardadoenlosbloques:32768,98304,163840,229376,294912,819200,884736

    PAGINA49BEGINS

    Asignamoselespacioqueselevaadaraesaparticin,sieldiscoesgrandesepuededividirhasta en cuatros particiones primarias (serepiteelprocesodecrearparticionesydarlesuntamao),siespequeo,comoestecaso,leasignamostodoelespaciolibre.

    La siguiente pantalla nos muestra la particin con su espacio asignado, seleccionamos [ Write]

    Respondemos yes, como la vez anterior, para grabar los cambios realizados, con eso ya tenemos nuestro disco duro listo y preparado para Gnu/Linux. Luego salimos del cfdisk con la opcin [ Quit ].

    Escribimosenlalneadecomando:

    debian:~#fdiskl

    para comprobar como quedo todo. Se puedeobservar que el nuevo disco duro /dev/hdx tieneyalaparticinLinux

  • PAGINA50BEGINS

    Mientrasseescribanlastablasdenodosi:terminadoCreandoelficherodetransacciones(16384bloques):hechoEscribiendosuperbloquesylainformacincontabledelsistemadeficheros:hecho

    Estesistemadeficherosserevisarautomticamentecada39meseso180das,loquesucedaprimero.

    Yaelnuevodiscoduroestalisto,peronosepuedeusartodavaenelsistemadearchivos,paraesotenemosquemontarlo.Acontinuacinescribimos:

    #cd/mnt/#mkdirdisco2

    Eldirectoriodisco2esparamontarelnuevodiscoduroymover/homeaesaparticin

    #mount/dev/hdx/mnt/disco2

    El comando mount es el que permite montarcualquierdispositivodealmacenamiento.ParamayorinformacinmanmountMovemos/homealnuevodisco

    #cpa/home/*/mnt/disco2/

    ElparametroaeslomismoqueescribirdpR

    esdecir todolospermisosdelusuarioy todoslosdirectoriodentrodel.

    #cd/mnt/disco2#lsl

    lsparaverelcontenidodeldirectorioyverificarquesecopiotododesde/home.Paradiferenciarel/homeviejodelnuevoeneldirectorio/mnt/disco2sevaescribiresto:

    #ls>disconuevo.txt

    Yaestalistoel /homeenelnuevodisco,solonos falta agregarlos al /etc/fstab que es elarchivo encargado de montar de formaautomtica toda la informacin de losdispositivosdealmacenamiento.

    Paraesoseutilizaraeleditornano,tambinsepuedehacerconeleditorVi,peronanoesmasfcildeusar.

    Anteshacerunacopiadelarchivo/etc/fstab

    #cp/etc/fstab/etc/fstab.respaldo#nano/etc/fstab

    Elviejofstab

    #/etc/fstab:staticfilesysteminformation.##proc/procprocdefaults00/dev/sda1/ext3defaults,errors=remountro,usrquota,grpquota01/dev/sda5noneswapsw00/dev/hdc/media/cdrom0udf,iso9660user,noauto00/dev/fd0/media/floppy0autorw,user,noauto00

  • PAGINA51BEGINS

    Sitodosaliobiendeberaarrancarnormalmentelamquinaconsuentornodeescritorionormal,yenrazde/homedeberaexistirelarchivodisconuevo.txt.

    Encasodeerrorreinicialamquina,entraenmodosingleusermodeycorrigeelproblemaen/etc/fstab.

    RecuerdaloledoalprincipiodelaguasobreelpuntodemontajeElpuntodemontajeescualquierdirectorioapartirdelcualsevisualizarelsistemadearchivosmontado.Sielpuntodemontajecontenaficheros,estosdesaparecern,paravisualizarlosdeldispositivomontado

    Al mover toda la informacin de /home al nuevodisco y montarlo la informacin que contena/home todavasigueexistiendoenesedirectorio,eso sucede porque la informacin existentedesaparece para mostrar la nueva informacinqueseestamontando,perofsicamenteestaah.

    Comoyasecomprobquetodoestafuncionandose reinicia la mquina y entramos en singleusermode ledamoslaclavederoot.Ydesmontamos/home.

    #umount/home#cd/home

    Verifiquequealhacerun#lsnoexistaelarchivodisconuevo.txtyassepuedaborrartodosucontenido.

    nombremquina:/home#rmr*nombremquina:/#ls

    Nodebeexistirnadaah.

    Otramaneradehacerlomismoerahacerunacopiade/homeyluegoborrartodolode/homeperomegustamsdeesamanera,si/homeesmuygrandeytengopocoespacioeneldisconosevaapoderhacerelrespaldode/home,reiniciamoslamquina.

    Elnuevofstab

    #/etc/fstab:staticfilesysteminformation.##proc/procprocdefaults00/dev/sda1/ext3defaults,errors=remountro,usrquota,grpquota01/dev/sda5noneswapsw00/dev/hda/homeext3defaults01/dev/hdc/media/cdrom0udf,iso9660user,noauto00/dev/fd0/media/floppy0autorw,user,noauto00

    Agregamoslasiguientelneaalnuevofstab

    /dev/hda/homeext3defaults01

    Nota:encasoque/homeesteenotraparticincomentamosesalneaconun#

  • PAGINA52BEGINS

    #reboot

    NotaFinal:elprocedimientoeselmismoparamovercualquierdirectorioporejemplo/varquesondirectoriosquevancreciendoocualquierotro,siencambiodeseausaresediscoparaotrofinlospasossonlossiguientes:

    Creareldirectorioenel/,porejemplo:

    #mkdirmusica

    Darlepermiso:

    #chmod666/musica

    Agregarlasiguientelneaal/etc/fstab.

    /dev/hdxy/directoriomoverext3defaults01

    Recuerdereemplazarxporlanuevaunidadeyporlaparticin.

    Ing.WilsonCastillo.SanCristbalEdo.Tchira

    [email protected]

    Linuxuser#461179

  • PAGINA53BEGINS

    Siempre que nos hablan acerca del software lo primero que se nos viene a la cabeza son los conflictos ticos entre el software privativo y el libre, pensamos en los gigantes del monopolio en sistemas operativos con sus pros y contras, luego aparece al ruedo Linux con todos sus sabores y colores, en fin, en este tema todos toman un lugar en sus trincheras y defienden su postura a muerte con un milln de razones. Pero, se han puesto a pensar en dnde y cmo entra el amor en todo esto de la tecnologa?, por favor no se asuste, no pretendo cansarlos con temas religiosos ni morales, solo les presentar el software desde otro punto de vista, el punto de vista del amor.

    Por qu existen tantas religiones, profesiones, oficios, gustos, etc.? y por qu existe el software? simplemente para satisfacer nuestros deseos, todos quieren comunicarse, trabajar, trascender, jugar, adquirir conocimiento y al final todas estas actividades redundan en crecimiento espiritual, claro porque pasarnos noches enteras completando alguna etapa del juego de moda, tambin es parte de crecer, madurar, quemar los cartuchos de los deseos ms bsicos para ir enfocndonos en los ms elevados, esta maduracin llega naturalmente, no podemos obligar a alguien a que piense como nosotros, as como no podemos obligar a un rbol recin plantado a que de frutos. Siempre llega el momento en la vida en que nos preguntamos por qu existo? a dnde voy?, esto no es nada nuevo y es sntoma inequvoco de crecimiento y evolucin espiritual.

    Es en ese momento en que el software libre y/o el cdigo abierto entran en la vida de sus cultores, al pensar en que el conocimiento no es privativo, no es privilegio de crculos cerrados, que son bienes comunes que deben ser difundidos para el dominio pblico, al querer compartir algo que nos resulta hermoso y til, estamos trascendiendo a este mundo, el sentimiento primario de ayudar a otros por el solo hecho de mejorar la calidad de vida del prjimo, eso es bsicamente una expresin de amor, y todo lo que se haga con amor sincero nos acerca un paso ms hacia ser mejores personas, nos enfoca hacia Dios.

  • PAGINA54BEGINS

    Entonces por qu es que ud. eligi y usa un determinado software libre o de cdigo abierto en vez de utilizar uno privativo si no cree en Dios?, algunos podrn argumentar que fue por la usabilidad, esttica, tica o simple curiosidad. Pero si lo analizan a fondo podrn darse cuenta que no existen las casualidades, sino ms bien las causalidades, y si en una primera instancia nuestro acercamiento puede parecer azaroso no lo es, todo en estos universos est conectado, basta que pidamos (consciente o inconscientemente) y nos ser proporcionado, de esa forma es que tal o cual programa o filosofa de software lleg a nuestro conocimiento, lleg porque estbamos preparados para recibir este regalo, as como luego de un ao el rbol ya est preparado para dar frutos, no es que los que usamos software libre seamos superiores a los que no lo conocen o no les gusta, es solo que ellos son otro tipo de rbol y se desarrollan de manera diferente, pero eso si, todos crecen.

    En conclusin, discutir acerca de cual es el mejor sistema operativo es tan odioso e infructuoso como hacerlo por religin, todos tenemos el derecho de elegir y su opcin es tan vlida como la nuestra. Entonces la pregunta es como decidirse por que tipo de software usar?, y la respuesta llega naturalmente, ud. decidir segn su nivel de madurez espiritual ms que por la intelectual.

    Luis Alvarez AldayStaff Begins

  • PAGINA55BEGINS

    Esto podra sonar raro. Por qu quieres acceder remotamente al servidor Linux desde un equipo con XP? Podras encontrarte alejado del servidor y lo nico que tienes a mano es un pc con M$ Windows. Pero adems de acceder a esa caja Linux, quieres ejecutar algunas aplicaciones grficas. La solucin rpida y efectiva es Xming y PuTTY. A diferencia de aplicaciones como VNC que nos permite tomar el control de un equipo remoto, Xming+PuTTY permite correr aplicaciones individuales en el escritorio Windows.

    Xming es un servidor X-Window libre, sencillo y gratuito para M$ Windows (XP/2003/Vista). Esta lleno de caractersticas, es pequeo y rpido, y es muy simple de instalar. PuTTY es un cliente ssh que nos da acceso a una consola dentro del servidor. Combinando ambas aplicaciones podremos iniciar aplicaciones grficas de Linux en Windows XP de una manera bien sencilla.

    Iniciamos Xming (debemos ver un icono con una X cerca del reloj en la barra de tareas)

    Luego iniciamos PuTTY, y habilitamos enable X11 forwarding en la seccin X11, tal como se ve en la captura.

    Luego ingresamos a nuestro servidor Linux.

  • PAGINA56BEGINS

    En Host Name ingresar la direccin IP del servidor. En Saved Sessions escribimos un nombre para la configuracin y luego presionamos el botn Savepara guardar los datos.

    Para iniciar la sesin en la caja Linux, presionamos Open.

    Una tpica consola *NIX, nos preguntar el nombre de usuario y contrasea, necesarios para ingresar al servidor.

  • PAGINA57BEGINS

    Ya podemos ejecutar aplicaciones grficas de Linux en nuestro Windows.

    Podemos arrancar gKrellm, para monitorizar los recursos del servidor, Konqueror, etc. Intntalo!

    Enlaces:

    http://www.straightrunning.com/XmingNotes/http://www.chiark.greenend.org.uk/~sgtatham/putty/

    Alex Sandoval [email protected]

    Miembro del equipo de Begins

    http://www.straightrunning.com/XmingNotes/http://www.chiark.greenend.org.uk/~sgtatham/putty/mailto:[email protected]
  • Pgina

    http://revistabegins.org (pronto!)

    http://www.linuxchillan.cl/?q=node/203

    PARTICIPAEN LAREVISTA

    [email protected]

    Envanos tus artculos, tutoriales, entrevistas, sugerencias, etc.

    http://revistabegins.org/http://www.linuxchillan.cl/?q=node/203mailto:[email protected]