Bien que l'utilisation principale de la commande `su` (utilisateur de remplacement) soit de passer à l'utilisateur root (ou à un autre utilisateur) et d'obtenir des privilèges élevés, elle possède quelques autres fonctionnalités moins courantes mais toujours utiles :
* Passer à un utilisateur spécifique : Vous pouvez utiliser « su » pour devenir n'importe quel utilisateur du système, pas seulement root. Par exemple, `su jane_doe` vous fera passer à l'utilisateur "jane_doe", en supposant que vous disposez des autorisations nécessaires (généralement possible uniquement si vous êtes root ou si vous avez un mot de passe pour cet utilisateur). Ceci est utile pour tester ou dépanner du point de vue d’un utilisateur différent.
* Spécifier un shell : Vous pouvez spécifier quel shell utiliser après avoir changé d'utilisateur. Par exemple :`su -c "/bin/bash -l" jane_doe` Ceci exécutera un shell de connexion (`-l`) en tant qu'utilisateur "jane_doe" en utilisant bash. L'option `-c` vous permet d'exécuter une seule commande en tant qu'utilisateur spécifié.
* Utilisation de l'option `-m` pour un nouvel environnement de connexion : L'option `-m` crée un nouvel environnement de connexion pour l'utilisateur spécifié. Cela définira généralement les variables d'environnement de l'utilisateur et exécutera les scripts de connexion de l'utilisateur. Cela fournit une émulation plus complète de la connexion directe en tant qu'utilisateur. Sans `-m`, vous hériterez de certaines de vos variables d'environnement d'origine.
* Exécuter une seule commande : Comme mentionné ci-dessus, l'option `-c` exécute une seule commande en tant qu'utilisateur spécifié. Ceci est utile pour exécuter une tâche spécifique avec des privilèges utilisateur élevés ou différents sans une session shell interactive complète. `su -c "command" user` est équivalent à `sudo command`.
Il est important de noter que l'utilisation de « su » nécessite de connaître le mot de passe de l'utilisateur cible. « sudo » est généralement préféré pour exécuter des commandes uniques avec des privilèges élevés, car il exploite un système d'autorisations plus sécurisé basé sur le fichier « /etc/sudoers », évitant ainsi d'avoir à partager le mot de passe de root.
|