[expect] lancer des applis à distance.

lancer des applis à distance. [expect] - Linux et OS Alternatifs

Marsh Posté le 09-04-2002 à 13:55:25    

chalut,
 
je scripte en expect pour lancer un backup sur une machine distante et le copier ensuite par ftp sur une autre.
 
j'ai un souci pour "rester" dans le telnet...
 
en gros, je demande le password du user distant, je me logge sur la machine, je tarre et je copie via ftp.
 
- la copie via ftp, c'est OK.
- le login en telnet c'et OK, mais.
 
login en telnet:
je me logge mais ensuite je n'arrive pas à lancer une commande par le script.
 
j'ai même essayé 'send "ls -l\r"' mais que dalle
 
voici ce que j'ai pour l'instant:
 
#!expect -f
send "Script to build the CVS backup\n"
 
# get the user password
system stty -echo
send_user "CVS server user password: "
expect_user  -re "(.*)\n"
send_user "\n"
system stty echo
set password $expect_out(1,string)
 
# telnet
spawn telnet 192.168.0.2
expect "login: "
send "server\r"
expect "*Password: "
send "$password\r"
 
# test a command line
send "ls -l\r"
 
ça ne fait rien.
 
si je place 'send "ls -l\r"' dans
interact "\r" {
 
}
 
alors, je reste dans le telnet et dès que j'appuie sur Entrée, il me liste le répertoire courant.
 
comment lui dire de lancer de suite les différents process ?  
j'ai essayé un nouveau spawn mais il clôture la connexion.
 
qq'un peut-il m'aider ?
 
ps: j'ai bien vu ce post http://forum.hardware.fr/forum2.ph [...] p=1&trash=  
je suis en train de parser de la doc trouvée là-bas, mais je comptais ne pas perdre trop de temps... et comme je ne trouve pas ce que je cherche... :/


---------------
A straight line is a special case of a curve. It's a curve which is uncurved. -- Susskind.
Reply

Marsh Posté le 09-04-2002 à 13:55:25   

Reply

Marsh Posté le 10-04-2002 à 08:27:28    

:(


---------------
A straight line is a special case of a curve. It's a curve which is uncurved. -- Susskind.
Reply

Marsh Posté le 10-04-2002 à 09:46:37    

euhhh la ca me depasse un peu qd meme :(:(

Reply

Marsh Posté le 10-04-2002 à 17:49:57    

devant la foule, je dis: "c'est pô grave, j'approfondirai l'étude quand j'en aurai le temps". :D
 
merci... arras pour le up ;)


---------------
A straight line is a special case of a curve. It's a curve which is uncurved. -- Susskind.
Reply

Marsh Posté le 10-04-2002 à 18:15:25    

j ai rien compris, mais ssh c ets pas meiux , non je sais po j ai po trop compris

Reply

Marsh Posté le 10-04-2002 à 18:38:40    

pas compris le problème ?
c'est d'automatiser un backup distant. le but étant de lancer le script via un crontab.
 
en gros, expect permet de "simuler" un user devant un terminal de type texte.
 
et donc je voudrais qu'il se connecte en telnet, fasse un tar, se logge sur le serveur de backup via ftp, y copie le fichier et se délogge de partout. 'oilà.
 
je sais préparer un telnet et donner la main au user... je sais faire du ftp mais je n'arrive pas à faire du ftp sur un telnet via mon script expect. d'où mon post ;)

 

[jfdsdjhfuetppo]--Message édité par TBone--[/jfdsdjhfuetppo]


---------------
A straight line is a special case of a curve. It's a curve which is uncurved. -- Susskind.
Reply

Marsh Posté le 10-04-2002 à 19:51:40    

desoler je pourrais point t aider

Reply

Marsh Posté le 10-04-2002 à 22:05:12    

tu as un user dédié ?
Si c'est le cas, tu modifie les fichiers de config du shell pour cet user, pour qu'il lance un script à la connexion de l'utilisateur, tu fais ton script client side, et non plus serveur side
 

  • script 1 :  

(celui que tu as fais, il ne fais qu'établir une connexion telnet vers la machine où on doit faire la sauvegarde)

  • script 2 :

(script sur la machine où on doit faire la sauvegarde, qui tar ce qu'il faut, etablie la connexion ftp, download, et se quitte, voire même, tu le shell courant, (ce qui coupe la session telnet))
 si tu utilise bash, travaille sur les .bash_profile & cie...

Reply

Marsh Posté le 11-04-2002 à 08:16:33    

super!
 
j'vais faire ça pour pouvoir avancer.
et je chercherai plus tard comment le faire en expect (pour apprendre)  
 
merci !


---------------
A straight line is a special case of a curve. It's a curve which is uncurved. -- Susskind.
Reply

Sujets relatifs:

Leave a Replay

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