You are on page 1of 38

GNU/Linux 101

Michael A. Garrido Saucedo

Linux es un sistema operativo gratuito de código abierto
desarrollado inicialmente para ordenadores personales
basados en Intel x86. Ha sido posteriormente portado a
muchas otras plataformas de hardware.

Linux de un proyecto de estudiante en un esfuerzo masivo
con un enorme impacto en el mundo de hoy.

Linux 101 – Clase 1 | Introducción a Linux.

Historia
Linus Torvalds fue estudiante en Helsinki, Finlandia, en 1991, cuando inició
un proyecto: escribir su propio núcleo de sistema operativo. También
reunió y / o desarrolló los otros ingredientes esenciales necesarios para
construir un sistema operativo completo con su núcleo en el centro. Esto
pronto se conoció como el kernel de Linux.

En 1992, Linux fue re-licenciado usando la Licencia Pública General (GPL)
de GNU (un proyecto de la Free Software Foundation (FSF) que promueve
software libremente disponible) que hizo posible construir una comunidad
mundial de desarrolladores.

Linux 101 – Clase 1 | Introducción a Linux.

Las distribuciones de Linux creadas a mediados de los 90 proporcionaron la base para una computación completamente gratuita y se convirtieron en una fuerza impulsora en el movimiento del software de código abierto. muchos otros desarrolladores crearon sistemas completos llamados Linux Distributions a mediados de los 90's.Historia Al combinar el kernel con otros componentes del sistema del proyecto GNU. Linux 101 – Clase 1 | Introducción a Linux. .

Linux 101 – Clase 1 | Introducción a Linux. grandes empresas como IBM y Oracle anunciaron su apoyo a la plataforma Linux y comenzaron importantes esfuerzos de desarrollo también.Historia En 1998. .

Historia Linux 101 – Clase 1 | Introducción a Linux. .

Historia Linux 101 – Clase 1 | Introducción a Linux. .

. GNU/ Linux se construye colaborativa mente vía internet desde el año: 1991 = 10 329. Linux alimenta a más de la mitad de los servidores de Internet.Historia Hoy en día. 2016 = 15 000 000 + Líneas de código Linux 101 – Clase 1 | Introducción a Linux. la mayoría de los teléfonos inteligentes (a través del sistema Android que se construye encima de Linux) y casi todos los supercomputadores más potentes del mundo.00 Líneas de código.

Linux es constantemente mejorado y mantenido por una red de desarrolladores de todo el mundo que colaboran a través de Internet. La habilidad técnica y el deseo de contribuir son los únicos requisitos para participar Linux 101 – Clase 1 | Introducción a Linux. . Esta sección contiene una descripción de la filosofía de Linux y cómo esta filosofía ha impactado su desarrollo. con Linus Torvalds en la cabeza.Filosofía Cada organización o proyecto tiene una filosofía que funciona como una guía mientras que enmarca sus objetivos y delinea su trayectoria del crecimiento.

Linux pone sus componentes a disposición a través de archivos u objetos que parecen archivos.Filosofía Linux se basa en gran medida en el sistema operativo UNIX porque se escribió para ser una versión libre y de código abierto de UNIX. siendo el nodo superior del sistema root o simplemente "/". Linux 101 – Clase 1 | Introducción a Linux. Los archivos se almacenan en un sistema de archivos jerárquico. Siempre que sea posible. .

. con procesos integrados de redes y servicios conocidos como daemons en el mundo de UNIX. Linux 101 – Clase 1 | Introducción a Linux. Linux es un sistema totalmente multitarea (un método en el que se ejecutan múltiples tareas durante el mismo período de tiempo). a menudo. sistema operativo multiusuario.Filosofía Procesos. dispositivos y sockets de red están representados por objetos de tipo archivo y. pueden utilizarse con las mismas utilidades utilizadas para archivos normales.

Si usted no es capaz de averiguar la respuesta usted mismo o obtener ayuda de un compañero de trabajo.Comunidad Suponga que como parte de su trabajo necesita configurar un servidor de archivos Linux. . y se encuentra con algunas dificultades. Linux 101 – Clase 1 | Introducción a Linux. suscribirse a temas de discusión e incluso unirse a grupos locales de Linux que se reúnen en su área. la comunidad de Linux podría salvar el día! Hay muchas formas de interactuar con la comunidad de Linux: puede publicar consultas en foros de discusión relevantes.

