Session 1 del Curso Linux

719 visualizaciones

Publicado el

Session 1, del curso de GNU/Linux desarrollado en Piura - Peru

Publicado en: Educación, Tecnología
0 comentarios
0 recomendaciones
Estadísticas
Notas
  • Sé el primero en comentar

  • Sé el primero en recomendar esto

Sin descargas
Visualizaciones
Visualizaciones totales
719
En SlideShare
0
De insertados
0
Número de insertados
3
Acciones
Compartido
0
Descargas
75
Comentarios
0
Recomendaciones
0
Insertados 0
No insertados

No hay notas en la diapositiva.

Session 1 del Curso Linux

  1. 1. Ing. Milton Villanueva Flores
  2. 2. Introducción Software parece ser un termino nuevo, pero sin embargo es algo que existe desde mucho incluso desde el inicio de la era de las computadoras. Este curso será útil sobre todo a quienes están dando sus primeros pasos en el mundo del software libre. El objetivo principal es proporcionar una serie de explicaciones sencillas y prácticas, de tal modo quecualquiera, sin grandes conocimientos de informática, pueda convertirse en usuario de GNU/Linux y aprovechar todas las ventajas que ofrecen los sistemas libres.
  3. 3. La historia del software libre se puede decir que comenzó entre los años 1960 y 1970 cuando el software no era muy tenido en cuenta ya que se consideraba que era un extra de las grandes máquinas de la época, del hardware. Tomando como base las ideas de Paul Baran y Donald Davies y con la ayuda técnica de Larry Roberts del MIT y otros pioneros, Bob Taylor puso en pie ARPAnet. UNIX (1969), de los laboratorios Bell de AT&T, que buscaba crear un sistema operativo simple y elegante. En 1976, el código de UNIX se puso a disposición de las universidades norteamericanas sin ningún tipo de coste. finales de los años 70 AT&T creo un grupo con la misión de comercializar el sistema operativo: el UNIX Support Group (USG). El problema que surgio fue que las licencias , que en principio habían sido gratis o muy baratas para las universidades, comenzaron a encarecerse y a restringirse, limitando de esta forma el uso y la mejora del sistema operativo. Historia del Software Libre
  4. 4. Historia del Software Libre La política de licencias de AT&T provocá que cada gran empresa dispusiera de su propia versión de UNIX. El problema fue que realizaron modificaciones que dificultaban la interoperabilidad y entorpezcan el reaprovechamiento de conocimiento que se pudiera tener sobre el UNIX de otro fabricante. Algunas de estas versiones y sus empresas comercializadoras eran: * AIX: IBM * HP-UX: Hewlett-Packard * Solaris y SunOS: Sun * IRIX: Silicon Graphics
  5. 5. Richard Mathew Stallman (a veces nombrado por el acrónimo RMS, basado en su nombre de usuario en los computadores del MIT) es un personaje a la vez genial y controvertido, imprescindible para comprender el software libre. Este físico, graduado en 1974 en Harvard, trabajaba en el laboratorio de inteligencia artificial del Instituto de Tecnología de Massachussetts (MIT) desde 1971. Historia del Software Libre
  6. 6. RMS abandono el MIT en enero de 1984, para iniciar el proyecto GNU. GNU es un acrónimo recursivo que significa GNU's Not Unix, GNU No Es UNIX, referencia a que el proyecto busca desarrollar un sistema operativo de tipo UNIX, pero libre. En sus comienzos, el proyecto GNU se concentró en desarrollar las herramientas necesarias para construir un sistema operativo, como editores y compiladores y en las utilidades básicas para la gestión del sistema. Sobre 1985, Richard Stallman creó la licencia GPL (General Public License) como mecanismo para proteger el software libre, sustentado sobre el concepto de copyleft. Mediante él, se le da la vuelta a la idea de copyright, de manera que "todo el mundo tiene derecho a ejecutar un programa, copiarlo, modificarlo y distribuir las versiones modificadas, pero no tiene permiso para añadir sus propias restricciones al mismo". De esta forma, las libertades que definen al software libre están garantizadas para todo el mundo que tenga una copia, tornándose en derechos inalienables. Historia del Software Libre
  7. 7. Historia del Software Libre Unix BSD, se separa totalmente de UNIX de AT&T, reprogramando todo de nuevo de esto aparecen los primeros sistemas operativos libres como : * BSD-Lite * FreeBSD * OpenBSD * Darwin : base para el MACOS
  8. 8. MINIX es un sistema operativo de tipo UNIX, preparado para funcionar sobre un PC 80806 y dotado de una funcionalidad limitada. Su autor es Andrew Tanenbaum, un conocido profesor universitario de informatica, que lo diseño para enseñar sistemas operativos en una asignatura semestral. A principios de los 90, su libro sobre sistemas operativos "Operating Systems: Design and Implementation", en el que se incluia una versión impresa de MINIX, era utilizado en las facultades de todo el mundo. El grupo de noticias de MINIX tenía 40000 suscriptores, que pedían continuamente nuevas prestaciones para el software, que Tanenbaum rechazaba porque quería mantenerlo lo suficientemente pequeñoo como para poder seguir enseñando con él. Es en este momento donde entra en escena uno de los actores principales de toda esta historia: Linux. Historia del Software Libre
  9. 9. Linus Torvalds era en 1991 un estudiante finlandés de 2do de informática. Frustrado por tener que utilizar MS-DOS en su ordenador personal y queriendo evitar las limitaciones de MINIX, envió un mensaje al grupo de noticias comp.os.minix con unas palabras que ya se han convertido en clásicas:. A partir de ese momento y empleando los componentes desarrollados por el proyecto GNU y la Internet como vehículo de comunicación, Linus consiguió convertirse en el líder de una comunidad de desarrolladores repartida por todo el mundo. La versión 1.0 de Linux fue publicada en 1994. Historia del Software Libre TUX
  10. 10. Do you pine for the nice days of minix-1.1, when men were men and wrote their own device drivers? Are you without a nice project and just dying to cut your teeth on a OS you can try to modify for your needs? Are you finding it frustrating when everything works on minix? No more all- nighters to get a nifty program working? Then this post might be just for you :-) As I mentioned a month(?) ago, I'm working on a free version of a minix-lookalike for AT-386 computers. It has finally reached the stage where it's even usable (though may not be depending on what you want), and I am willing to put out the sources for wider distribution. It is just version 0.02 (+1 (very small) patch already), but I've successfully run bash/gcc/gnu-make/gnu-sed/compress etc under it. Mensaje enviado por Linus a la comunidad Minix
  11. 11. Linux ofreció a los usuarios de las herramientas de GNU lo que hasta entonces no habían tenido: el núcleo que les permitiese poner en marcha un sistema completamente libre. Los proyectos comenzaron a aflorar, coincidiendo con el despegue a nivel mundial de la Internet y el abaratamiento de las conexiones. Conforme más gente tenía acceso a la Red, más grande se hacía la comunidad y nuevos usos empezaban a darse al sistema operativo. Uno de los mayores triunfos fue el servidor web Apache , que más tarde se articularía en torno a un proyecto más amplio que mantuvo el mismo nombre. Apache evolucionó en principio desde el código del servidor web NCSA HTTPd 1.3, aunque después fue completamente reescrito. Netscape, que por aquel entonces se encontraba bajo asedio en la guerra de los navegadores que mantuvo con Microsoft, decidió liberar el código de Navigator en 1998. Así nació el proyecto Mozilla , que varios años después se ha consolidado como una alternativa a los navegadores y clientes de correo de Microsoft, mediante Firefox y Thunderbird respectivamente. A mediados de los 90 muchas empresas empezaron a centrar su atención en las soluciones basadas en Linux. Su rendimiento y seguridad como servidor y la capacidad de correr sobre hardware barato, unidos a su bajo coste, han hecho que su utilización no haya dejado de crecer desde entonces. Historia del software Libre
  12. 12. En 1998, Eric S. Raymond y otras personas, ante las dificultades de muchas empresas de entender las ventajas del software libre, decidieron poner en marcha la Open Source Iniciative (OSI). Richard Stallman, que inicialmente apoyaba la iniciativa, se retiró de ella por no compartir que se restase importancia a las motivaciones éticas para desarrollar software libre. Según El, "el código abierto es una metodología de desarrollo; el software libre es una filosofía política (o un movimiento social)". Así, la corriente del código abierto intenta convencer a las empresas de que pueden obtener beneficios respetando la libertad de sus usuarios de intercambiar y compartir sus programas. En cambio, la del software libre hace énfasis en que todos los programadores tienen la obligación ética de respetar las libertades básicas del software para el resto de la gente. Historia del software Libre Erick
  13. 13. Uno de los últimos aspectos en consolidarse dentro del software libre han sido los entornos y aplicaciones de escritorio. Aunque siempre han existido, no se disponía de alternativas capaces de convencer a los usuarios de otros sistemas operativos gráficos, o de Windows. Sin embargo, tanto KDE como GNOME, e incluso otras alternativas menos conocidas como XFCE, ofrecen un entorno de trabajo en el que ningún usuario proveniente de otro sistema puede sentirse incómodo. Un fenómeno novedoso es que los programas privativos están empezando a implementar ideas presentes en programas libres. Por ejemplo, la nueva versión de Windows, Longhorn, anuncia como gran novedad los escritorios virtuales y la "barra lateral", que son utilizados desde hace años por los usuarios de GNU/Linux y otras versiones de UNIX. Otro ejemplo es el de Microsoft Outlook, que en sus últimas versiones está implementando caracterésticas que ya tenía Evolution, como las carpetas virtuales (carpetas de búsqueda en Outlook). El futuro del software libre se presenta imparable en muchos frentes y de los servidores y las instalaciones de centros de investigación está pasando a empresas y administraciones, que empiezan a desplegar miles de puestos de trabajo con El.
  14. 15. * Libertad 0: la libertad de usar el programa, con cualquier propósito * Libertad 1: la libertad de estudiar cómo funciona el programa, y adaptarlo a tus necesidades . * Libertad 2: la libertad de distribuir copias, con lo que puedes ayudar a tu vecino. * Libertad 3: la libertad de mejorar el programa y hacer públicas las mejoras a los demás, de modo que toda la comunidad se beneficie.
  15. 17. Caracteristicas de Linux <ul><li>Multitarea : varios programas (realmente procesos) ejecutándose al mismo tiempo </li></ul><ul><li>Mulriproceso : varios usuarios en la misma máquina al mismo tiempo </li></ul><ul><li>(¡y sin licencias para todos!). </li></ul><ul><li>Multiplataforma: corre en muchas CPUs distintas, no sólo Intel </li></ul><ul><li>Proteccion de memoria entre procesos, de manera que uno de ellos no cuelgue la maquina </li></ul><ul><li>Carga de ejecutables bajo demanda : lee del disco lo que enecesita en ese momento </li></ul><ul><li>Comparte paginas de memoria entre los procesos </li></ul><ul><li>Emula versiones de unix </li></ul><ul><li>Accede en modo trasparente a particiones DOS, FAT y FAT32 </li></ul><ul><li>TCP/IP adherido </li></ul><ul><li>Sistema de archivos Cdrom que lee todos los formatos estandar </li></ul><ul><li>Varias consolas virtuales </li></ul><ul><li>Soporta muchos dispositivos de entrada y alamacenamiento </li></ul>
  16. 18. El Kernel de Linux
  17. 19. El Kernel es el verdadero Linux , el que controla directamente la memoria y los dispositivos del ordenador. El Kernel Linux, creado inicialmente por Linus Torvalds junto al Proyecto GNU de Richard Stallman forman lo que nosotros usamos, el GNU/Linux. el corazón de este sistema operativo. Es el encargado de que el software y el hardware de tu ordenador puedan trabajar juntos. Las funciones más importantes del mismo, aunque no las únicas, son: * Administración de la memoria para todos los programas y procesos en ejecución. * Administración del tiempo de procesador que los programas y procesos en ejecucion utilizan. * Es el encargado de que podamos acceder a los periféricos/elementos de nuestro ordenador de una manera cómoda.
  18. 20. <ul><li>primera versión estable, la 1.0, el 15 de marzo de 1994 </li></ul>Ultima version : Linux 2.6.27, tiene mas de 6,399,191 SLOC es decir lineas de codigo puro 96.4 per cent of the code is written in C and 3.3 percent in Assembler
  19. 22. Numeracion y versiones Más allá de haber desarrollado su propio código y de integrar los cambios realizados por otros programas, Linus Torvalds continua lanzando nuevas versiones del núcleo Linux. Estos son llamados núcleos “vanilla ”, La versión del núcleo Linux actualmente consta de cuatro números. Por ejemplo, asumamos que el número de la versión está compuesta de esta forma: A.B.C[.D] (ej.: 2.2.1, 2.4.13 ó 2.6.12.3). * El número A denota la versión del núcleo. * El número B denota la subversión del núcleo. Par estable, impar inestable * El número C indica una revisión mayor en el núcleo. En la forma anterior de versiones con tres números, esto fue cambiado cuando se implementaron en el núcleo los parches de seguridad, bugfixes, nuevas características o drivers. Con la nueva política, solo es cambiado cuando se introducen nuevos drivers o características; cambios menores se reflejan en el número D. * El número D se produjo cuando un grave error, que requiere de un arreglo inmediato
  20. 23. Alan cox morton colima torvals
  21. 24. La consola de Linux
  22. 25. - Quién es el Bash? - El Bash es el hijo mas nuevo de la familia Shell. - Espera ahí! Quieres volverme loco? Tenía una duda y ahora me dejas con dos! - No, loco ya lo eras antes de aparecer por aqui. Desde que decidiste usar aquél sistema operativo con el cual tienes que reiniciar tu máquina unas diez veces por dia y no tienes dominio ninguno sobre lo que está pasando en el computador. Pero deja eso de lado, te voy a explicar lo que es el Shell y los componentes de su familia y al final de la explicación me dirás: &quot;Mi Dios del Shell! Porque no opté antes por Linux?&quot;. Dialago entre una persona que usa linux y otra no
  23. 26. El Shell es un programa especial utilizado como una interfaz entre el usuario y e l núcleo del Sistema Operativo ( Kernel ). A grandes rasgos, el Kernel es un programa que se carga en memoria al momento en el que el PC se inicia, y se encarga de administrar el sistema hasta que apagamos el computador; es decir, crea y controla procesos, gestiona la memoria, el sistema de archivos y mucho más. l o podemos definir como un Programa Utilitario que se inicia cuando accedemos a nuestra sesión en el sistema operativo . Este, le permite al usuario interactuar con el Kernel a través de la interpretación de los comandos que el usuario ingresa en la línea de comandos ó a través de los &quot;scripts&quot; (archivos que ejecutan un conjunto de comandos). Después de que tipeamos un comando, la responsabilidad del Shell es: 1. Analizar la línea de Comandos 2. Manejar los comodines, las redirecciones, tuberías y planificar el control de ejecución de los comandos. 3. Buscar el comando, si lo encuentra, ejecutar el comando, en caso contrario emitir un error.
  24. 27. el Shell , que se vale de la imagen de una concha envolviendo el sistema operativo propiamente dicho, es el nombre genérico para tratar los hijos de esta idea que, con el correr de los años de existencia del sistema operativo Unix fueron apareciendo. Actualmente existen diversos “sabores” de Shell, entre ellos destaco el sh (Bourne Shell) el ksh (Korn Shell), bash (Bourne Again Shell) y el csh (C Shell).
  25. 28. Una visión rápida em los Principales Sabores de Shell Bourne Shell (sh) Desarrollado por Stephen Bourne de la Bell Labs (de AT&T donde también fue desarrollado el Unix), este fue durante muchos años el Shell patrón del sistema operativo Unix. Es también llamado de Standard Shell por haber sido durante varios años, el único y hasta hoy es el mas utilizado ya que fue transportado para todos los ambientes Unix y distros Linux. Korn Shell (ksh) Desarrollado por David Korn, también de la Bell Labs, es un superconjunto del sh, o sea, posee todas las facilidades del sh y a ellas se agregaron muchas otras. La compatibilidade total con el sh esta atrayendo a muchos usuarios y programadores de Shell para este ambiente.
  26. 29. Boune Again Shell (bash) Este es el Shell mas moderno y cuyo número de adeptos crece mas en todo el mundo, sea por ser el Shell default de Linux, su sistema operativo natural, o sea por su gran diversidad de comandos, que incorpora inclusive diversas instrucciones características del C Shell. C Shell (csh) Desarrollado por Bill Joy de la Berkley University es el Shell mas utilizado en ambientes *BSD e Xenix. La estrutura de sus comandos es bastante similar al del lenguage C. Su gran pecado fue ignorar la compatibilidad con el sh, partiendo por un camino propio. Además de estos Shells existen otros
  27. 33. Fin de la Primera Parte

×