| HOME / 정보공유 / AIX 명령어 모음

ptfpkg
ptfpkg ptfpkg 명령 목적 ptf_pkg.$BLDCYCLE 파일에 나열되어 있는 각 PTF의 PTF 이미지를 작성합니다. 구문
ptfpkg -c -b [ -m PtfType ] [ -d OutputDirectory ]
설명
출력 이미지는 installp 명령을 사용하여 설치할 수 있습니다. ptfpkg 명령은 다음 파일과 디렉토리를 사용하여 AIX 버전 4 PTF를 생성합니다.
*CUMSLIST $TOP/UPDATE/$OPTION/cumsList
INSLIST $TOP/UPDATE/$OPTION/option.il.$BLDCYCLE
LPFILE $TOP/UPDATE/$OPTION/option.lp.$BLDCYCLE
LPPINFO $TOP/UPDATE/$OPTION/lpp_info.$BLDCYCLE
LPPLIST $TOP/UPDATE/lpplist.$BLDCYCLE
PTF_PKG $TOP/UPDATE/$LPP/ptf_pkg.$BLDCYCLE
PTFDIR $TOP/UPDATE/$OPTION/$PTFNUMBER
*PTFSLIST $TOP/UPDATE/$OPTION/ptfsList
USRLIBLPPA $TOP/UPDATE/$OPTION/usr.liblpp.a.$BLDCYCLE
ROOTLIBLPPA $TOP/UPDATE/$OPTION/root.liblpp.a.$BLDCYCLE
DATALIBLPPA $TOP/UPDATE/$OPTION/data.liblpp.a.$BLDCYCLE
주: *이들 파일은 ptfpkg 명령이 생성하고 유지하며 사용자가 제공하지 않습니다.
ptfpkg 명령은 각 PTF의 new version.release.mod.fix(VRMF) 레벨을 계산합니다. 각 파일세트 PTF는 수정 레벨 값을 1씩 증가시킵니다. 각 cum_ptf는 mod 레벨 값을 1씩 증가시키고 수정 레벨을 0으로 재설정합니다.
디폴트 VRMF를 겹쳐쓰려면, 새 VRMF 값이 포함되도록 PTF_PKG 파일의 fileset 필드를 수정할 수 있습니다. 일반적으로 이는 수정 레벨이 0이 아닌 cum_ptf를 생성하는 데만 사용됩니다. PTF_PKG의 fileset 필드는 다음 형식을 포함합니다.
FilesetName:v.r.m.f
여기에서 fileset 필드는 PTF_PKG 파일에 있는 각 행의 4번째 필드입니다.
ptfpkg 명령은 LPP에 따라 PTF를 처리합니다. ptfpkg 명령은 구축 순환마다 LPPLIST 파일을 읽습니다. 이 파일의 각 LPP에는 PTF_PKG 파일이 있습니다. ptfpkg 명령은 각 LPP에 대해 PTF_PKG 파일을 읽고, PTF_PKG 파일의 각 PTF에 대한 AIX 버전 4 갱신 이미지를 생성합니다.
일반 파일세트 PTF는 모두 $TOP/UPDATE/$OPTION/$PTF 디렉토리에 패키지됩니다. ptfpkg 명령은 갱신에 적합한 liblpp.a 파일을 작성하고 lpp_name 파일을 생성하며, PTF_PKG 파일에 나열된 모든 파일을 포함하는 백업 형식 파일(bff)이나 ccss 이미지를 생성합니다
특수 PTF의 패키징 디렉토리는 $TOP/UPDATE/$LPP/$PTF입니다. 특수 PTF는 파일 이름 pkg_ptf, pmp_ptf, enh_ptf, C_ptf 또는 opp_ptf로 나타냅니다. 이러한 유형의 갱신사항은 나중에 활성화될 수 있습니다.
일단 PTF가 작성되고 나면 다음 조건 중 하나가 충족되어야 ptfpkg 명령이 PTF를 다시 패키지할 수 있습니다.
특수 PTF는 항상 다시 패키지할 수 있습니다.
PTF가 CUMLIST 파일의 마지막 항목인 경우 또는 PTF가 CUMSLIST 파일에 없거나 파일 PTFSLIST가 비어 있는 경우에는 누적 PTF를 다시 패키지할 수 있습니다.
다른 모든 PTF는 PTF가 PTFSLIST 파일에 없는 경우, PTF가 PTFSLIST 파일에 있는 경우, 그리고 PTF 다음의 모든 항목이 PTF_PKG 파일에 있는 경우에 다시 패키지할 수 있습니다.
PTF가 성공적으로 구축될 때마다, 파일세트 PTF인 경우에는 PTFSLIST 파일에 추가되고 누적 PTF인 경우에는 CUMSLIST 파일에 추가됩니다. $TOP/PTF/$BLDCYCLE/defectapars 정보가 있으면 ptfapardef.master 파일에도 PTF가 추가됩니다.
구현에 필요한 사항(pseudocode)
for each LPP listed in lpplist.$BLDCYCLE
for each PTF listed in the ptf_pkg.$BLDCYCLE
if PTFDIR exists then repackage
call getvrmf command to calculate new VRMF value and generate internal VRMF table
call updatefixdata command to update the fixdata database
call processPtf command to generate PTF list files and option.prereq file
call lookupfixdata command to generate option.fixdata file
call ptfins command to generate inslist file for update
call adeinv command to generate .inventory, .al, .tcb and .size files
call adelppname command to generate lpp_name file
call adepackage command to create bff image
if -c option used to generate ccss image
call gen_toc_entry to generate toc file
call gen_infofile to generate infofile
call ccss_pack to generate ccss image
fi
update $TOP/HISTORY/ptfoptions file to include PTF, fileset and vrmf information
create ptfapardef.master file from $TOP/PTF/*/defectapars files if they exist
done
done
파일
-b bff 이미지가 삭제되지 않도록 지정합니다.
-c PTF 이미지를 ccss 형식으로 작성합니다.
-d OutputDirectory bff 또는 ccss 이미지가 복사될 디렉토리를 지정합니다.
-m PtfType PTF 유형을 지정합니다. 이 플래그를 사용하여 ptfpkg 명령으로 계산한 디폴트 유형 값을 겹쳐씁니다. -m 플래그가 지정되지 않으면 다음에 표시한 것처럼 ptfpkg 명령이 ptf_pkg 파일의 file name 필드를 기준으로 PTF 유형을 계산합니다.
파일 이름이 pkg_ptf이면 패키지 유형은 M(유지보수 레벨 패키징 PTF)입니다.
파일 이름이 pmp_ptf이면 패키지 유형은 P(패키징 PTF)입니다.
파일 이름이 opp_ptf나 C_ptf이면 패키지 유형은 MC(누적 유지보수 패키징 PTF)입니다.
파일 이름이 enh_ptf이면 패키지 유형은 ME(확장 패키징 PTF)입니다.
파일 이름이 /usr/sbin/installp이면 패키지 유형은 SF(최초 설치에 필요한 파일세트 PTF)입니다.
위의 조건 중 어디에도 해당되지 않고 사용자가 -n 옵션으로 PTF 유형을 겹쳐쓰지 않았다면 단일 PTF나 파일세트 갱신의 경우 PTF 유형의 디폴트는 S입니다.
주: -b와 -c 옵션 중 하나 또는 둘다 필요합니다.
환경 변수
다음 환경 변수는 ptfpkg 명령을 수행하는 데 필요합니다.
BLDCYCLE 현재의 구축 순환을 지정합니다. 구축 순환 식별자는 PTF가 어느 구축에서 작성되었는지를 식별합니다.
BUILD_TYPE 이 구축이 발생한 환경의 유형을 지정합니다. 유효한 값은 프로덕션, 영역 및 sandbox입니다. 여기에서 sandbox 구축은 개발 레벨 구축입니다. ptfpkg 명령에서는 구축 유형이 프로덕션인 경우, 각 APAR의 $TOP/HISTORY/abstracts 파일에 유효한 APAR 텍스트가 필요합니다.
ODE_TOOLS 구축 도구의 경로를 지정합니다. 도구는 $ODE_TOOLS에서 지정한 위치에 상대적인 usr/bin 디렉토리에 놓입니다. PATH 환경 변수에는 $ODE_TOOLS/usr/bin이 포함됩니다.
SHIP_PATH 제공 트리의 경로를 콜론으로 구분하여 나열한 리스트를 지정합니다. 제공 트리는 지정된 순서로 탐색됩니다.
TOP 구축이 시작된 트리의 상단에 대한 전체 경로 이름을 지정합니다. HISTORY, UPDATE 및 PTF 트리는 $TOP에 대해 상대적인 위치를 가집니다.
경고
경고 메세지는 정보용이므로 ptfpkg의 리턴 코드에 영향을 미치지 않습니다.
오류
오류 메세지는 처리하는 동안 ptfpkg에 오류가 발생할 때 만들어집니다. 현재의 LPP나 PTF에 대한 작업이 정지하고, 다음 LPP나 PTF의 처리가 시작됩니다. 리턴 코드는 영향을 받지 않습니다. 오류가 있는 PTF가 ptf_pkg 파일에 남아 있으므로 오류를 수정해야 PTF를 패키지할 수 있습니다.
치명적 오류
치명적 오류 메세지는 ptfpkg에 복구할 수 없는 오류가 발생할 때 만들어집니다. 0이 아닌 리턴 코드와 함께 처리가 종료됩니다.
예제
인수가 없고 미디어 유형의 디폴트가 단일 갱신 S이며, 결과 bff 이미지를 $TOP/update.bff.images 디렉토리에 저장하는 ptfpkg를 호출하려면 다음을 입력하십시오.
ptfpkg -d $TOP/update.bff.images
미디어 유형을 패키징 갱신 P로 설정하고 bff 이미지 대신 ccss 이미지를 생성해서 $TOP/ptf.images 디렉토리에 저장하는 ptfpkg를 호출하려면 다음을 입력하십시오.
ptfpkg -m P -c -d $TOP/ptf.images
사용자 제공 입력 파일
data.liblpp.a.$BLDCYCLE 이 파일이 옵션 디렉토리에 있는 경우, ptfpkg 명령이 파일세트가 공유 데이터 파일세트라고 가정하도록 지정합니다. data.liblpp.a.$BLDCYCLE 파일이 옵션 디렉토리에 없으면 ptfpkg가 data.liblpp.a 파일을 찾습니다. 구축 순환 접미사를 추가하는 파일의 사본을 만듭니다. 이 파일은 갱신할 odm 스크립트나 config 스크립트를 포함하는 아카이브입니다. mkodmupdt 명령은 odm 스크립트를 생성하는 데 사용할 수 있습니다.
lpp_info FORMAT, PLATFORM 및 PRODNAME이 들어 있습니다. FORMAT은 갱신 형식 유형으로, AIX 버전 4 갱신의 경우 이 값은 보통 4입니다. RS/6000에서 PLATFORM은 R입니다. PRODNAME은 파일세트가 멤버인 패키지의 제품 이름입니다. lpp_info.$BLDCYCLE 파일이 옵션 디렉토리에 없으면 ptfpkg가 usr.liblpp.a 파일을 찾습니다. 구축 순환 접미사를 추가하는 파일의 사본을 만듭니다.
lpplist.$BLDCYCLE 현재의 구축 순환에 대해 ptf_pkg 파일이 있는 LPP 리스트를 포함합니다. 이 파일의 형식은 행 당 하나의 LPP 이름입니다.
option.il.$BLDCYCLE 갱신과 함께 제공되는 각 파일의 inslist 정보를 생성하기 위해 ptfins 명령에서 사용하는 파일을 지정합니다.option.il.$BLDCYCLE 파일이 옵션 디렉토리에 없으면 ptfpkg가 option.il 파일을 찾습니다. 구축 순환 접미사를 추가하는 파일의 사본을 만듭니다.
option.lp.$BLDCYCLE 옵션에 대한 디폴트 BOOT, CONTENT 및 LANG 정보를 포함하는 파일을 지정합니다. option.lp.$BLDCYCLE 파일이 옵션 디렉토리에 없으면 ptfpkg가 option.lp 파일을 찾습니다. 구축 순환 접미사를 추가하는 파일의 사본을 만듭니다.
ptf_pkg.$BLDCYCLE LPP와 연관된 모든 PTF 및 파일세트에 대한 패키징 정보가 들어 있습니다. 단일 파일세트 PTF가 여러 개의 파일을 제공하면 ptf_pkg 파일에는 파일세트마다 하나의 행이 포함됩니다. ptf_pkg 파일의 형식은 다음과 같습니다.
ptf | apars list | filename | fileset | ifreqs |
coreqs | prereqs
root.liblpp.a.$BLDCYCLE 이 파일이 옵션 디렉토리에 있는 경우, ptfpkg 명령이 파일세트에 루트 부분이 포함된다고 가정하도록 지정합니다. 멤버가 없는 아카이브 파일인 경우에도 루트 부분이 있는 옵션에 대해서는 이 파일이 존재합니다. 처리가 완료된 후 갱신할 루트 liblpp.a 파일에 멤버가 없으면 ptfpkg가 CONTENT 값을 U(usr 전용)로 다시 설정합니다. root.liblpp.a.$BLDCYCLE 파일이 옵션 디렉토리에 없으면 ptfpkg가 root.liblpp.a 파일을 찾습니다. 구축 순환 접미사를 추가하는 파일의 사본을 만듭니다. 이 파일은 갱신할 odm 스크립트나 config 스크립트를 포함하는 아카이브입니다. mkodmupdt 명령은 odm 스크립트를 생성하는 데 사용할 수 있습니다.
usr.liblpp.a.$BLDCYCLE 이 파일이 옵션 디렉토리에 있는 경우, ptfpkg 명령이 파일세트에 usr 부분이 포함된다고 가정하도록 지정합니다. 옵션에 대해 data.liblpp.a 파일이 없는 경우에는 usr.liblpp.a파일이 있어야 합니다. 옵션 디렉토리에 usr.liblpp.a.$BLDCYCLE 파일이 없으면 ptfpkg가 usr.liblpp.a 파일을 찾습니다. 구축 순환 접미사를 추가하는 파일의 사본을 만듭니다. 이 파일은 갱신할 odm 스크립트나 config 스크립트를 포함하는 아카이브입니다. mkodmupdt 명령은 odm 스크립트를 생성하는 데 사용할 수 있습니다.
관련 정보
adeinv 명령, adelppname 명령, adepackage 명령, getvrmf 명령, installp 명령, lookupfixdata 명령, mkodmupdt 명령, processPtf 명령, ptfins 명령, updatefixdata 명령