Cuando un equipo se enciende o se reinicia. Es el principal responsable de facilitar a los distintos programas acceso seguro al hardware de la computadora. .Terminología Kernel Software que constituye una parte fundamental del sistema operativo. el sistema básico de entrada / salida (BIOS) realiza algunas pruebas iniciales y luego transfiere el control al registro maestro de arranque (MBR) donde reside el cargador de arranque. Boot loader o gestor de inicio Es un pequeño programa que coloca el sistema operativo (OS) de una computadora en la memoria. Linux 101 – Clase 1 | Introducción a Linux. y se define como la parte que se ejecuta en modo privilegiado (conocido también como modo núcleo).

Estructuran la información guardada en un dispositivo de almacenamiento de datos o unidad de almacenamiento (normalmente un disco duro de una computadora). ya sean secundarias o terciarias.Terminología Filesystem (sistema de archivos) Es el componente del sistema operativo encargado de administrar y facilitar el uso de las memorias periféricas. Linux 101 – Clase 1 | Introducción a Linux. Sus principales funciones son la asignación de espacio a los archivos. que luego será representada ya sea textual o gráficamente utilizando un gestor de archivos. . la administración del espacio libre y del acceso a los datos resguardados.

Terminología Command Line (Línea de comandos) Es un método que permite a los usuarios dar instrucciones a algún programa informático por medio de una línea de texto simple. Debe notarse que los conceptos de CLI. . aunque suelen utilizarse como sinónimos Linux 101 – Clase 1 | Introducción a Linux. shell y emulador de terminal no son lo mismo.

Distribuciones Una distribución Linux (distro) es una distribución de software basada en el núcleo Linux que incluye determinados paquetes de software para satisfacer las necesidades de un grupo específico de usuarios. de software libre. Por lo general están compuestas. dando así origen a ediciones domésticas. . aunque a menudo incorporan aplicaciones o controladores propietarios. total o mayoritariamente. Linux 101 – Clase 1 | Introducción a Linux. empresariales y para servidores.

LibreOffice. etc.Distribuciones Aplicaciones Propietarias Genéricas como: Controladores. Flash player. etc Linux 101 – Clase 1 | Introducción a Linux. Aplicaciones genéricas libres como Comunidad. etc. Sistema X Window Aplicaciones especificas de la distro Manuales para aplicaciones como gestión de paquetes. etc Servicios de Soporte. Kernel Linux Bash. . Comandos. Configuraciones. utilidades. Comerciales.

Linux 101 – Clase 1 | Introducción a Linux. .Sistemas de Archivos Piense en un refrigerador que tiene varios estantes que se pueden utilizar para almacenar diversos artículos. que es la realización de un método de almacenar y organizar colecciones arbitrarias de datos en una forma utilizable por el hombre. El mismo concepto se aplica a un sistema de archivos.

sysfs.Sistemas de archivos de disco convencionales: ext2.Sistemas de archivos de base de datos . . . etc. JFS. etc. ext4. etc Linux 101 – Clase 1 | Introducción a Linux. YAFFS. ext3. Diferentes tipos de sistemas de archivos compatibles con Linux: . Btrfs.Sistemas de archivos de almacenamiento flash: ubifs.Sistemas de Archivos . tmpfs. XFS. debugfs. . JFFS2.Sistemas de archivos de propósito especial: procfs. NTFS.

Sistemas de Archivos Una partición es una parte lógica del disco. mientras que las particiones son como diferentes familias (cada una de las cuales tiene su propio árbol). . Por analogía. Una comparación entre los sistemas de archivos en Windows y Linux se da en la siguiente tabla: Windows GNU / Linux Partición Disco 1 /dev/sda1 Tipo de Sistema de NTFS / FAT32 EXT4/EXT3/XFS Archivo Parámetros de Letra Punto de Montaje Montaje Fichero donde se C / almacena es SO Linux 101 – Clase 1 | Introducción a Linux. se puede pensar en sistemas de ficheros como árboles genealógicos que muestran descendientes y sus relaciones. mientras que un sistema de archivos es un método de almacenar / encontrar archivos en un disco duro (normalmente en una partición).

Sistemas de Archivos Linux 101 – Clase 1 | Introducción a Linux. .

