Arranque del Sistema: BIOS, Gestor de Arranque y Kernel en Linux
Enviado por Chuletator online y clasificado en Informática y Telecomunicaciones
Escrito el en español con un tamaño de 5,35 KB
Arranque del Sistema: BIOS, Gestor de Arranque y Kernel
En este documento, exploraremos los componentes fundamentales del proceso de arranque en sistemas Linux, centrándonos en la interacción entre la BIOS, el gestor de arranque y el kernel.
Componentes Clave del Arranque
- BIOS (Basic Input/Output System):
- Programa preinstalado (firmware) en la placa base.
- Realiza una comprobación inicial del hardware durante el arranque.
- Inicia el gestor de arranque.
- Puede ser configurable o no, permitiendo ajustar opciones de arranque.
- Gestor de Arranque (Bootloader):
- Permite elegir entre los sistemas operativos instalados (si hay varios).
- Cargado por la BIOS.
- Lee el kernel y los parámetros necesarios.
- Realiza una llamada a
/sbin/init
(kernel de Linux) con los parámetros adecuados. - Ejemplo: GRUB en Linux.
- Kernel:
- Núcleo del sistema operativo.
- Ejecuta los programas necesarios para el funcionamiento del sistema.
- Lanza el sistema operativo.
Gestión de Procesos en Linux
A continuación, se describen algunos comandos útiles para la gestión de procesos en Linux:
ps aux
: Muestra todos los procesos en ejecución, incluyendo el PID (identificador de proceso).Ctrl + Z
: Suspende el proceso actual y libera la consola.Ctrl + C
: Termina el proceso actual.bg
: Ejecuta un proceso suspendido en segundo plano, liberando la consola.kill [PID]
: Termina el proceso con el PID especificado.killall [nombre_del_proceso]
: Termina todos los procesos con el nombre especificado.[comando] &
: Ejecuta el comando en segundo plano, dejando la consola libre. Ejemplo:xeyes &
Runlevels en Linux
Los runlevels (niveles de ejecución) definen los diferentes estados de funcionamiento de un sistema Linux. Algunos runlevels importantes son:
- Runlevel 0: Apaga el sistema.
- Runlevel 1: Modo monousuario (modo seguro para resolución de problemas).
- Runlevel 6: Reinicia el sistema.
- Otros runlevels (2-5): Generalmente son multiusuario y pueden estar configurados de manera similar.
Comandos relacionados con runlevels:
init [número]
: Cambia al runlevel especificado.runlevel
: Muestra el runlevel actual y el anterior.
Configuración de runlevels:
/etc/inittab
: Contiene el runlevel por defecto. (Nota: En sistemas modernos con systemd, este archivo puede no ser relevante.)ls /etc/rc[número_de_runlevel].d
: Muestra los scripts que se ejecutan en un runlevel específico. Ejemplo:ls /etc/rc2.d
/etc/rcS.d
: Contiene scripts que se ejecutan en todos los runlevels.- Los scripts de inicio/parada se encuentran en
/etc/init.d/
.
Para añadir un programa al inicio en un runlevel específico, se crea un enlace simbólico:
ln -s /etc/init.d/[servicio] /etc/rc[runlevel].d/S[número][servicio]
Ejemplo:
ln -s /etc/init.d/networking /etc/rc2.d/S19networking
S
: Indica que el servicio debe iniciarse.K
: Indica que el servicio debe detenerse.- El número después de 'S' o 'K' indica el orden de ejecución.
Recuperación de Contraseña de Root desde GRUB
Pasos para restablecer la contraseña de root modificando las opciones de arranque en GRUB:
- Reiniciar el sistema y, en el menú de GRUB, pulsar la tecla E para editar la entrada de arranque.
- Buscar la línea que comienza con linux.
- Añadir
init=/bin/bash
al final de esa línea. - Cambiar
ro
(solo lectura) porrw
(lectura y escritura) en la misma línea. - Arrancar el sistema pulsando la combinación de teclas que se indique (normalmente Ctrl+X o F10).
- Una vez en la línea de comandos como root, ejecutar
passwd
para establecer una nueva contraseña. - Reiniciar el sistema con la nueva contraseña (se puede usar
exec /sbin/init
o la combinación de teclas Ctrl+Alt+Supr).
Creación de una Nueva Opción de Inicio en GRUB (Versiones Antiguas - GRUB Legacy)
Nota: Esta sección se refiere a GRUB Legacy (versión 1), que es menos común en sistemas modernos. La mayoría de los sistemas actuales utilizan GRUB 2.
Para añadir una nueva opción de arranque en GRUB Legacy, se edita el archivo /boot/grub/menu.lst
:
title
: Nombre descriptivo que se muestra en el menú de GRUB.root
: Indica la partición donde se encuentra el kernel (en nomenclatura de GRUB). Ejemplo:(hd0,0)
kernel
: Ruta al archivo del kernel y parámetros de arranque.initrd
: Ruta a la imagen initrd (si es necesaria).
Dentro del menú de GRUB, se puede usar la tecla TAB para autocompletar rutas.