Fundamentos de sistemas GNU/LINUX

Embed Size (px)

Citation preview

  • 8/14/2019 Fundamentos de sistemas GNU/LINUX

    1/273

    F

    FU

    UN

    ND

    DA

    AM

    ME

    EN

    NT

    TO

    OS

    SD

    DE

    E S

    SI

    IS

    ST

    TE

    EM

    MA

    AS

    SG N U /L I N U X

    GUIA DE ESTUDIO HACIA UNA CAPACITACION SEGURA

    F

    FU

    UN

    ND

    DA

    AC

    CI

    IO

    ON

    NC

    C

    d

    di

    ig

    go

    o

    L

    Li

    ib

    br

    re

    e

    D

    Do

    om

    mi

    in

    ni

    ic

    ca

    an

    no

    oA

    An

    nt

    to

    on

    ni

    io

    o

    P

    Pe

    er

    r p

    pi

    in

    na

    an

    n1

    Fundacin Cdigo Libre Dominica

  • 8/14/2019 Fundamentos de sistemas GNU/LINUX

    2/273

    F

    FU

    UN

    ND

    DA

    AM

    ME

    EN

    NT

    TO

    OS

    SD

    DE

    E S

    SI

    IS

    ST

    TE

    EM

    MA

    AS

    SG N U /L I N U X

    GUIA DE ESTUDIO HACIA UNA CAPACITACION SEGURA

    F

    FU

    UN

    ND

    DA

    AC

    CI

    IO

    ON

    NC

    C

    d

    di

    ig

    go

    o

    L

    Li

    ib

    br

    re

    e

    D

    Do

    om

    mi

    in

    ni

    ic

    ca

    an

    no

    o2

    http://www.codigolibre.org

  • 8/14/2019 Fundamentos de sistemas GNU/LINUX

    3/273

    II NTRODUCCINNTRODUCCIN

    LOS PROPSITOS DEL CURSO

    Los profesionales de la tecnologa de la informacin (TI) son crticos hoy da para el ambientecio. Adquirir las herramientas y conocimiento disponible en la tecnologa de hoy

    GNU/Linux y el Cdigo Libre y Abierto han colocado un nuevo estndar en lo que es desarrollo e tacin de aplicaciones nuevas y personalizables. GNU/Linux contina ganando espacio de reconentre los profesionales y administradores del TI debido a su flexibilidad, estabilidad, y su poderonalidad. Amedida que ms empresas utilizan GNU/Linux, crece la necesidad de soporte y planificala integracin de GNU/Linux en infraestructuras nuevas y/o existentes. El rol del administrador eimplementacin y desarrollo de soluciones basadas en GNU/Linux. Su xito o derrota dependeconocimiento y experiencia de esta fantstica arquitectura.

    Este curso es un repaso comprensivo de las caractersticas y funcionalidad de GNU/Linux, or preparar al estudiante con las herramientas necesaria para la certificacin. Explicacin detallada se

    los conceptos claves, muchos conceptos y utilidades de GNU/Linux son idnticos sin importar la despecfica siendo utilizada. Algunas caractersticas estn disponibles en algunas distribuciones, yaadidas durante la instalacin. La naturaleza de GNU/Linux y el Software Open Source, es tal, qual fuente y cambio a funcionalidad de cualquier componente debe ser incluido en la distribucin eLos conceptos sublimes de las capacidades de GNU/Linux se mantienen consistentes a travs de c bucin, kernel y cambio de Software.

    Estos libros han sido desarrollados de acuerdo con los estndares de la industria de la certifiGNU/Linux. Los objetivos de la certificacin GNU han sido elementos claves en el desarrollo de rial. La secuencia de los exmenes de certificacin GNU/Linux provee la gama ms amplia de los necesarios para dominar GNU/Linux. Los objetivos de las certificaciones LPI y RHCE tambin s

    dos. El CD interactivo y la pgina Web con el curso contiene videos digitales y pequeas prcticascin mltiple igual a los del exmen. En el libro LA GUIA DEL ESTUDIANTE se provee una gufica para la preparacin de la certificacin.

    Este libro provee los conceptos y principios fundamentales necesarios para administrar unGNU/Linux. Los conceptos y las tareas de administracin pueden ser un poco amplios. Se le dar cacin del rol del administrador, estructura y funcin detallada del kernel, y cubriremos tpicos ativos claves del manejo de paquetes, procesos, espacio de disco, Backups y los usuarios as como programticas, y los Logs/Registros del sistema. Este conjunto de herramientas te permitirn aprote administrar un sistema GNU/Linux sea este de unos cuantos hasta miles de usuarios. Estos cap bin te proveern la informacin que necesitas para Certificarte.

    Fundamentos de GNU/Linux proporciona una introduccin a profundidad de los conceptos y dcipios que son necesarios para instalar un sistema GNU/Linux y desenvolverse en los ambientes ddel X y de la lnea de comandos. Este manual da la direccin paso a paso para las distribuciones imde GNU/Linux y su instalacin, incluyendo RedHat, Debian, Mandrake y Slackware. Se enfatizaceptos de instalacin, las utilidades, y la funcionalidad de GNU/Linux comn a todas las distribestas se explican en detalle adicional. Un principiante o un experto pueden aprender o repasar losde particionar discos y localizar los archivos de configuracin, usando el shell y las consolas, scripts, y editar archivos de texto que permanecen dominantes, sin importar la nuevas herramienta para los ajustes de configuracin. Este conjunto de tpicos permitir que usted instale y configure

    3

    Fundacin Cdigo Libre Dominica

    FUNDAMENTOS DE SISTEMA GNU/LINUXGUIA DE AUTO ESTUDIO HACIA UNA CAPACITACION SEGURA

  • 8/14/2019 Fundamentos de sistemas GNU/LINUX

    4/273

    mente un sistema GNU/Linux. En estos captulos tambin se le provee la informacin necesaria paraficar sus habilidades en GNU/Linux

    METAS DEL CURSOEste curso le proveer la informacin necesaria para completar los siguientes tpicos:

    Describir los componentes estructurales y distinguir entre una distribucin de GNU/Linux y otra.

    Describir software de fuente abierta (Software Open Source) y diferenciar entre GNU/GPL. Crear los disquetes de arranque de instalacin. Instalar las principales distribuciones de GNU/Linux: RedHat (RPM), Debian (DPKG) y Slac

    (tar.gz). Utilizar los ambientes de escritorio KDE y GNOME. Instalar y configurar XFree86. Localizar y utilizar la ayuda en lnea. Configurar el hardware del sistema. El uso de fdisk o el cfdisk para crear, corregir, y suprimir particiones del disco. Utilizar el LILO/GRUB para manejar opciones para cargar el sistema. Arrancar el sistema, cambiar los runlevels, y cerrar o re-iniciar el sistema. Utilizar los disquetes de rescate para iniciar un sistema que se ha daado. Describir el sistema de archivos jerrquico de GNU/Linux y el papel de los directorios y archivos

    en la organizacin del sistema. Trabajar con eficacia en la lnea de comando de Linux usando comcomunes del shell, streams, tuberas, filtros, y cambio de direccin.

    Usar scripts del shell para realizar tareas repetitivas rpidamente. Abrir, corregir, y almacenar documentos de texto usando el editor vi. Manejar los sistemas de impresin locales. Describir algunas aplicaciones comunes disponibles al usuario para sus tareas, tales como: nave

    Internet y acceso a E-mail, procesamiento de textos, presentaciones, hojas de clculo, y manejo decos.

    EJERCICIOS

    Los ejercicios en este manual son diseados para dar practicas reales en los ambientes de redes lados (stand-alone o networking) al usuario. Es altamente recomendado que usted complete todejercicios en cada captulo antes de continuar al prximo. Entendemos que en raros casos tal vez estoconveniente cuando estudia fuera del taller. Si por alguna razn no puedes completar un ejercicio por ctancias ajenas, debes planificar completarlo tan pronto sea posible.

    Existirn ejercicios que no podrs completar por el limitante de equipo software. No permita qule impida completar los otros ejercicios que resten en el captulo modulo.

    TOME NOTA

    Los ejercicios en este libro fueron diseados para ser ejecutados en un equipo de prueba y nuncaser llevados a cabo en uno trabajando y donde se ejecuten aplicaciones importantes. InGNU/Linux, reparticionar para instalar GNU/Linux, o practicando los ejercicios en una LAN u ordenatrabajo puede causar problemas de configuracin, lo cual puede conllevar a perdidas irreparable de dat positivos perifricos. Por favor siempre recuerde esta advertencia. Es preferible que dediques una ede trabajo para practicar estos ejercicios. Instalar GNU/Linux en una situacin dual-boot es una alterazonable, pero an as conlleva ciertos riesgos.

    4

    http://www.codigolibre.org

  • 8/14/2019 Fundamentos de sistemas GNU/LINUX

    5/273

    WEB y CD

    Una parte muy clave de esta serie de auto-aprendizaje es el portal de soporte. Las lecciones ququen visitar la pgina web o el CD-ROM que le acompaa, a menudo, es para ayuda conceptos que son mejor entendidos despus de una descripcin visual. Los segmentos video Digital nan una ilustracin grfica acompaada por una narracin de los instructores. Estas lecciones soambos como introducciones para afinar conceptos y para ayudar el refuerzo.

    RECUERDE

    Como herramienta de soporte les ofrecemos el CD interactivo, incluido en este libro, y nuestweb http://www.abiertos.org y all accesar hacia la seccin Linux-Certificacin, estos contiemenes de prueba de las diferentes certificaciones. Recreamos el escenario de las preguntas de selectiples, multi-seleccin y falso verdadero. Es muy importante que tome muchas horas de practicaintentar pasar el exmen de certificacin que le corresponda ya sea LPI RHCE.

    5

    Fundacin Cdigo Libre Dominica

  • 8/14/2019 Fundamentos de sistemas GNU/LINUX

    6/273

    CONTENIIDOIntroduccin 14PropsitoDel Curso....................................................................................................................................Metas Del Curso .....................................................................................................................................15Captulo 1- Qu es GNU/Linux? 19

    Objectivos...................................................................................................................................................Preguntas Pre-Examen...............................................................................................................................Introduccin................................................................................................................................................GNU/Linux Sistema Operativo De Redes.................................................................................................Estructura de GNU/Linux..........................................................................................................................Quin Utiliza GNU/Linux?......................................................................................................................Ambientes De Sistema...............................................................................................................................GNU/Linux y UNiX-Genealoga............................................................................................................... Naturaleza del desarrollo del Software Libre............................................................................................El negocio de vender Software Libre........................................................................................................Puestas en prctica Importantes De GNU/Linux.......................................................................................Puntos Fuertes De GNU/Linux..................................................................................................................Puntos Dbiles De GNU/Linux..................................................................................................................Multi-Usuarios y Multi-Tarea.....................................................................................................................Interfaces de usuarios.................................................................................................................................

    Interface de lnea de Comando (CLI)........................................................................................................Interface Grfico del usuario (GUI)...........................................................................................................Combinando Shells y GUIs.......................................................................................................................Sesiones De GNU/Linux............................................................................................................................Usuarios De GNU/Linux............................................................................................................................Procedimiento De Login............................................................................................................................Estructura Shells y lnea de Comando.......................................................................................................Teclas Especiales........................................................................................................................................

    Comandos Simples.....................................................................................................................................Pginas Man...............................................................................................................................................Tipos de Sesin de Lnea de Comando......................................................................................................Ejercicio 1-1: Navegue Las Consolas Virtuales.........................................................................................Resumen......................................................................................................................................................Preguntas Post-Examen..............................................................................................................................

    6

    http://www.codigolibre.org

  • 8/14/2019 Fundamentos de sistemas GNU/LINUX

    7/273

    Captulo 2- Instalando GNU/Linux 43Objectivos..............................................................................................................................................Preguntas Pre-Examen..........................................................................................................................Introduccin...........................................................................................................................................Pasos Comunes de Todas las Distribuciones de GNU/Linux..............................................................

    Mejoras..................................................................................................................................................Conocimiento.........................................................................................................................................Conocimientos de informtica generales.............................................................................................Conocimientos un poco ms avanzados de informtica......................................................................Preparacin............................................................................................................................................Pasos que conducen a la asignacin del disco.....................................................................................Asignacin De Disco............................................................................................................................Directorio Boot.....................................................................................................................................Mtodos De Instalacin........................................................................................................................Mtodos De Arranque...........................................................................................................................Fuentes De Instalacin..........................................................................................................................Manejadores de Boot/Arranque............................................................................................................Multi Boot/Arranque............................................................................................................................Particionando.........................................................................................................................................Terminologa Del Disco........................................................................................................................

    Reparticionar el tamao Particiones Existentes...................................................................................Manejo de los Discos Duros.................................................................................................................Copiando el Software...........................................................................................................................Paquetes y opciones..............................................................................................................................Informacin Adicional De la Instalacin.............................................................................................Primera Instalacin...............................................................................................................................Asignacin De Particiones Del Disco..................................................................................................Archivo SWAP......................................................................................................................................

    Manejador de Paquetes de Software....................................................................................................Concluir una instalacin.......................................................................................................................Resolviendo Problemas De Configuracin..........................................................................................Resolver Problemas De Hardware.......................................................................................................Resumen................................................................................................................................................PREGUNTAS POST-EXAMEN...........................................................................................................

    7

    Fundacin Cdigo Libre Dominica

  • 8/14/2019 Fundamentos de sistemas GNU/LINUX

    8/273

    Captulo 3- Instalar GNU/Linux 63Objectivos...................................................................................................................................................Preguntas Pre-Examen...............................................................................................................................Introduccin................................................................................................................................................Como Instalar RedHat, Mandriva, Gentoo, Debian, SuSE y SlackWare..................................................

    Resumen......................................................................................................................................................PREGUNTAS POST-EXAMEN................................................................................................................

    Captulo 4- Configurar y Diagnsticar el X 65Objectivos...................................................................................................................................................Preguntas Pre-Examen...............................................................................................................................Introduccin................................................................................................................................................El Sistema X Window.................................................................................................................................X versus la Lnea de Comando..................................................................................................................El X Server..................................................................................................................................................El Protocolo X y Xlib.................................................................................................................................Tiilkits y Conjunto de Widget....................................................................................................................Administradores de Ventanas.....................................................................................................................Administradores de Pantallas/Display........................................................................................................Otros Componentes....................................................................................................................................

    Configurando el XFree86..........................................................................................................................XF86Config.................................................................................................................................................XF86Setup...................................................................................................................................................Ejercicio 4-1: Utilice XF86Setup...............................................................................................................Xf86config..................................................................................................................................................SaX y Xconfigurator...................................................................................................................................XFree86-4....................................................................................................................................................Usando el X................................................................................................................................................

    Iniciando el X.............................................................................................................................................Cortar y Pegar.............................................................................................................................................Cambiando de Manejador de Ventanas......................................................................................................Ejercicio 4-2: Mltiples Manejadores De Ventana....................................................................................Trabajando con Manejadores De Ventana..................................................................................................Cerrando correctamente.............................................................................................................................Ambientes De Escritorio............................................................................................................................

    8

    http://www.codigolibre.org

  • 8/14/2019 Fundamentos de sistemas GNU/LINUX

    9/273

    CDE............................................................................................................................105KDE...........................................................................................................................106Ejercicio 4-3: Uso y Comportamiento de Aplicaciones de Ventana en KDE......................................GNOME.................................................................................................................................................El X Remota..........................................................................................................................................

    Pantallas/Displays..................................................................................................................................xdm........................................................................................................................................................ORL Red Virtual de Computador (VNC).............................................................................................Seguridad...............................................................................................................................................Recursos.................................................................................................................................................Recurso De la Geometra......................................................................................................................Recurso De Fuente/Tipos......................................................................................................................Recurso De Color..................................................................................................................................Base de datos de Recursos...................................................................................................................Resumen................................................................................................................................................PREGUNTAS POST-EXAMEN...........................................................................................................

    Captulo 5- Documentacin y Correccin de Fallas 95Objectivos..............................................................................................................................................Preguntas Pre-Examen..........................................................................................................................

    Introduccin...........................................................................................................................................Documentacin......................................................................................................................................Libros.....................................................................................................................................................Usar el Internet......................................................................................................................................Pginas Man..........................................................................................................................................Ejercicio 5-1: Usar las Pginas Man....................................................................................................Pginas Info..........................................................................................................................................Los HOWTOs.......................................................................................................................................

    Documentar el Sistema.........................................................................................................................Resolucin de Fallas.............................................................................................................................Tomar Control de la Situacin..............................................................................................................Configurarlo bien desde el Inicio.........................................................................................................Manejar los Procesos............................................................................................................................Tipos de Seales...................................................................................................................................Ejercicio 5-2: Seales...........................................................................................................................

    9

    Fundacin Cdigo Libre Dominica

  • 8/14/2019 Fundamentos de sistemas GNU/LINUX

    10/273

    La tecla Magica SYS RQ...........................................................................................................................Diskette de Rescate.....................................................................................................................................Ejercicio 5-3: Crear un Disquete de Inicio para Emergencias..................................................................Otras Herramientas y Tcnicas de Resolucin de Fallas...........................................................................Procedimientos de Rescate.........................................................................................................................

    Recuperacin de Desastres.........................................................................................................................Crear un conjunto de Floppy de Rescate...................................................................................................Recuperarse de Fallas del Disco Raz........................................................................................................Recuperarse de fallas Elctricas.................................................................................................................LILO............................................................................................................................................................El Proceso de Arranque..............................................................................................................................LILO- Opciones de Lnea de Comando.....................................................................................................LILO- Archivo de Configuracin (lilo.conf).............................................................................................LILO- Errores.............................................................................................................................................Recuperarse del Uso Inapropiado de lilo...................................................................................................La Cuenta de root.......................................................................................................................................Configuracin del Sistema.........................................................................................................................Agregar Usuarios........................................................................................................................................El utilitario linuxconf.................................................................................................................................Resumen......................................................................................................................................................

    PREGUNTAS POST-EXAMEN................................................................................................................

    Captulo 6- El Sistema de Archivos 120Objectivos ..................................................................................................................................................PREGUNTAS PRE-EXAMEN .................................................................................................................Introduccin ..............................................................................................................................................Sistema de Archivos Jerrquico................................................................................................................. Nombres de Archivos................................................................................................................................

    Nombre de Rutas.......................................................................................................................................Ejercicio 6-1: El Sistema de archivos........................................................................................................Ejercicio 6-2: Navegar en el Sistema de Archivos....................................................................................Usuarios, Grupos, y los Archivos..............................................................................................................Ejercicio 6-3: Los Permisos.......................................................................................................................Ejercicio 6-4: Organizar los Archivos........................................................................................................Ejercicio 6-5: Linking/Enlazando..............................................................................................................

    10

    http://www.codigolibre.org

  • 8/14/2019 Fundamentos de sistemas GNU/LINUX

    11/273

    Administracin de Dispositivos...........................................................................................................El Directorio Device/Dispositivo.........................................................................................................Crear un Nodo de un Dispositivo.........................................................................................................El Sistema de Archivos /proc...............................................................................................................Ejercicio 6-6: Administracin de los Dispositivos...............................................................................

    Resumen................................................................................................................................................PREGUNTAS POST-EXAMEN...........................................................................................................Captulo 7- Navegar el Shell de GNU/Linux.......................................................................................Objectivos..............................................................................................................................................PREGUNTAS PRE-EXAMEN.............................................................................................................Introduccin...........................................................................................................................................El Ambiente del Shell...........................................................................................................................Los Procesos Padre/Hijo.......................................................................................................................Multitarea...............................................................................................................................................Ambiente del Shell...............................................................................................................................Definir las Variables del Shell...............................................................................................................Rutra de Bsqueda (PATH)...................................................................................................................El Prompt del Shell...............................................................................................................................Los Archivos de Ambiente...................................................................................................................Ejercicio 7-1: Ambiente del Shell.........................................................................................................

    Ejercicio 7-2: Cambios al Ambiente del Shell.....................................................................................El Shell bash.........................................................................................................................................Leer desde la Lnea de Comando.........................................................................................................Expansin de Caracteres tipo Wildcard...............................................................................................Generacin de Nombres de Archivos...................................................................................................Ejercicio 7-3: Generacin de Nombres de Archivos...........................................................................Uso de las Comillas..............................................................................................................................Crear Alias del Bash.............................................................................................................................

    El Comando history...............................................................................................................................Repetir Comandos................................................................................................................................Edicin de la Lnea de Comando de Bash...........................................................................................Edicin de la Lnea de Comando Modo vi..........................................................................................Resumen de Comando Modo vi...........................................................................................................Modo de Edicin de emacs..................................................................................................................Ejercicio 7-4: Uso del Shell Bash........................................................................................................

    11

    Fundacin Cdigo Libre Dominica

  • 8/14/2019 Fundamentos de sistemas GNU/LINUX

    12/273

    Ejercicio 7-5: Expansin y Wildcards........................................................................................................Herramientas Bsicas.................................................................................................................................Is - Listar Directorios.................................................................................................................................cd - Cambiar Directorio.............................................................................................................................Los paginadores more y less......................................................................................................................

    cp - Copiar..................................................................................................................................................Comando ln- Vnculo a un directorio o un archivo...................................................................................Comando mv-Mover o Renombrar............................................................................................................Comando mkdir- Crear Directorios...........................................................................................................Comandos rm y rmdir- Eliminar Archivos o Directorios..........................................................................Comandos head y tail- Visores Preliminares de Archivos.........................................................................Comando file- Para Determinar el Tipo de Archivo..................................................................................Comandos df y du- Espacio Libre y en Uso de los Discos.......................................................................Comando tar- Archivador de Cintas..........................................................................................................Comprimir Archivos con gzip....................................................................................................................Herramientas Poderosas.............................................................................................................................Comando diff- Inventario de Cambios a los Archivos..............................................................................Comando find- Busca y Manipula Archivos.............................................................................................Ejercicio 7-6: Uso de find..........................................................................................................................Comando grep- Buscar en Archivos de Texto...........................................................................................

    Las Expresiones Regulares........................................................................................................................El Editor sed- Editor de Flujo de Texto.....................................................................................................El Editor awk- Editor Avanzado de Flujo de Texto...................................................................................Scripting en Perl.........................................................................................................................................Ejercicio 7-7: Uso de Expresiones Regulares con grep............................................................................Ejercicio 7-8: Uso de Expresiones Regulares para buscar envi................................................................Ejercicio 7-9: Uso Avanzado de Expresiones Regulares...........................................................................Ejercicio 7-10: Uso Adicional de Herramientas Poderosas.......................................................................

    Resumen......................................................................................................................................................PREGUNTAS POST-EXAMEN................................................................................................................

    Captulo 8- Procesos y Scripting del Shell 190Objectivos...................................................................................................................................................PREGUNTAS PRE-EXAMEN..................................................................................................................Introduccin................................................................................................................................................

    12

    http://www.codigolibre.org

  • 8/14/2019 Fundamentos de sistemas GNU/LINUX

    13/273

    El Shell..................................................................................................................................................Los Shells Disponibles en GNU/Linux................................................................................................Razones para Usar el bash....................................................................................................................Entrada y Salida de los Comandos.......................................................................................................Entrada y Salida Estndar.....................................................................................................................

    Redireccin............................................................................................................................................Ejercicio 8-1: Entrada y Salida de los Comandos................................................................................Ejercicio 8-2: Ms Redirecciones de las Salidas/Entrada de los Comandos.......................................Tuberas y Filtros..................................................................................................................................Las Tuberas..........................................................................................................................................Los Filtros.............................................................................................................................................Ejercicio 8-3: Tuberas y Filtros...........................................................................................................Ejercicio 8-4: Tuberas y Filtros Uso Avanzado...................................................................................Scripts del Shell....................................................................................................................................Ejecutar los Scripts...............................................................................................................................Shebang y Comentarios........................................................................................................................Argumentos y Parmetros Especiales..................................................................................................Variables de Ambiente/Shell.................................................................................................................Sentencias de Control...........................................................................................................................Leyendo las Entradas de los Usuarios..................................................................................................

    Ejercicio 8-5: Scripts del Shell.............................................................................................................Ejercicio 8-6: Ms Scripts del Shell.....................................................................................................Resumen................................................................................................................................................PREGUNTAS POST-EXAMEN...........................................................................................................

    Captulo 9- Edicin de Archivos de Texto 216Objectivos..............................................................................................................................................PREGUNTAS PRE-EXAMEN.............................................................................................................

    Introduccin...........................................................................................................................................El Editor vi............................................................................................................................................Conceptos de vi....................................................................................................................................Introduccin a vi...................................................................................................................................The pico Editor......................................................................................................................................The emacs Editor...................................................................................................................................Resumen................................................................................................................................................

    13

    Fundacin Cdigo Libre Dominica

  • 8/14/2019 Fundamentos de sistemas GNU/LINUX

    14/273

    PREGUNTAS POST-EXAMEN................................................................................................................Apndice A- Respuestas a Preguntas Pre y Post-Examen........................................................................Glosario.......................................................................................................................................................Index............................................................................................................................................................

    14

    http://www.codigolibre.org

  • 8/14/2019 Fundamentos de sistemas GNU/LINUX

    15/273

    15

    Fundacin Cdigo Libre Dominica

  • 8/14/2019 Fundamentos de sistemas GNU/LINUX

    16/273

    16

    http://www.codigolibre.org

  • 8/14/2019 Fundamentos de sistemas GNU/LINUX

    17/273

    QQUU ESES GNU/LGNU/LIINUX?NUX?TOPICOS PRINCIPALES No.Objetivos 19Preguntas Pre-Exmen 19Introduccin 20Linux Sistema Operativo de Redes 20Interfaces de Usuarios 33Sesiones GNU/Linux 35Resumen 40

    Preguntas Post-Exmen 40

    OBJETIVOSAl completar este captulo, usted podr:

    Describir la estructura de los componentes de GNU/Linux. Describir la genealoga de Linux y UNiX La Historia de UNiX y Linux Software de Fuente Abierta y Free Software (Open y Libre) La Licencia GPL ( General Public License) del GNU

    Describir que es una Distribucin GNU/Linux Detallar los puntos Fuertes y Dbiles de GNU/Linux Describir Multitasking (Multi-Tarea) Contrastar Lnea de comandos y las Interfaces Graficas de Usuarios (GUIs) Detallar como buscar ayuda en lnea.

    Preguntas Pre-Exmen

    1. Qu es una distribucin?

    2. Liste 4 distribuciones populares de GNU/Linux?

    3. Cmo es GNU/Linux Distribuido?

    4. Cmo es GNU/Linux Licenciado?

    5. Qu es Software Open Source?

    6. Qu es Software Libre?

    17

    Fundacin Cdigo Libre Dominica

    CAPITULO 1 A DMINISTRACIN DELS ISTEMAO PERATIVOGNU/LINU

  • 8/14/2019 Fundamentos de sistemas GNU/LINUX

    18/273

    INTRODUCCION

    En ste captulo analizamos el background del Sistema de GNU/Linux: Como ha evolucionadestructura, el ambiente en el cual se desarrolla, y contrastaremos sus ventajas y desventajas. Aen el manual nos concentraremos en Slackware, Debian y RedHat siempre compararemos con otras diciones muy utilizadas en el Mercado de hoy da como lo son: SuSE, Mandrake, Turbo Linux, etc...

    GNU/LINUX, SISTEMA OPERATIVO DE REDESPGNU/Linux es un sistema operativo Libre (free), de fuente abierta (Open Source), Parecido-a-(UNiX-Like), interactivo, multiusuario, multtarea, de redes (network).Demos un vistazo a esta descripcin parte por parte:LIBRE (FREE)El Software Libre proporciona la libertad de:

    1.- Ejecutar el programa, para cualquier propsito;2.- Estudiar el funcionamiento del programa, y adaptarlo a sus necesidades;3.- Redistribuir copias;4.- Mejorar el programa y poner sus mejoras a disposicin del pblico, para beneficio de toda la comu

    Como consecuencia de estas 4 libertades, el Software Libre ofrece la libertad de aprender, libertensear, libertad de competir, libertad de expresin y libertad de eleccin.

    OpenSource El trmino Open Source se refiere a tener acceso al cdigo fuente. Pero el acceso al cdigo fuenapenas un pre-requisito para dos de las cuatro libertades que definen al Software Libre. Muchas pnas no entienden que el acceso al cdigo fuente no es suficiente. Software Libre evita caer en esafusin.

    UNiX-Like UNiX es un sistema operativo desarrollado por Bell Labs de AT&T en el 1969. Aunque el termino Use utiliza liberalmente al discutir stos sistemas operativos, y GNU/Linux es uno de ellos, no todo

    sistemas operativos parecido a unix son considerados UNiXLike. UNiX es una marca registradOpen Group, y slo los sistemas operativos que pasan completamente su prueba pueden ser etiquey certificados UNiX (Solaris de Sun Microsystems, es UNiX). Linux es UNiX-Like en su funcimiento y en su estructura, pero no contiene cdigo del AT&T UNiX.

    Network Una red es un conjunto de ordenadores, conectados entre s, que pueden comunicarse compartidatos y recursos. Linux se hizo con para trabajar en redes desde sus inicios, y todas las distribuciincluyen los programas y utilidades necesarias para que el computador pueda ser incluida en una funcionar adecuadamente.

    Sist. Operativo Un Sistema Operativo (SO) es el conjunto de programas bsicos y utilidades que hacen que una mna funcione y resulte til a los usuarios. El sistema operativo comienza a trabajar cuando encendel computador, y administra los recursos de hardware de la mquina en los niveles ms bsicos.

    Interactivo GNU/Linux permite que los usuarios interacten con el equipo, digitando comandos que se ejeinmediatamente (por ejemplo no es as en los main frames donde los comando se almacn por el ma operativo para luego ser ejecutados en gruposbatch).

    Multiusuario GNU/Linux es un Sistema Operativo multiusuario que permite a ms de un usuario accesar una cotadora. Claro que, para llevarse esto a cabo, el Sistema Operativo tambin debe ser capaz de efecmultitareas. Debe diferenciar entre los diferentes procesos y los diferentes usuarios.

    Multitarea Linux es capaz de manejar ms de una tarea a la vez.

    18

    http://www.codigolibre.org

  • 8/14/2019 Fundamentos de sistemas GNU/LINUX

    19/273

    Para ms informacin, refirase a:1. http://www.gnu.org2. http://www.linux.org,3. http://www.fsf.org4. http://www.opensource.org

    Los siguientes tpicos son discutidos en esta seccin: Estructura de GNU/Linux Quien usa GNU/Linux? Ambiente de Sistemas Linux y la Genealoga UNiX La Naturaleza del Desarrollo de Software OpenSource y Libre La Rentabilidad de negociar en el Free Software Importante Implementaciones de GNU/Linux GNU/Linux sus Ventajas GNU/Linux sus Desventajas Mltiple Usuarios y Multitareas

    Estructura de GNU/Linux

    G NU/Linux esta estructurado con un kernel pequeo y un nmero de programas utilitarios encima del kernel. El ncleo maneja los recursos de la computadora, tal como el procesmemoria, y en esto debe asegurarse de que cada quien que trata de utilizar stos recursos es dado tunidad apropiada de tiempo de acceso.

    El kernel se carga en memoria cuando Linux se inicia y permanece en memoria hasta que el sdescarga por completo. Se disea para ser lo ms pequeo que sea posible, permitiendo as que larestante sea compartida entre todos los programas que se ejecutan en el sistema.

    Los programas utilitarios proporcionan manejo de archivo, supervisin del sistema, desarrollo ciones, manejo de usuario, y comunicacin de red. Puede haber ms de 2.000 utilidades en un sGNU/Linux.

    La filosofa de GNU/Linux, como la de la mayora del UNiX y los sistemas operativos UNiXsido mantener el kernel lo ms pequeo posible, moviendo todas las actividades que no tienen quezados absolutamente por el kernel en programas utilitarios a nivel del usuario. El ejemplo ms obves el intrprete interactivo de comando. Debajo de Linux, ste intrprete de comando, mejor conocel shell, es un programa normal ejecutado cuando un usuario entra que sirve como base para que pueda ejecutar comandos. El shell no es parte del kernel.

    Quien Usa GNU/Linux?G NU/Linux se utiliza en una amplia gama de instituciones y de organizaciones. Cada da m paises y compaas se alnean al uso y filosofa del SoftWare Libre. Los Proveedores de Internet (ISPs) lo utilizan para los servidores de red, tales como servidores Las universidades y los centros de investigacin lo utilizan para las matemticas que procesan, de aplicaciones, y Correo Electrnico. Las grandes organizaciones comerciales, como los bancos, lo utilizan para sus servidores de base Las industrias de servicio, tales como hoteles y lneas areas, lo utilizan para las reservaciones. Muchas industrias lo emplean para usarla en estaciones de trabajos grficas.

    19

    Fundacin Cdigo Libre Dominica

  • 8/14/2019 Fundamentos de sistemas GNU/LINUX

    20/273

    GNU/Linux se utiliza en sistemas mdicos, scanners y sistemas de imagen. Tambin se utiliza en la fabricacin, la tecnologa, CAD/CAM, investigacin y desarrollo aplicacio Puede ser utilizado en sistemas de energa y grande simulaciones de sistemas. Puede ser utilizado en el gobierno y las ramas militares, simuladoras de aviones y aeroespacio, y p

    cin del tiempo. Ambientes de Sistema

    G NU/Linux se puede utilizar en una amplia gama de ambientes relacionados con la informticasistema operativo fu diseado para ser robusto, estable y escalable. GNU/Linux se puede emplear como estacin de trabajo de escritorio de mono-usuario. Las mquinas de GNU/LinuxLinux pueden tener acceso y servir recursos a otros sistemas operativ GNU/Linux se presta para la construccin de sistemas distribuidos grande clusters.

    La disponibilidad de GNU/Linux para una amplia gama de mquinas y su gran capacidad de red, menudo pues que GNU/Linux sea utilizado en parte de grande redes heterogneas (redes utilizando uncla de diversos sistemas operativos). Con GNU/Linux, se puede proporcionar acceso a una variedad de sistemas operativos, incluyendo UNiX y sistemas UNiX-Like, Novell, Macintosh, OS/2 y otros si

    operativos todo utilizando sus mtodos nativos de comunicacin.Sistemas distribuidos o clusters de gran capacidad pueden tambin ser construido utilizando Linu

    siendo una rea importantsima en stos momentos. Los sistemas clusters o Super Computadores deestn demostrando ser considerablemente ms rentable que sus gigantes competidores para las tareades, tales como simulaciones de medio ambiente.

    Linux y la Genealoga UNiX

    La genealoga del sistema operativo UNiX y todos sus derivados (incluyendo Linux) es complicno se puede representar en un slo diagrama. Este grfico demuestra una vista simplificada principales variantes importantes en el desarrollo de Linux con respecto a UNiX y algo de sus variandiagrama ilustra, que Linux es relativamente nuevo en el mundo de UNiX.

    La Historia de Linux

    En 1991, Linus Benedict Torvalds, estudiante de la Universidad Helsinki, estren la primera v pblica de su sistema operativo Linux la 0.02. Desde entonces, millones de usuarios de todo el m poseen ste sistema gratuito y miles de ellos contribuyen a su contnuo desarrollo aportando ideas, pmas, informacin sobre fallos del sistema ya sea en hardware/software (bugs), ayuda, tutoriales, etc.

    Linux naci de la idea de crear un sistema clon de UNiX basado en GNU (General Public LicLicencia General Pblica) y el cdigo fuente disponible gratuitamente. Esta idea naci en 1991 cuandoTorvalds estudiaba la carrera de Ciencias Informticas. Torvalds se encontraba especialmente interesaMinix, el nico sistema UNiX disponible en aqul entonces de fcil acceso para los estudiantes y profEste sistema gratuito fu creado por Andrew Tanenbaum con el porpsito de facilitar a los alumnos deversidad el estudio y diseo de sistemas operativos. Minix era un UNiX ms, tanto en apariencia comkernel (ncleo del sistema operativo), pero distaba mucho de ser comparable a uno de los grandes. Estir de aquel momento que Torvalds decidi crear un sistema que excediera los standares de Minix, pdo en marcha el proyecto personal Linux.

    Torvalds tom sus primeras clases de C y UNiX en 1990 y en poco tiempo empez a utilizar el si

    20

    http://www.codigolibre.org

  • 8/14/2019 Fundamentos de sistemas GNU/LINUX

    21/273

    operativo Minix en su nuevo 386. Linux evolucion desde el simple programa Hola, Mundo a nal. Durante mucho tiempo Torvalds trabaj en la soledad de sus ideas, hasta la maana del 3 de julcuando pidi ayuda a travs del Internet. Al principio fueron unos pocos los que le apoyaron, petiempo muchos otros cibernautas se unieron al proyecto. En uno de los primeros emails enviados poa la comunidad del ciberespacio respecto a Linux, informaba sobre su proyecto como si fuera un hotan grande ni comparable con GNU.

    Durante el desarrollo Torvalds se encontr con muchos problemas a lo largo de la programacinel. Pero Linux empez a disponer de controladores para los dispositivos internos de la PC y unmiento correcto del disco aproximadamente el 3 de julio, unas horas despus de enviar su primer emmado sobre su proyecto. Dos meses ms tarde Linux empezaba a funcionar y el cdigo fuente de versin 0.01 ya estaba disponible. La version 0.01 inclua un bash shell 1.08 y el compilador gcc

    Muy pronto Linux se convirti en un sistema mucho ms fcil de instalar y configurar, y empezfama en todo el mundo. Al tener en muy poco tiempo miles de usaurios, las nuevas versiones de Lan casi semanalmente. En el presente hay millones de usuarios y gracias a ellos y a sus aportes, Lisin respito alguno. La ltima version del kernel estable es Linux 2.2.13 del 20 de Octubre de 1999xima versin en desarrollo y lanzado en fase beta es la 2.3.30 Release 6.

    Como todos los sistemas operativos, Linux tambin dispone de un logotipo. Torvalds decidi qgen que representara a Linux sera la de un pingino, de nombre TUX. En casi todas las pginascionadas con Linux se puede hallar el logotipo. En la imagen que mostramos pintamos el pecho decon los colores de nuestra bandera, smbolo que identificar ste site de ahora en adelante.

    Linux haba nacido para ser un sistema operativo del tipo POSIX (sistema variante de UNiX), te gratuito para el usuario y con libre acceso al cdigo fuente. Estas tres ideas fueron las que lo hatido en el sistema con mejor rendimiento, ms fiable, veloz y con ms desarrolladores del mundo.ha colocado cerca de los grandes sistemas operativos como UNiX en el mbito de servidores de cciones, especialmente utilizado en empresas proveedoreas de acceso a Internet.

    Las versiones ms recientes de Linux ofrecen la posiblidad de convertir nuestro ordenador peuna potente estacin de trabajo. Puede funcionar como estacin de trabajo personal dndoneos la de acceder a las prestaciones que ofrece UNiX y cualquier otro sistema operativo. Adems, graciade muchas empresas hoy en da cuenta con potentes entornos grficos que ayudan significativamegir Linux. Puede adempas configurar para funcionar como estacin de desarrollo y/o aprendizajacceso a Intranets e Internet y muchas otras opciones.

    GNU/Linux como estacin de desarrollo y/o aprendizaje es uno de los mejores sistemas ya qude muchos lenguajes de programacin gratutos como: GNU C, GNU C++, GNU Fortran 77, ADATCL/Tk, etc. y muy pronto tal vz las versiones conocidas de Delphi para Linux de Borland Inc. esperemos que tambin sean de facl acceso por los usuarios o en todo caso a un costo razonable qta contar con esta valiosa herramienta de programacin. La mayora de stos lenguajes vienen conlibreras de cdigo fuente.

    GNU/Linux como sistema operativo gratuto posee caractersticas que le hacen nico. Las ms tes son: multitarea, memora virtual, los drivers (controladores de dispositivos) TCP/IP ms rmundo, libreras compartidas, multiusuario, modo de funcionamiento protegido (al contrario de otrOperativos) y la ms fundamental soporta multitarea de 32 y 64 bits.

    Posee adems capacidades avanzadas para la interconexin de redes de PCs ya que para d21

    Fundacin Cdigo Libre Dominica

  • 8/14/2019 Fundamentos de sistemas GNU/LINUX

    22/273

    Linux hubo que utilizar Internet. El desarrollo del software y las caractersticas de interconexin de reempezaron a desarrollar desde las primeras versiones de GNU/Linux y desde entonces ha ido evolucioa gran velocidad y ms an con la gran aceptacin de la red; en especial de Internet.

    Y para concluir:Hoy en da GNU/Linux es utilizado por millones de usuarios y miles de empresas. No hay duda pu

    Linux es uno de los sitemas operativos con ms posiblidades y es el nico que se actualiza da a da.

    El Movimiento del Software Libre

    Mantenemos esta definicin de software libre para mostrar claramente qu debe cumplir un prma de software concreto para que se le considere software libre. El Software Libre es un ade libertad, no de precio. Para entender el concepto, debes pensar en libre como en libertad de exprno como en barra libre [En ingls una misma palabra (free) significa tanto libre como gratis, lo que hlugar a cierta confusin].

    Software Libre se refiere a la libertad de los usuarios para ejecutar, copiar, distribuir, estudiar, cay mejorar el software. De modo ms preciso, se refiere a cuatro libertades de los usuarios del softwar

    La libertad de usar el programa, con cualquier propsito (libertad 0). La libertad de estudiar cmo funciona el programa, y adaptarlo a tus necesidades (libertad 1). El accdigo fuente es una condicin previa para esto. La libertad de distribuir copias, con lo que puedes ayudar a tu vecino (libertad 2). La libertad de mejorar el programa y hacer pblicas las mejoras a los dems, de modo que toda la

    nidadse beneficie. (libertad 3). El acceso al cdigo fuente es un requisito previo para esto.

    Un programa es software libre si los usuarios tienen todas estas libertades. As pues, deberas telibertad de distribuir copias, sea con o sin modificaciones, sea gratis o cobrando una cantidad por la dicin, a cualquiera y a cualquier lugar. El ser libre de hacer esto significa (entre otras cosas) que no tien pedir o pagar permisos.

    Tambin deberas tener la libertad de hacer modificaciones y utilizarlas de manera privada en tu tu ocio, sin ni siquiera tener que anunciar que dichas modificaciones existen. Si publicas tus cambios, nes por qu avisar a nadie en particular, ni de ninguna manera en particular.

    La libertad para usar un programa significa la libertad para cualquier persona u organizacin de uscualquier tipo de sistema informtico, para cualquier clase de trabajo, y sin tener obligacin de comunlo al desarrollador o a alguna otra entidad especfica.

    La libertad de distribuir copias debe incluir tanto las formas binarias o ejecutables del programa co

    cdigo fuente, sean versiones modificadas o sin modificar (distribuir programas de modo ejecutable esario para que los sistemas operativos libres sean fciles de instalar). Est bien si no hay manera de pun binario o ejecutable de un programa concreto (ya que algunos lenguajes no tienen esta capacidaddebes tener la libertad de distribuir stos formatos si encontraras o desarrollaras la manera de crearlos

    Para que las libertades de hacer modificaciones y de publicar versiones mejoradas tengan sentido,tener acceso al cdigo fuente del programa. Por lo tanto, la posibilidad de acceder al cdigo fuente condicin necesaria para el software libre.

    Para que estas libertades sean reales, deben ser irrevocables mientras no hagas nada incorrecto; s

    22

    http://www.codigolibre.org

  • 8/14/2019 Fundamentos de sistemas GNU/LINUX

    23/273

    arrollador del software tiene el poder de revocar la licencia aunque no le hayas dado motivos, el soes libre.

    Son aceptables, sin embargo, ciertos tipos de reglas sobre la manera de distribuir software libreno entren en conflicto con las libertades centrales. Por ejemplo, copyleft [``izquierdo de copia''] (muy simplemente) es la regla que implica que, cuando se redistribuya el programa, no se pueden tricciones para denegar a otras personas las libertades centrales. Esta regla no entra en conflicto cotades centrales, sino que ms bien las protege.

    As pues, quizs hayas pagado para obtener copias de software GNU, o tal vez las hayas obtenidgn coste. Pero independientemente de cmo hayas conseguido tus copias, siempre tienes la licopiar y modificar el software, e incluso de vender copias.

    Software Libre no significa no comercial. Un programa libre debe estar disponible para ucial, desarrollo comercial y distribucin comercial. El desarrollo comercial del software libre ha ser inusual; el software comercial libre es muy importante.

    Es aceptable que haya reglas acerca de cmo empaquetar una versin modificada, siempre qu

    queen a consecuencia de ello tu libertad de publicar versiones modificadas. Reglas como Si hace ble el programa de esta manera, debes hacerlo disponible tambin de esta otra pueden ser igualmtables, bajo la misma condicin. (Observa que una regla as todava te deja decidir si publicar o noma). Tambin es aceptable que la licencia requiera que, si has distribuido una version modificadaarrollador anterior te pide una copia de ella, debas envirsela.

    En el proyecto GNU, utilizamos copyleft para proteger de modo legal estas libertades para toel software libre sin copyleft tambin existe. Creemos que hay razones importantes por las que re debe ser copyleft (http://www.gnu.org/philosophy/pragmatic.es.html), pero si tus programas sonlibre sin ser copyleft, los podemos utilizar de todos modos, ya que aprendemos de ellos.

    Visita la pgina http://www.gnu.org/philosophy/categories.es.html para ver una descripcin derencias que hay entre el software libre'', software con copyleft (`izquierdo' de copia) y otras catsoftware se relacionan unas con otras.

    A veces las normas de control de exportacin del gobierno y las sanciones mercantiles puedentu libertad de distribuir copias de los programas a nivel internacional. Los desarrolladores de softwnen el poder de eliminar o sobrepasar estas restricciones, pero lo que pueden y deben hacer es imponerlas como condiciones de uso del programa. De esta manera, las restricciones no afectarn ades y gente fuera de las jurisdicciones de stos gobiernos.

    Cuando se habla de software libre, es mejor evitar trminos como: regalar o gratis'', porque e

    nos implican que lo importante es el precio, y no la libertad. Algunos trminos comunes tales comra conllevan opiniones que esperamos no apoyes.

    Por ltimo, fjate en que los criterios establecidos en esta definicin de software libre requierencuidadosamente para interpretarlos. Para decidir si una licencia de software concreta es una licencware libre, lo juzgamos basndonos en stos criterios para determinar si tanto su espritu como s particular los cumplen. Si una licencia incluye restricciones contrarias a nuestra tica, la rechazcuando no hubiramos previsto el problema en stos criterios. A veces un requisito de una licencuna situacin que necesita de una reflexin minuciosa, e incluso conversaciones con un abogadoque podamos decidir si la exigencia es aceptable. Cuando llegamos a una conclusin, a veces act

    23

    Fundacin Cdigo Libre Dominica

  • 8/14/2019 Fundamentos de sistemas GNU/LINUX

    24/273

    stos criterios para que sea ms fcil ver por qu ciertas licencias se pueden calificar o no como de solibre.

    Licencias GNU/GLP (GNU GENERAL PUBLIC LICENSE)

    G NU/GLP - Es una licencia que proporciona la libertad de cambiar y compartir el software, estacia se aplica a la mayora del software de la fundacin del software libre y a cualquier otro prma cuyos autores se comprometan a hacer uso de ella.

    El trmino free software [En ingls free = libre o gratis] se malinterpreta a veces; no tiene nada qcon el precio. La connotacin adecuada es libertad. Aqu, por tanto, est la definicin de software lib programa es software libre, para un usuario en particular, si:1. Tiene libertad para ejecutar el programa, con cualquier propsito.2. Tiene la libertad para modificar el programa para adaptarlo a sus necesidades. (Para que esta libert

    efectiva en la prctica, debe tener acceso al cdigo fuente, porque modificar un programa sin disponcdigo fuente es extraordinariamente dificultoso).

    3. Tiene la libertad para redistribuir copias, tanto gratis como por un costo.4. Tiene la libertad para distribuir versiones modificadas del programa, de tal manera que la comu

    pueda beneficiarse con sus mejoras.Como free (libre) se refiere a libertad y no a precio, no existe contradiccin entre la venta de copia

    software libre. De hecho, la libertad para vender copias es crucial: las colecciones de software libre venden en CD-ROM son importantes para la comunidad, y la venta de las mismas es una manera impte de obtener fondos para el desarrollo de software libre. Por tanto, si la gente no puede incluir un proen dichas colecciones, dicho programa no es software libre.

    Este concepto se origin en base a un movimiento enfocado a crear un sistema operativo libre (stricciones de uso y licencias), es el proyecto GNU, bajo el cual se desarrollan miles de aplicaciones ydades. El sistema Linux fu incluido en dicho proyecto y, por tanto, actualmente se habla del siGNU/Linux al referirnos al sistema completo (sistema y aplicaciones que lo acompaan).

    La colaboracin de un nmero cada vez mayor de programadores, aficionados y expertos en Linufundamental para llevar a cabo el rpido desarrollo que ha experimentado. Y desde todo el mundo hando las aportaciones que, constantemente, han ido y van mejorando y ampliando las prestaciones de su(ncleo).

    Linus Torvalds termin la que llam versin 1.0 en el primer tercio de 1994. Hasta entonces habarrollado varias versiones iniciales a las que fu aportando la funcionalidad bsica.

    En la actualidad Linux se conoce como un clon de UNiX que varios millones de personas utilizan e

    el mundo; movimiento al que, cada vez, mayor nmero de grandes compaas (Sun Microsystems,etc.). Se estn uniendo, aportando soluciones tanto comerciales como bajo licencia GPL.

    La Naturaleza del Desarrollo de SoftWare Libre y OpenSource

    Alos defensores del software propietario les gusta decir, El software libre es un bonito sueotodos sabemos que slo el sistema propietario puede producir productos confiables. Un pua'hackers' simplemente no puede hacer esto.

    La evidencia emprica disiente, sin embargo; pruebas cientficas, descritas ms adelante, han comp

    24

    http://www.codigolibre.org

  • 8/14/2019 Fundamentos de sistemas GNU/LINUX

    25/273

    do que el software GNU es ms confiable que el software propietario comparable.

    Esto no debiera ser una sorpresa; existen buenas razones para la alta confiabilidad del softw buenas razones para esperar que el software libre tendr a menudo (aunque no siempre) una alta f

    Utilidades GNU Ms Seguras!

    Barton P. Miller y sus colegas probaron la fiabilidad de programas de utilidades de UNiX e1995. En ambas ocasiones, las utilidades GNU se destacaron considerablemente. Probarontemas UNiX comerciales as como GNU. Sometindolos a un flujo de entrada aleatorio, pudieron(con volcado de memoria) o colgar (bucle infinito) ms del 40% (en el peor caso) de las utilidades

    Estos investigadores comprobaron que los sistemas UNiX comerciales tenan una tasa de fallodesde el 15% al 43%. En contraste, la tasa de fallos de GNU fu slo del 7%.

    Miller tambin dijo que, los tres sistemas comerciales que comparamos tanto en 1990 comomejoraron considerablemente en fiabilidad, pero an tenan tasas de fallo significativas (las utilidcas de GNU/Linux todava eran considerablemente mejores que las de los sistemas comerciales).'

    Para ms detalles, vea su artculo: Fuzz Revisited: A Re-examination of the Reliability of UNiXand Services (http://www.suffritti.it/informatica/tco/fuzz-revisited.pdf) por Barton P. [email protected], David Koski, Cjin Pheow Lee, Vivekananda Maganty, Ravi Murthy, Ajitkumar y Jeff Steidl.

    Haciendo que el Modelo del Software Libre Trabaje en el Mundo de los Negocios

    Muchas personas creen que el espritu del proyecto GNU es que no se debera cobrar dinerotribuir copias de software o que se debe cobrar lo mnimo, slo lo suficiente para cubrir En realidad, recomendamos a la gente que distribuye software libre que cobre tanto como desee oesto le sorprende, por favor siga leyendo.

    Aqu, Stallman escribe, La palabra inglesa free tiene dos significados generales legtimos; prirse a libertad como libre o puede referirse a precio como gratis. Cuando hablamos de softwestamos hablando de libertad, no de ser gratis. (Piense en expresin libre, no en barraEspecficamente, significa que el usuario es libre de ejecutar el programa, cambiarlo, y redistribusin cambios.

    A veces los programas libres son distribuidos gratis. Otras veces, se cobra mucho por ellos. A m puede conseguir un programa libre gratis o a un precio alto en lugares distintos. Pero el programa pesar del precio porque los usuarios tienen la libertad de usarlo a su gusto.

    Normalmente, se venden a un precio alto los programas que no son libres, aunque algunas veceda le dar una copia sin cobrar. Con precio o sin l, el programa no es libre si los usuarios no tieneen su uso.

    Como el software libre no tiene nada que ver con el precio, un precio bajo no indica que el proms libre o est ms cerca de serlo. Por eso, si usted est redistribuyendo copias de software lib poner un precio alto y ganar dinero. Redistribuir software libre es una actividad buena y legtima. hace, est bien beneficiarse de ella.

    El software libre es un proyecto comunitario, y todo el que depende de l debe buscar medios

    25

    Fundacin Cdigo Libre Dominica

  • 8/14/2019 Fundamentos de sistemas GNU/LINUX

    26/273

    tribuir a aumentar esta comunidad. Para el distribuidor, el modo de hacerlo es donar una parte de sus cias a la Fundacin para el Software Libre u otro proyecto para desarrollar software libre. Al financiar arrollo, usted ayuda al avance del mundo del software libre.

    Distribuir SL es una Oportunidad para Obtener Fondos para Desarrollar. No la desperdicie!

    Para poder contribuir con fondos, usted necesita obtener algo extra. Si cobra una tarifa muy baja

    quedar nada para apoyar el desarrollo.Perjudicar a los Usuarios un Precio de Distribucin ms Alto?

    Aveces a la gente le preocupa que un precio de distribucin alto ponga al software libre fueralcance de los usuarios pobres. Esto es exactamente lo que ocurre con el software propietarioel software libre es diferente. La diferencia es que el software libre se difunde de forma natural, y hay mmedios para obtenerlo.

    Los acaparadores de software hacen su esfuerzo ms vil para impedir la ejecucin de un program prietario sin que se haya pagado el precio estndar. Si el precio es alto, resulta difcil el que algunos us puedan usarlo.

    Con software libre los usuarios no tienen que pagar la tarifa de distribuicin para usar el software. Phacer copias del programa de amigos o con la ayuda de algn amigo que tenga acceso a Internet. Ousuarios se pueden juntar, repartir el coste de un CD-ROM e instalar el software por turnos. Un precde CD-ROM no es gran obstculo cuando el software es libre.

    Desincentivar el Uso del Software Libre un Precio de Distribucin ms Alto?

    Otra preocupacin comn es por la popularidad del software libre. La gente cree que una tarifa adistribucin podra reducir el nmero de usuarios, o que un precio bajo probablemente aumentnmero.

    Esto es cierto para el software propietario - pero el software libre es diferente. Con tantas formas dener copias, el precio de distribucin afecta menos a la popularidad.

    A la larga, el nmero de usuarios de software libre est determinado, fundamentalmente, por cuntohacer el software y si es fcil usarlo o no. Muchos de los usuarios van a seguir usando software propsi el software libre no puede hacer el trabajo que desean. As, si queremos aumentar el nmero de usulargo plazo, debemos sobre todo desarrollar ms software libre.

    El modo ms directo de hacer esto es que usted mismo escriba el software libre o los manuales tque necesitamos. Pero, si usted distribuye el software en vez de escribirlo, la mejor forma de ayudaconseguir dinero para que otros escriban los programas.

    El Trmino Vender Software Puede Ser Confuso

    Hablando con exactitud, vender significa cambiar mercanca por dinero. Vender una copia programa libre es legtimo, y lo apoyamos. Sin embargo, cuando la gente piensa en vender sore, usualmente se imaginan que se trata de venderlo como la mayora de compaas lo hacen: hacelsoftware propietario en vez de libre.

    Por eso, a menos que usted vaya a hacer distinciones finas, como hace ste artculo, le sugerimoevite la frase vender software y escoja otra. Por ejemplo, usted podra decir distribuir software lib

    26

    http://www.codigolibre.org

  • 8/14/2019 Fundamentos de sistemas GNU/LINUX

    27/273

    un precio''. Esto no es ambiguo.

    Precios altos o bajos y la Licencia Pblica General de GNU

    Salvo en un caso especial, la Licencia Pblica General de GNU (GPL de la GNU) no establecciones respecto a cunto puede cobrar usted por distribuir una copia de software libre. Uscobrar nada, un centavo, un dlar, o un billn de dlares. Slo depende de usted y del mercado.

    reclame si nadie quiere pagar un billn de dlares por una copia.La nica excepcin es el caso en el que los ficheros binarios son distribuidos sin el cdigo fu

    pleto correspondiente. La GPL de la GNU requiere a quienes hacen esto que tambin provean el cte completo en el caso de una solicitud posterior. Si no hubiese un lmite para el precio del cdigodistribuidor podra cobrar tanto que nadie pudiera pagarlo --por ejemplo, un billn de dlares-- yque facilita el cdigo mientras que en realidad lo estara reteniendo. Por eso en ste caso tenemostar el pago por el cdigo fuente para proteger la libertad del usuario. Pero en situaciones ordinari justificacin para limitar los precios de distribucin. Por tanto, no las limitamos.

    De vez en cuando, compaas cuyas actividades exceden los lmites establecidos por la GPL

    piden permiso, diciendo que no van a cobrar dinero por el software GNU o algo por estilo. Aslograr nada. El software libre trata de libertad, y aplicar y defender la GPL es defender la libertaddefendemos la libertad de los usuarios no nos distraemos por cuestiones secundarias como cul ede distribucin. Libertad es el asunto, todo el asunto y el nico asunto.

    Como lo ve RedHat

    El distribuidor de GNU/Linux Red Hat tiene un negocio que incluye distribuir gratuitamenteInternet; pero, ellos venden miles de CDs y se han convertido en una compaa billonara clizando Linux a alrededor de US$60 los mismos CDs. Lo que Red Hat ha logrado es cambiar la pde lo que vende de los CDs ha una configuracin especifica y servicios. Lo que ellos venden es qde sus CDs es ms fcil que con los CDs que descargas desde el Internet.

    Pasos Para vender Software Libre

    Tomemos como ejemplo una empresa pequea, imaginate un cliente FTPque le permite al uslos comandos siempre igual independiente del sistema operativo en el cual el se encuentresi el FTPesta bajo GNU/Linux o cualquier otro sistema operativo, el usuario todava podra ejcomandos en el servidor igual que si fuese bajo de GNU/Linux.

    Adems, permitir la compaa generar ingresos y beneficio mientras que contina publicando re bajo licencia de fuente abierta (OpenSource), un negocio pudo tomar las medidas siguientes: El software, creado con comentarios en el cdigo fuente con sus pginas de manual (man) al est

    es librada bajo la licencia GPL y colocada en el Internet para su libre descarga. Se crean Forums y grupos de noticias para invitar a otros que prueben el software y ofrezcan susobre cmo mejorarlo.

    Si se asume que el software es estable y la compaa est satisfecha con su funcionalidad, un Cado para hacer el programa fcil de manejar para los usuarios inexpertos.

    Una vez la compaa ste satisfecha con el software, creara un Web site y ofrecera el CD par De acuerdo con la documentacin, los tutoriales, o los manuales de usuario detallados que otr

    GLP han vendido, la compaa pueden desear ofrecer una documentacin ms detallada para dcon el CD o como un libro separado.

    27

    Fundacin Cdigo Libre Dominica

  • 8/14/2019 Fundamentos de sistemas GNU/LINUX

    28/273

    Puede Software GNU GPLed Ser Mejor que el Software Proprietaria?

    No es casualidad que las utilidades GNU sean ms confiables. Hay buenas razones por las cuasoftware libre tiende a ser de alta calidad. Una razn es que el software libre consigue involutoda la comunidad para que trabaje unida para arreglar problemas. Los usuarios no slo informan de eincluso los arreglan y envan los arreglos. Los usuarios trabajan juntos, conversando por correo elect para alcanzar el fondo del problema y hacer que el software trabaje sin problemas.

    Otra es que los desarrolladores se preocupan realmente de la fiabilidad. Los paquetes de software lisiempre compiten comercialmente, pero s compiten por una buena reputacin y un programa que setisfactorio no alcanzar la popularidad que los desarrolladores esperan. Lo que es ms, un autor que pcdigo fuente al alcance de la vista de todos arriesga su reputacin, y le conviene hacer el software liclaro, bajo pena de la desaprobacin de la comunidad.

    Puestas en Prctica Importantes De Linux

    La puesta en prctica de GNU/Linux puede ser describida de diversas maneras. Estas pueden ivarios tipos de arquitecturas y distribuciones que obedecen un estndar pero que mantienen surencias. Intel 80x86, Sun SPARC, IBM PPC, DEC Alpha, Motorola Red Hat, TurboLinux, SuSE, Debian/GNU. Slackware.

    Arquitecturas

    La Arquitectura se refiere al diseo especfico y la construccin de una computadora, su CPU (sador), y el tamao del Conjunto de bytes que puede procesar (Ej. 8-bit, 16-bit, 32-bit o 64-bit).la mayora de ustedes sabe, Linux slo es un ncleo (kernel). Durante mucho tiempo el ncleo Linucorra en la serie de mquinas x86 de Intel, para la cual el fu diseado, desde el 386 en adelante..

    Sin embargo, hoy da esto ya no es cierto. El ncleo Linux ha sido adaptado a una larga y crecient

    de arquitecturas. En general ste proceso tiene un comienzo difcil (hay que conseguir que la libc y ezador dinmico funcionen sin trabas), para seguir luego el proceso rutinario, y largo, de conseguir relar todos los paquetes bajo las nuevas arquitecturas.

    Distribuciones

    Dado que GNU/Linux es un sistema operativo libre (gratuito), cualquiera puede agarrar un mon programas (GNU principalmente), colocarlos en un CD y distribuirlos como un Linux; es dechay un GNU/Linux, hay muchos (alrededor de unos 1,600), tantos como distribuciones. Cada distrielige qu programas va a incluir y cuales no, tiene sus propios programas de instalacin, sus propios ices grficos, eligen versiones determinadas de programas, y finalmente, benefician a una empresa

    Algunas distribuciones populares son la RedHat, la SuSE, TurboLinux, Debian, esWare. La mayora sden descargar desde http://linuxiso.org.

    Los Estndares

    Aunque existen muchas distribuciones de GNU/Linux con mtodos variados de lograr tareas (code instalacin) y al usuario nuevo esto le parezca algo desorganizado es todo lo contrario. Eentidades que se dedican a la estandarizacin de GNU/Linux. Esto es para garantizar y preservar comlidad entre todas las distribuciones y los sistemas operativos Tipo-Unix y los que no son. La Linux StBase (LSB), por ejemplo, es una entidad que define el estndar de los paquetes de software ha ser inc

    28

    http://www.codigolibre.org

  • 8/14/2019 Fundamentos de sistemas GNU/LINUX

    29/273

    en las distribuciones. La Filesystem Hierarchy Standard (FHS), la cual dicta el estndar de GNU/Linux y su debida estructura.

    Como existe una gran variedad de sistemas operativos de tipo de UNiX y UNiX-Like, tambincomit de Estndares que los gobierna, llamado el Portable Operating System Interfaz for UNiX POSIX es una definicin de interfaz a la cual los sistemas deben conformar, la gran mayora de lomodernos de GNU/Linux tratan de adherirse estrictamente a stos estndares de cumplimientoDesarrolladores de GNU/Linux se ajustan a los Estndares que se concentran en la funcionalidad y la Interfaz de Programacin de Aplicaciones (Application Programming Interfaz, API).

    Linux: PositivosGNU/Linux tiene un nmero de cualidades positivas:

    Opera en una amplia gama de hardware Conjunto de comandos Poderosos y flexible Ambiente de Desarrollo de Software estable Capacidades robustas intrnsecas de redes/networking Bajo (casi siempre hasta grats) costo de compra/adquisicin y alta disponibilidad de soporte

    La popularidad de GNU/Linux puede ser atribuida a un nmero de factores, de los cuales se puetar algunos: Las utilidades estndares de GNU/Linux son muy verstiles y diversas en sus funciones y p

    extendidas por desarrolladores a travs de modificacin de su cdigo fuente. GNU/Linux fu desarrollado con el propsito de facilitar el continuo desarrollo de el mismo, y

    tado, el a madurado en un ambiente de desarrollo robusto y amistoso. Esta disponible en una amplia gama de plataformas de hardware y en cada una de ella present

    faz my similar por no decir la misma independiente de ellas, o sea que es muy fcil llevar los pque haces para i386 a PPC de Mac/IBM/Morola.

    Es relativamente fcil migrar un sistema GNU/Linux a otro a partir de radicalmente diferente pl

    de hardware. Como lo es tambin, generalmente fcil, migrar de un GNU/LINUX a UNiX GNU/Linux. Existe una gran cantidad de mtodos para intercomunicar a GNU/Linux con otros sistemas ope

    Kernel de GNU/Linux contiene los elementos b