Me gustaría saber cuál es la diferencia entre
su -
sudo bash
sudo sh
No puedo iniciar sesión como root mientras hago su -
porque no tengo la contraseña de root, quiero decir que tengo mi contraseña de usuario con la que puedo sudo "command"
pero esta contraseña no funciona para su -
Puedo iniciar sesión como root con sudo bash
con mi contraseña de usuario y puedo iniciar sesión mientras hago sudo sh
pero luego aparece un símbolo del sistema en este formulario#
Mejor respuesta
Antecedentes
En Linux (y Unix en general), existe un superusuario llamado Raíz . El superusuario puede hacer cualquier cosa, y por lo tanto hacer el trabajo diario como superusuario puede ser peligroso. Podría escribir un comando incorrectamente y destruir el sistema. Idealmente, se ejecuta como un usuario que solo tiene los privilegios necesarios para la tarea en cuestión. En algunos casos, esto es necesariamente Root, pero la mayoría de las veces es un usuario regular.
su –
Este comando se usa para iniciar sesión en la cuenta raíz.
De manera predeterminada, la contraseña de la cuenta raíz está bloqueada en Ubuntu. Esto significa que no puede iniciar sesión como Root directamente o usar el comando su para convertirse en usuario Root. Sin embargo, dado que la cuenta raíz existe físicamente, aún es posible ejecutar programas con privilegios de nivel raíz. Aquí es donde entra sudo:permite a los usuarios autorizados (normalmente usuarios "administrativos") ejecutar ciertos programas como root sin tener que saber la contraseña de root.
Consulte Cómo habilitar la cuenta raíz .
sudo sh
Este comando ejecuta "sh" como un superusuario.
La utilidad sh es un intérprete de lenguaje de comandos que ejecutará los comandos leídos desde una cadena de línea de comando, la entrada estándar o un archivo específico.
sudo bash
Este comando ejecuta "bash" como un superusuario.
Bash es el shell o intérprete del lenguaje de comandos. Bash es un shell compatible con sh que incorpora características útiles del shell Korn (ksh) y el shell C (csh). Está diseñado para cumplir con el estándar IEEE POSIX P1003.2/ISO 9945.2 Shell and Tools. Ofrece mejoras funcionales sobre sh tanto para programación como para uso interactivo. Además, Bash puede ejecutar la mayoría de los scripts sh sin modificaciones.
Referencias:1, 2, 3.