C'est une question à laquelle je m'attendrais à obtenir rapidement une réponse de Google. Cependant, Google me manque en quelque sorte. Supposons que je suis connecté à une session de terminal et que je souhaite travailler temporairement en tant qu'un autre utilisateur non root dont je connais le mot de passe sans quitter ma session. Lorsque je suis connecté en tant qu'utilisateur, je souhaite que le répertoire personnel, etc., soit configuré correctement pour cet utilisateur jusqu'à ce que je me déconnecte. Comment je fais ça?
j'ai essayé
su -- username
puis en tapant le mot de passe, cela n'a produit aucune erreur mais je n'ai vu aucun changement visible de l'invite de commande, il dirait toujours myname @ myhost. Le répertoire personnel était également celui de myname et non la nouvelle connexion avec laquelle j'ai essayé de me connecter.
Je suis - comme cela apparaît maintenant - assez inexpérimenté en linux / Ubuntu, donc toute information est la bienvenue.
la source
-s /bin/bash
à votresu
commande ou utilisezchsh -u username -s /bin/bash
pour modifier le shell d'un utilisateur. Méfiez-vous des implications de sécurité que cela pourrait avoir.si vous avez un accès sudo, je recommanderais
sudo su username -
Cela fait essentiellement la même chose, mais vous oblige seulement à connaître votre mot de passe et non les autres utilisateurs.
cependant, si vous avez le mot de passe des autres utilisateurs:
su username -
devrait fonctionner très bien.remarquez le 1 - et que c'est à la fin.
la source
sudo cat /etc/passwd
NE PAS COLLER LE CONTENU ICI. Il suffit de le regarder et assurez-vous que l'utilisateur a un vrai shell comme le dernier morceau de sa ligne.