web-dev-qa-db-fra.com

su - utilisateur vs sudo su - utilisateur

Sudo su - Élevez tout utilisateur (sudoer) avec root privilège.

su - anotheruser passera à l'environnement utilisateur de l'utilisateur cible, avec des privilèges utilisateur cible

Que fait Sudo su - username moyenne?

4
overexchange

Il suffit de répéter les réponses de @ dr01 et @ @ onek car ils manquent tous les deux quelques détails fins:

  • su - username - Demande au système de démarrer une nouvelle session de connexion pour l'utilisateur spécifié. Le système nécessitera le mot de passe de l'utilisateur "Nom d'utilisateur" (même si c'est la même chose que l'utilisateur actuel).
  • Sudo su - username fera de même, mais demandez d'abord au système d'être élevé au mode Super utilisateur, après quoi su _ ne demandera pas le mot de passe de "nom d'utilisateur", car un super utilisateur est autorisé à passer à n'importe quel autre utilisateur. sans connaître leur mot de passe. Cela étant dit, Sudo en elle-même impose la sécurité en vérifiant la /etc/sudoers Fichier Pour vous assurer que l'utilisateur actuel est autorisé à obtenir des autorisations super-utilisateur et éventuellement vérifier le mot de passe de l'utilisateur actuel.

Je voudrais également commenter cela pour obtenir une session de connexion Super utilisateur, veuillez utiliser Sudo -i (ou Sudo -s) comme Sudo su - est juste idiot: sa demande Sudo _ de donner des autorisations super-utilisateur à su _ su peut démarrer une coque de connexion pour le super utilisateur - quand Sudo peut atteindre le même résultat mieux qu'il soit seul.

7
Guss

Avoir des droits superusers, Sudo su - username vous connectera à (dans une coquille de connexion) comme $username Sans demander un mot de passe, tandis que su - username demandera le mot de passe de $username.

6
OneK

Sudo su - username fait la même chose que su - username: exécute une coque de connexion comme username.

su - username courir en tant que root et Sudo su - username N'exige pas de savoir Nom d'utilisateur Mot de passe (car ils sont exécutés avec des privilèges élevés), tandis que su - username Exécuter en tant qu'utilisateur normal nécessite de le savoir.

3
dr_