설치 및 제거

본 장에서는 OpenFrame/Batch의 설치 및 설치 확인, 제거 및 제거 확인하는 방법에 대해 기술한다.

1. 설치

본 절에서는 Batch를 인스톨러를 이용해서 자동 설치하는 방법과 스크립트를 이용한 수동 설치하는 방법에 대해서 설명한다.

1.1. 인스톨러를 이용한 자동 설치

설치용 속성 파일 예제에서 설명한 설치용 속성 파일에서 설명한 설치용 속성 파일을 작성했다면, 인스톨러를 이용하여 간단하게 Batch를 설치할 수 있다.

다음의 설치방법은 모든 플랫폼에서 동일하게 적용된다.

  1. Batch를 설치할 시스템의 원하는 위치에 인스톨러 바이너리 파일과 설치 속성 파일을 복사한다.

  2. 인스톨러 바이너리에 실행권한이 주어지지 않은 경우에는 다음과 같이 chmod 명령어를 사용하여 실행권한을 부여한다.

    다음은 Linux x86 64Bit용 인스톨러 바이너리에 실행권한을 부여하는 예이다.

    $ chmod a+x OpenFrame_Batch7_1_MVS_Linux_x86_64.bin
  3. 콘솔 프롬프트에서 인스톨러를 실행한다.

    <installer_file_name> -f batch.properties

    다음은 설치용 속성 파일을 batch.properties로 작성해서 실행하는 방법이다. 다음 2가지 방법 중 하나를 선택하고 <Enter> 키를 누른다.

    • 방법 1

      $ ./OpenFrame_Batch7_1_MVS_Linux_x86_64.bin –f batch.properties
    • 방법 2

      $ sh OpenFrame_Batch7_1_MVS_Linux_x86_64.bin -f batch.properties
  4. 다음과 같은 화면을 출력하면서 자동으로 Batch 설치를 진행한다.

    Preparing to install...
    Extracting the JRE from the installer archive...
    Unpacking the JRE...
    Extracting the installation resources from the installer archive...
    Configuring the installer for this system's environment...
    
    Launching installer...
    
    Preparing SILENT Mode Installation...
    
    ===============================================================================
    OpenFrame_Batch7.1_MVS         (created with InstallAnywhere by Macrovision)
    -------------------------------------------------------------------------------
    
    
    
    
    ===============================================================================
    Installing...
    -------------
    
     [==================|==================|==================|==================]
     [------------------|------------------|------------------|------------------]
    
    Installation Complete.

OpenFrame Base와 달리 Batch는 설치 과정에서 .profile 파일을 수정하지 않는다. 따라서 .profile을 실행하여 환경 변수를 적용하는 작업은 필요하지 않다.

1.2. 스크립트를 이용한 수동 설치

설치용 속성 파일로 작성한 환경설정 파일에서 테이블 및 데이터 셋 자동생성 옵션을 모두 NO로 선택했다면, Batch 설치 완료 후 수동으로 스크립트를 실행해야 한다.

설치 스크립트 파일들은 ${OPENFRAME_HOME}/scripts 디렉터리에 위치하며, 반드시 다음 순서에 맞춰 스크립트를 실행해야 한다.

다음은 스크립트 실행순서이다.

  1. create_tjes.sh

    Batch에서 사용되는 시스템 테이블을 생성한다.

  2. create_jcllib.sh

    Batch에서 사용되는 SYS1.JCLLIB 데이터 셋을 생성한다.

  3. create_proclib.sh

    Batch에서 사용되는 SYS1.PROCLIB 데이터 셋을 생성한다.

  4. create_userlib.sh

    Batch에서 사용되는 SYS1.USERLIB 데이터 셋을 생성한다.

  5. create_templib.sh

    Batch에서 사용되는 SYS1.TEMPLIB 데이터 셋을 생성한다.

테이블 및 데이터 셋 자동생성 옵션을 모두 YES로 선택했다면 인스톨러에 의해 자동으로 위의 순서대로 스크립트 파일들을 실행한다.

