Vollständiger Benutzerwechsel in Bash (GNOME/Keyring-Probleme)

Vollständiger Benutzerwechsel in Bash (GNOME/Keyring-Probleme)

Ich bin verwirrt über den Unterschied zwischen dem Ausführen eines Befehls als „Benutzer1“ in einem Terminal und dem Ausführen eines Befehls als „sudo -Hiu Benutzer1 [Befehl]“.

Wenn ich ausführe /home/user1/script.sh , ruft das Skript erfolgreich ein Programm auf, das auf GNOME/Keyring zugreift, und das Programm erhält das Kennwort ohne Probleme.

Wenn ich jedoch ausführe sudo -Hiu user1 /home/user1/script.sh, kann das vom Skript aufgerufene Programm nicht erfolgreich auf GNOME/Keyring zugreifen.

Was ist der Unterschied zwischen der Ausführung von Befehlen als Benutzer1 und dem Ausführen sudo -Hiu user1 [command]und wie kann ich in Bash den Benutzer vollständig von z. B. Root zu Benutzer1 ändern?

Antwort1

Es besteht im Wesentlichen kein Unterschied zwischen „running“ sudo -Hiu user1 [command]und „running [command]as“ user1(oder sogar „running “), obwohl es einige subtile Unterschiede gibt (wie in Ihrer Frage erwähnt). Die meisten davon beziehen sich auf GNOME und können durch Verwendung des Befehls (oder auf neueren Systemen durch Verwendung von oder ) sudo [command]umgangen werden .gksudoadmin:///full/path/to/command argumentspkexec [command] arguments

Sie können su user1als Root (oder als jeder andere Benutzer, wenn Sie das Kennwort kennen) eine Shell ausführen user1.

verwandte Informationen