Comment changer d’utilisateur dans Linux ?
Dans Linux, l’expression « changer d’utilisateur » peut décrire plusieurs actions différentes—certaines temporaires et basées sur la session, d’autres permanentes et à l’échelle du système. Étant donné que Linux est un système d’exploitation multi-utilisateur par conception, il offre plusieurs façons de changer d’identité et de permissions en fonction de ce que vous essayez d’accomplir : administrer un serveur, exécuter une application avec des droits limités, résoudre des problèmes d’accès aux fichiers ou restructurer des comptes utilisateurs.
Changer « d’utilisateur » dans Linux peut signifier plusieurs choses différentes selon le contexte :
- Changer de compte dans le shell (par exemple, de john à root)
Ceci est utilisé lorsque vous avez besoin d’une session terminal interactive en tant qu’autre utilisateur—souvent pour l’administration système ou pour tester comment quelque chose se comporte dans un environnement de compte différent. - Exécuter une seule commande en tant qu’autre utilisateur
Idéal lorsque vous avez seulement besoin de privilèges élevés ou d’une identité différente pour une tâche (comme redémarrer un service ou exécuter une commande de base de données) sans changer complètement votre session.
- Changer de compte dans le shell (par exemple, de john à root)
- Changer l’utilisateur de connexion par défaut pour un service/processus
Les services (serveurs web, bases de données, applications) doivent généralement s’exécuter sous des utilisateurs dédiés, non-root, pour des raisons de sécurité. Changer l’utilisateur du service affecte la façon dont le processus s’exécute et ce qu’il peut accéder. - Changer qui possède des fichiers et des répertoires
La propriété des fichiers contrôle l’accès. Si les permissions sont incorrectes—ce qui est courant après des migrations, des restaurations ou des déploiements—vous « changez d’utilisateur » en réassignant la propriété afin que le compte correct puisse lire/écrire des fichiers. - Changer les attributs d’identité de l’utilisateur (nom d’utilisateur, UID, groupes)
C’est la gestion des comptes : renommer un utilisateur, changer son UID ou ajuster l’appartenance à des groupes (comme accorder l’accès sudo). Ces changements peuvent avoir un impact sur les connexions, les permissions et l’accès aux services.
Ce guide couvre tous ces scénarios, montrant quand utiliser chaque approche, comment le faire en toute sécurité et quelles erreurs éviter—pour que vous puissiez changer d’utilisateurs en toute confiance sans casser les permissions, les services ou l’accès.
Changer pour un autre utilisateur (shell interactif)
su (changer d’utilisateur)
– (ou -l) charge l’environnement de connexion complet de l’utilisateur cible : répertoire personnel, PATH, profil de shell.
Sans -, vous conservez une grande partie de votre environnement actuel (peut être déroutant).
Changer pour root :
Note de sécurité : Sur de nombreuses distributions, su nécessite le mot de passe de l’utilisateur cible (par exemple, le mot de passe root), qui est souvent désactivé.
sudo -i (préféré pour les shells root/admin)
Vous donne un shell de connexion root (similaire à su -), en utilisant vos droits sudo au lieu du mot de passe root.
Changer pour un autre utilisateur avec un shell de connexion :
Exécuter une seule commande en tant qu’autre utilisateur (non interactif)
sudo -u
Exécuter avec un environnement de type connexion propre :
Exécuter une commande en tant que root
Changer l’« utilisateur effectif » d’un processus en cours d’exécution (réalité avancée)
Linux ne vous laisse pas « changer l’utilisateur » d’un processus déjà en cours d’exécution sur place dans la plupart des scénarios pratiques. Au lieu de cela, vous devez généralement :
redémarrer le processus sous le bon utilisateur
ou utiliser des gestionnaires de services (systemd) pour définir l’utilisateur
Pour inspecter quel utilisateur exécute un processus :
Ou :
Changer quel utilisateur un service exécute (systemd)
La plupart des Linux de production utilisent systemd. Les services doivent s’exécuter sous des utilisateurs dédiés et non privilégiés.
Vérifiez la configuration du service :
Recherchez :
User=Group=
Exemple de remplacement (méthode sûre) :
Ajouter :
Appliquer :
Vérifier :
Changer la propriété des fichiers (changer « d’utilisateur » pour les fichiers)
chown (changement de propriétaire)
Changer de propriétaire :
Changer de propriétaire et de groupe :
Récursif (soyez prudent) :
Préserver les liens symboliques (éviter de changer les cibles des liens) :
Conseil avancé : Pour de grands arbres, prévisualisez d’abord :
Changer votre identité de shell actuelle vs. changer le compte lui-même
Confirmer qui vous êtes
Confirmer qui est connecté
Voir quel utilisateur a exécuté le shell actuel via sudo
Changer le nom d’utilisateur, l’UID, les groupes (modification de compte)
Renommer un utilisateur (nom d’utilisateur)
Déplacer/renommer également le répertoire personnel :
Mettre à jour le nom du groupe aussi (optionnel) :
Changer l’UID (avancé ; affecte la propriété des fichiers)
Après avoir changé l’UID, corrigez la propriété des fichiers :
Ajouter un utilisateur à un groupe (par exemple, sudo)
Vérifier :
« Fiche de triche » rapide
Changer d’utilisateur :
Exécuter une commande en tant qu’autre utilisateur :
Exécuter un shell root :
Changer le propriétaire du fichier :
Changer les détails du compte :
