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

pkgadd
pkgadd pkgadd 명령 목적 소프트웨어 패키지나 소프트웨어 세트를 시스템으로 이동시킵니다. 구문
소프트웨어 패키지 설치
pkgadd [ -d Device] [ -r Response] [ -n ] [ -a Admin] [ Pkginst1 [ Pkginst2 [. . .]]]
지정된 스풀 디렉토리에 소프트웨어 패키지 복사
pkgadd -s Spool [ -d Device] [ Pkginst1 [ Pkginst2 [. . .]]]
설명
pkgadd는 배포 미디어나 설치 디렉토리에 있는 소프트웨어 패키지 또는 소프트웨어 세트의 내용을 시스템으로 이동시킵니다. 패키지는 독립적으로 설치할 수 있는 관련 파일과 실행 파일의 모음입니다. 세트는 SIP(세트 설치 패키지)라는 특수 패키지로 이루어지며 하나 이상의 세트 멤버 패키지의 모음입니다. SIP는 세트 설치를 제어합니다.
pkgadd는 명령행에 나열된 모든 패키지가 설치 미디어에 있는지 검사합니다. 나열된 패키지 중 하나라도 설치 미디어에 없으면 시스템이 전혀 변경되지 않습니다. 즉, 아무런 패키지도 시스템에 설치되지 않습니다.
주: 패키지를 설치하려면 "루트" 권한이 있어야 합니다. 루트 권한이 없는 사용자는 특정 지점까지만 pkgadd를 수행할 수 있습니다.
-d 플래그 없이 사용할 경우, pkgadd는 패키지의 디폴트 스풀 디렉토리(/var/spool/pkg)를 찾습니다. -s 플래그와 함께 사용할 경우에는 패키지가 설치되는 것이 아니라 스풀 디렉토리에 기록됩니다.
오류 메세지는 항상 기록됩니다. 또한 pkgadd가 종료되면 모든 오류 메세지와 어떠한 패키지가 완전 설치, 부분 설치 또는 설치되지 않았는지에 대한 요약을 포함하는 메일이 "루트"(디폴트)에게 전송됩니다.
파일
-d Device Device에 있는 패키지/세트를 설치하거나 복사합니다. Device는 디렉토리, 파일 또는 이름 지정된 파이프의 전체 경로 이름이거나 표준 입력에서 읽은 데이터 스트림 형식의 패키지를 지정하는 "-"입니다. 디폴트 장치는 설치 스풀 디렉토리(/var/spool/pkg)입니다.
-r Response 이전 pkgask 세션이 대화식 모드로 수행되는 동안 "요청 스크립트"에서 제기한 질문에 대한 답변이 포함된 파일이나 디렉토리 Response를 식별합니다[pkgask 명령 참조]. Pkginst가 패키지인 경우, Response는 전체 경로 이름이거나 디렉토리입니다. Pkginst가 SIP인 경우, Response는 디렉토리입니다.
-n 비대화식 모드로 설치를 수행하도록 지정합니다. 디폴트 모드는 대화식입니다.
-a Admin 디폴트 관리 파일 대신에, 설치 검사(예: 공간 크기, 시스템 상태 등에 대한 검사)을 수행할 것인지 여부를 지정하는 데 사용할 설치 관리 파일 Admin을 정의합니다. 토큰 "none"은 admin 파일을 사용하지 못하게 하여 사용자와 강제로 상호작용하게 만듭니다. 전체 경로 이름이 지정되지 않은 경우, pkgadd는 /var/sadm/install/admin 디렉토리에서 파일을 찾습니다. 디폴트로 사용되는 파일은 이 디렉토리에 있는 파일인 default입니다. default는 패키지 설치 공간이 충분한지 그리고 다른 패키지를 필요로 하는 사항이 있는지를 제외한 어떠한 검사도 수행하지 않도록 지정합니다. Pkginst가 SIP인 경우에는 -a 플래그를 사용할 수 없습니다.
Pkginst 패키지/세트 이름의 약어를 지정하는 데 사용되는 간단한 문자열을 정의합니다. 막연하게 사용되는 용어인 "패키지 인스턴스"는 Pkginst의 모든 인스턴스 항목을 나타냅니다(pkginfo 명령 및 pkginfo 파일 형식 참조).
Pkginst가 SIP인 경우, SIP는 요청 스크립트와 사전 설치 스크립트를 사용하여 세트 설치를 제어합니다. SIP 요청 스크립트는 패키지 설치 도구가 아니며, 응답과 적절한 조치를 취하라는 프롬프트를 사용자에게 표시하는 역할을 합니다. 요청 스크립트가 실패한 경우에는 SIP만 처리됩니다.
모든 패키지 인스턴스를 가리키려면 쉘이 "*" 문자를 해석하지 못하게 명령행을 작은 따옴표로 묶어서 'Pkginst.*'로 지정하십시오. 소스 미디어에서 사용 가능한 모든 패키지를 가리키려면 토큰 "all"을 사용하십시오.
-s Spool 패키지를 설치하는 대신에 디렉토리 Spool에 패키지를 기록합니다.
특수 주
-r 플래그는 파일 이름뿐 아니라 디렉토리 이름을 가리키는 데도 사용할 수 있습니다. 연관된 패키지의 이름을 공유하는 여러 개의 Response 파일이 디렉토리에 있을 수 있습니다. 예를 들면 한번의 pkgadd 호출을 통해 여러 개의 대화식 패키지를 추가할 때 디렉토리를 사용할 수 있습니다. 요청 스크립트가 있는 각각의 패키지에는 Response 파일이 필요합니다. 패키지와 같은 이름의 응답 파일을 작성하는 경우(예:Package1 및 Package2)에는 -r 플래그 다음에 이들 파일이 들어 있는 디렉토리의 이름을 지정하십시오.
-n 플래그를 사용하면 설치를 완료하기 위해 상호작용이 필요한 경우 설치를 정지시킵니다.
명령행에서 Pkginst를 지정하지 않은 상태로 pkgadd를 호출할 경우, 하나 이상의 SIP가 미디어에 있으면 세트 이름만 표시됩니다. 따라서 패키지 중 일부는 세트 멤버가지만 나머지는 세트 멤버가 아닌 경우에는 모든 패키지를 하나의 미디어에 포함시키지 마십시오. 그렇지 않을 경우, 세트 멤버가 아닌 패키지는 명령행에서 해당 pkginst 이름을 지정한 경우에만 설치될 수 있습니다.
pkgadd 명령은 Pkginst에 있는 파일 중 이미 시스템에 설치된 파일이 있는지 검사하고, 이러한 파일이 있으면 설치를 계속하기 전에 이 사실을 저장해둡니다. pkgadd는 나중에 이러한 파일을 시스템에 다시 설치하지 않습니다. 패키지 설치 스크립트 중 하나가 이러한 파일을 제거해버리면 나중에 패키지 설치가 완료되었을 때 해당 파일이 시스템에 없게 됩니다.
pkgmk가 처리하기 전에 미리 압축된 파일(즉, ".Z" 양식의 압축 파일만 해당)의 압축은 pkgadd 명령으로 풀리지 않습니다.
종료 상태
이 명령은 다음의 값을 리턴합니다.
0 스크립트가 성공적으로 완료되었습니다.
1 치명적 오류가 발생했습니다. 설치 프로세스가 종료됩니다.
2 경고 또는 가능한 오류 조건이 발생했습니다. 설치가 계속됩니다. 경고 메세지는 설치가 완료될 때 표시됩니다.
3 스크립트가 인터럽트되어 완료되지 않은 상태일 수 있습니다. 설치가 종료됩니다.
4 스크립트가 일시중단되었습니다(관리). 설치가 종료됩니다.
5 스크립트가 일시중단되었습니다(상호작용이 필요했습니다). 설치가 종료됩니다.
10 모든 선택한 패키지의 설치가 완료될 때 시스템을 다시 부팅해야 합니다(위에 설명된 단일 숫자 종료 코드 중 하나에 이 값을 추가해야 합니다).
20 현재 패키지 설치가 완료되면 곧바로 시스템을 다시 부팅해야 합니다(위에 설명된 단일 숫자 종료 코드 중 하나에 이 값을 추가해야 합니다).
77 세트용 패키지가 선택되지 않았습니다.
99 내부 오류가 발생했습니다.
파일
/var/sadm/install/admin/default 디폴트 패키지 관리 파일
/var/sadm/install/logs/pkginst.log 오류 메세지 로그
/var/spool/pkg 디폴트 스풀 디렉토리
관련 정보
pkgask 명령, pkgchk 명령, pkginfo 명령, pkgparam 명령, pkgrm 명령