Periodische Datenübernahme: Quelldatei „liegt nicht im Verzeichnisbereich /tmp/" (SG805) beim Archivieren nach Verbuchung
Szenario
Ein externes System schreibt per Task die Datei arno.txt auf den Applikationsserver nach: /usr/sap/interfaces///arno.txt
Ein LSMW-Objekt (Verbrauchsbuchungen) soll diese Datei einlesen, umsetzen, verbuchen und die Quelldatei anschließend mit Zeitstempel archivieren (umbenennen), damit sie nicht erneut verarbeitet wird. Das lief jahrelang problemlos.
Was sich geändert hat
Der Zugriff auf die Quelldatei wird gegen den erlaubten Verzeichnisbereich /SAPDMC/LSMW_FILE (= /tmp/) geprüft und abgewiesen (Meldung SG805, Funktionsgruppe SFIL). Diese Validierung war früher offenbar nicht aktiv – der bisher genutzte feste Pfad funktionierte jahrelang. Woher die Prüfung nun kommt (Support Package, Kernel oder ein neuerer Sicherheitshinweis im DX/LSMW-Umfeld), ist mir nicht klar.
Meine Konfiguration in Transaktion FILE
Die Quelldatei (Altdaten) ist im LSMW-Objekt aktuell als fester physischer Pfad hinterlegt: /usr/sap/interfaces///arno.txt. Das Einlesen funktioniert damit.
Für die Zwischendateien (eingelesene/umgesetzte Daten) habe ich eine logische Datei/Pfad angelegt:
Objekt Wert
Logische Datei Z_LSMW_QUELLE
Phys. Datei .lsmw.conv
Logischer Pfad Z_LSMW_QUELLE
Phys. Pfad (Syntaxgruppe UNIX) /tmp/
Betriebssystem-Zuordnung: Linux → Syntaxgruppe UNIX.
Aktueller Stand / Fehler
Der Job läuft inzwischen fast vollständig durch. Aus dem Job-Log (/SAPDMC/SAP_LSMW_INTERFACE):
Das Einleseprogramm wurde korrekt ausgeführt.
Die Datei '/tmp/_AUTOMAT.lsmw.read' ist vorhanden.
Das Umsetzungsprogramm wurde korrekt ausgeführt.
Die Datei '/tmp/.lsmw.conv' ist vorhanden.
Mappe wurde erstellt
1 Mappe(n) an die Hintergrundverarbeitung übergeben
Die Verarbeitung der Batch-Input-Mappen wurde angestoßen.
Datei '/usr/sap/interfaces///arno.txt' liegt nicht im
Verzeichnisbereich '/tmp/' (/SAPDMC/LSMW_FILE). // für LSMW zulässig, damit der Job nicht mehr abbricht?
Danke!