Commentaires
- Je sais que ma question est tout à fait la même mais je nai pas ' Je ne comprends pas très bien la différence entre tous et surtout quand utiliser quoi.
- Quelles parties ' navez-vous pas compris?
Réponse
Description
Il existe des différences entre eux:
Tout dabord en utilisant su username
vous devez fournir le mot de passe de « username » pour pouvoir basculer dans son compte avec sudo su - username
pour une seconde avec votre propre mot de passe vous deviendrez root, puis sans utiliser dautre mot de passe vous exécutez le
pour passer au « nom dutilisateur ».
Lautre différence consiste à utiliser -
avec su
il passera à lutilisateur lors de lexécution dun shell de connexion, sans -
vous obtiendrez un shell sans connexion.
Conclusion:
-
su username
:- Vous devez fournir le mot de passe de l’utilisateur cible
- Vous sera déposé dans un shell sans connexion (des éléments tels que
.profile
ne seront pas fournis).
-
sudo su - username
- Vous utilisez votre propre mot de passe pour exécuter la commande
su
en tant que root (si vous êtes autorisé à) - Vous obtiendrez un shell de connexion avec laccès de lutilisateur cible.
- Vous utilisez votre propre mot de passe pour exécuter la commande
Lequel utiliser:
Il « Ce nest pas une bonne idée de partager un seul mot de passe entre les utilisateurs, il » est donc préférable de ne pas utiliser du tout su
, à la place nous pouvons utiliser sudo
, il ny a pas non plus besoin dexécuter quelque chose comme:
sudo su - username
nous pouvons configurer notre fichier /etc/sudoers
puis utiliser quelque chose comme:
sudo -i -u username
Si vous devez utiliser su
, utilisez-le toujours comme su -
pour vous assurer que tout est fourni comme il se doit et que rien na été compromis.