Bonjour à tous,
Je cherche une méthode pour récupérer un fichier de log d'un serveur linux vers un serveur windows. Cette récupération sera faite massivement, c'est à dire que ce fichier sera à récupérer sur un grand nombre de serveurs linux.
Existe t'il une solution coté linux ou windows pour solutionner le problème?
Merci d'avance,
paco
# SFTP
Posté par Julien L. . Évalué à 3.
SFTP : http://en.wikipedia.org/wiki/SSH_file_transfer_protocol
[^] # Re: SFTP
Posté par nomorsad . Évalué à 1.
http://fr.wikipedia.org/wiki/Syslog
Sinon, FTP ou SSH (avec clef RSA, of course) et un petit script et hop !
[^] # Re: SFTP
Posté par champix . Évalué à 1.
Sinon rsync fonctionne sous Windows grâce à cygwin, il y a même un gars qui a packagé le tout, et dans mon cas ça fonctionnait bien mieux que winscp :
http://www.itefix.no/phpws/index.php?module=pagemaster&P(...)
[^] # Re: SFTP
Posté par paco69 . Évalué à 1.
Il y a environ 700 serveurs linux sur lesquels récupérer ce meme fichier log....
Le serveur windows qui sert de rapatriement du fichier log est un windows NT 4.0 :S
J'utilise psftp pour déposer les scripts sur les serveurs linux (un .bat qui lance un .sh).
Pour la récupération du fichier log c'est plus chaud avec psftp car:
-le "get" s'effectue alors que le fichier de log n'est pas encore créé (un "wait" existe t'il?)
-il est impossible (d'après mes tests) de récupérer un fichier par "get" dont le style est: `hostname`_fichierlog.log, le fichier récupéré sera `hostname`_fichierlog.log et non srv1551_fichierlog.log (par exemple).
Je me suis penché sur pscp...pour le moment rien de bien probant...
Si vous avez besoin de plus d'éléments, n'hésitez pas à me le demander.
"You need to stop using the crap shipped with Ubuntu."
[^] # Re: SFTP
Posté par paco69 . Évalué à 1.
"You need to stop using the crap shipped with Ubuntu."
[^] # Re: SFTP
Posté par paco69 . Évalué à 1.
"You need to stop using the crap shipped with Ubuntu."
[^] # Re: SFTP
Posté par kesako . Évalué à 2.
Et ensuite de recuperer le resultat seul sur la machine Windows.
Cela permetrait d'utiliser les outils unix present en standard sur linux (sftp, scp, syslog, rsync, ...) sans se casser la tete.
[^] # Re: SFTP
Posté par paco69 . Évalué à 1.
A qui le dis tu....l'ayant suggéré à maintes reprises à mes chefs...réponses négatives....ah!! si la vie était si simple!!....création sur chaque serveur du fichier de log....envoi de ceux ci sur une machine linux....compression en tar.gz du répertoire de récupération des fichiers log....envoi du répertoire compressé sur la machine windows avec le "get" de psftp....j'en rêve ttes les nuits.....mais voilà, pour eux se serai trop compliqué et trop long de monter un nouveau tux....au lieu de cela, je me fais chier à trouver une autre solution....pffff....meme pas envie de vous dire pour qui je bosse...vous en rigoleriez.... :S
"You need to stop using the crap shipped with Ubuntu."
[^] # Re: SFTP
Posté par Julien L. . Évalué à 2.
D'après ce que tu écris, tu dois aussi exécuter un script sur la machine distante avant de récupérer le fichier... le problème n'est donc plus tout à fait le même... il serait peut être alors utile que tu explicites un peu plus ce que tu veux vraiment faire et peut être que tu indiques ce que tu as déjà fait pour essayer de résoudre ton problème...
[^] # Re: SFTP
Posté par paco69 . Évalué à 1.
L'histoire comme sur le serveur windows: dans un répertoire, j'ai plusieurs fichiers différents:
-le liste.txt: qui contient la liste de serveurs sur lesquels bosser
-le .bat: qui va se connecter au serveur linux du fichier liste.txt et dépose les autres scripts (.txt et .sh) via psftp
-le .txt: qui va contenir les commandes psftp à effectuer sur le serveur linux, cad dépot du .sh dans cron.hourly --> "put .sh " & "chmod 755 .sh"
-le .sh: qui va récupérer et installer les packages sur le serveur et va générer un fichier log (`hostname`_fichierlog.log) pour savoir si 2 services sont bien lancés, qui voudra dire que les packages sont bien installés.
Voilà ou j'en suis.
Maintenant il faut pouvoir faire le chemin inverse, uniquement pour le fichier de log....et là, c'est pas gagné....
Par psftp, impossible de le rebalancer avec un "get":
get `hostname`_fichierlog.log --> il me balance `hostname`_fichierlog.log
get %computername%_fichierlo.log --> (sait on jms, psftp est un mélange de commandes msdos et linux....) connait pas la commande
get *.log --> connait pas la commande
Pour ttes ces commandes je les ai aussi essayé avec des guillements, des quotes... :((
.
Il faut que j'obtienne auprès de mes chefs une installation du serveur ssh coté windows. Bon, j'ai pu obtenir un windows serveur 2003. Bah non, c'est sur, un tux ca coute trop cher....et puis pourquoi ne pas faire dans la facilité ce que l'on peut faire dans la difficulté?.....c'est tellement évident/logique d'en chier...oups....dsl, je m'égare...
Avec le serveur ssh, peut-etre que là je pourrai utiliser sftp....ou autre chose.....
Dites moi si je suis sur le bon chemin....sur le bon coté de la route...lol....sinon je vais me faire écraser par mes chefs....mdr
Si tu nous écoutes Laurence B.....ahahah
***Troll implicite Inside***
Mes chefs me désespèrent et sont désespérents....c'est pour ca qu'ils sont chefs.... :)))
On parle d'un déploiement sur du full linux et ils arrivent encore à foutre du windows là dedans...c'est dingue ca....c'est comme s'ils se rassuraient en mettant un serveur windows quelque part....du genre "ouff c'est le srv windows qui va tout gérer, on peut etre tranquille".....et ta co***erie, c'est qui qui va la gérer?? mdr
***End of Troll implicite Inside***
"You need to stop using the crap shipped with Ubuntu."
[^] # Re: SFTP
Posté par Julien L. . Évalué à 2.
Pour ça il y a :
mget /le_chemin/*.log
Par exemple.
Et pour le
N'as tu pas dans le liste.txt le nom du serveur ? Dans ce cas à partir du .bat du serveur tu génères le bachfile utilisé par psftp avec un truc du genre
echo get /le_chemin/%variable_contenant_le_nom_du_serveur_%_fichier_log.log > psftp_bathfile
psftp -b psftp_bathfile
etc...
Et pour ce qui est de récupérer les log à la suite de l'exécution vu que le script est dans le cron.hourly pour ne pas attendre l'heure +xx min avant de lancer la récup ?
Sinon tu peux utiliser le FTP de windows pour que ce soit le serveur linux qui balance le log dessus avec l'outil wput (wput - A tiny wget-like ftp-client for uploading files) sauf si les échanges doivent être sécurisés...
[^] # Re: SFTP
Posté par paco69 . Évalué à 1.
4 fichiers dans le répertoire:
-liste.txt
-psftp.exe
-lancement.bat
-command.bat
lancement.bat:
[code]for /F "tokens=1,2,3 delims=;" %%i in (liste.txt) do set nommag=%%j&call :BOUCLE %%i %%k
set /A compteur=0
set /A nbpbrezo=0
set nommag=
goto :EOF
:BOUCLE
echo get /tmp/test.txt
psftp.exe %2 -l -pw *********** -b command.bat >> tmp.txt
del tmp.txt
rem ----------------------
set /A compteur=compteur+1
goto :EOF[/code]
command.bat:
[code]mget -r /tmp/*.log[/code]
Ya que comme cela que ca marche et pas une autre syntaxe (d'après mes moultes tests).
;)
"You need to stop using the crap shipped with Ubuntu."
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.