Décompresser des fichiers .tar a distance avec Remote shell

Résolu
david-manu Messages postés 2 Statut Membre -  
zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   -
bonjour à tous,

je voulais faire un transfert FTP en utilisant un batch:

le travail consiste à déplacer des fichier .TAR du serveur linuxA vers un autre serveur linuxB
et après, a partir d'un PC WINDOWS,je dois lancer des commandes RSH OU SSH pour décompresser les fichiers .Tar déjà déposés sur le serveur linuxB

j'ai reussi à deplacer les fichiers .Tar du serveur linuxA vers LinuxB,mais j'arrive pas developper le reste avec RSH ou SSH car je m' y connais que dalle!!!!

Merci de m'aider

4 réponses

  1. zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   6 501
     
    Salut,

    En gros :
    ssh   login_user@serveur   la_commande_à_exécuter 

    Après tout dépend de comment tu accèdes à ton serveur, via des clés ou avec un login+password à entrer...
    0
  2. david-manu Messages postés 2 Statut Membre
     
    Bonjour,

    Le serveur sur lequel je me connecte a une adresse ip 10.147.10.42 ,un user_name et un mot de passe
    donc je mets comment tout ça dans la commande SSH login_user@serveur la_commande_à_exécuter

    qu'est ce que je peut mettre dans la commande pour décompresser les fichiers .TAR déposés sur le serveur linuxB

    Merci
    0
    1. zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   6 501
       
      Si tu n'as pas de clé d'authentification, tu seras obligé de donner ton mot de passe au prompt.
      Pour éviter cela on peut passer par l'emploi de "expect" mais ce n'est pas très sécuriser vu que le mot de passe est stocké en clair dans le script ;-(

      Après oui la commande de détarrage peut être donnée sur la ligne de commande :

      ssh user@serveur 'tar xvf /chemin/archive.tar'
      0
  3. david-manu
     
    j'ai mis cette commande
    ssh dvpt@dvpt 'tar xvf /user/indus/david/*.tar'    et en retour après l'exécution du batch,il me donne le message ci_dessous
    
    'ssh' n'est pas reconnu en tant que commande interne
    ou externe, un programme exécutable ou un fichier de commandes.
    
    meric
    0
    1. zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   6 501
       
      Est-ce que la commande seule :
      ssh dvpt@dvpt
      te permet de te loguer sur ton serveur ?
      0
    2. zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   6 501
       
      Bon je viens de faire un test chez moi entre 2 machines sous GNU/Linux et ça marche parfaitement.

      Il y a une petite erreur dans la commande que je t'ai donnée plus haut. Il faut se placer dans le répertoire contenant l'archive avant de lancer la commande tar :

      ssh login@serveur 'cd /chemin/vers/archive; tar -xvf archive.tar'
      0
    3. david-manu
       
      ssh dvpt@dvpt cette commande me permet pas de me connecter sur le serveur

      le nom du serveur est LynxV10
      user_name est dvpt
      mot de passe est dvpt

      avec le telnet j'arrive facilement à me connecter mais pas avec ssh et rsh!!!!!
      0
    4. zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   6 501
       
      Est-ce qu'un serveur ssh tourne au moins sur ce serveur ?
      0
    5. david-manu
       
      comment faire pour avoir l'autorisation de se connecter a partir de la machine PC windows sur le serveur linux 'lynxV10"
      0
  4. david-manu
     
    ce batch à priori,permet de deplacer juste les .tar du serveur linuxA vers LINUXB
    J'ai un fichier ini qui alimente mon batch donnée comme suit;
    [origine]
    source=10.240.10.34
    dossiersrce=/user/livraisons
    fichierLynx=*.TAR
    dossierstmp=C:\zaza
    ftpmode=bin
    
    [destination]
    HOST=10.240.10.34
    dossierdest=/user/indus/gildas
    ftpmode=bin
    execmd=
    
    
    
    fichier batch
    
    @echo off
    for /f %%a in (param.ini) do (
                                    if /i [origine] neq %%a (if /i [destination] neq %%a (set %%a)))
    
    
    
    
    ::batch pour recuperer des fichiers du  serveur lynxOSV400
    
    echo open %source%>recup.ftp
    
    
    set/p username="Veuiller entrer le login:"
    
    set/p password="Veuiller entrer le pass:"
    
    
    echo user %username% %password% >>recup.ftp 
    echo hash            >>recup.ftp
    echo cd    %dossiersrce%>>recup.ftp 
    
    echo %ftpmode%>>recup.ftp 
    echo mget %fichierLynx%>>recup.ftp 
    echo bye          >>recup.ftp   
     
    
    ::batch pour déposer des fichiers sur le serveur lynxOSV400
    
    echo open %source%>emet.ftp 
    echo user %username% %password% >>emet.ftp  
    
    echo cd %dossierdest%>>emet.ftp 
    echo hash            >>emet.ftp
    echo %ftpmode%>>emet.ftp 
    echo mput %fichierlynx%>>emet.ftp 
    echo bye          >>emet.ftp    
    
    
    ftp -i -n -v -s:recup.ftp >>log.txt
    
    ftp -i -n -v -s:emet.ftp  >>log.txt
    0