2. 설치 확인

Batch를 설치한 후에는 다음을 통해 제품이 정상적으로 설치되었는지 확인할 것을 권장한다.

2.1. 디렉터리 확인

Batch 제품은 다음의 디렉터리로 구성된다. 기존의 OpenFrame 디렉터리 구조는 변경되지 않는다.

${OPENFRAME_HOME}
   +---- UninstallerData
   +---- bin
   +---- config
   +---- core
   +---- cpm
   +---- data
   +---- include
   +---- lib
   +---- license
   +---- log
         +---- cmd
         +---- data
         +---- sys
   +---- ofdb_scripts
   +---- outputq
   +---- profile
   +---- sample
   +---- scripts
   +---- schema
   +---- shared
         +---- SMF
         +---- TJES
   +---- spbackup
   +---- spool
   +---- spunpack
   +---- temp
   +---- tsam
         +---- temp
         +---- lib
         +---- copybook
   +---- util
   +---- volume_DEFVOL
   +---- webde
         +---- bin
         +---- copybook
UnistallerData

시스템에 설치되어 있는 OpenFrame을 삭제하기 위한 파일들이 위치한다.

bin

OpenFrame에서 사용하는 실행 파일들이 위치한다.

config

OpenFrame의 환경설정 파일이 위치한다. OpenFrame 환경설정에 대한 자세한 설명은 OpenFrame Batch "환경설정 안내서"를 참고한다.

core

OpenFrame에서 사용하는 Tmax 관련 파일들이 위치한다. OpenFrame을 구성하는 Tmax 서버 프로그램, 서비스 프로그램 및 Tmax 설정 파일을 포함한다.

cpm

문자코드 변환 테이블 파일들이 위치하는 디렉터리이다.

data

OpenFrame에서 내부적으로 사용하는 데이터 파일과 에러 메시지 정보 파일이 위치한다.

include

업무 애플리케이션을 컴파일할 때 사용되는 API 헤더 파일들이 위치한다.

lib

OpenFrame에서 사용하는 라이브러리 파일들이 위치한다.

license

OpenFrame에서 사용하는 라이선스 파일들이 위치한다.

다음은 OpenFrame의 라이선스 파일의 종류이다.

파일명 설명

licbase.dat

Base 라이선스 파일

lictjes.dat

Batch(TJES) 라이선스 파일

lictacf.dat

TACF 라이선스 파일

lichidb.dat

HiDB 라이선스 파일

licosc.dat (MVS)

OSC 라이선스 파일

licosi.dat (MVS)

OSI 라이선스 파일

licaim.dat (AIM)

AIM 라이선스 파일

log

OpenFrame에서 생성하는 로그 파일들이 위치한다. log의 하위 디렉터리로 로그 파일의 종류에 따라 cmd, sys, data가 있다. 자세한 내용은 OpenFrame Base "Base 안내서"의 부록 "로그 관리"를 참고한다.

디렉터리명 설명

cmd

OpenFrame의 조작 로그가 위치한다.

sys

OpenFrame의 시스템 로그가 위치한다.

data

OpenFrame의 데이터 로그가 위치한다.

ofdb_scripts

TSAM / NDB / HiDB 사용에 필요한 템플릿과 스크립트가 위치한다.

outputq

실제 프린트되기 위한 출력용 데이터가 저장되는 디렉터리이다. 멀티노드로 구성하는 경우에는 shared 디렉터리의 하위 디렉터리로 구성하는 것을 권장한다.

profile

OpenFrame의 사용자별 프로파일이 위치한다.

sample

OpenFrame 제품의 예제 파일들이 위치한다.

schema

cobgensch, pligensch 툴로 생성한 데이터셋 스키마 파일이 저장되는 디렉터리이다.

scripts

OpenFrame 제품의 초기 환경설정용 스크립트 파일들이 위치한다.

shared

멀티노드 환경에서 노드 간에 공유할 정보를 저장하는 디렉터리이다. 일반적으로 모든 노드에서 접근이 가능해야 하므로 NFS 등과 같은 공유 디스크로 구성한다.

