Describir en detalle el proceso de arranque de un sistema Linux.


14

Estoy preparando un documento en detalle que muestra la luz en la secuencia de arranque de Linux desde el momento en que presiono el botón de Encendido del host hasta la aparición del mensaje de inicio de sesión.

Sería genial si pudiéramos combinar y cotejar las respuestas correctas aquí en un solo lugar de referencia. Incluya cualquier detalle que valga la pena tener en cuenta durante el inicio. Una vez que el documento se complete desde todos los puntos, publicaré los detalles del documento aquí también y actualizaré el enlace en la pregunta.

Tenga en cuenta todos los escenarios posibles, como el inicio desde el disco, el inicio desde el usb, el inicio desde la red en un cliente sin disco donde el rootfs (/) está en la red.


3
A juzgar por esto (incluidas las referencias) y esto , usted propone un proyecto bastante grande ...
sr_

44
¿Se siente como una pregunta de tarea / tesis para alguien más?
Shadur

1
¿No debería ser marcado como community-wiki?
usuario desconocido

44
Creo que esto es demasiado amplio para una pregunta sobre SE, hay grandes variaciones entre distribuciones y configuraciones.
Gilles 'SO- deja de ser malvado'

1
¿puede publicar el documento preparado por usted
Abhishek

Respuestas:


7

Desea la secuencia de arranque de Linux o simplemente la secuencia de arranque de PC ... porque no hay diferencia entre arrancar Linux desde usb / cdrom / hdd ... Linux siempre arranca desde MBR donde está el gestor de arranque ...

Proceso de arranque de Linux:

  1. A medida que sube la energía, el BIOS recibe el control
  2. El BIOS ejecuta autocomprobaciones, que generalmente incluyen pruebas de memoria superficial.
  3. Luego, el BIOS carga el primer sector del disco que se utilizará para el arranque y le transfiere el control.
  4. El código MBR varía. Una versión se encadenará al código en el primer sector de la partición de arranque (Windows), otra cargará un gestor de arranque. El arranque de Windows procede del código y la información en la partición de arranque.
  5. bootloader elige la ubicación y la versión del kernel
  6. el gestor de arranque prepara el núcleo y la imagen initrd en la memoria, transfiere el control al núcleo
  7. cargando módulos de kernel
  8. descubrir hardware y cargar módulos de kernel adicionales para soportarlo
  9. buscando discos
  10. Montaje / partición de R / O para que pueda ser revisado y reparado
  11. proceso de inicio spawn
  12. / etc / inittab leer y ejecutar
  13. montaje de todos los FSes desde / etc / fstab
  14. niveles de ejecución en ejecución (según el nivel de ejecución predeterminado en / etc / inittab) u otro método de inicio, como systemd o upstart
  15. rc.local
  16. solicitud de inicio de sesión

Gracias @Sebastian, esa fue una buena lista. Estoy buscando pasos detallados, por ejemplo 1: qué carga la información mbr, antes de eso, cómo fluyen las instrucciones de publicación y bios; 2. por qué no montar / particionar y luego volver a leer / escribir montar / particionar ... cuál es el proceso 0 en todo este proceso ... pero gracias por la respuesta.
Nikhil Mulley

@Nikhil con respecto al proceso 0 ... no existe dicho proceso, después de la carga del kernel Tiene el proceso 1, que es el proceso init. Con respecto al resto de puntos: 1. verifique ibm.com/developerworks/library/l-linuxboot/index.html 2. porque primero debe verificar los archivos, luego puede comenzar a escribir en él ... es más bien por razones de seguridad. ..
Sebastian Szary

No hay MBR en disquetes o cdroms. El proceso de arranque para cdroms implica un archivo de catálogo que describe una o más imágenes multisectoriales que la BIOS puede elegir cargar y ejecutar.
psusi

¿Qué sucede si los módulos del kernel están en un ext3sistema de archivos y el ext3módulo del kernel aún no está cargado? Además, ¿qué pasa si el núcleo en sí está en un sistema de archivos que el gestor de arranque no reconoce? ¿Cómo se cargan las siguientes cosas en secuencia, carga kernel, carga bootloader, montaje de /bootdirectorio, lectura de /etc/fstabarchivos, etc.
Yegle

3

Intenta instalar y usar el diagrama de arranque .


1
gracias por el puntero, realmente estoy buscando presentar un documento de flujo de visualización de lo que sucede durante el arranque y en qué tipo de toma de decisiones está involucrado.
Nikhil Mulley

1
gracias @Alexander lo instalé en mi fedora y proporciona png muy detallado
Abhishek
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.