Proceso de arranque y reparación de fallos del sector MBR
- 1. El proceso de arranque del sistema operativo Linux
-
- 1. ENVIAR
- 2. Arranque MBR
- 3. Menú GRUB
- 4. Cargue el kernel de Linux
- 5. inicialización del proceso init
- 2. Proceso de inicialización del sistema
-
- 1. proceso de inicio
- 2. Systemd
- 3. Tipo de unidad Systemd
- 4. El objetivo systemd correspondiente al nivel de ejecución
- 3. Reparar la falla del sector MBR
-
- 1. Causa del fracaso
- 2. Fenómeno de falla
- 3. Soluciones
- 4. Eliminar fallas de inicio (pasos experimentales)
- -Reparación del fallo del sector MBR
-
- 1. Haga una copia de seguridad de los datos del sector MBR en otros discos (/ dev / dsb1)
- 2. Simular la destrucción del sector de arranque MBR: (destruyendo el tamaño de 512 bytes del primer disco duro)
- 3. La interfaz de arranque ingresa al modo de emergencia y restaura los datos del sector MBR desde el archivo de respaldo
- ——— Primero cargue la imagen del CD y reinicie el sistema
- Cinco. Pasos experimentales
-
- 1. Haga una copia de seguridad de los datos del sector MBR en otros discos (/ dev / dsb1)
- 2. Simular la destrucción del sector de arranque MBR: (destruyendo el tamaño de 512 bytes del primer disco duro)
- 3. La interfaz de arranque ingresa al modo de emergencia y restaura los datos del sector MBR desde el archivo de respaldo
1. El proceso de arranque del sistema operativo Linux
1. ENVIAR
Una vez que se enciende el host del servidor, la CPU, la memoria, la tarjeta gráfica, el teclado y otros dispositivos se probarán inicialmente de acuerdo con la configuración del BIOS de la placa base. Una vez que la prueba sea exitosa, el control del sistema se transferirá de acuerdo con el inicio preestablecido secuencia, y la mayor parte del tiempo se transferirá al disco duro local.
Resumen: se detecta el primer dispositivo capaz de arrancar el sistema, como un disco duro o una unidad óptica
2. Arranque MBR
Al iniciar el sistema desde el disco duro local, primero transfiera el control del sistema a la partición que contiene el archivo de inicio del sistema operativo de acuerdo con la configuración de MBR (Master Boot Record) en el primer sector del disco duro; o directamente de acuerdo con el inicio en el Registro MBR La información llama al menú de inicio (por ejemplo, GRUB).
Resumen: Ejecute el programa de arranque GRUB de arranque ubicado en el sector MBR
3. Menú GRUB
Para el sistema operativo Linux, GRUB (Unified Boot Loader) es el programa de cargador de arranque multisistema más utilizado. Después de pasar el control del sistema a GRUB, se mostrará el menú de arranque para que el usuario elija, y el archivo del kernel de Linux se cargará de acuerdo con la opción seleccionada (o el valor predeterminado), y luego el control del sistema se transferirá a el núcleo.
CentOS 7 usa el cargador de arranque GRUB2.
Resumen: El programa de arranque de GRUB lee el archivo de configuración de GRUB /boot/grub2/grub.cfg para obtener la configuración del sistema de archivos del kernel y espejo y las ubicaciones de las rutas
4. Cargue el kernel de Linux
El kernel de Linux es un archivo binario especial precompilado, entre varios recursos de hardware y programas del sistema, responsable de la asignación y programación de recursos. Una vez que el kernel asume el control del sistema, controlará completamente el proceso de ejecución de todo el sistema operativo Linux.
En el sistema CentOS 7, el archivo de kernel predeterminado se encuentra en "/boot/vmlinuz-3.10.0-514.el7.x86_64".
Resumen: cargue el kernel y el sistema de archivos espejo en la memoria
5. inicialización del proceso init
Para completar el proceso de arranque del sistema, el kernel de Linux primero carga el programa "/ sbin / init" en el sistema en la memoria para ejecutarlo (el programa en ejecución se llama proceso), el proceso de inicio es responsable de completar la inicialización de todo el sistema y, finalmente, espera a que el usuario inicie sesión.
Resumen: cargue el controlador de hardware, el kernel carga el proceso de inicio en la memoria para ejecutar
La diferencia entre sysvinit y systend:
Sysvinit tradicional se basa en la ejecución en serie de scripts de Shell para iniciar los servicios, lo que da como resultado una baja eficiencia y una velocidad de inicio lenta del sistema.
Systemd puede iniciar más procesos de servicio en paralelo y tiene la capacidad de iniciar servicios a pedido, por lo que se pueden iniciar menos procesos. mejorando así la velocidad de inicio del sistema.
2. Proceso de inicialización del sistema
1. proceso de inicio
● El programa / sbin / init lo carga y ejecuta el kernel de Linux.
● init proceso es el primer proceso en el sistema
● El número PID (identificador de proceso) del proceso de inicio es siempre 1
2. Systemd
● Systemd es una especie de software de inicio del sistema operativo Linux.
● CentOS7 utiliza un nuevo método de inicio Systemd, que reemplaza al tradicional SysVinit
● El primer proceso de inicio que se ejecuta en CentOS es / lib / systemd / systemd
3. Tipo de unidad Systemd
Tipo de unidad | nombre de la extensión | Descripción |
---|---|---|
Servicio | .Servicio | Describe un servicio del sistema |
enchufe | .enchufe | Describir un conector para la comunicación entre procesos. |
Dispositivo | .dispositivo | Describe un archivo de dispositivo reconocido por el kernel |
Montar | .montar | Describe el punto de montaje de un sistema de archivos. |
Automount | .automount | Describir el punto de montaje automático de un sistema de archivos. |
intercambiar | .intercambiar | Describir un dispositivo de intercambio de memoria o un archivo de intercambio. |
Camino | .camino | Describir un archivo o directorio en un sistema de archivos. |
Temporizador | .Temporizador | Describir un temporizador (utilizado para implementar tareas de programación de tipo cron) |
Instantánea | .instantánea | Se usa para guardar el estado de un sistema. |
alcance | .alcance | Utilice la interfaz de bus de systemd para crear procesos externos mediante programación |
rebanada | .rebanada | Describir un grupo de procesos del sistema de gestión organizados por jerarquía en un cgroup |
Objetivo | .objetivo | Describe un conjunto de unidades systemd |
4. El objetivo systemd correspondiente al nivel de ejecución
Nivel de ejecución | Destino Systemd 的 | Descripción |
---|---|---|
0 | objetivo | Estado de apagado, el host se apagará cuando se use este nivel |
1 | objetivo de rescate | Modo de usuario único, puede iniciar sesión en el sistema sin verificación de contraseña, utilizado principalmente para el mantenimiento del sistema |
2 | multi-user.target | Nivel de ejecución definido por el usuario / específico del dominio. El valor predeterminado es equivalente a 3 |
3 | multi-user.target | Modo multiusuario completo con interfaz de caracteres, la mayoría de los servidores se ejecutan en este nivel |
4 | multi-user.target | Nivel de ejecución definido por el usuario / específico del dominio. El valor predeterminado es equivalente a 3 |
5 | objetivo gráfico | El modo multiusuario de la interfaz gráfica proporciona un entorno operativo de escritorio gráfico |
6 | reboot.target | Reiniciar, el host se reiniciará cuando se use este nivel |
3. Reparar la falla del sector MBR
1. Causa del fracaso
● Destrucción causada por virus, troyanos, etc.
● Operaciones de partición incorrectas, errores de lectura / escritura del disco
2. Fenómeno de falla
● No se puede encontrar el programa de inicio, el inicio se interrumpe
● El sistema operativo no se puede cargar y la pantalla se vuelve negra después del inicio
3. Soluciones
● Los archivos de respaldo deben hacerse con anticipación
● Arrancar
desde el CD de instalación en modo de emergencia ● Recuperarse de los archivos de respaldo
4. Eliminar fallas de inicio (pasos experimentales)
-Reparación del fallo del sector MBR
MBR se encuentra en el primer sector físico del primer disco duro (dev / dsa). 512 bytes en total
1. Haga una copia de seguridad de los datos del sector MBR en otros discos (/ dev / dsb1)
①: agregue un nuevo disco duro, fdisk -l para ver el estado del disco duro
②: fdisk / dev / sdb n ----- p ------… ingrese ----- w, ### Create partición de disco
③: mkfs.xfs / dev / sdb1 ### Formateo
④: mkdir / backup ### Crea un directorio de respaldo
⑤: mount / dev / sdb1 / backup / ### Monta la partición de disco en el directorio
df -h compruebe si está montado correctamente
⑥: dd if = / dev / sda of = / backup / mbr.bak bs = 512 count = 1 ### Archivo de copia de seguridad
: tome el archivo del primer disco duro, directorio de punto de montaje de copia de seguridad, especificar el archivo guardado El nombre
tiene un tamaño de 512 bytes y el número de extracciones es 1
⑦: cd / backup ------- ls ------ ll #### Compruebe si el archivo está bien conservado
2. Simular la destrucción del sector de arranque MBR: (destruyendo el tamaño de 512 bytes del primer disco duro)
①: dd if = / dev / zero of = / dev / sda bs = 512 count = 1
: Saque el archivo de caracteres vacío , el primer disco duro 512 bytes una vez
②: init 6 #### Reiniciar
3. La interfaz de arranque ingresa al modo de emergencia y restaura los datos del sector MBR desde el archivo de respaldo
——— Primero cargue la imagen del CD y reinicie el sistema
①: Cuando aparezca la interfaz del elemento de instalación, seleccione la opción "Solución de problemas"
②: Luego seleccione la opción "Rescatar un sistema Centos Linux" para ingresar al modo de emergencia
③: Seleccione "1", seleccione Continuar y presione Entrar para continuar
④: Después de presionar enter nuevamente, ingresará al entorno de shell Bash con el mensaje "sh -4.2 #"
sh -4.2 # mkdir / backupdir ####### Crear un directorio
sh-4.2 # mount / dev / sdb1 / backupdir #### Monta la partición con archivos de respaldo
sh-4.2 # dd if = / backupdir /mbr.bak of = / dev / sda bs = 512 count = 1
#################### Restaurar datos de respaldo
sh-4.2 # salir ######### Salir
Cinco. Pasos experimentales
1. Haga una copia de seguridad de los datos del sector MBR en otros discos (/ dev / dsb1)
①: agregue un nuevo disco duro, fdisk -l para verificar el estado del disco duro
②: fdisk / dev / sdb n ----- p ------… ingrese ----- w, ### Cree una partición de disco
③: mkfs.xfs / dev / sdb1 ### Formateo
④: mkdir / backup ### Crear directorio de respaldo
⑤: mount / dev / sdb1 / backup / ### Montar la partición del disco en el directorio
df -h comprobar si el el montaje es exitoso
⑥: dd if = / dev / sda of = / backup / mbr.bak bs = 512 count = 1 ### Backup file⑦
: cd / backup ------- ls ----- -ll #### Comprueba si el archivo está bien conservado
2. Simular la destrucción del sector de arranque MBR: (destruyendo el tamaño de 512 bytes del primer disco duro)
①: dd if = / dev / zero of = / dev / sda bs = 512 count = 1
: Saque el archivo de caracteres vacío , el primer disco duro 512 bytes una vez
②: init 6 #### Reiniciar
3. La interfaz de arranque ingresa al modo de emergencia y restaura los datos del sector MBR desde el archivo de respaldo
①: Cuando aparezca la interfaz del elemento de instalación, seleccione la opción "
Solución de problemas" ②: Luego seleccione la opción "Rescatar un sistema Centos Linux" para ingresar al modo de emergencia
③: Seleccione "1", seleccione Continuar y presione Entrar para continuar
④: Después de presionar enter nuevamente, ingresará al entorno de shell Bash con el mensaje "sh -4.2 #"
④: Después de presionar enter nuevamente, ingresará al entorno de shell Bash con el mensaje "sh -4.2 #"
sh -4.2 # mkdir / backupdir ####### Crear un directorio
sh-4.2 # mount / dev / sdb1 / backupdir #### Monta la partición con archivos de respaldo
sh-4.2 # dd if = / backupdir /mbr.bak of = / dev / sda bs = 512 count = 1
#################### Restaurar datos de respaldo
sh-4.2 # salir ######### Salir
y luego entrar salir —————————— Salir y reiniciar
Recuperación:
En este momento se ha reparado la falla, reiniciando para volver a la normalidad, puede ingresar al sistema: