GNU/Linux >> Tutoriales Linux >  >> Ubuntu

¿La diferencia entre 'su -', 'sudo Bash' y 'sudo Sh'?

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.

Relacionado:¿El impacto del parámetro nolapic en una computadora portátil multiprocesador?

Referencias:1, 2, 3.


Ubuntu
  1. ¿La diferencia entre un comando incorporado y uno que no lo es?

  2. ¿La diferencia entre [[ $a ==Z* ]] y [ $a ==Z* ]?

  3. ¿Diferencia entre tubería y expansión de comando?

  4. ¿Diferencia entre el usuario de Sudo y el usuario raíz?

  5. ¿La diferencia entre Nss y Pam?

Comprender la diferencia entre los comandos sudo y su en Linux

La diferencia entre más, menos y la mayoría de los comandos

¿Cuál es la diferencia entre Rsync y BTRFS en Linux?

¿Cuál es la diferencia entre el comando Cat y Touch?

¿Cuál es la diferencia entre el comando apt y apt-get?

¿Cuál es la diferencia entre los comandos kill y killall?