Мэйнфрейм pkunzip генерирует записи PEX013W, которые усекаются до lrecl=

Я отправляю двоичные файлы.gz из Linux в z/OS через ftps. Передача файлов выглядит нормально, но когда мэйнфреймы pkunzip файл, они получают предупреждение:

PEX013W Записи обрезаны до lrecl= 996. Запись # 1 составляет 1000 байтов.

В данный момент отправляю команды сайта:

SITE TRAIL
200 SITE command was accepted
SITE CYLINDERS PRIMARY=50 SECONDARY=50
200 SITE command was accepted
SITE RECFM=VB LRECL=1000 BLKSIZE=32000
200 SITE command was accepted
SITE CONDDISP=delete
200 SITE command was accepted
TYPE I
200 Representation type is Image
... 
250 Transfer completed successfully.
QUIT
221 Quit command received. Goodbye.

Они могут прочитать файл после pkunzip, но иметь предупреждение - не очень хорошая вещь.

Вывод из pkunzip:

SDSF OUTPUT DISPLAY RMD0063A JOB22093  DSID   103 LINE 25      COLUMNS 02- 81 
COMMAND INPUT ===>                                            SCROLL ===> CSR 
PCM123I Authorized services are unavailable.                                  
PAM030I INPUT  Archive opened:  TEST.FTP.SOA5021.GZ                        
PAM560I ARCHIVE FASTSEEK processing is disabled.                              
PDA000I  DDNAME=SYS00001,DISP_STATUS=MOD,DISP_NORMAL=CATALOG,DISP_ABNORMAL=   
PDA000I     SPACE_TYPE=TRK,SPACE_TYPE=CYL,SPACE_TYPE=BLK                      
PDA000I     SPACE_PRIMARY=4194304,SPACE_DIRBLKS=5767182,INFO_ALCFMT=00        
PDA000I     VOLUMES=DPPT71,INFO_CNTL=,INFO_STORCLASS=,INFO_MGMTCLASS=         
PDA000I     INFO_DATACLASS=,INFO_VSAMRECORG=00,INFO_VSAMKEYOFF=0              
PDA000I     INFO_COPYDD=,INFO_COPYMDL=,INFO_AVGRECU=00,INFO_DSTYPE=00         
PEX013W Record(s) being truncated to lrecl= 996. Record# 1 is 1000 bytes.    
PEX002I TEST.FTP.SOA5021                                                   
PEX003I Extracted to TEST.FTP.SOA5021I.TXT                                 
PAM140I FILES:   EXTRACTED  EXCLUDED  BYPASSED  IN ERROR                      
PAM140I                  1         0         0         0                      
PMT002I PKUNZIP processing complete. RC=00000004 4(Dec) Start: 12:59:48.86 End

Существует ли лучший набор команд сайта для передачи файла.gz из Linux в z/OS, чтобы избежать этой ошибки?

**** Обновить ****

Используя ответ SaggingRufus ниже, выясняется, что не имеет значения, как вы отправляете файл.gz, если он двоичный. Его предложение указало нам на параметры, отправленные в pkunzip для выходного файла, который был VB и обрезал 4 байта от записи.

2 ответа

Решение

Поскольку это переменный блочный файл, для атрибутов записи выделено 4 байта. Выделите файл с LRECL 1004, и все будет хорошо.

Вместо того, чтобы создавать файл.zip, возможно, создайте файл.tar.gz и перенесите его в z/OS UNIX? По умолчанию tar поставляется с z / OS, а Rocket Software предоставляет порт gzip, оптимизированный для z/OS.

Другие вопросы по тегам