Linux 101 – Clase 1 | Introducción a Linux. busque el directorio / usr en el diagrama anterior y compare los subdirectorios con los que existen directamente en el directorio raíz del sistema (/). . y ubican este último en directorios bajo / usr (piense en "usuario"). / Boot y / BOOT representan tres directorios (o carpetas) diferentes. Muchas distribuciones distinguen entre las utilidades básicas necesarias para el funcionamiento correcto del sistema y otros programas.Sistemas de Archivos Todos los nombres de sistemas de archivos Linux son sensibles a mayúsculas y minúsculas. Para obtener una idea de cómo se organizan los otros programas. por lo que / boot.

Sistemas de Archivos Linux 101 – Clase 1 | Introducción a Linux. .

Una vez que comience a usar Linux. Linux 101 – Clase 1 | Introducción a Linux. Consiste en todo lo que sucede desde el momento en que se conecta la alimentación de la computadora hasta que la interfaz de usuario esté completamente operativa. . encontrará que tener una buena comprensión de los pasos en el proceso de arranque le ayudará con la solución de problemas. así como con la adaptación del rendimiento de la computadora a sus necesidades.Proceso de Inicio El proceso de arranque de Linux es el procedimiento para inicializar el sistema.

Proceso de Inicio . la hora y los periféricos más importantes se cargan a partir de los valores CMOS (después de una tecnología utilizada para el almacén de memoria con pilas. la máquina no tiene acceso a ningún medio de almacenamiento masivo. Linux 101 – Clase 1 | Introducción a Linux. el control del sistema pasa del BIOS al cargador de arranque.MBR Una vez que se ha completado el POST. El cargador de arranque normalmente se almacena en uno de los discos duros del sistema. ya sea en el sector de arranque (para los sistemas BIOS / MBR tradicionales) o en la partición EFI (para los sistemas de interfaz de firmware extensible más recientes o EFI / UEFI). Posteriormente. que permite al sistema seguir la pista de la fecha y la hora. Hasta este momento. la información sobre la fecha. incluso cuando está alimentado apagado). .

Proceso de Inicio . Al arrancar Linux. La mayoría de los cargadores de arranque de Linux pueden presentar una interfaz de usuario para elegir opciones alternativas para arrancar Linux. e incluso otros sistemas operativos que puedan instalarse. el cargador de arranque es responsable de cargar la imagen del núcleo y el disco RAM inicial (que contiene algunos archivos críticos y controladores de dispositivos necesarios para iniciar el sistema) en la memoria. Los más comunes son GRUB (para GRand Unified Boot loader) e ISOLINUX (para arrancar desde medios extraíbles). Linux 101 – Clase 1 | Introducción a Linux.MBR Existen varios cargadores de arranque para Linux. .

busca el cargador de inicio de la segunda etapa. . En esta etapa. por ejemplo. GRUB. el gestor de arranque examina la tabla de particiones y encuentra una partición arrancable. El tamaño del MBR es de sólo 512 bytes. Linux 101 – Clase 1 | Introducción a Linux. y lo carga en la memoria RAM (Random Access Memory). Una vez que encuentra una partición inicializable. el gestor de arranque reside en el primer sector del disco duro también conocido como MBR (Master Boot Record).Proceso de Inicio – En Acción El cargador de arranque tiene dos etapas distintas: Primera etapa: Para los sistemas que utilizan el método BIOS / MBR.

tal como se define en la entrada de arranque en el gestor de arranque del firmware. Este procedimiento es más complicado pero más versátil que los métodos MBR más antiguos. el firmware UEFI lee sus datos de Boot Manager para determinar qué aplicación UEFI se va a iniciar y desde dónde (es decir. por ejemplo.Proceso de Inicio – En Acción Para los sistemas que utilizan el método EFI / UEFI. GRUB. desde qué disco y partición se puede encontrar la partición EFI). A continuación. el firmware inicia la aplicación UEFI. Linux 101 – Clase 1 | Introducción a Linux. .

por lo que su primer trabajo es descomprimirse. Se muestra una pantalla de bienvenida que nos permite elegir qué Sistema Operativo (SO) arrancar. Linux 101 – Clase 1 | Introducción a Linux. . El cargador de arranque carga la imagen del kernel seleccionada (en el caso de Linux) y le pasa el control. Los núcleos son casi siempre comprimidos. Después de elegir el SO. el cargador de arranque carga el núcleo del sistema operativo seleccionado en la RAM y le pasa el control. comprobará y analizará el hardware del sistema e inicializará cualquier controlador de dispositivo de hardware incorporado en el kernel.Proceso de Inicio – En Acción Segunda etapa: El cargador de arranque de segunda etapa reside en / boot. Después de esto.

