GNU/Linux >> Tutoriales Linux >  >> Linux

Linux – ¿Por qué Linux permite ‘init=/bin/bash’?

Recientemente descubrí que si edito GRUB antes de arrancar y agrego rw init=/bin/bash Termino con un shell raíz.

Estando en una condición que quiero entender todo, me gustaría saber por qué sucede esto. Quiero decir, ¿es un error? ¿Es una característica? ¿Está ahí para ayudar a los administradores a arreglar las cosas, ya que solo funciona si tiene acceso físico a una computadora?

¿Lo proporciona GRUB o el núcleo real?

Respuesta aceptada:

Esta es una función y se utiliza para el mantenimiento del sistema:permite que un administrador de sistemas recupere un sistema de archivos de inicialización en mal estado o cambie una contraseña olvidada.

Esta publicación en la lista de correo de Red Hat explica algunas cosas:

En los sistemas similares a Unix, init es el primer proceso que se ejecuta y el último antecesor de todos los procesos que se ejecutan. Es responsable de
ejecutar todos los scripts de inicio.

Le está diciendo al kernel de Linux que ejecute /bin/bash como init, en lugar de
el sistema init. […]

Por lo tanto, no está explotando nada, solo está utilizando una característica estándar del kernel.

Además, como se indica en un comentario, el rw la bandera está separada de init= , simplemente le dice al sistema que monte el sistema de archivos raíz como lectura y escritura (para que pueda, por ejemplo, editar el archivo mal configurado o cambiar una contraseña).


Linux
  1. Linux:¿por qué no hay un sistema de archivos Rootfs presente en el sistema?

  2. Linux:¿por qué se tarda tanto en detectar una memoria USB?

  3. Linux:¿por qué el kernel no puede ejecutar Init?

  4. ¿Por qué /bin/sh apunta a /bin/dash y no a /bin/bash?

  5. ¿Por qué Linux calienta mi computadora?

Linux:¿/sbin/init no existe?

12 razones por las que todos los administradores de sistemas Linux deberían ser perezosos

10 ejemplos de comandos insserv para secuencias de comandos de inicio del sistema Linux

¿Por qué Ctrl + V no se pega en Bash (shell de Linux)?

¿Por qué mi sistema Linux tartamudea a menos que descarte cachés continuamente?

Script de inicio de Linux, ¿qué logra 0<&- &>?