D
dauda
Grünschnabel
Hallo, ich habe ein Problem!
Ich möchte Daten in einem Netzwerk von einem Rechner auf einen anderen übertragen. Der eine Rechner ist sozusagen der Verwaltungsrechner, der andere ist ein beliebiger Rechner in meinem Netzwerk. Ich bin auf beiden Systemen angemeldet und kann mich auf dem beliebigen Netzwerkrechner per SSH einloggen.
Nun habe ich ein Programm geschrieben, daß Ergebnisse in Form von Txt-Files erzeugt. Dieses Ergebnisse sollen auf den Verwaltungsrechner wieder zurückgespielt werden. Es ist aber sehr mühseelig, jedesmal das via:
scp *.txt User@IP:.
zu machen.
Also dachte ich mir, schreibe ich mir ein Skript, daß quasi ein paßwortloses Anmelden auf dem Verwaltungsrechner ermöglicht.
Dazu habe ich ein Skript geschrieben, daß einen Key generiert (also mit ssh-keygen) und diesen dann auf den Verwaltungsrechner kopiert.
Nun das Problem.
Führe ich dieses Skript lokal auf dem beliebigen Netzwerkrechner aus, so funktioniert alles ohne Probleme.
Melde ich mich per SSH auf dem Netzwerkrechner an und starte dann das Skript, funktioniert es auch.
Sobald ich jedoch diesen Aufruf ebenfalls in ein Skript oder auch in ein C-Programm integriere, dann kommt es zu Fehlern.
Wie sehen diese Fehler aus?
Nun ja, das Programm bzw. das Skript wird nur zum Teil ausgeführt. Starte ich ssh-keygen so werden verschiedene Infos vom User verlangt, bei diesen Abfragen springt dann das Programm, eine Eingabe ist dann nicht möglich. Das führt dazu, daß erst gar kein Key erzeugt wird....
Hat jemand eine Idee, wie man das verhindern kann?
Ich habe auch versucht, jeden Schritt einzeln zu automatisieren, also ich habe versucht immer nur einen Befehl in einem Skript zu erfassen, aber das war sinnlos, es kommt zu Fehlern, so bald man diesen Login via SSH automatisiert....
Über eine Antwort wäre ich sehr dankbar....die Skripte selbst sind fehlerfrei, sonst würde das ja lokal bzw. bei manuellem SSH-Login ja nicht funktionieren.
Ich möchte Daten in einem Netzwerk von einem Rechner auf einen anderen übertragen. Der eine Rechner ist sozusagen der Verwaltungsrechner, der andere ist ein beliebiger Rechner in meinem Netzwerk. Ich bin auf beiden Systemen angemeldet und kann mich auf dem beliebigen Netzwerkrechner per SSH einloggen.
Nun habe ich ein Programm geschrieben, daß Ergebnisse in Form von Txt-Files erzeugt. Dieses Ergebnisse sollen auf den Verwaltungsrechner wieder zurückgespielt werden. Es ist aber sehr mühseelig, jedesmal das via:
scp *.txt User@IP:.
zu machen.
Also dachte ich mir, schreibe ich mir ein Skript, daß quasi ein paßwortloses Anmelden auf dem Verwaltungsrechner ermöglicht.
Dazu habe ich ein Skript geschrieben, daß einen Key generiert (also mit ssh-keygen) und diesen dann auf den Verwaltungsrechner kopiert.
Nun das Problem.
Führe ich dieses Skript lokal auf dem beliebigen Netzwerkrechner aus, so funktioniert alles ohne Probleme.
Melde ich mich per SSH auf dem Netzwerkrechner an und starte dann das Skript, funktioniert es auch.
Sobald ich jedoch diesen Aufruf ebenfalls in ein Skript oder auch in ein C-Programm integriere, dann kommt es zu Fehlern.
Wie sehen diese Fehler aus?
Nun ja, das Programm bzw. das Skript wird nur zum Teil ausgeführt. Starte ich ssh-keygen so werden verschiedene Infos vom User verlangt, bei diesen Abfragen springt dann das Programm, eine Eingabe ist dann nicht möglich. Das führt dazu, daß erst gar kein Key erzeugt wird....
Hat jemand eine Idee, wie man das verhindern kann?
Ich habe auch versucht, jeden Schritt einzeln zu automatisieren, also ich habe versucht immer nur einen Befehl in einem Skript zu erfassen, aber das war sinnlos, es kommt zu Fehlern, so bald man diesen Login via SSH automatisiert....
Über eine Antwort wäre ich sehr dankbar....die Skripte selbst sind fehlerfrei, sonst würde das ja lokal bzw. bei manuellem SSH-Login ja nicht funktionieren.