SMP/E初学入门--介绍和使用实例


  • administrators

    参考书籍:《SMP/E USER'S GUIDE》
    SMP/E是一个Z/OS工具,用于管理Z/OS系统上软件产品的安装,并追踪这些产品的修改。
    所有的代码和修正程序都可以在SMP/E数据库中找到,我们叫它CSI(consolidated software inventory),它有一个或多个VSAM数据集组成。

    我们使用的Z/OS系统是由很多子系统拼起来的,所以我们可以看到:
    RACF | DB2 | MVS | CICS | ISPF | TSO | SMP/E | EREP | MQ | JES | RMF | HTTP | IMS | VTAM | WAS | NETVIEW | DFSMS | PSF | RRS

    而每个系统的功能都由一个或者多个加载模块组成。

    通常我们会使用SMP/E对系统进行更新,通常我们拿到一个SYSMOD(一个SYSMOD是元素和控制信息的打包,SMP/E使用这些控制信息来安装和跟踪系统的修改。)在SYSMOD里我们可以看到它由两部分组成,修正控制语句(MCS)和修正体两部分,修正体是目标模块,宏或SYSMOD;MCS的的前两个字母以“++”开头,进而告诉SMP/E:

    1)更新或更换那些元素
    2)SYSMOD如何与产品软件和其他SYSMOD相关联
    3)其他特定的安装信息

    一共有4中类型的SYSMOD

    1. FUNCTION SYSMOD
      在系统引入一个新产品或是一个产品的新版本,或跟新系统中现有的某个产品的功能
      举一个简单FUNCTION SYSMOD的例子:

      ++FUNCTION(FUN0001)                           /* SYSMOD TYPE AND IDENTIFIER.   */
      ++VER(Z038) FMID(FUN001)                      /* FOR AN OS/390 SYSTEM.         */
      ++MOD(MOD1) RELFILE(1)                        /* INTRODUCE THIS MODULE.        */   
                             DISTLIB(AOSFB)         /* IN THIS DISTRIBUTION LIBRARY  */
      ++MOD(MOD2) RELFILE(1)                        /* INTRODUCE THIS MODULE.        */   
                             DISTLIB(AOSFB)         /* IN THIS DISTRIBUTION LIBRARY  */
      ++MOD(MOD3) RELFILE(1)                        /* INTRODUCE THIS MODULE.        */   
                             DISTLIB(AOSFB)         /* IN THIS DISTRIBUTION LIBRARY  */
      ++MOD(MOD4) RELFILE(1)                        /* INTRODUCE THIS MODULE.        */   
                             DISTLIB(AOSFB)         /* IN THIS DISTRIBUTION LIBRARY  */
      
    2. PTF SYSMOD
      当一个软件发现有问题时,IBM提供客户一个经过测试的补丁,这个补丁就是PTF。
      举一个简单PTF SYSMOD的例子:

    ++PTF(PTF0001)                               /* SYSMOD TYPE AND IDENTIFIER.   */
    ++VER(Z038) FMID(FUN001)                     /* APPLY TO THIS PRODUCT         */
    ++MOD(MOD1)                                  /* REPLACE THIS MODULE.          */   
                           DISTLIB(AOSFB)        /* IN THIS DISTRIBUTION LIBRARY  */
    ...
    ...OBJECT CODE FOR MODULE 
    
    1. APAR SYSMOD
      有时当一个严重问题发生时,用户可能需要在PTF发布之前修正它,这种情况下,IBM提供了一个授权程序分析报告(APAR),APAR是一个补丁,可以快速修正元素的某个特定区域或者替代一个错误元素。
      举一个简单APAR SYSMOD的例子:

      ++APAR(APAR001)                             /* SYSMOD TYPE AND IDENTIFIER.   */
      ++VER(Z038) FMID(FUN001)                    /* APPLY TO THIS PRODUCT         */
                          PRE(UZ00004)            /* AT THIS SERVICE LEVEL         */
      ++ZAP(MOD3)                                 /* UPDATE THIS MODULE.           */   
                             DISTLIB(AOSFB)       /* IN THIS DISTRIBUTION LIBRARY  */
      ...
      ...ZAP CONTROL STATEMENT
      
    2. USERMOD SYSMOD
      如果用户有这样一个需求,需要产品完成和它原来设计不一样的任务,那么可能需要客户化系统中的元素。IBM提供用户一些模块剪裁IBM代码以满足特定的用户需求,在完成想要得到的改变之后,需要通过安装USERMOD SYSMOD从而在系统中添加或者更新这些模块。
      举一个简单USERMOD SYSMOD的例子:

      ++USERMOD(APAR001)                      /* SYSMOD TYPE AND IDENTIFIER.   */
      ++VER(Z038) FMID(FUN001)                /* APPLY TO THIS PRODUCT         */
                          PRE(UZ00004)        /* AT THIS SERVICE LEVEL         */
      ++SRCUPD(JESMOD3)                       /* UPDATE THIS MODULE.           */   
                             DISTLIB(AOSFB)   /* IN THIS DISTRIBUTION LIBRARY  */
      ...
      ...UPDATE CONTROL STATEMENT  
      

    PTF,APAR和USERMOD SYSMOD都把FUNCTION SYSMOD作为先决条件,类似我们WINDOWS系统打补丁一样,比如在WINXP系统存在的情况下,我们可以打补丁,安装或更新一些修改后的软件。
    1)PTF SYSMOD可能还依赖于其他的PTF SYSMOD,可能我们在安装PTF0002之前,必须先安装PTF0001.
    2)APAR SYSMOD可能还依赖于PTF SYSMOD或者其他的APAR SYSMOD
    3)USERMODSYSMOD可能还依赖于PTF SYSMOD,APAR SYSMOD或者其他的USERMOD SYSMOD。

    为了成功的跟踪和控制元素,所以元素及其修正都必须在SMP/E中清晰地定义标识。
    有3类修改标识符:
    1)功能修改标识符(FMID)标识FUCTION SYSMOD,它将元素引入到系统中。
    2)替换修改标识符(RMID)标识最后替换某元素的SYSMOD(大多数情况下为PTF SYSMOD)
    3)更新修改标识符(UMID)标识自从某元素被替换之后,对其实施更新的SYSMOD

    为了让SMP/E能正确地完成其处工作,SMP/E必须维护大量的信息,这包括其组织结构,,内容和它所管理的软件的修正状态。可以想象,所有这些有SMP/E必须维护的信息就好比一个公共图书馆,在一个公共图书馆中,一般看到的是放满书的书架,此外,还有放满了卡片目录的抽屉,图书馆里的每一本书都有一张对应的卡片。这些卡片包含了这些信息:标题,作者,出版日期,书的类型和书在书架上的具体位置等。

    在SMP/E环境中,有两种类型的书架,他们分表代表的是DISTRIBUTION LIBRARY和TARGET LIBRARY。其中DISTRIBUTION LIBRARY是放安装完毕的产品,经过一段时间测试后没有问题的模块,类似备份的东西。而TARGET LIBRARY放的是安装完毕的产品。在图书馆里,读者借助卡片目录来查找到书籍或其他想要寻找的信息,同样,SMP/E采用CSI(CONSOLIDATED SOFTWARE IVENTORY)的形式提供类似的跟踪机制。CSI数据集包含所有SMP/E用来跟踪DISTRIBUTION LIBRARY和TARGET LIBRARY的信息。CSI条目包含元素名字,类型,历史记录,元素被引入到系统中的方法,元素在DISTRIBUTION LIBRARY和TARGET LIBRARY中的具体位置等。CSI并不包括元素本身,而是包含元素的描述信息。

    在CSI中,元素在DISTRIBUTION LIBRARY和TARGET LIBRARY中的条目按照他们的安装状态分组
    代表DISTRIBUTION LIBRARY的条目放到DISTRIBUTION ZONE中,代表TARGET LIBRARY中的元素的条目在TARGET ZONE中
    除了DISTRIBUTION ZONE和TARGET ZONE,SMP/E CSI还包含一个GLOBAL ZONE,GLOBAL ZONE包含:
    1)SMP/E用于识别和描述每个DISTRIBUTION ZONE和TARGET ZONE的关系
    2)SMP/E处理选项的信息
    3)SMP/E已经开始处理的全部SYSMOD的状态信息
    4)需要特殊处理或存在错误的SYSMOD的异常数据

    在SMP/E中,所说的异常数据通常是指HOLDDATA。HOLDDATA会在产品中提供,标识某个指定的SYSMOD禁止安装。阻挠SYSMOD安装的原因可能是:
    1)PTF有错误,在错误被修正前不应该被安装(ERROR HOLD)
    2)在SYSMOD安装前需要某些确定的系统行为(SYSTEM HOLD)
    3)在SYSMOD安装前,用户想要完成某些行为(USER HOLD)

    SMP/E用3个命令来完成:RECEIVE,APPLY,ACCEPT
    1.RECEIVE命令允许用户将一个在SMP/E之外的SYSMOD加入到SMP/E库中,并开始为其构造CSI条目信息。这样这些条目可以用来查询从进入到处理的信息,目前RECEIVE的数据源更多的是从网上DOWN下来的(比如IBM网站),或者第三方的生产商。

    该处理用于完成以下任务,
    1)在GLOBAL ZONE中建立描述SYSMOD的条目
    2)确保SYSMOD有效,如CSI中与安装产品相关的修正控制语句(MCS)的语法
    3)将SYSMOD安装到库中。如PTF历史存放库
    4)读取HOLDDATA信息,确保错误不被引入。

    在RECEIVE处理过程中,每个SYSMOD的MCS都被复制到一个SMP/E临时存储区,叫做SMPPTS数据集,该SMPPTS数据集包含了该SYSMOD内部元素的替换或更新情况。而与元素相关的文件被打包在一起,并与MCS分开放置在RELFILE文件中,RELFILE文件存储在另一个数据集SMPTLIB的临时存储区中。SMP/E用它接受的SYSMOD信息来更新全局区。

    使用RECEIVE接受所有SYSMOD和HOLDDATA
    SET BDY(GLOBAL).
    RECEIVE
    SET BDY(GLOBAL).
    RECEIVE.

    如只接受需要特殊处理或有错误状态的HOLDDATA
    SET BDY(GLOBAL).
    RECEIVE HOLDDATA.

    指接受SYSMOD
    SET BDY(GLOBAL).
    RECEIVE SYSMOD.

    接受某个特定产品的所有SYSMOD,包括HOLDDATA
    SET BDY(GLOBAL).
    RECEIVE FORFMID(H28W500).

    使用APPLY命令把RECEIVE后的SYSMOD安装到TARGET LIBRARY中。
    APPLY处理会更新如下信息:
    1)GLOBAL ZONE的所有SYSMOD条目都被更新,这样放映出SYSMOD已经应用到TARGET LIBRARY中
    2)TARGET ZONE准确放映了APPLY处理的每条SYSMOD条目,元素条目(如MOD和LMOD)也在TARGET ZONE中被创建
    3)BACKUP条目在SMPSCDS数据集中被创建,这样可以在必要的时候进行SYSMOD恢复。

    使用APPLY安装PTF SYSMOD
    SET BDY(GLOBAL).
    APPLY PTFS.

    安装指定的模块
    SET BDY(GLOBAL).
    SELECT(UZ00001,UZ00002).

    有时,可能需要在目标库中安装APAR,或USERMOD
    SET BDY(ZOSTGT1).
    APPLY APARS
    USERMODS.

    使用ACCEPT命令把SYSMOD从TARGET LIBRARY安装到DISTRIBUTION LIBRARY中。
    需要特别注意的是,如果SYSMOD的ACCEPT处理存在错误,不要ACCEPT它。使用RESTORE过程会选取被ACCEPT处理的SYSMOD还原到TARGET LIBRARY中,APPLY后系统运行一段时间没有问题后,在使用ACCEPT命令生成新的备份。

    安装符合条件的PTF到DISTRIBUTION LIBRARY
    SET DBY(ZOSDLB1).
    ACCEPT PTFS.

    如果想安装指定的PTF SYSMODS
    SET DBY(ZOSDLB1).
    ACCEPT SELECT(UZ00001,UZ00002).

    更新某个产品的所有SYSMOD
    SET DBY(ZOSDLB1).
    ACCEPT PTFS
    FORFMID(H28W500).

    总结:
    TARGET LIBRARY:生产系统
    DISTRIBUCTION LIBRARY:备份系统

    每个系统功能都由一个或者多个可庄子啊模块组成
    可装载模块的包括:源代码,目标模块,可装载模块

    术语:
    ELEMENT:源代码,目标模块,宏和其他类型的数据和代码都是系统中的基本构建块,成为ELEMENT
    SYSMOD:SMP/E可以安装大量不同的系统更新,前提是这些更新打包成一个系统修正程序或者SYSMOD
    SYSMOD由一些元件的组合以及控制信息组成


  • administrators

    -----------------------------------------PTF 安装实例----------------------------------------------

    1.在CSI中查询你要安装的PTF是否存在

    ---------------------- SMP/E PRIMARY OPTION MENU ---------------- SMP/E 35.11  
    ===> 3                                                                         
                                                                        More:     +
                                                                                    
         0  SETTINGS           - Configure settings for the SMP/E dialogs           
         1  ADMINISTRATION     - Administer the SMPCSI contents                     
         2  SYSMOD MANAGEMENT  - Receive SYSMODs and HOLDDATA                       
                                 and install SYSMODs                                
         3  QUERY              - Display SMPCSI information                         
         4  COMMAND GENERATION - Generate SMP/E commands                            
         5  RECEIVE            - Receive SYSMODs, HOLDDATA and                      
                                 support information                                
         6  MIGRATION ASSISTANT- Generate Planning and Migration Reports            
         7  ORDER MANAGEMENT   - Manage ORDER entries in the global zone            
                                                                                    
         D  DESCRIBE           - An overview of the dialogs                         
         T  TUTORIAL           - Details on using the dialogs                       
         W  WHAT IS NEW        - What is New in SMP/E                               
                                                                                    
    Specify the name of the CSI that contains the global zone:                     
        SMPCSI DATA SET   ===> 'ZOS1A.GLOBAL.CSI'                                   
      F1=HELP      F2=SPLIT     F3=END       F4=RETURN    F5=RFIND     F6=RCHANGE   
      F7=UP        F8=DOWN      F9=SWAP     F10=LEFT     F11=RIGHT    F12=RETRIEVE
    .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    
    ---------------------- SMP/E PRIMARY OPTION MENU ---------------- SMP/E 35.11  
                                 QUERY SELECTION MENU                               
                                                                                    
         1  CSI QUERY           - Display SMPCSI entries                            
         2  CROSS-ZONE QUERY    - Display status of an entry in                     
                                  all zones                                         
         3  SOURCEID QUERY      - Display SOURCEIDs for specified zone              
                                                                                    
         D  DESCRIBE            - Overview of using QUERY                           
                                                                                    
         T  TUTORIAL            - Information on using QUERY                        
                                                                                    
    To return to the SMP/E primary option menu, enter  END .                       
                                                                                    
                                                                                    
                                                                                    
                                                                                    
                                                                                    
                                                                                    
                                                                                    
                                                                                    
    ===> 2                                                                         
      F1=HELP      F2=SPLIT     F3=END       F4=RETURN    F5=RFIND     F6=RCHANGE   
      F7=UP        F8=DOWN      F9=SWAP     F10=LEFT     F11=RIGHT    F12=RETRIEVE   
    .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    
                                   CROSS-ZONE QUERY                                 
                                                                                    
    Specify the entry type and name to be queried:                                 
                                                                                    
        ENTRY TYPE  ===> SYSMOD   Entry type to be queried.                         
                                  To display a selection list of all valid entry    
                                  types, leave ENTRY TYPE and ENTRY NAME            
                                  blank                                             
                                                                                    
        ENTRY NAME  ===> UK51888  Entry name to be queried.                         
                                                                                    
                                                                                    
    To return to the Query selection menu enter the END command                    
                                                                                    
                                                                                    
                                                                                    
                                                                                    
                                                                                    
                                                                                    
                                                                                    
    ===>                                                                           
      F1=HELP      F2=SPLIT     F3=END       F4=RETURN    F5=RFIND     F6=RCHANGE   
      F7=UP        F8=DOWN      F9=SWAP     F10=LEFT     F11=RIGHT    F12=RETRIEVE  
    .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    
                   CSI CROSS-ZONE QUERY - ENTRY SELECTION           Row 1 to 3 of 3
                                                                                    
      Entry Type:  SYSMOD                                                           
      Entry Name:  UK51888                                                          
                                                                                    
      To return to the previous panel, enter END .                                  
                                                                                    
      To select an entry from a zone, enter S next to the zone.                     
                                                                                    
           * - Entry not found in zone.                                             
          ** - Zone could not be allocated or is not initialized.                   
                                                                                    
                 -------------------- Status -----------------------------------    
         ZONE     TYPE     FMID     STATUS   DATE     TIME     REWORK               
         -------- -------- -------- -------- -------- -------- -------- --------    
         DZOS1A0  *                                                                 
         GLOBAL   PTF               REC      10.153   16:07:10                      
         TZOS1A0  PTF      HIP61A0  APP      10.153   16:44:29                      
    ******************************* Bottom of data ********************************
                                                                                    
    ===>                                                          SCROLL ===> PAGE
      F1=HELP      F2=SPLIT     F3=END       F4=RETURN    F5=RFIND     F6=RCHANGE   
      F7=UP        F8=DOWN      F9=SWAP     F10=LEFT     F11=RIGHT    F12=RETRIEVE  
    .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    

    因为我的系统是刚刚打过PTF的,所以
    可以看到UK48822已经在系统里面APPLY,但是还没有ACCEPT,这时我们可以使用RESTORE命令来还原。

    //A0001RES  JOB IBM,CLASS=A,MSGCLASS=H,MSGLEVEL=(1,1),   
    //           NOTIFY=&SYSUID,USER=IBMUSER                           
    //STEP1  EXEC PGM=GIMSMP,REGION=0M                                
    //SMPCSI   DD DISP=SHR,DSN=ZOS1A.GLOBAL.CSI                       
    //SMPLOG   DD SYSOUT=*                                            
    //SMPWRK6  DD UNIT=SYSDA,SPACE=(CYL,(20,10,1000))                 
    //SYSUT1   DD UNIT=SYSDA,SPACE=(CYL,(20,10))                      
    //SYSUT2  DD  UNIT=SYSDA,SPACE=(CYL,(10,5))                       
    //SYSUT3  DD  UNIT=SYSDA,SPACE=(CYL,(10,5))                       
    //*MPPTFIN DD UNIT=SYSDA,DISP=SHR,                                
    //*        DSN=TEST.PTF.APLTEST                                
    //SMPRPT   DD SYSOUT=*                                            
    //SMPCNTL  DD *                                                   
    SET BOUNDARY(TZOS1A0).                                           
    RESTORE                                                          
      SELECT( UK51888                                                 
             )                                                        
             GROUP                       <---GROUP是查看是否有相关联的PTF                             
            .
    /*
    

    查看状态

                   CSI CROSS-ZONE QUERY - ENTRY SELECTION           Row 1 to 3 of 3
                                                                                    
      Entry Type:  SYSMOD                                                           
      Entry Name:  UK51888                                                          
                                                                                    
      To return to the previous panel, enter END .                                  
                                                                                    
      To select an entry from a zone, enter S next to the zone.                     
                                                                                    
           * - Entry not found in zone.                                             
          ** - Zone could not be allocated or is not initialized.                   
                                                                                    
                 -------------------- Status -----------------------------------    
         ZONE     TYPE     FMID     STATUS   DATE     TIME     REWORK               
         -------- -------- -------- -------- -------- -------- -------- --------    
         DZOS1A0  *                                                                 
         GLOBAL   PTF               REC      10.153   16:07:11                      
         TZOS1A0  *                                                                 
    ******************************* Bottom of data ********************************
                                                                                    
                                                                                    
    ===>                                                          SCROLL ===> PAGE
      F1=HELP      F2=SPLIT     F3=END       F4=RETURN    F5=RFIND     F6=RCHANGE   
      F7=UP        F8=DOWN      F9=SWAP     F10=LEFT     F11=RIGHT    F12=RETRIEVE
    

    使用REJECT把RECEIVE的状态干掉

    //A0002REJ JOB CLASS=A,MSGCLASS=H,MSGLEVEL=(1,1),  
    //           NOTIFY=&SYSUID,USER=IBMUSER                           
    //STEP1  EXEC PGM=GIMSMP,REGION=0M                                
    //SMPCSI   DD DISP=SHR,DSN=ZOS1A.GLOBAL.CSI                       
    //SMPLOG   DD SYSOUT=*                                            
    //SMPRPT   DD SYSOUT=*                                            
    //SMPWRK1  DD UNIT=SYSDA,SPACE=(CYL,(30,20,200)),DISP=(,DELETE),  
    //           DCB=BLKSIZE=6160                                     
    //SMPWRK2  DD UNIT=SYSDA,SPACE=(CYL,(30,20,110)),DISP=(,DELETE),  
    //           DCB=BLKSIZE=6160                                     
    //SMPWRK3  DD UNIT=SYSDA,SPACE=(CYL,(50,30,150)),DISP=(,DELETE),  
    //           DCB=BLKSIZE=3120                                     
    //SYSUT1   DD UNIT=SYSDA,SPACE=(CYL,(10,5)),DISP=(,DELETE)        
    //SYSUT2   DD UNIT=SYSDA,SPACE=(CYL,(10,5)),DISP=(,DELETE)        
    //SYSUT3   DD UNIT=SYSDA,SPACE=(CYL,(10,5)),DISP=(,DELETE)        
    //SMPCNTL  DD *                                                  
       SET BDY(GLOBAL).         
       REJECT                   
         SELECT( UK51888 )      
       .                        
    /* 
    

    查看状态

                   CSI CROSS-ZONE QUERY - ENTRY SELECTION           Row 1 to 3 of 3
                                                                                    
      Entry Type:  SYSMOD                                                           
      Entry Name:  UK51888                                                          
                                                                                    
      To return to the previous panel, enter END .                                  
                                                                                    
      To select an entry from a zone, enter S next to the zone.                     
                                                                                    
           * - Entry not found in zone.                                             
          ** - Zone could not be allocated or is not initialized.                   
                                                                                    
                 -------------------- Status -----------------------------------    
         ZONE     TYPE     FMID     STATUS   DATE     TIME     REWORK               
         -------- -------- -------- -------- -------- -------- -------- --------    
         DZOS1A0  *                                                                 
         GLOBAL   *                                                                 
         TZOS1A0  *                                                                 
    ******************************* Bottom of data ********************************
                                                                                    
    ===>                                                          SCROLL ===> PAGE
      F1=HELP      F2=SPLIT     F3=END       F4=RETURN    F5=RFIND     F6=RCHANGE   
      F7=UP        F8=DOWN      F9=SWAP     F10=LEFT     F11=RIGHT    F12=RETRIEVE  
    .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    

    时相当于重新为系统打UK51888这个补丁:

    1. 先下载UK51888,网站http://w3-950.ibm.com/wwqa/wwqa.nsf/wwqalogon?OpenForm&corp

    2. 确认UK51888在系统里面是否存在,上面已经确认过了。

    3. 把你download下来的bin文件床传到系统中。

    4. unpack,使用JCL,不知道什么原因,这次下载下来的BIN需要unpack两次。

      //A0003UPK JOB MSGCLASS=H,MSGLEVEL=(1,1),NOTIFY=&SYSUID  
      //STEP1   EXEC PGM=TRSMAIN,PARM='UNPACK'                             
      //SYSPRINT DD  SYSOUT=A                                              
      //INFILE   DD  DSN=TEST.UK43912.SMP.BIN,DISP=SHR,UNIT=SYSDA       
      //OUTFILE  DD  DISP=(NEW,CATLG),DSN=TEST.UK43912.SMP.BIN.UPK,     
      //             VOL=SER=COMUSR,UNIT=3390,SPACE=(CYL,(1,1))            
      //STEP2   EXEC PGM=TRSMAIN,PARM='UNPACK'                             
      //SYSPRINT DD  SYSOUT=A                                              
      //INFILE   DD  DSN=TEST.UK43912.SMP.BIN.UPK,DISP=SHR,UNIT=SYSDA   
      //OUTFILE  DD  DISP=(NEW,CATLG),DSN=TEST.UK43912.SMP,             
      //             VOL=SER=COMUSR,UNIT=3390,SPACE=(CYL,(1,1))
      

      UNPACK后的文件

      ...
      ++ PTF (UK51888)        /*                                          
      //UK51888  JOB 5655-51888,HAL00,MSGLEVEL=(1,1),CLASS=A     */  .    
      ++ VER (Z038)                                                       
         FMID(HIP61A0)                                                    
         PRE  (UK50683,UK50072,UK47990,UK44784)                           
         SUP  (UK50080,UK38262,AK94784,AK87221,AK68879)          .        
      ++ IF FMID(HIP61B0) THEN REQ (UK51889)                  
      ...
      

    1. 使用RECEIVE命令会GLOBAL ZONE里显示出REC这个状态

      //A0004RCV JOB CLASS=A,MSGCLASS=H,               
      //            MSGLEVEL=(1,1),NOTIFY=&SYSUID,USER=IBMUSER    
      //STEP1  EXEC PGM=GIMSMP,REGION=0M                         
      //SMPCSI   DD DISP=SHR,DSN=ZOS1A.GLOBAL.CSI                
      //SMPLOG   DD SYSOUT=*                                     
      //SMPWRK6  DD UNIT=SYSDA,SPACE=(CYL,(20,10,1000))          
      //SYSUT1   DD UNIT=SYSDA,SPACE=(CYL,(20,10))               
      //SYSUT2  DD  UNIT=SYSDA,SPACE=(CYL,(10,5))                
      //SYSUT3  DD  UNIT=SYSDA,SPACE=(CYL,(10,5))                
      //SYSUT4  DD  UNIT=SYSDA,SPACE=(CYL,(10,5))                
      //SMPPTFIN DD UNIT=SYSDA,VOL=SER=COMUSR,DISP=SHR,          
      //         DSN=TEST.UK43912.SMP                         
      //SMPRPT   DD SYSOUT=*                                     
      //SMPCNTL  DD *                                            
      SET BDY(GLOBAL).                                          
      RECEIVE                                                   
      SELECT( UK51888 )    
              SYSMODS       
              LIST          
              .      
      
                     CSI CROSS-ZONE QUERY - ENTRY SELECTION           Row 1 to 3 of 3
                                                                                      
        Entry Type:  SYSMOD                                                           
        Entry Name:  UK51888                                                          
                                                                                      
        To return to the previous panel, enter END .                                  
                                                                                      
        To select an entry from a zone, enter S next to the zone.                     
                                                                                      
             * - Entry not found in zone.                                             
            ** - Zone could not be allocated or is not initialized.                   
                                                                                      
                   -------------------- Status -----------------------------------    
           ZONE     TYPE     FMID     STATUS   DATE     TIME     REWORK               
           -------- -------- -------- -------- -------- -------- -------- --------    
           DZOS1A0  *                                                                 
           GLOBAL   PTF               REC      10.174   16:45:45                      
           TZOS1A0  *                                                                 
      ******************************* Bottom of data ********************************
                                                                                      
      ===>                                                          SCROLL ===> PAGE
        F1=HELP      F2=SPLIT     F3=END       F4=RETURN    F5=RFIND     F6=RCHANGE   
        F7=UP        F8=DOWN      F9=SWAP     F10=LEFT     F11=RIGHT    F12=RETRIEVE  
      .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
      
    2. 用APPLY命令会TARGET ZONE里显示出APP这个状态

      //A0005APP  JOB USER=IBMUSER,CLASS=A,MSGCLASS=H,                      
      //            MSGLEVEL=(1,1),NOTIFY=&SYSUID                          
      //STEP1  EXEC PGM=GIMSMP,REGION=0M                                   
      //SMPCSI   DD DISP=SHR,DSN=ZOS1A.GLOBAL.CSI                          
      //SMPLOG   DD SYSOUT=*                                               
      //SMPRPT   DD SYSOUT=*                                               
      //SMPWRK1  DD UNIT=SYSDA,SPACE=(CYL,(30,20,200)),DISP=(,DELETE),     
      //           DCB=BLKSIZE=6160                                        
      //SMPWRK2  DD UNIT=SYSDA,SPACE=(CYL,(30,20,110)),DISP=(,DELETE),     
      //           DCB=BLKSIZE=6160                                        
      //SMPWRK3  DD UNIT=SYSDA,SPACE=(CYL,(50,30,150)),DISP=(,DELETE),     
      //           DCB=BLKSIZE=3120                                        
      //SMPWRK4  DD UNIT=SYSDA,SPACE=(CYL,(30,20,110)),DISP=(,DELETE),     
      //           DCB=BLKSIZE=3120                                        
      //SMPWRK6  DD UNIT=SYSDA,SPACE=(CYL,(30,20,10)),DISP=(,DELETE),      
      //           DCB=BLKSIZE=6160                                        
      //SYSUT1   DD UNIT=SYSDA,SPACE=(CYL,(10,5)),DISP=(,DELETE)            
      //SYSUT2   DD UNIT=SYSDA,SPACE=(CYL,(10,5)),DISP=(,DELETE)            
      //SYSUT3   DD UNIT=SYSDA,SPACE=(CYL,(10,5)),DISP=(,DELETE)            
      //SYSUT4   DD UNIT=SYSDA,SPACE=(TRK,(10,5)),DISP=(,DELETE)            
      //SMPCNTL  DD *                                                       
      SET BDY(TZOS1A0).                                                    
      APPLY                                                                
      SELECT( UK51888 )                                                    
      BYPASS(HOLDSYSTEM(DOC,ENH,DYNACT,IPL,ACTION))                        
      CHECK                                             <--check没问题后,把CHECK去掉在SUB JCL                  
      .                                                                    
      /*                                                                    
      //
      
                     CSI CROSS-ZONE QUERY - ENTRY SELECTION           Row 1 to 3 of 3
                                                                                      
        Entry Type:  SYSMOD                                                           
        Entry Name:  UK51888                                                          
                                                                                      
        To return to the previous panel, enter END .                                  
                                                                                      
        To select an entry from a zone, enter S next to the zone.                     
                                                                                      
             * - Entry not found in zone.                                             
            ** - Zone could not be allocated or is not initialized.                   
                                                                                      
                   -------------------- Status -----------------------------------    
           ZONE     TYPE     FMID     STATUS   DATE     TIME     REWORK               
           -------- -------- -------- -------- -------- -------- -------- --------    
           DZOS1A0  *                                                                 
           GLOBAL   PTF               REC      10.174   16:45:45                      
           TZOS1A0  PTF      HIP61A0  APP      10.174   16:53:04                      
      ******************************* Bottom of data ********************************
                                                                                      
      ===>                                                          SCROLL ===> PAGE
        F1=HELP      F2=SPLIT     F3=END       F4=RETURN    F5=RFIND     F6=RCHANGE   
        F7=UP        F8=DOWN      F9=SWAP     F10=LEFT     F11=RIGHT    F12=RETRIEVE  
      .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
      
    3. 时这个PTF已经完成了,重新系统看看测试下是否有异常,在系统运行一段时候后,可以使用ACCEPT做一个新的备份点。
      使用ACCEPT命令会DISTRIBUTION ZONE里显示出ACC这个状态

      //A0006ACC JOB USER=IBMUSER,CLASS=A,MSGCLASS=H,            
      //            MSGLEVEL=(1,1),NOTIFY=&SYSUID                            
      //STEP1  EXEC PGM=GIMSMP,REGION=0M                                      
      //SMPCSI   DD DISP=SHR,DSN=ZOS1A.GLOBAL.CSI                             
      //SMPLOG   DD SYSOUT=*                                                  
      //SMPRPT   DD SYSOUT=*                                                  
      //SMPWRK1  DD UNIT=SYSDA,SPACE=(CYL,(30,20,200)),DISP=(,DELETE),        
      //           DCB=BLKSIZE=6160                                           
      //SMPWRK2  DD UNIT=SYSDA,SPACE=(CYL,(30,20,110)),DISP=(,DELETE),        
      //           DCB=BLKSIZE=6160                                           
      //SMPWRK3  DD UNIT=SYSDA,SPACE=(CYL,(50,30,150)),DISP=(,DELETE),        
      //           DCB=BLKSIZE=3120                                           
      //SMPWRK4  DD UNIT=SYSDA,SPACE=(CYL,(30,20,110)),DISP=(,DELETE),        
      //           DCB=BLKSIZE=3120                                           
      //SMPWRK6  DD UNIT=SYSDA,SPACE=(CYL,(30,20,10)),DISP=(,DELETE),         
      //           DCB=BLKSIZE=6160
      //SYSUT1   DD UNIT=SYSDA,SPACE=(CYL,(10,5)),DISP=(,DELETE)             
      //SYSUT2   DD UNIT=SYSDA,SPACE=(CYL,(10,5)),DISP=(,DELETE)             
      //SYSUT3   DD UNIT=SYSDA,SPACE=(CYL,(10,5)),DISP=(,DELETE)             
      //SYSUT4   DD UNIT=SYSDA,SPACE=(TRK,(10,5)),DISP=(,DELETE)             
      //SMPCNTL  DD *                                                        
      SET BDY(DZOS1A0).                                                     
      ACCEPT                                                                
        SELECT( UK51888 )                                                    
        BYPASS(HOLDSYSTEM(DOC,ENH,DYNACT,IPL,ACTION))                        
        CHECK                                              <--check没问题后,把CHECK去掉在SUB JCL                    
        .                                                                    
      /*   
      
                     CSI CROSS-ZONE QUERY - ENTRY SELECTION           Row 1 to 3 of 3 
                                                                                      
        Entry Type:  SYSMOD                                                           
        Entry Name:  UK51888                                                          
                                                                                      
        To return to the previous panel, enter END .                                  
                                                                                      
        To select an entry from a zone, enter S next to the zone.                     
                                                                                      
             * - Entry not found in zone.                                             
            ** - Zone could not be allocated or is not initialized.                   
                                                                                      
                   -------------------- Status -----------------------------------    
           ZONE     TYPE     FMID     STATUS   DATE     TIME     REWORK               
           -------- -------- -------- -------- -------- -------- -------- --------    
           DZOS1A0  PTF      HIP61A0  ACC      10.174   17:00:16                      
           GLOBAL   *                                                                 
           TZOS1A0  PTF      HIP61A0  APP      10.174   16:53:04                      
      ******************************* Bottom of data ********************************
                                                                                      
      ===>                                                          SCROLL ===> PAGE 
        F1=HELP      F2=SPLIT     F3=END       F4=RETURN    F5=RFIND     F6=RCHANGE   
        F7=UP        F8=DOWN      F9=SWAP     F10=LEFT     F11=RIGHT    F12=RETRIEVE  
      .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
      

    4. 可以使用LIST列出PTF的状态

      //A0007LST JOB CLASS=A,MSGCLASS=H,MSGLEVEL=(1,1),    
      //           NOTIFY=&SYSUID,USER=IBMUSER                           
      //STEP1  EXEC PGM=GIMSMP,REGION=0M                                
      //SMPCSI   DD DISP=SHR,DSN=ZOS1A.GLOBAL.CSI                       
      //SMPRPT   DD SYSOUT=*                                            
      //SMPLOG   DD SYSOUT=*                                            
      //SMPCNTL  DD *                                                   
        SET BDY(TZOS1A0).                                               
        LIST                                                            
        SYSMOD(UK51888)                                                 
        .                                                               
      /*   
      

      可以在LOG中看到

      UK51888   TYPE            = PTF                                                 
                STATUS          = REC  APP                                            
                FMID            = HIP61A0                                             
                DATE/TIME REC   = 10.174  16:45:45                                    
                          INS   = 10.174  16:53:04                                    
                SOURCEID        = HIPER                                               
                                  PUT0912                                             
                                  RSU1001                                             
                                  SMCCOR
      


Log in to reply
 

Looks like your connection to MainFrame was lost, please wait while we try to reconnect.