spbakup

Spool 데이터 셋 백업용 디렉터리이다.

spool

Spool 데이터 셋이 저장되는 디렉터리이다. 멀티노드로 구성하는 경우에는 shared 디렉터리의 하위 디렉터리로 구성하는 것을 권장한다.

spunpack

백업된 Spool 데이터를 restore하는 디렉터리이다.

temp

OpenFrame에서 임시작업 파일이 위치한다.

util

Batch 시스템에서 사용하는 유틸리티가 위치한다.

volume_DEFVOL

OpenFrame의 여러 제품에서 기본 볼륨으로 사용하는 디렉터리이다.

webde

OpenFrame에서 사용하는 WEBDE 관련 정보를 관리하는 디렉터리이다. WEBDE 관련된 자세한 내용은 OpenFrame Batch "환경설정 안내서"의 "WEBDE"를 참고한다.

디렉터리 이름은 사이트마다 상이할 수 있다. 디렉터리 이름을 변경하려면 환경설정의 ofsys와 tjes subject에서도 해당 경로의 디렉터리 이름을 변경해야 한다.

2.1.1. 기동 확인

다음은 기동을 확인하는 순서이다.

  1. 설치용 속성 파일에서 스크립트 자동생성 옵션을 모두 'YES’로 선택했다면 ${OPENFRAME_HOME}/UninstallerData/log/install_batch.log 파일을 텍스트 데이터로 직접 열어 오류 로그가 없는지 확인한다.

    link_lib_batch.sh START
    batchinit START
    batchinit version 7.1.0(1) obuild@tplinux32:ofsrc7/batch(#1) 2007-11-09 16:45:01
    Initialize OpenFrame Batch Tables
    
    Creating OFM_BATCH_JESST...
     > "OFM_BATCH_JESST" created...
    Creating OFM_BATCH_NODEST...
     > "OFM_BATCH_NODEST" created...
    Creating OFM_BATCH_NODEST_PK...
     > "OFM_BATCH_NODEST_PK" created...
    Creating OFM_BATCH_JCLSST...
     > "OFM_BATCH_JCLSST" created...
    Creating OFM_BATCH_JCLSST_PK...
     > "OFM_BATCH_JCLSST_PK" created...
    Creating OFM_BATCH_JOBGST...
     > "OFM_BATCH_JOBGST" created...
    Creating OFM_BATCH_JOBGST_PK...
     > "OFM_BATCH_JOBGST_PK" created...
    Creating OFM_BATCH_JOBQ...
     > "OFM_BATCH_JOBQ" created...
    Creating OFM_BATCH_JOBQ_PK...
     > "OFM_BATCH_JOBQ_PK" created...
    Creating OFM_BATCH_JOBQ_IDX1...
     > "OFM_BATCH_JOBQ_IDX1" created...
    Creating OFM_BATCH_JOBQ_IDX2...
     > "OFM_BATCH_JOBQ_IDX2" created...
    Creating OFM_BATCH_JOBQ_IDX3...
     > "OFM_BATCH_JOBQ_IDX3" created...
    Creating OFM_BATCH_OUTPUTQ...
     > "OFM_BATCH_OUTPUTQ" created...
    Creating OFM_BATCH_OUTPUTQ_PK...
     > "OFM_BATCH_OUTPUTQ_PK" created...
    Creating OFM_BATCH_OUTPUTQ_IDX1...
     > "OFM_BATCH_OUTPUTQ_IDX1" created...
    Creating OFM_BATCH_OUTPUTQ_IDX2...
     > "OFM_BATCH_OUTPUTQ_IDX2" created...
    Creating OFM_BATCH_WAITINFO...
     > "OFM_BATCH_WAITINFO" created...
    Creating OFM_BATCH_WAITINFO_PK...
     > "OFM_BATCH_WAITINFO_PK" created...
    Creating OFM_BATCH_STEPINFO...
     > "OFM_BATCH_STEPINFO" created...
    Creating OFM_BATCH_STEPINFO_PK...
     > "OFM_BATCH_STEPINFO_PK" created...
    Creating OFM_BATCH_IOREPORT...
     > "OFM_BATCH_IOREPORT" created...
    Creating OFM_BATCH_IOREPORT_PK...
     > "OFM_BATCH_IOREPORT_PK" created...
    Creating OFM_BATCH_RESUSAGE...
     > "OFM_BATCH_RESUSAGE" created...
    Creating OFM_BATCH_RESUSAGE_PK...
     > "OFM_BATCH_RESUSAGE_PK" created...
    Creating OFM_BATCH_SPOOLID...
     > "OFM_BATCH_SPOOLID" created...
    Creating OFM_BATCH_SPOOLID_PK...
     > "OFM_BATCH_SPOOLID_PK" created...
    Creating OFM_BATCH_JESQ...
     > "OFM_BATCH_JESQ" created...
    Creating OFM_BATCH_JESQ_PK...
     > "OFM_BATCH_JESQ_PK" created...
    Creating OFM_BATCH_JSS3INFO...
     > "OFM_BATCH_JSS3INFO" created...
    Creating OFM_BATCH_JSS3INFO_PK...
     > "OFM_BATCH_JSS3INFO_PK" created...
    Creating OFM_BATCH_STEPRPT...
     > "OFM_BATCH_STEPRPT" created...
    Creating OFM_BATCH_STEPRPT_PK...
     > "OFM_BATCH_STEPRPT_PK" created...
    Creating OFM_BATCH_DDLIST...
     > "OFM_BATCH_DDLIST" created...
    Creating OFM_BATCH_DDLIST_PK...
     > "OFM_BATCH_DDLIST_PK" created...
    Creating OFM_BATCH_RUNNER...
     > "OFM_BATCH_RUNNER" created...
    Creating OFM_BATCH_RUNNER_PK...
     > "OFM_BATCH_RUNNER_PK" created...
    
    create_tjescf.sh START
    COMPLETED SUCCESSFULLY!
    COMPLETED SUCCESSFULLY.
    CFL is done successfully for node(NODE1)
    SVC tables are successfully generated
    GST is successfully done
    
    TMBOOT for node(NODE1) is starting:
            TMBOOT: TMM is starting: Tue Mar 16 09:07:07 2021
            TMBOOT: CLL is starting: Tue Mar 16 09:07:07 2021
            TMBOOT: CLH is starting: Tue Mar 16 09:07:07 2021
            TMBOOT: TLM(tlm) is starting: Tue Mar 16 09:07:07 2021
    
    TMBOOT for node(NODE1) is starting:
            TMBOOT: SVR(TPFMAGENT) is starting: Tue Mar 16 09:07:07 2021
    
    TMBOOT for node(NODE1) is starting:
            TMBOOT: SVR(ofrsasvr) is starting: Tue Mar 16 09:07:10 2021
    
    TMBOOT for node(NODE1) is starting:
            TMBOOT: SVR(ofrlhsvr) is starting: Tue Mar 16 09:07:10 2021
    
    TMBOOT for node(NODE1) is starting:
            TMBOOT: SVR(ofruisvr) is starting: Tue Mar 16 09:07:10 2021
    create_jcllib.sh START
    pdsgen version 7.1.0(0) obuild@tplinux32:ofsrc7/base(#1) 2007-11-09 16:45:00
    PDS Dataset Generation Program
    
    pdsgen: *** PDS SYS1.JCLLIB is created.
    
    create_proclib.sh START
    pdsgen version 7.1.0(0) obuild@tplinux32:ofsrc7/base(#1) 2007-11-09 16:45:00
    PDS Dataset Generation Program
    
    pdsgen: *** PDS SYS1.PROCLIB is created.
    
    create_userlib.sh START
    pdsgen version 7.1.0(0) obuild@tplinux32:ofsrc7/base(#1) 2007-11-09 16:45:00
    PDS Dataset Generation Program
    
    pdsgen: *** PDS SYS1.USERLIB is created.
    
    create_templib.sh START
    pdsgen version 7.1.0(0) obuild@tplinux32:ofsrc7/base(#1) 2007-11-09 16:45:00
    PDS Dataset Generation Program
    
    pdsgen: *** PDS SYS1.TEMPLIB is created.
    
    batch_link.sh START
    batch_init.sh START
    volmgr version 7.1.0(8) obuild@tplinux32:ofsrc7/base(#1) 2007-11-09 16:45:00
    *** Volume Manager ***
    COMPLETED SUCCESSFULLY!
    volmgr version 7.1.0(8) obuild@tplinux32:ofsrc7/base(#1) 2007-11-09 16:45:00
    *** Volume Manager ***
    COMPLETED SUCCESSFULLY!
    Do you want to execute tjesinit? [Y/N] : tjesinit is finished
    pdsgen version 7.1.0(0) obuild@tplinux32:ofsrc7/base(#1) 2007-11-09 16:45:00
    PDS Dataset Generation Program
    
    pdsgen: *** PDS SYS1.TSOMAP is created.
    
    pdsgen version 7.1.0(0) obuild@tplinux32:ofsrc7/base(#1) 2007-11-09 16:45:00
    PDS Dataset Generation Program
    
    pdsgen: *** PDS SYS1.TSOLIB is created.
    
    tsomapgen 7.1.0(1) obuild@tplinux32:ofsrc7/batch(#1) 2007-11-09 16:45:01
    [INIT] parsing starts!!
    [INIT] parsing ended!!
    Compiled map version is [3].
    [/home/oframe3/OpenFrame/volume_DEFVOL/SYS1.TSOMAP/INIT.map] create ok.
    tsomapgen 7.1.0(1) obuild@tplinux32:ofsrc7/batch(#1) 2007-11-09 16:45:01
    [LOGIN] parsing starts!!
    [LOGIN] parsing ended!!
    Compiled map version is [3].
    [/home/oframe3/OpenFrame/volume_DEFVOL/SYS1.TSOMAP/LOGIN.map] create ok.
    tsomapgen 7.1.0(1) obuild@tplinux32:ofsrc7/batch(#1) 2007-11-09 16:45:01
    [LOGOFF] parsing starts!!
    [LOGOFF] parsing ended!!
    Compiled map version is [3].
    [/home/oframe3/OpenFrame/volume_DEFVOL/SYS1.TSOMAP/LOGOFF.map] create ok.
    tsomapgen 7.1.0(1) obuild@tplinux32:ofsrc7/batch(#1) 2007-11-09 16:45:01
    [NEWPASS] parsing starts!!
    [NEWPASS] parsing ended!!
    Compiled map version is [3].
    [/home/oframe3/OpenFrame/volume_DEFVOL/SYS1.TSOMAP/NEWPASS.map] create ok.
    tsomapgen 7.1.0(1) obuild@tplinux32:ofsrc7/batch(#1) 2007-11-09 16:45:01
    [FEXPMAP] parsing starts!!
    [FEXPMAP] parsing ended!!
    Compiled map version is [3].
    [/home/oframe3/OpenFrame/volume_DEFVOL/SYS1.TSOMAP/FEXPMAP.map] create ok.
    tsomapgen 7.1.0(1) obuild@tplinux32:ofsrc7/batch(#1) 2007-11-09 16:45:01
    [FIMPMAP] parsing starts!!
    [FIMPMAP] parsing ended!!
    Compiled map version is [3].
    [/home/oframe3/OpenFrame/volume_DEFVOL/SYS1.TSOMAP/FIMPMAP.map] create ok.
    Do you really want to down whole Tmax? (y : n):
    TMDOWN for node(NODE1) is starting:
            TMDOWN: SERVER(TPFMAGENT:36) downed: Tue Mar 16 09:07:22 2021
            TMDOWN: SERVER(ofrsasvr:37) downed: Tue Mar 16 09:07:22 2021
            TMDOWN: SERVER(ofrlhsvr:38) downed: Tue Mar 16 09:07:22 2021
            TMDOWN: SERVER(ofruisvr:42) downed: Tue Mar 16 09:07:22 2021
            TMDOWN: CLL downed: Tue Mar 16 09:07:22 2021
            TMDOWN: TLM downed: Tue Mar 16 09:07:22 2021
            TMDOWN: CLH downed: Tue Mar 16 09:07:22 2021
            TMDOWN: TMM downed: Tue Mar 16 09:07:22 2021
            TMDOWN: TMAX is down
  2. tmboot를 실행하여 OpenFrame을 기동한다.

    $ tmboot
  3. 다음과 같이 기동화면이 오류없이 출력되는 것을 확인한다.

    TMBOOT for node(NODE1) is starting:
            TMBOOT: TMM is starting: Mon Mar 15 19:13:52 2021
            TMBOOT: CLL is starting: Mon Mar 15 19:13:52 2021
            TMBOOT: CLH is starting: Mon Mar 15 19:13:52 2021
            TMBOOT: TLM(tlm) is starting: Mon Mar 15 19:13:52 2021
            TMBOOT: SVR(TPFMAGENT) is starting: Mon Mar 15 19:13:52 2021
            TMBOOT: SVR(ofrsasvr) is starting: Mon Mar 15 19:13:52 2021
            TMBOOT: SVR(ofrlhsvr) is starting: Mon Mar 15 19:13:52 2021
            TMBOOT: SVR(ofrdmsvr) is starting: Mon Mar 15 19:13:52 2021
            TMBOOT: SVR(ofrdsedt) is starting: Mon Mar 15 19:13:52 2021
            TMBOOT: SVR(ofrcmsvr) is starting: Mon Mar 15 19:13:52 2021
            TMBOOT: SVR(ofruisvr) is starting: Mon Mar 15 19:13:52 2021
            TMBOOT: SVR(ofruisvr) is starting: Mon Mar 15 19:13:52 2021
            TMBOOT: SVR(ofrsmlog) is starting: Mon Mar 15 19:13:52 2021
            TMBOOT: SVR(obmjmsvr) is starting: Mon Mar 15 19:13:52 2021
            TMBOOT: SVR(obmjschd) is starting: Mon Mar 15 19:13:52 2021
            TMBOOT: SVR(obmjinit) is starting: Mon Mar 15 19:13:52 2021
            TMBOOT: SVR(obmjhist) is starting: Mon Mar 15 19:13:52 2021
            TMBOOT: SVR(obmjspbk) is starting: Mon Mar 15 19:13:52 2021
            TMBOOT: SVR(ofrpmsvr) is starting: Mon Mar 15 19:13:52 2021
            TMBOOT: SVR(obmtsmgr) is starting: Mon Mar 15 19:13:52 2021
            TMBOOT: SVR(obmjtimr) is starting: Mon Mar 15 19:13:52 2021
  4. tmadmin을 실행한 후 si 명령어로 서버 목록을 출력하여 모든 서버 프로세스가 정상적으로 기동되었는지 확인한다.

    아래 예와 같이 모든 서버들이 RDY 상태로 표시되면 Batch가 정상적으로 설치되어 기동되고 있다는 것을 의미한다.

    $ tmadmin
    --- Welcome to Tmax Admin (Type "quit" to leave) ---
    
    $$1 NODE1 (tmadm): si
    ------------------------------------------------------------------------
      clh   svrname    (svri)   status     count   qcount   qpcount  emcount
    ------------------------------------------------------------------------
        0   TPFMAGENT  (   4)      RDY         0        0         0        0
        0   ofrsasvr   (   5)      RDY         0        0         0        0
        0   ofrlhsvr   (   6)      RDY         0        0         0        0
        0   ofrdmsvr   (   7)      RDY         0        0         0        0
        0   ofrdsedt   (   8)      RDY         0        0         0        0
        0   ofrcmsvr   (   9)      RDY         0        0         0        0
        0   ofruisvr   (  10)      RDY         0        0         0        0
        0   ofrsmlog   (  11)      RDY         0        0         0        0
        0   obmjmsvr   (  12)      RDY         0        0         0        0
        0   obmjschd   (  13)      RDY         1        0         0        0
        0   obmjinit   (  14)      RDY         2        0         0        0
        0   obmjhist   (  15)      RDY         0        0         0        0
        0   obmjspbk   (  16)      RDY         0        0         0        0
        0   ofrpmsvr   (  17)      RDY         0        0         0        0
        0   obmtsmgr   (  18)      RDY         0        0         0        0
        0   obmjtimr   (  19)      RDY         0        0         0        0

3. 제거

Batch는 다음과 같이 인스톨러에서 제공하는 제거 유틸리티를 실행하여 제거할 수 있다.

다음은 Batch 제품을 제거하는 과정이다.

  1. 설치된 제품을 제거하기 전에 tmdown 명령을 실행하여 OpenFrame을 종료한다.

    $ tmdown
  2. 다음과 같이 오류없이 종료 메시지가 출력되는지 확인한다.

    Do you really want to down whole Tmax? (y : n): y
    
    TMDOWN for node(NODE1) is starting:
            TMDOWN: SERVER(TPFMAGENT:36) downed: Mon Mar 15 19:15:03 2021
            TMDOWN: SERVER(ofrdsedt:40) downed: Mon Mar 15 19:15:03 2021
            TMDOWN: SERVER(ofrsasvr:37) downed: Mon Mar 15 19:15:03 2021
            TMDOWN: SERVER(ofrcmsvr:41) downed: Mon Mar 15 19:15:03 2021
            TMDOWN: SERVER(obmjhist:56) downed: Mon Mar 15 19:15:03 2021
            TMDOWN: SERVER(ofrdmsvr:39) downed: Mon Mar 15 19:15:03 2021
            TMDOWN: SERVER(obmjtimr:60) downed: Mon Mar 15 19:15:03 2021
            TMDOWN: SERVER(ofrlhsvr:38) downed: Mon Mar 15 19:15:03 2021
            TMDOWN: SERVER(obmjspbk:57) downed: Mon Mar 15 19:15:03 2021
            TMDOWN: SERVER(obmjmsvr:53) downed: Mon Mar 15 19:15:03 2021
            TMDOWN: SERVER(ofruisvr:43) downed: Mon Mar 15 19:15:03 2021
            TMDOWN: SERVER(ofruisvr:42) downed: Mon Mar 15 19:15:03 2021
            TMDOWN: SERVER(obmjschd:54) downed: Mon Mar 15 19:15:03 2021
            TMDOWN: SERVER(ofrpmsvr:58) downed: Mon Mar 15 19:15:03 2021
            TMDOWN: SERVER(obmtsmgr:59) downed: Mon Mar 15 19:15:03 2021
            TMDOWN: SERVER(obmjinit:55) downed: Mon Mar 15 19:15:03 2021
            TMDOWN: SERVER(ofrsmlog:52) downed: Mon Mar 15 19:15:03 2021
            TMDOWN: CLL downed: Mon Mar 15 19:15:03 2021
            TMDOWN: CLH downed: Mon Mar 15 19:15:03 2021
            TMDOWN: TLM downed: Mon Mar 15 19:15:03 2021
            TMDOWN: TMM downed: Mon Mar 15 19:15:03 2021
            TMDOWN: TMAX is down
  3. OpenFrame이 종료된 것을 확인한 후 UNIX 콘솔에서 ${OPENFRAME_HOME}/UninstallerData 디렉터리에 있는 Uninstall_Batch 파일을 실행한다.

    $ ./Uninstall_Batch
  4. 설치 제거 프로그램에 의해 Batch 설치 시 생성된 파일들이 모두 삭제되고, 해당 환경의 Tmax 설정에서 Batch 관련 내용이 모두 제거된다.

4. 제거 확인

설치 제거 프로그램이 Batch를 설치할 때 생성한 파일에 대해서만 삭제하므로 불필요하게 남아 있는 디렉터리 및 파일들은 수동으로 삭제해야 한다.