subsistemas de E / S. inmediatamente inicializa y configura la memoria de la computadora y también configura todo el hardware conectado al sistema. . Cuando el kernel se carga en RAM. etc.Proceso de Inicio – El Kernel El cargador de arranque carga el kernel y un sistema de archivos basado en RAM inicial (initramfs) en la memoria para que pueda ser utilizado directamente por el núcleo. El kernel también carga algunas aplicaciones de espacio de usuario necesarias Linux 101 – Clase 1 | Introducción a Linux. dispositivos de almacenamiento. Esto incluye todos los procesadores.

Linux 101 – Clase 1 | Introducción a Linux. se comprueba si hay errores y se monta. . Una vez que se ha encontrado el sistema de archivos raíz. localizar los controladores que necesitan para funcionar correctamente y cargarlos. como proporcionar funcionalidad del núcleo para el sistema de archivos y controladores de dispositivos necesarios para controladores de almacenamiento masivo con una instalación llamada udev Averiguar qué dispositivos están presentes.Proceso de Inicio – El disco de RAM inicial La imagen del sistema de archivos initramfs contiene programas y archivos binarios que realizan todas las acciones necesarias para montar el sistema de archivos raíz apropiado.

deben estar en la imagen initramfs. Si esto tiene éxito. Init se encarga de montar y girar sobre el sistema de archivos raíz real final. .Proceso de Inicio – El disco de RAM inicial El programa de montaje indica al sistema operativo que un sistema de archivos está listo para su uso y lo asocia con un punto en particular en la jerarquía general del sistema de archivos (el punto de montaje). Linux 101 – Clase 1 | Introducción a Linux. Si se necesitan controladores de hardware especiales antes de que se pueda acceder al almacenamiento masivo. el initramfs se borra de RAM y se ejecuta el programa init en el sistema de archivos raíz (/ sbin / init).

el kernel ejecuta el programa / sbin / init. La mayoría de los otros procesos en el sistema traza su origen en última instancia a init. que entonces comienza otros procesos para conseguir el funcionamiento del sistema.Proceso de Inicio – /sbin/init and Services Una vez que el kernel ha configurado todo su hardware y montado el sistema de archivos raíz. iniciados directamente por el núcleo para administrar los detalles internos del sistema operativo. Las excepciones son procesos del kernel. . Esto entonces se convierte en el proceso inicial. . Linux 101 – Clase 1 | Introducción a Linux.

limpia después de ellos cuando es necesario. y reinicia los servicios de inicio de sesión de usuario según sea necesario cuando los usuarios inician y salen. Linux 101 – Clase 1 | Introducción a Linux.Proceso de Inicio – /sbin/init and Services Además de iniciar el sistema. Actúa como el "gestor de último recurso" para todos los procesos que no son del kernel. init es responsable de mantener el sistema en funcionamiento y de cerrarlo de forma limpia. .

init inicia una serie de mensajes de inicio de sesión de texto (realizados por un programa llamado getty). seguido de su contraseña.. Linux 101 – Clase 1 | Introducción a Linux.Proceso de Inicio – Login y Xwindow Cerca del final del proceso de arranque. . Estos le permiten escribir su nombre de usuario. y finalmente obtener un shell de comandos.

Un servicio llamado el gestor de visualización mantiene un seguimiento de las pantallas que se proporcionan y carga el servidor X (llamado así porque proporciona servicios gráficos a aplicaciones.Proceso de Inicio – Login y Xwindow Generalmente. El gestor de visualización también gestiona los inicios de sesión gráficos e inicia el entorno de escritorio adecuado después de que un usuario inicie sesión. el sistema X Window se carga como el paso final en el proceso de arranque. en un sistema de escritorio Linux. Linux 101 – Clase 1 | Introducción a Linux. . a veces llamadas clientes X).

. gestor de sesión y administrador de ventanas se usan juntos como una unidad. que inicia y mantiene los componentes de la sesión gráfica y el gestor de ventanas. y juntos proporcionan un entorno de escritorio transparente. generalmente un conjunto de utilidades.Proceso de Inicio – Login y Xwindow Un entorno de escritorio consta de un gestor de sesiones. que controla la colocación y el movimiento de las ventanas. las barras de título de la ventana y los controles. Aunque estos pueden ser mezclados. Linux 101 – Clase 1 | Introducción a Linux.

com @xander21c .garridosaucedo@gmail. Gracias por su Atención Michael A. Garrido Saucedo michael.