-
sFTP funktioniert nur interaktiv?
Liebes Forum!
Wir sollen Daten von der iSeries auf einen sFTP Server übertragen! Interaktiv funktioniert das Programm soweit. Im Batch zeigt das Programm aber seltsame Verhaltensweisen!
Im CL Programm werden zwei Scripts aufgerufen
1) Passwortscipt
2) Datenübertragungsscript
Passwortscript:
#!/bin/sh
printf rxxxxxxxxy
Datenübertragungsscript:
#!/bin/sh
export DISPLAY= SSH_ASKPASS=/home/Herman/openssh_password_script.sh
printf "mput /FFPublic/PDFAusgabe/LEKL/FTP/LE*\nquit\n" | sftp p413962f1@p413962.xxxxxxxx.de
Mein "Firewallkollege" hat mir mitgeteilt, dass der BATCH Aufruf auf einen FTP Server zugreift und nicht auf den interaktiven richtigen sFTP Server.
Wir haben den Servernamen p413962.xxxxxxxx.de auch durch die IP Adresse ersetzt ohne Erfolg.
Meine Frage an Euch würde nun lauten: Warum verhält sich ein und das selbe CL-Programm interaktiv unterschiedlich zum BATCH Aufruf?
Hier noch der Ausschnitt aus dem CL Programm:
QSH CMD('/home/Hermann/openssh_password_script.sh')
QSH CMD('exec /QOpenSys/usr/bin/ksh -c "/home/Hermann/batch_leistungserklaerungen_sftp_script.sh"')
Das Log beim korrekten interaktiven Aufruf:
rxxxxxxxxxxy
Die Eingabetaste drücken, um die Terminalsitzung zu beenden.
Connected to p413962.xxxxxxxxxxx.de.
sftp> mput /FFPublic/PDFAusgabe/LEKL/FTP/LE*
Uploading /FFPublic/PDFAusgabe/LEKL/FTP/LE001297.PDF to /LE001297.PDF
Uploading /FFPublic/PDFAusgabe/LEKL/FTP/LE_Muster.pdf to /LE_Muster.pdf
sftp> quit
Ich vermute, dass nicht mehr viel fehlt, um das Programm korrekt im BATCH korrekt aufrufen zu können!
Vielen Dank im Voraus
Hermann
-
Wie hast du
a) die Eingabeumleitung
b) was steht in der Eingabedatei
Meine Versuche mit sftp und Script scheiterten, da sftp gezielt die Konsole abfragen will und eine Eingabeumleitung nicht funktionierte.
Hast du mal den normalen STRFTP mit TLS probiert? Ich hatte noch keine Gelegenheit dazu.
-
Hallo Furchau!
Vielen Dank für deine Antwort! Wenn ich das richtig verstehe soll die Scriptzeile:
export DISPLAY= SSH_ASKPASS=/home/Herman/openssh_password_script.sh
die Umleitung machen.
Wenn du mit Eingabedatei die FTP Anweisungen meinst wären es diese Zeilen:
export DISPLAY= SSH_ASKPASS=/home/Herman/openssh_password_script.sh
printf "mput /FFPublic/PDFAusgabe/LEKL/FTP/LE*\nquit\n" | sftp p413962f1@p413962.xxxxxxxx.de
Es sollen nur bestimmte PDF aus dem IFS an das Verzeichnis des sFTP Servers gesandt werden, was soweit interaktiv funktioniert. Nur im BATCH leider nicht!
Danke
Hermann
-
Also mit dem normalen FTP (als Beispiel) schreibe ich die manuellen Anweisungen in eine PF FTPINPUT.
Per
OVRDBF STDIN TOFILE(FTPINPUT)
OVRDBF STDOUT TOFILE(FTPOUTPUT)
STRFTP
Werden die Befehle
logon
user
password
mget *.txt
quit
Nacheinander befolgt und durchgeführt.
Bei sftp benötigst du also eine ifs-datei in der die manuellen Befehle stehen.
Der QSH-Aufruf ist dann
sftp parameter < InputScript.txt > Output.log
Wie gesagt, bei mir hat die Eingabeumleitung nicht funkioniert, da die Eingabe-Umleitung ignoriert wurde. Die Ausgabeumleitung aber wohl.
-
Guten Morgen.
Ist der Benutzer im Batch = interaktive Benutzer?
Wenn nicht dann musst du dich mal mit dem Batch-Benutzer interaktiv anmelden und eine SSH-Verbindung aufbauen damit der Fingerprint gespeichert wird. Das war bei mir damals mal das Problem.
-
Danke für die Antwort!
Es ist ein und derselbe Benutzer - sogar mit SECADM Rechten! Wenn ich mich nicht täusche brauche ich keinen "Fingerprint" bei einem User mit Kennwort - oder?
-
Guten Morgen.
Bei den paar sFTP-Zugriffen welche ich realisieren musste, musste sich der Batchbenutzer immer einen Fingerprint in den known_hosts eintragen. Auch mit Benutzer und Kennwort, das war dem sFTP egal. Also interaktiv anmelden und per SSH zum sFTP-Server um den fingerprint einmal abspeichern zu lassen
-
Ich habe mit dem Batch Benutzer eine SSH Verbindung zum sFTP Server aufgebaut wobei der Fingerprint in die HOST Tabelle eingetragen wurde. Der Batchjob läuft zwar ohne Fehler ab meldet "Befehl wurde normal mit Ausführungsstatus 255 beendet" was vermutlich nichts gutes bedeutet.
Im Log Files welches bei der Verbindung aufgebaut wird steht:
"lost connection xxxxxxxxxxxxxfork: Error 3489 occurred" - was auch immer das wieder heissen soll!
Ich bin mit meinen Latein am Ende und komme nicht weiter - vielleicht hat noch jemand eine Idee die sFTP Verbindung ins Laufen zu bekommen.
Vielen Dank im Voraus
Hermann
-
Fehlerbeschreibung siehe hier:
https://www.ibm.com/support/pages/qs...-program-batch
Manche Subsysteme erlauben z.B. kein Multithreading, was allerdings ebenso benötigt werden könnte.
-
Liebes Forum!
Unsere sFTP Anwendung läuft jetzt problemlos im BATCH und INTERACTIV. Vieler eurer Tipps haben dazu beigetragen die Lösung für das Problem zu finden (Fingerprint generieren, Anzahl Jobs per Jobklasse zu erhöhen, etc.)
Aber ein Hauptgrund war ein % Zeichen im Kennwort welches der PRINTF Command falsch interpretiert hatte! Durch einen Beitrag im Internet konnte herausgefunden werden, dass ein einzelnes % durch ein weiteres %% ergänzt werden musste um das % Zeichen korrekt zu übertragen.
Beitrag: https://alvinalexander.com/programmi...t-cheat-sheet/
Ein Problem ist noch zu lösen und zwar, dass das Logfile mit WRKLNK ohne Problem zu lesen ist, im IFS aber verstümmelte Zeichen dargestellt werden (OpsNav-Daten: Datenstromdatei Typ 2, 1141 german with euro)
Noch einmal vielen Dank für eure Unterstützung
Hermann
-
Hallo Hermann,
Probier vorher die Umgebungsvariable zu setzen: QIBM_CCSID=1208
Dadurch sollten alle im IFS erzeugten Files mit der CCSID 1208 (UTF8) erstellt werden.
lg Andreas
-
Vor dem Start kann man per "touch" mit CCSID eine IFS-Datei erstellen:
touch -C 1252 LogFile
Similar Threads
-
By nico1964 in forum IBM i Hauptforum
Antworten: 71
Letzter Beitrag: 22-08-17, 13:13
-
By camouflage in forum IBM i Hauptforum
Antworten: 6
Letzter Beitrag: 16-01-14, 17:07
-
By BerndF in forum IBM i Hauptforum
Antworten: 10
Letzter Beitrag: 10-04-03, 07:01
-
By Reinhard Düvel in forum NEWSboard Server & Hardware Markt
Antworten: 1
Letzter Beitrag: 06-05-02, 13:34
-
By K_Tippi in forum IBM i Hauptforum
Antworten: 3
Letzter Beitrag: 27-03-01, 09:17
Tags for this Thread
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- You may not post attachments
- You may not edit your posts
-
Foren-Regeln
|
Erweiterte Foren Suche
Google Foren Suche
Forum & Artikel Update eMail
AS/400 / IBM i
Server Expert Gruppen
Unternehmens IT
|
Kategorien online Artikel
- Big Data, Analytics, BI, MIS
- Cloud, Social Media, Devices
- DMS, Archivierung, Druck
- ERP + Add-ons, Business Software
- Hochverfügbarkeit
- Human Resources, Personal
- IBM Announcements
- IT-Karikaturen
- Leitartikel
- Load`n`go
- Messen, Veranstaltungen
- NEWSolutions Dossiers
- Programmierung
- Security
- Software Development + Change Mgmt.
- Solutions & Provider
- Speicher – Storage
- Strategische Berichte
- Systemmanagement
- Tools, Hot-Tips
Auf dem Laufenden bleiben
|
Bookmarks