Download - semana 3- arranque de linux.pdf
Sistemas Operativos
Introducción a GNU/Linux
Arranque de Linux
PROFESOR :
Ing. CIP Juan Carlos OVIEDO Béjar
Logro de la Unidad
Al término de la unidad, el alumno
configura y administra el arranque del
sistema operativo Linux desde el kernel
y/o desde el gestor de arranque.
SEMANA 3: Proceso de arranque en Linux
Arranque, inicio y cierre del sistema
El Grub en Linux
Arranque de BIOS
Manejo del gestor de arranque
El kernel de Linux
Niveles de ejecución y su utilidad
Proceso de arranque
Power-on Gestor
Arranque
Load
Kernel
Create
init
process
rc.sysinit runlevel
0-6 rc.local
Linux
Scripts de Inicialización
Ready
hardware
Etapas básicas del proceso de arranque para un sistema x86:
Proceso de Arranque 1. La BIOS del sistema comprueba y lanza la
primera etapa del gestor de arranque del MBR del disco duro primario.
2. La primera etapa del gestor de arranque se autocarga en memoria y lanza la segunda etapa del gestor de arranque desde la partición /boot/.
Proceso de Arranque …
3. La segunda etapa del gestor de arranque carga el kernel en memoria, lo cual en su momento carga los módulos necesarios y monta la partición root para sólo-lectura.
4. El kernel transfiere el control del proceso de arranque al programa /sbin/init.
5. El programa /sbin/init carga todos los servicios y herramientas de espacio del usuario y monta todas las particiones listadas en /etc/fstab.
6. Se le presenta al usuario una pantalla de inicio de conexión para el sistema Linux recién iniciado.
Los niveles de ejecución (runlevel), determinan los servicios que tendremos disponibles en cada uno de ellos. Es una forma de tener diferentes modos de trabajo, cada uno de ellos con características bien definidas, en función del tipo de tarea a que estén orientados.
Existen siete niveles de ejecución, que están numerados del cero (0) al seis (6).
Niveles de Ejecución
Niveles de Ejecución...
init necesita un archivo de configuración para saber exactamente lo que tiene que hacer. Este archivo es /etc/inittab. Este archivo contiene información sobre: El nivel a ejecutar por defecto Previsión sobre lo que hacer ante determinadas situaciones y, Describe qué procesos se inician en la carga y durante la operación normal.
Archivo inittab
Archivo inittab
Uno de los scripts más importantes en el arranque del sistema es /etc/rc.d/rc.sysinit. Es el primer script que init encuentra y ejecuta. En él están definidas funciones como:
• Inicio y activación del espacio de intercambio. (swap) • Configuración de la red. • Especificación de variables del sistema. • Comprobación y montaje de los sistemas de archivos. • Inicialización de puertos serie. • Carga los módulos del kernel. • Establecimiento de cuotas de usuarios. • Ajuste del reloj del sistema.
Scripts importantes
El último script en ejecutarse es /etc/rc.d/rc.local. En este archivo podremos poner inicializaciones especificas del sistema, aunque su propósito inicial es controlar los servicios de red.
Scripts importantes...
El directorio rc.d es de vital importancia para el arranque del sistema.
Directorios directamente implicados.
El directorio init.d contiene los scripts que lanzarán o detendrán los servicios que tengamos disponibles en nuestro equipo.
Directorios directamente implicados.
Los directorios numerados para cada runlevel contienen enlaces simbólicos que apuntan a los scripts del directorio init.d. Veamos un muestra, esto es parte del directorio rc3.d:
Script de inicialización
Observemos con atención como se llaman los enlaces, cada uno de ellos tiene el nombre del script al que están asociados. Los que empiezan con una «S» («S» de start) define si el servicio se inicia, y otros con una «K» define si el servicio se detiene («K» de kill). El número que lucen es simplemente una facilidad para ordenar y que no tiene mayor relevancia.
Script de inicialización...
Podemos ejecutar init desde línea de comandos con alguno de los siguientes argumentos: 0, 1, 2, 3, 4, 5, 6: Para cambiar al nivel de ejecución especificado. Q, q: Si queremos que init relea el fichero /etc/inittab. S, s: Entra en modo monousuario. U, u: Reejecuta init respetando el estado actual. No se relee el fichero /etc/inittab.
El comando init
Para recordar
• Entender el funcionamiento del proceso de
arranque y parada no sólo le permite
personalizarlo, sino que también facilita resolver
problemas relacionados con el inicio y el cierre del
sistema.
Preguntas