Hello
Je dois écrire un script ksh qui me permet de switcher d'utilisateur pour qu'il execute quelques commandes puis revenir au compte avant le switch. Ce script est à destination de personnes qui connaissent le mdp root mais pas moi.
Je suis connecté en root sur ma machine ( je ne connais pas le mot de passe ). A un moment, je dois passer sur le compte "user1" et faire en sorte que la commande echo 'hello world' puisse être lancée en tant que user1 puis revenir en root (sachant que je n'ai pas le mdp root).
Mon idée est de faire en tant que root :
En testant ces commandes une à une dans le terminal ça marche impec.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 su - user1 # Le su ne demande pas le mdp user1 ici car on est root echo 'hello world' #...ou tout autre bloc d'instruction exit #ce signal me permet de quitter user1 et d'être à nouveau root
Mon problème c'est quand je met ce code dans un fichier ksh que j'appelle ensuite ( ./fichier.ksh )
A ce moment là, seule la connexion à user1 fonctionne puis rien ne se passe, le reste des commande n'est pas executé et le exit non plus donc on reste en user1 et le terminal nous rend la main.
Quand c'est comme ça, je tape exit et au lieu de revenir sur root, la suite des instructions s'executent et seulement après il me remet en root en me rendant la main. Curieux...
Une idée de l'origine du problème ?
Avez-vous une meilleure solution au problème ?
D'avance merci![]()
Partager