proceso de arranque del sistema Linux

  
        sistema Linux proceso de arranque del sistema Linux pulse el botón de encendido para el aporte de las esperas usuario un nombre de usuario, contraseña, medio al final lo que sucedió, el siguiente artículo se explicará brevemente el proceso de arranque del sistema Linux. proceso de arranque de Linux en general, es tal que: BIOS (Secuencia de inicio) - > MBR (GRUB, 446) - > Kernel - > initrd - > (rootfs) /sbin /init (/etc /inittab ) la siguiente charla acerca de los detalles de cada paso del camino.

1. BIOS
BIOS está en Inglés " Basic Input Output System " después de acrónimos, traducción literal nombre chino es " BIOS ". De hecho, se cura a un grupo en un chip de ROM en la placa base en el programa de ordenador. Junta después de la instrucción de potencia, BIOS primero obtener el control del sistema. En primer lugar, el BIOS del sistema detectará el hardware (POST, Power On Self Test, POST), ya que el proceso de detección es generalmente como sigue: Reloj-DMA-64KB tarjetas de memoria RAM-IRQ- alimentación del sistema -CPU-ROM-BIOS y similares. Si hay componentes clave del problema, el equipo sonará una alarma. Auto-comprobar que todo es BIOS normales llamarían algún código de inicialización en la ROM del dispositivo en sí, estos dispositivos se inicializan, tales como gráficos. A continuación se puede ver algo de información de inicialización, la introducción de los fabricantes, tipo de chip y así sucesivamente. Por último, la secuencia de arranque del BIOS se basa en (Secuencia de inicio) conjunto COMS, a su vez intenta iniciar. Cuando el dispositivo de inicio es un disco duro, BIOS controla al sistema MBR del disco duro en el gestor de arranque. http://baike.baidu.com/link?url=3u5SmrzMeDuUNAo9rqDc4Vxo8mN0n-7OCLMurOs4yxGXL1ffjnIh0BAsyFm5Elai4ijwxk8dQEVKEHhqWtbHoa

2. MBR
MBR registro maestro de arranque es una abreviatura, es decir, el registro de inicio maestro. MBR se registra generalmente en la pista de disco 0, sector 1, un total de 512 bytes. Los primeros 446 bytes de BootLoader (programa de arranque), el 64 bytes 16 4 * información de la partición se encuentra, los dos últimos bytes son la información de paridad, típicamente 55AA. La mayoría de los sistemas Linux usan GRUB como gestor de arranque. GRUB puede arrancar múltiples sistemas operativos, puede reconocer el sistema de archivo de disco de formato, de modo que sólo el nombre de archivo del núcleo y la partición en el núcleo puede cargar el kernel para configurar esta información /boot/grub/grub.conf estilo. GRUB es modular, ejecute a través de las siguientes etapas: Etapa 1 Etapa 1 código almacenado en los primeros 446 bytes del MBR. Después de la exportación MBR en una vista de archivo # dd if = /dev /sda count = 1 of = /tmp /MBR 1 + 0 registros en 1 + 0 records out 512 bytes (512 B) copiada, 0.000283544 s, 1,8 MB /s # archivo /tmp /MBR /tmp /MBR: sector de arranque x86; Unified Bootloader Grand, stage1 versión 0x3, unidad de arranque 0x80, primero sector stage2 0x8480e, versión GRUB 0,94; partición de 1: ID = 0x83, activo, starthead 32, startsector 2048, 1024000 sectores; partición de 2: ID = 0x8E, starthead 221, startsector 1026048, 82860032 sectores, código compensado etapa 0x48 /boot /grub /stage1 1 es el código de copia de seguridad sin modificar. # El archivo /boot /grub /stage1 /boot /grub /stage1: sector de arranque x86; GRand Unified Bootloader, stage1 versión 0x3, versión de GRUB 0.94, desviación de código 0x48 Etapa 1_5 stage1_5 GRUB código de identificación permite que muchos tipos de sistemas de archivos, la identificación código para cada código de sistema de archivos se almacenan en /archivo boot /grub /* stage1_5. # Cd /boot /grub # ls * stage1_5 fichero e2fs_stage1_5 iso9660_stage1_5 reiserfs_stage1_5 xfs_stage1_5 fat_stage1_5 jfs_stage1_5 ufs2_stage1_5 ffs_stage1_5 minix_stage1_5 vstafs_stage1_5 Etapa 2 Etapa 2 Código archivo /boot/grub/grub.conf lector para determinar cómo cargar el kernel, código Etapa 2 almacena en el archivo /boot /grub /stage2 en :. # ls -al /boot /grub /stage2 -rw-r - r-- 1 root 125976 Jun 28 de 2012 /boot /grub /stage2

3. Kernel
GRUB de de acuerdo con la stage2 última etapa se carga el kernel archivo de configuración /boot/grub/grub.conf en la memoria, y control del sistema para el núcleo.

