su (Français)

État de la traduction:
Cet article est la version francophone de
su
. Date de la dernière traduction: 2022-10-03. Vous pouvez aider à synchroniser la traduction s'il y a eu des
changements
dans la version anglaise.
Related articles
Users and groups (Français)
Sudo (Français)
List of applications/Security#Privilege elevation
L'
utilitaire de base
su
(«substitute user») est utilisé pour prendre l'identité d'un autre utilisateur sur le système, root par défaut.
Consultez
PAM
pour savoir comment configurer le comportement de
su
.
Installation
su
fait partie du paquet
util-linux
.
Utilisation
Pour prendre le login d'un autre utilisateur, passez le nom d'utilisateur que vous voulez devenir à
su
, comme dans :
$ su
nom d'utilisateur
Par défaut, lorsque vous vous exécutez en tant qu'utilisateur normal, le système vous demande le mot de passe de l'utilisateur que vous essayez de devenir. Lorsque vous exécutez
su
en tant que root, aucun mot de passe n'est requis.
Si aucun nom d'utilisateur n'est fourni,
su
prend l'utilisateur root et le mot de passe qui vous sera demandé sera celui de root.
Pour plus d'informations, consultez
su(1)
.
Trucs et astuces
Shell de connexion
Le comportement par défaut de
su
est de rester dans le répertoire actuel et de maintenir les variables environnementales de l'utilisateur original (plutôt que de passer à celles du nouvel utilisateur).
Notez les considérations contrastées importantes suivantes :
Il peut parfois être avantageux pour un administrateur système d'utiliser le compte shell d'un utilisateur ordinaire plutôt que le sien. En particulier, la manière la plus efficace de résoudre le problème d'un utilisateur est parfois de se connecter au compte de cet utilisateur afin de reproduire ou de déboguer le problème.
Cependant, dans de nombreuses situations, il n'est pas souhaitable, voire dangereux, que l'utilisateur root opère à partir du compte shell d'un utilisateur ordinaire et avec les variables environnementales de ce compte plutôt qu'à partir du sien. En utilisant par inadvertance le compte shell d'un utilisateur ordinaire, l'utilisateur root pourrait installer un programme ou apporter d'autres modifications au système qui n'auraient pas le même résultat que si elles avaient été effectuées en utilisant le compte root. Par exemple, un programme pourrait être installé et donner à l'utilisateur ordinaire le pouvoir d'endommager accidentellement le système ou d'obtenir un accès non autorisé à certaines données.
Il est donc conseillé aux utilisateurs administratifs, ainsi qu'à tout autre utilisateur autorisé à utiliser
su
(et il est suggéré qu'il y en ait très peu, voire aucun), de prendre l'habitude de toujours exécuter la commande
su
avec l'option
-l
/
--login
. Elle a deux effets :
Passer du répertoire courant au répertoire personnel du nouvel utilisateur (par exemple, à
/root
dans le cas de l'utilisateur root) en se connectant en tant que cet utilisateur.
Modifie les variables d'environnement pour qu'elles correspondent à celles du nouvel utilisateur, en fonction des paramètres préférés du shell. Comme leur
~/.bashrc
, et éventuellement d'autres fichiers point, pour un shell
bash
. En d'autres termes, le répertoire et l'environnement actuels seront modifiés en fonction de ce qui serait attendu si le nouvel utilisateur s'était réellement connecté à une nouvelle session (plutôt que de simplement reprendre une session existante).
Ainsi, les administrateurs devraient généralement utiliser
su
comme suit :
$ su -l
Un résultat identique est produit en ajoutant le nom d'utilisateur root :
$ su -l root
De même, on peut faire la même chose pour tout autre utilisateur (par exemple, pour un utilisateur nommé archie) :
# su -l archie
Pour cela, vous pouvez ajouter un alias à
~/.bashrc
:
alias su="su -l"
Astuce
Vous rencontrerez parfois
su
utilisé pour obtenir un shell de connexion avec
su -
, plutôt que
su -l
/
su --login
. Ce raccourci est déconseillé car l'option
-
peut être mal interprétée comme indiqué dans
su(1) § DESCRIPTION
.
su et wheel
BSD
su
permet uniquement aux membres du
groupe d'utilisateurs
wheel
d'assumer l'identité de root par défaut. Ce n'est pas le comportement par défaut de GNU
su
, mais ce comportement peut être imité en utilisant
PAM
. Décommentez la ligne appropriée dans
/etc/pam.d/su
et
/etc/pam.d/su-l
:
auth requis pam_wheel.so use_uid