Mon ordinateur possède les utilisateurs 1 et 2, tous deux administrateurs.
Pendant que je suis connecté en tant qu'utilisateur1, j'essaie de:
- "su - user2" -> me demande le mot de passe users2, puis je peux taper des commandes
- "sudo --user = user2 [command]" -> me demande le mot de passe. Si je tape le mot de passe de user2, j'obtiens "Désolé, réessayez." message d'erreur comme si le mot de passe était incorrect. Si je tape le mot de passe de user1, il fonctionne correctement.
La commande sudo ne doit-elle pas nécessiter le mot de passe de l'utilisateur que je définis dans le paramètre "--user"?
Réponses:
Il s'agit d'un comportement attendu.
Le but de su est de changer d'utilisateur. Cela s'appelle l'outil d'identité d'utilisateur de substitution. su prend le mot de passe de l'autre utilisateur puisque vous passez à cet utilisateur.
Source: page de manuel
Le but de sudo est d'exécuter une commande en tant qu'autre utilisateur. L' option
-u
ou--user
pour sudo spécifie cet utilisateur. Vous ne vous connectez pas en tant qu'utilisateur, exécutez simplement une commande. sudo prend votre mot de passe pour vérifier votre identité pour effectuer une telle tâche.la source