4. initrd
initrd es " de disco RAM inicial " Abreviatura, junto con el núcleo de GRUB se carga en memoria, un sistema de archivos root temporal se monta en el proceso de arranque del sistema. kernel de Linux pertenece en el estilo de diseño único núcleo, sistema de archivos, gestión de procesos, gestión de memoria del kernel necesita ser hecho, esto está destinado a causar un código del núcleo es muy grande. Con el fin de reducir el tamaño del núcleo de Linux, kernel Linux se divide en módulos del núcleo y del núcleo, el núcleo cargado dinámicamente los módulos del núcleo necesarios dependiendo de la plataforma, por lo general hecha de una módulos de función kernel no básicos, controladores de dispositivos, tales como la mayoría. Esto producirá inevitablemente un conflicto, por ejemplo, si el núcleo de Linux no es sistema integrado de archivos ext3 módulo de identificación, y el módulo de ext3 tiene el sistema de archivos ext3. En este momento, núcleo de Linux para acceder al sistema de archivos necesita para conseguir este módulo, y este módulo y el sistema de archivos. Este vería el uso de initrd es necesario. En Linux initramfs 2,5 kernel sido introducido la tecnología, y el papel de initrd mismo modo, un programa es ejecutado por el núcleo sobre el mismo (es decir initrd /linuxrc, initramfs es /init). La diferencia está /linuxrc no se ejecuta con PID = 1, debido a que el ID de proceso es de 1 a /sbin /init reservados. mecanismo de initrd se encuentra el dispositivo raíz real cuya número de dispositivo que está escrito /proc /sys /kernel /root-dev real, entonces el control avanza a cargar el núcleo del sistema de archivos raíz y su inicio /sbin /init. initramfs Mecanismo /init ejecutan para PID = 1, por el init cargar el sistema de ficheros raíz y se secaron para un verdadero exec /sbin /init, lo que simplifica el proceso comienza, el tiempo de arranque se reduce.

5.init
/sbin /init proceso es el primero de un proceso de arranque de Linux, PID = 1. sistema Linux proceso init ha sido objeto de dos importante evolución, sysvinit tradicional se ha desvanecido el escenario de la historia, y el nuevo sistema de Upstart systemd características propias. Sysvinit un archivo de configuración maestro es de lectura /etc /inittab, donde los ajustes definidos los principales formatos de documentos de referencia son: 1. Definir el nivel de inicio predeterminada 2. Las llamadas de fase de inicialización del sistema rc.sysinit 3. guión rc, pasando por el nivel de ejecución como parámetros, arranque y apagado de nivel de servicio correspondiente a 4. ctrl + alt + del funcionamiento combinación de teclas 5.6 7. terminales virtuales que se ejecutan nivel de inicio gestor de ventanas 5 y sysvinit Upstart retuvieron sólo el archivo de inicio predeterminada inittab nivel, otras configuraciones /etc/init/*.conf dispersa a una pluralidad de archivos.

 < span style = " font-size: 14px; " > [levantamiento @ centos ~] $ ls /etc/initcontrol-alt-delete.conf prefdm.conf RCS-emergency.conf readahead-disable- services.conf tty.confinit-sistema-dbus.conf para dejar de plymouth.conf rCS-sulogin.conf serial.confkexec-disable.conf rc.conf readahead-collector.conf salpicaduras manager.confplymouth-shutdown.conf rcS.conf readahead .conf puesta en ttys.conf < /span > programa init (el sysvinit) para leer o ejecutar archivos en el siguiente orden: init - > inittab - > rc.sysinit - > rc - > rc.local - > mingetty tty [1-6] - > X11 /prefdm /etc /inittab tareas: 1, establecer el nivel de ejecución predeterminado; 2, el sistema operativo script de inicialización; 3, se ejecuta el nivel de ejecución de script especificado correspondiente directorio; 4, proporcionado dado Ctrl + Alt + operación del combinación de teclas; 5, operación definición de potencia UPS de suministro se ejecuta cuando un fallo de corriente /recuperación; 6, se inicia el terminal virtual (2345 niveles); 7, iniciar el terminal gráfico (nivel 5); /etc /rc tareas .d /rc.sysinit: 1, shock udev y selinux; 2, de acuerdo con el archivo /etc/sysctl.conf para establecer los parámetros del núcleo, y 3, el ajuste del reloj de reloj; 4, asignación de teclado de carga; 5, para permitir intercambio; 6, establecer el nombre de anfitrión; 7, el archivo raíz sistema de detección y de lectura y escritura de volver a montar; 8, RAID y LVM dispositivo de activación; 9, habilitar cuotas de disco; 10 /etc /fstab, y montar otra comprobación del sistema de archivos; 11, limpiar bloqueo expirado y PID archivo; archivo /etc/rc.d/rc
						
Copyright © Conocimiento de Windows All Rights Reserved