#1 Le 07/05/2013, à 11:56
- racrac
changer utilisateur dans un script
bonjour a tous,
je veux changer un utilisateur en utilisant su mais sans demander le mot de passe ?
juste dans le script
merci
Hors ligne
#2 Le 07/05/2013, à 14:42
- tiramiseb
Re : changer utilisateur dans un script
Salut,
Le concept de "su" n'est pas de devenir super-utilisateur mais de changer d'utilisateur (ce qui, quand on veut passer en root, fait devenir super-administrateur).
Si tu veux exécuter quelque chose en tant qu'un autre utilisateur (que ce soit root ou un autre) mais sans entrer de mot de passe, c'est de sudo que tu as besoin...
Sébastien Maccagnoni - https://www.maccagnoni.eu - https://www.domotego.com
Hors ligne
#3 Le 07/05/2013, à 16:24
- tiramiseb
Re : changer utilisateur dans un script
Je pensais plutôt à quelque chose comme ça :
Dans visudo :
ton_user ALL = (autre_user) NOPASSWD: /usr/bin/commande
et utilisation de la commande :
sudo -u autre_user commande
Dans le cadre d'un script, j'imagine que c'est pour exécuter des commandes et non pour lancer un sous-shell...
Et s'il s'agit vraiment de lancer un sous-shell, alors la ligne dans visudo serait plutôt :
ton_user ALL = (autre_user) NOPASSWD: /bin/bash
et la commande serait :
sudo -u autre_user -i
C'est un peu con d'utiliser "su" derrière "sudo" (même si les exemples de la manpage montrent ça ; ce sont de mauvais exemples).
Sébastien Maccagnoni - https://www.maccagnoni.eu - https://www.domotego.com
Hors ligne
#4 Le 07/05/2013, à 16:29
- FelixP
Re : changer utilisateur dans un script
Bon, j'aurais dû RTFM xD
Désolé alors pour le message foireux !
Envoyé depuis mon navigateur libre sous mon os libre.
Manjaro (basé Arch) + Cinnamon, et Firefox-Nightly 44.0 !
Voyez mes astuces ici : http://doc.ubuntu-fr.org/utilisateurs/felixp
Hors ligne