Diferencia en inicios de sesión sudo y visualización de mensajes

Diferencia en inicios de sesión sudo y visualización de mensajes

¿Cuál es la diferencia entre sudo -sy sudo -iy por qué me dan conchas diferentes? Parece que -sme mantiene dentro bashy -ime da sh.

En MacOSX High Sierra 10.13, si escribo sudo -sen una terminal e ingreso mi contraseña, obtengo root como mi nombre de usuario, pero con un signo de dólar en el mensaje:

user1@mymachine:~$ sudo -s
**root@mymachine:~$**

Pero si escribo sudo -i, obtengo:

user1@mymachine:~$ sudo -i
Password:<br/>
**mymachine:~ root#**

¿Por qué no se me presenta el signo almohadilla # si soy root en el ejemplo anterior con sudo -s? ¿No soy verdaderamente root?
¿Las variables de entorno son diferentes entre los dos?

Respuesta1

Lo primero que debes tener en cuenta es que sudo -ses equivalente a sudo -s rooty sudo -ies equivalente a sudo -i root. Siempre que omites a un usuario de sudo, se supone que estás apuntando al usuario raíz.

sudo -sejecuta un shell como usuario de destino mientras sudo -iinicia sesión como usuario de destino.

Cada vez que ejecuta, sudo -sestá cambiando efectivamente su shell al shell de usuario raíz, mientras que cada vez que ejecuta, sudo -iefectivamente cierra la sesión de su usuario actual e inicia sesión como root. Es importante saber esto porque cada vez que cambia su shell al shell de usuario raíz, aún conserva la información de exportación de su usuario. Cuando ejecuta, sudo -icierra la sesión de su usuario e inicia sesión como root. Eso significa que adopta la configuración de shell del usuario root.

Esto no está relacionado, pero debes evitar cambiar tu usuario a root porque podrías romper cosas accidentalmente, simplemente debes sudo cada comando que necesite escalamiento, incluso si se vuelve molesto. Si realmente desea cambiar a un shell raíz, debe ejecutar suel que le permitirá iniciar sesión como raíz.

información relacionada