¿Cómo cambio de usuario sin ninguna referencia al anterior?

¿Cómo cambio de usuario sin ninguna referencia al anterior?

Hace un tiempo, mientras jugaba con LXC sin privilegios, descubrí que el comando para crear un contenedor fallaba si solía sucambiar al usuario, pero funcionaba si solía ssh user@localhostiniciar sesión.

Esta no es una pregunta relacionada con LXC, pero me hizo preguntarme cuál es la mejor manera de cambiar de usuario sin dejar referencias ni traer variables del anterior.

¡Gracias!

Respuesta1

Una diferencia entre suy sshes que este último en realidad implica un shell de inicio de sesión, mientras que el primero no lo hace de forma predeterminada, aunque sí crea un nuevo shell interactivo (consulte INVOCACIÓN en la parte superior de man bashpara conocer el significado deinteractivoyaccesoconchas). De man su:

Para compatibilidad con versiones anteriores, su valor predeterminado no cambia el directorio actual y solo establece las variables de entorno HOME y SHELL (más USER y LOGNAME si el usuario objetivo no es root). Se recomienda siempreuse la opción --login(en lugar de su atajo -) para evitar efectos secundarios causados ​​por la mezcla de ambientes.

Entonces, puedes intentar su --loginver si eso hace lo que quieres.

Supongo que estás usando una GUI, por lo que no simplemente sales y vuelves a iniciar sesión. Sin embargo, esopuedeserá posible de todos modos (dependiendo, creo, de su sistema de inicio), simplemente ejecutándolo logindesde cualquier terminal que esté utilizando. Si funciona, debería ver el login:mensaje normal y, cuando termine, podrá exithacerlo según su.

información relacionada