Problem mit Putty

Hallo

Ich möchte per putty bzw besser gesagt plink wenn ich das richtig verstanden habe, folgendes machen (unter Windows 2000).

Und zwar soll per Tasksplaner per SSH eingeloggt werden, dann ein paar Dateien kopiert und danach auf dem Server eine FTP-Verbindung gestartet werden. Dann dorthin Dateien vom Server1 auf den Server2 hochgeladen werden. und die verbindung beeendet werde.

Habe bereits folgendes Probiert, aber es klappt nicht:

plink -ssh -l -batch username -pw passwort server1.nam -m commands

und in der commands steht:

cd test1
cp *.* …/test2
ftp server2.nam
Benutzername
Passwort
send *.*
exit

Es klappt leider nicht…plink wird anscheinend gestartet baut aber keine verbindung auf. Schreibe ich nur ls in die commands klappt das und er zeigt den inhalt im Dos-Fenster an, aber die anderen befehle macht er nicht…
Ich finde leider keine Inmfos wie die Befehlsdatei commands aussehen muss, wenn man mehrere Sachen wie oben machen will…mir scheint so, als wenn er nur die allerste Zeile ausführt…

Wenn ich es per Hand mache gehen die obigen Befehle.
Da ich leider auf dem Exclusivserver 8keine Rootrechte oder andere Progamme auf dem Server möglich) nur das Standard-FTP-programm vorfinde und dort somit schon per Cronjob gescheitert bin, woltle ich das eben nun auf diesen Weg lösen…nur komme nun ebenfalls nicht weiter…

BITTE hilft mir…Danke!

Hallo

Hi,

Ich möchte per putty bzw besser gesagt plink wenn ich das
richtig verstanden habe, folgendes machen (unter Windows
2000).

[…] Tasksplaner per SSH […] auf dem Server eine
FTP-Verbindung gestartet werden. […]

Habe bereits folgendes Probiert, aber es klappt nicht:

Bitte benutze PRE-tags. Danke.

> plink -ssh -l -batch username -pw passwort server1.nam -m commands

-ssh ist hyperfluid, da default. Darueberhinaus hast Du hoffentlich
A simple way to automate a remote login is to supply your password
on the command line. This is _not recommended_ for reasons of
security. If you possibly can, we recommend you set up public-key
authentication instead. See chapter 8 for details.

aus der PuTTY/Plink-Dokumentation gelesen.

und in der commands steht:

> cd test1  
> cp \*.\* ../test2

Du weisst, dass Du mit *.* nur Dateien kopierst, die einen Punkt haben?

> ftp server2.nam  
> Benutzername  
> Passwort  
> send \*.\*  
> exit

Huh? Wie soll das gehen? Das Programm ftp wird gestartet, und wartet auf Eingabe. Wie soll da jetzt username, password und der ftp-Befehl hinkommen? Und Du willst nicht ftp nehmen, sonder scp oder sfpt oder shfs oder… nur nicht ftp.

Es klappt leider nicht…plink wird anscheinend gestartet baut
aber keine verbindung auf.

Der Befehl cp wird auch nicht ausgefuehrt?

Ich finde leider keine Inmfos wie die Befehlsdatei commands
aussehen muss, wenn man mehrere Sachen wie oben machen
will…mir scheint so, als wenn er nur die allerste Zeile
ausführt…

Ich glaube nicht. Die Befehlsdatei wird als ganz normales shell script interpretiert. ftp ist nicht shell.

nur das Standard-FTP-programm vorfinde und dort somit
schon per Cronjob gescheitert bin,

Ich bin mir sicher, es laeuft ein cron. Und normalerweise duerfen auch Nutzer cronjobs anlegen. Und da der sshd drauf laeuft gibt’s da auch ssh und damit auch scp und sftp und ssh-keygen und…

HTH,
Gruss vom Frank.

Danke, aber wie dann BITTE 3 Server abgleichen?
Hallo

Danke erstmal

Also das Problem ist, das wir auf dem Exclusivserver in einer etwas kastrierten Umgebung leben. D.h. so mancher Befehl wird mit unbekannt verweigert (wie ping oder traceroute z.B. ).

Wir haben aber folgendes Grundproblem das irgendwie gelöst werden muss:

Wir haben einen Exlcusiv-Server auf den ein Freund per Modem regelmässig unsere Shareware / Freewaredateien hochlädt. Da wir viel Traffic haben, müssen wir die Dateien auf 2 weitere normale Homepage-Accounts (einmal Strato, einmal Puretec, dort kein SSH unter hinter Firewalls - nur FTP-Zugriff!)) spiegeln.
Aktuell muss ich alles jedesmal runter und dann wieder auf die beiden anderen Accounts raufladen…

Nun war der Gedanke, das wir (cron doch vorhanden wie ich grad feststelle) per cron oder per SSH-Batchauftrag unter Windows, die Dateien vom ersten Server per direkter Server-Server Verbindung auf die beiden anderen Account übertragen. Es geht also darum den inhalt eines ganzen verzeichnis auf zwei weitere Server per FTP zu übertragen.

Wir sind beide leider doofe Windows-User und haben von Unix fast null Ahnung…darum wären wir um eine Lösungshilfe SEHR SEHR DANKBAR!

Danke!

Hallo,

wieso erstellst du auf dem Server nicht einfach ein Bash-Script, dass das alles erledigt? Dann musst du nur noch das Script aufrufen, und fertig.

Oder noch einfacher: Wieso startest du den Vorgang nicht einfach über den Cron-Daemon der Linux-Kiste?

mfg
deconstruct

Hy Black,

also ich bin zwar kein Experte, aber hoffe Dir trotzdem weiter helfen zu können, ich hatte nämlich ähnliche Probleme.

Wie Frank vorher schon meinte, liegt Dein Problem darin, dass Unix das ftp-Script dem ftp-Befehl nicht ausführt.
Das liegt einfach daran, das nach dem ftp-Aufruf das ftp-Programm aufgerufen wird. Nun wartet das Script, bis Du wieder aus dem Programm raus gehst, z.B. mit exit.
Mir hat mal einer gezeigt, wenn Du das ftp mit einem Script ausführen willst, muss das etwa so aussehen:

ftp [Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]