Al contrario de lo que su uso más común te haría pensar, su
y sudo
no están destinados solo para iniciar sesión (o realizar acciones) como root.
su
le permite cambiar su identidad por la de otra persona. Por esta razón, cuando escribes su
, el sistema debe verificar que tiene las credenciales del usuario de destino al que intenta cambiar.
sudo
es un poco diferente Usando sudo
le permite ejecutar determinados comandos (o todos, según la configuración) como otra persona. Su propia identidad se utiliza para determinar qué tipos de comandos sudo
se ejecutará por usted bajo la identidad de otra persona:si es un usuario de confianza (en el sentido de que el administrador del sistema confía en usted), tendrá más rienda suelta que, por ejemplo, un interno. Por eso sudo
necesita verificar su propia identidad en lugar de la del usuario objetivo.
En otras palabras, intentar su
a alguien que no eres es como intentar cargar tus compras a una tarjeta de crédito robada mientras usas sudo
es como vender el auto de tu amigo por medio de un apoderado legal.
En cuanto a lo que intentabas hacer, solo sudo su root
, o incluso más simplemente sudo su
y escriba su contraseña de usuario habitual. Esto equivaldría más o menos a reemplazar las credenciales de la tarjeta de crédito de tu amigo con las tuyas usando el proxy legal que te dieron :). Por supuesto, asume el sudo
la configuración le permite ejecutar su
con privilegios escalados.
Además, los sistemas que vienen preconfigurados con sudo
el acceso generalmente tiene la cuenta raíz deshabilitada (sin contraseña raíz), puede habilitarla usando el passwd
comando después de convertirse en root a través de sudo su
.
Es configurable* pero, por defecto, "sudo" te pide tu contraseña. Solo está tratando de asegurarse de que eres tú, no alguien que usa tu teclado mientras tomas café.
Por el contrario, "su root" le pide la contraseña de root.
*Si targetpw en /etc/sudoers es falso (predeterminado), "sudo" le pide su contraseña. Si es cierto, entonces "sudo" le pide la contraseña de root o, si especificó algún otro usuario con la opción "-u", la contraseña de ese usuario.
sudo
se utiliza para escalar temporalmente los permisos de usuario al nivel raíz, mientras que su root
se usa para crear un nuevo shell con root como usuario;