2009-02-20 10 views

Répondre

3

Je le fais manuellement tout le temps en utilisant une copie sécurisée (SCP). SCP est déjà installé sur la plupart des machines Unix. Sur mon PC, j'ai installé PuTTY qui est une application de terminal sécurisé pour Windows et contient également un utilitaire de copie sécurisé. Lorsque vous effectuez la copie sécurisée manuellement à partir de la ligne de commande Windows, vous placez votre nom d'utilisateur Unix dans la commande de ligne de commande, mais vous devez ensuite taper votre mot de passe à l'invite, donc c'est interactif. Mais j'ai aussi pensé à le faire à partir d'un script ou d'un fichier séquentiel. Dans ce cas, vous aurez besoin de create and install private and public keys sur les machines appropriées. J'ai créé les clés appropriées et les ai installées sur les machines de Windows et d'Unix et puis j'ai manuellement exécuté la copie de sécurité de ligne de commande de Windows encore et il a fait pas me demande mon mot de passe cette heure. C'est donc une façon d'accomplir votre tâche. Je suis sûr qu'il y a beaucoup d'autres façons, cependant.

+0

ai-je besoin de mastic pour cela? – CheeseConQueso

+1

Oui. Bien qu'il existe probablement d'autres produits pour Windows qui fournissent un utilitaire SCP. PuTTY est assez populaire, cependant. Et libre. –

2

Oui, tant que le système d'exploitation sur lequel le script s'exécute peut lire à partir du lecteur Unix et écrire sur le lecteur Windows. Puisque ceci est étiqueté vbscript, je suppose que vous êtes sous Windows alors vous devriez regarder quelque chose comme this pour avoir accès aux systèmes de fichiers Unix pour Windows (bien que ce soit un pilote Linux ext). Ensuite, il exécute simplement une fonction de copie standard pour terminer votre tâche.

2

Étant donné que vous avez une balise Samba, parlez-vous de monter un partage réseau à partir d'une machine Unix sur votre machine Windows? Si tel est le cas, il est simplement traité comme un lecteur réseau normal et vous pouvez copier tout ce que vous avez des autorisations via le partage.

1

J'utiliserais l'outil expect.

Voici un exemple, comment télécharger

  • /local/path/to/file

à

  • \\HOST\SHARE\remote\path\to\file

authentification avec domain\user en utilisant passwo rd password:

expect <<<EOF 
set timeout 10 
spawn smbclient //HOST/SHARE "-Udomain\\user%password" 
expect { 
    "smb: \\\\\\\\>" { 
    send "cd /remote/path/to\r" 
    expect { 
     "NT_STATUS_OBJECT_NAME_NOT_FOUND" {exit 1} 
     "smb: *>"       { 
     set timeout -1 
     send "put /local/path/to/file file\r" 
     expect { 
      "putting file " { 
      expect "smb: *>" {exit 0} 
      } 
      "smb: *>" {exit 1} 
     } 
     } 
    } 
    } 
} 
# Timeout 
exit 1 
EOF 
+0

Vous vivez, vous apprenez. Jamais entendu parler de cet outil. – yegorich