Cambiar de usuario completamente en Bash (Problemas con GNOME/Keyring)

Cambiar de usuario completamente en Bash (Problemas con GNOME/Keyring)

Estoy confundido acerca de la diferencia entre ejecutar un comando como "usuario1" en una terminal y ejecutar un comando como "sudo -Hiu usuario1 [comando]".

Si ejecuto /home/user1/script.sh , el script llama exitosamente a un programa que accede a GNOME/Keyring y el programa obtiene la contraseña sin ningún problema.

Sin embargo, si ejecuto sudo -Hiu user1 /home/user1/script.sh, el programa al que llama el script no logra acceder a GNOME/Keyring correctamente.

¿Cuál es la diferencia entre ejecutar comandos como usuario1 y ejecutarlos sudo -Hiu user1 [command]y cómo puedo cambiar completamente los usuarios, por ejemplo, de root a usuario1 en bash?

Respuesta1

Básicamente, no hay diferencia entre correr sudo -Hiu user1 [command]y correr [command]como user1(o incluso correr sudo [command]), aunque existen algunas diferencias sutiles (como se menciona en su pregunta). La mayoría de estos están relacionados con GNOME, que se pueden evitar usando el gksudocomando (o en sistemas más nuevos, usando admin:///full/path/to/command argumentso pkexec [command] arguments).

Puede utilizarlo su user1como root (o como cualquier otro usuario si conoce la contraseña) para ejecutar un shell como user1.

información relacionada