script shell utilisant "su"

script shell utilisant "su" - Shell/Batch - Programmation

Marsh Posté le 17-12-2002 à 11:43:11    

Salut,
 
je ne m'y connais pas trop en linux et script shell alors j'ai une petite question pour vous!
 
Voilà je suis entrain de faire une procédure pour installer automatiquement une suite petit logiciel.
 
jusque là, pas trop de problème sauf qu'a un moment je dois faire un "su postgres" puis un "createdb xxx"
or le "su" me fait sortir du script............
 
quelqu'un a t il une solution pour que le tout soit transparent.
 
L'idée est que j'ai a mettre que le CD, lancer le script et ensuite utiliser les différents logiciels.
Pour info, je suis en mode root lors de l'install.
 
Merci  
 
@+

Reply

Marsh Posté le 17-12-2002 à 11:43:11   

Reply

Marsh Posté le 19-12-2002 à 00:47:34    

Essaye :
 

su postgres --command=createdb xxx


 
Moi j'utilise ca pour éviter de lancer en root des serveurs de jeux au démarrage d'un serveur. Ca donne :
 

su gadmin --command=/home/gadmin/servers/monscript


 
En espérant que ca t'ai aidé !
 
A+


Message édité par Evadream -jbd- le 19-12-2002 à 00:48:13
Reply

Marsh Posté le 19-12-2002 à 18:30:22    

hawat a écrit :

Salut,
 
je ne m'y connais pas trop en linux et script shell alors j'ai une petite question pour vous!
 
Voilà je suis entrain de faire une procédure pour installer automatiquement une suite petit logiciel.
 
jusque là, pas trop de problème sauf qu'a un moment je dois faire un "su postgres" puis un "createdb xxx"
or le "su" me fait sortir du script............
 
quelqu'un a t il une solution pour que le tout soit transparent.
 
L'idée est que j'ai a mettre que le CD, lancer le script et ensuite utiliser les différents logiciels.
Pour info, je suis en mode root lors de l'install.
 
Merci  
 
@+
 


 
oui c'est bien ca...
 
.....
su - -c"ta commande"      (une autre syntaxe mais que ca ne te perturbe pas les deux fonctionnent sur unix bsd linux etc...)
 
si tu fait un script d'install fais par exemple
 
#!/bin/bash
....
# fin initialisation
cd CHEMIN
./configure --prefix=/usr/.... --truc=blablabla.....
if [ $? -gt 0 ]  
then
   echo "ERREUR" $?
   echo "CONFIGURATION"
fi
make
if [ $? -gt 0 ]  
then
   echo "ERREUR" $?
   echo "COMPILATION"
fi
su - -c "make install"
if [ $? -gt 0 ]  
then
   echo "ERREUR" $?
   echo "INSTALLATION"
fi
# fin install
su - postgres --command=gdfgfgfhfdhgfhdf
if [ $? -gt 0 ]  
then
   echo "ERREUR" $?
   echo "POSTGRES"
fi
exit 0
 
durant l'execution ca va donner  
blablabla..
....
ca peut etre tres long en blabla
password:
################la tu valide ton password root
################sauf si tu as fait ton script pour se loguer ################avec le password
blalba venant de mak install
blablabla venant de postgres
 
 
si ca merde ca peut donner
blabla
....
blabla
...
ERREUR 1
--manpath not specified
CONFIGURATION
 
la c'est un exemple evidant il suffit de rajouter a ligne ./configure du script l'info manquante...
 
lis le man de su et sudo...


---------------
[:kuroineko] Francois.P tel: (+33)617230820 http://www.ifrance.com/fpussault  fpussault@caramail.com
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed