| Sun ONE Portal Server 6.2 관리자 설명서 |
14장
명령줄 유틸리티Sun ONE Portal Server 는 그래픽 사용자 인터페이스 외에도 일단의 명령줄 유틸리티를 제공합니다.
본 장에서 논의하는 명령줄 유틸리티는 표 14-1에 나열되어 있으며 관리 작업에만 관련됩니다. 이 표에는 두 개의 열이 있으며 첫 번째 열은 명령이고 두 번째 열은 간단한 설명입니다. 명령은 데스크탑, Rewriter 및 검색의 기능별로 분류되어 있습니다.
Sun ONE Identity 서버 관리를 위한 명령줄 인터페이스 amadmin도 사용할 수 있습니다. amadmin 도구의 주된 목적은 관리자가 Identity 서버에서 관리 작업을 일괄적으로 수행하도록 지원하는 것입니다. 이러한 예로 새로운 서비스를 생성, 등록 및 활성화하고 조직, 사람 컨테이너, 그룹, 역할 및 사용자를 생성, 읽기(가져오기) 및 삭제하는 작업을 들 수 있습니다. 자세한 내용은 Sun ONE Identity Server 6.1 Programmer's Guide를 참조하십시오.
deploy설명
deploy 명령은 Sun ONE Portal Server 웹 응용프로그램 파일용 소스 파일을 패키지로 묶어 포털 서버 소프트웨어를 호스팅하는 웹 컨테이너에 배포합니다.
Sun ONE Portal Server 용 소스 파일은 /opt/SUNWps/web-src 디렉토리에 저장됩니다. WEB-INF/xml 하위 디렉토리에는 deploy 명령으로 결합되어 Sun ONE Portal Server 웹 응용프로그램을 위한 web.xml 파일을 형성하는 web.xml 파편 파일이 들어 있습니다. web.xml 파편 파일의 해당 부분이 web.xml 파편 파일의 알파벳 순서에 따라 결합됩니다. 마지막 web.xml 파일이 형성되고 나면 jar 명령을 사용하여 opt/SUNWps/web-src 디렉토리의 파일이 하나의 웹 응용프로그램 아카이브(WAR) 파일이 됩니다. 이 WAR 파일은 deploy 명령을 사용하여 웹 컨테이너에 배포됩니다.
구문
/opt/SUNWps/bin/deploy [redeploy]
하위 명령
deploy 명령은 redeploy 하위 명령을 취합니다. deploy 명령이 redeploy 옵션 없이 호출되는 경우, 표준 입력 장치로 구성 정보를 입력해야 합니다.
redeploy
설명
redeploy 하위 명령은 deploy 명령에 현재 배포의 Sun ONE Portal Server 웹 응용프로그램과 연관된 URI (Uniform Resource Indicator)와 기타 정보가 재사용되도록 지정합니다.
구문
deploy redeploy
pdeploy설명
pdeploy는 포틀릿 웹 응용프로그램을 포털 서버에 배포하고 배포 해제할 때 사용할 수 있는 명령줄 도구입니다.
pdeploy 명령에는 다음이 필요합니다.
포틀릿 응용프로그램을 배포하기 위해 pdeploy 명령이 사용하는 일부 기본 설정은 PDConfig.properties 파일에서 얻을 수 있습니다. 이 파일은 /etc/opt/SUNWps/portlet 디렉토리에 설치됩니다.
pdeploy 명령은 포틀릿 응용프로그램을 배포할 때 PDConfigure.properties 파일에 있는 다음 매개 변수를 참조합니다.
구문
이 부분에서는 pdeploy 명령 구문을 설명합니다.
단축 이름 형식
pdeploy deploy -u uid -w password {-g|-d dn} -p webcontainerpassword -V -r rolesfile -f userinfofile -v -l warfile
pdeploy undeploy -u uid -w password {-g|-d dn} -p webcontainerpassword -V -v -l warfile
상세 이름 형식
pdeploy deploy --runasdn uid --password password {--global|--dn dn} --wc_password webcontainerpassword --rolesfile rolesfile --userinfofile userinfofile --verbose --locale warfile
pdeploy deploy --help
pdeploy deploy --version
pdeploy undeploy --runasdn uid --password password {--global|--dn dn} --wc_password password --verbose --locale portletwebapp
pdeploy undeploy --help
pdeploy undeploy --version
하위 명령
pdeploy 명령은 다음 하위 명령을 취합니다.
deploy
설명
하위 명령이 deploy이면 pdeploy 명령이 포털 서버에 포틀릿 웹 응용프로그램을 배포합니다. 이 명령이 완료된 후에 배포된 포틀릿 웹 응용프로그램에 정의된 포틀릿을 바탕으로 채널을 만들 수 있습니다.
구문
pdeploy deploy -u uid -w password {-g|-d dn} -p webcontainerpassword warfile
pdeploy deploy -h|--help
옵션
지원 옵션을 설명하는 표 14-2에는 두 개의 열이 있습니다. 첫 번째 열은 deploy 하위 명령에 가능한 옵션, 인수 또는 피연산자이고 두 번째 열은 간단한 설명입니다.
예
다음 예에서 pdeploy 명령은 /tmp/SamplePortletApp.war을 포털 서버로 배포합니다.
pdeploy deploy -u "uid=amAdmin,ou=people,o=sesta.com,o=isp" -w admin -p sunone -g /tmp/SamplePortletApp.war
포틀릿 응용프로그램이 portlet.xml 파일에서 논리적 역할을 정의하는 경우가 있습니다. 배포 과정에서 논리적 역할을 시스템에 정의된 실제 역할에 매핑시켜야 합니다. 이를 위해 역할 매핑 파일을 제공합니다.
역할 매핑 파일에는 ActualRole=LogicalRole 항목이 들어 있어야 합니다. 지원되는 파일은 Java™ 속성 파일 형식을 따라야 합니다. 예:
cn\=HRManager,dc\=iplnaet,dc\=com=Manager
cn\=Emp,dc\=iplnaet,dc\=com=Employee
다음 pdeploy 명령이 포털 응용프로그램에 SamplePortletApp.war 파일을 배포하기 위한 역할 매핑 파일을 제공합니다.
pdeploy deploy -u "uid=amAdmin,ou=People,o=sesta.com,o=isp" -w admin -p sunone -r /tmp/RoleMaps -g /tmp/SamplePortletApp.war
포틀릿 응용프로그램이 각 사용자와 연관된 정보에 액세스해야 하는 경우가 있습니다. 배포 과정에서 논리적 사용자 정보 항목 이름을 시스템에 정의된 실제 사용자 정보 항목 이름에 매핑시켜야 합니다. 배포 과정에서 이를 위해 사용자 정보 항목 맵을 제공할 수 있습니다.
사용자 정보 파일에는 ActualEntryName=LogicalEntryName 항목이 들어 있어야 합니다. 예:
lastname=lname
firstname=fname
다음 deploy 명령이 포털 응용프로그램에 SamplePortletApp.war 파일을 배포하기 위한 사용자 정보 파일을 제공합니다.
pdeploy deploy -u "uid=amAdmin,ou=People,o=sesta.com,o=isp" -w admin -p sunone -f /tmp/UserInfoMaps -g /tmp/SamplePortletApp.war
undeploy
설명
undeploy 하위 명령은 포털 서버에서 포틀릿 응용프로그램을 제거합니다. 그러나 포틀릿 웹 응용프로그램에 정의된 포틀릿에 이미 만들어진 모든 채널 정의를 제거하지는 않습니다. 제거하려는 포틀릿 웹 응용프로그램과 연관된 모든 채널은 수동으로 제거해야 합니다.
구문
pdeploy undeploy -u uid -w password {-g|-d dn} -p webcontainerpassword -v portletwebapp
pdeploy undeploy -h|--help
옵션
표 14-4 및 표 14-5는 지원되는 옵션을 설명하며 두 개의 열이 있습니다. 첫 번째 열은 undeploy 하위 명령에 가능한 옵션, 인수 또는 피연산자이고 두 번째 열은 간단한 설명입니다.
표 14-5 undeploy 하위 명령 피연산자
피연산자
설명
portletwebapp
배포된 포틀릿 웹 응용프로그램의 이름을 지정합니다. 일반적으로 .war 확장자가 없는 war 파일 이름과 같습니다.
다음 pdeploy 명령은 포털 서버에서 SamplePortletApp라는 포틀릿 웹 응용프로그램을 배포 해제합니다.
pdeploy undeploy -u "uid=amAdmin,ou=People,o=sesta.com,o=isp" -w admin -g
dpadmin설명
dpadmin 명령은 하위 명령을 사용하여 디스플레이 프로필 문서에서 디스플레이 프로필 객체를 검색, 추가, 수정 및 제거할 수 있도록 합니다. 디스플레이 프로필 객체와의 모든 상호 작용은 원시 XML 형식이어야 합니다. dpadmin 명령은 단일 디스플레이 프로필 문서에서만 작동할 수 있습니다.
dpadmin 명령에는 다음이 필요합니다.
- 하위 명령(하위 명령 참조)
- 디렉토리 서버에 액세스하기 위한 사용자 구분 이름 및 비밀번호.
- 대상 디스플레이 프로필 문서. LDAP 노드를 식별하기 위한 구분 이름 또는 전역 수준 디스플레이 프로필 문서를 위한 --global (-g) 옵션.
구문
이 부분에서는 dpadmin 명령 구문을 설명합니다. 하나의 명령줄에서 상세 이름 옵션과 단축 이름 옵션을 함께 사용할 수 없습니다.
단축 이름 형식
$ dpadmin list|merge|modify|add|remove [command-specific options] -u uid
-w password {-g|-d dn} [-l locale] [-r] [-b] [-V] [-h] [file]$ dpadmin batch [-c] -f batch-script-filename [-l locale] [-b] [-h]
상세 이름 형식
$ dpadmin list|merge|modify|add|remove [command-specific options] --runasdn uid --password password {--global|--dn dn} [--locale locale] [--dryrun] [--verbose] [--version] [--help] [file]
$ dpadmin --version
$ dpadmin batch [--continue] --file batch-script-filename [--locale locale] [--verbose] [--help]
하위 명령
dpadmin 명령은 다음 하위 명령을 취합니다.
list
설명
이 하위 명령은 지정된 디스플레이 프로필 문서에서 지정된 디스플레이 프로필 노드 항목을 검색합니다. 지정된 디스플레이 프로필 노드 항목이 없으면 전체 디스플레이 프로필 문서가 검색됩니다. 디스플레이 프로필 항목이 원시 XML 형식으로 표준 출력에 표시됩니다.
list 하위 명령은 다음 옵션을 취합니다.
- 각각 -u 또는 --runasdn 및 -w 또는 --password 옵션을 사용하여 LDAP 데이터베이스에 액세스하기 위한 관리자의 구분 이름과 비밀번호. 이 옵션은 필수입니다.
- -n 또는 --name 옵션을 사용하여 표시할 디스플레이 프로필 노드 항목의 이름.
- 전역 수준 노드의 경우에 -g 또는 --global 옵션으로 정의하거나 전역이 아닌 특정 수준의 노드가 지정된 경우 -d 또는 --dn 옵션으로 정의되는, 표시할 디스플레이 프로필 노드 항목. -g 또는 -d 옵션이 필요합니다. 명령에 구체적인 -n 또는 --name 옵션이 없으면 전체 디스플레이 프로필 문서를 표시합니다. -g 또는 --global 옵션은 전체 루트 디스플레이 프로필 문서를 표시합니다.
구문
$ dpadmin list -u|--runasdn uid -w|--password password {(-g|--global)|(-d|--dn dn)} [-n|--name name]
$ dpadmin list -h|--help
옵션
표 14-6에는 두 개의 열이 있습니다. 첫 번째 열은 list 하위 명령에 가능한 옵션, 인수 또는 피연산자이고 두 번째 열은 간단한 설명입니다. 다음 옵션이 지원됩니다.
예
예1
$ dpadmin list -n TemplateTableContainer -u "uid=amAdmin,ou=people,dc=org,dc=com" -w joshua -d "dc=org,dc=com"
이 예에서는 dc=org,dc=com 조직 노드에서 명명된 TemplateTableContainer를 얻어 표준 출력으로 인쇄합니다.
예2
$ dpadmin list -n mailcheck -u "uid=amAdmin,ou=people,dc=org,dc=com" -w joshua -g
이 예에서는 전역 수준으로 이동하여 mailcheck만 얻어 발견되는 경우 표준 출력으로 인쇄합니다.
예3
$ dpadmin list -n TemplateTableContainer/Bookmark2 -u "uid=amAdmin,ou=people,dc=org,dc=com" -w joshua -d "dc=org,dc=com"
이 예에서는 TemplateTableContainer 컨테이너에 있는 Bookmark2라는 채널을 얻어 표준 출력으로 인쇄합니다.
merge
설명
이 하위 명령은 지정된 DP 노드 객체의 병합된 결과를 검색하여 표시합니다. 객체는 원시 XML 형식으로 표시됩니다. 표시될 항목이 stdout으로 보내집니다. -n 또는 --name 옵션을 사용하지 않으면 오류가 보고됩니다.
merge 명령은 다음 인수를 받아들입니다.
--name 또는 -n
name 인수는 DP 컨테이너, 채널 또는 표시할 공급자 항목의 완전한 정규 이름을 지정합니다. name 인수가 없으면 전체 DP 문서가 표시됩니다. name 인수가 DP 노드 항목을 식별하지 않으면 오류가 보고됩니다.
예
$ dpadmin list -n "Bookmark" \
-u "uid=amAdmin,ou=People,dc=iplanet,dc=com" -w joshua \
-d "dc=iplanet,dc=com"
<Channel name="Bookmark" provider="BookmarkProvider">
<Properties merge="fuse" lock="false" name="_properties">
<String name="title" value="My Bookmarks" merge="replace" lock="false"/>
<String name="refreshTime" value="600" merge="replace" lock="false"/>
<Collection name="targets" merge="fuse" lock="false">
<String value="Sun home page|http://www.sun.com" merge="replace" lock="false"/>
<String value="Everything you want to know about Sun ONE ...|http://www.sun.com/software/products/portal_srvr/home_portal.html" merge="replace" lock="false"/>
<String value="Sun ONE home page|http://www.sun.com/software" advanced="false" merge="replace" lock="false"/>
</Collection>
</Properties>
</Channel>
$ dpadmin list -n "Bookmark" \
-u "uid=amAdmin,ou=People,dc=iplanet,dc=com" -w joshua \
-d "cn=HR Role,dc=iplanet,dc=com"
<Channel name="Bookmark" provider="BookmarkProvider">
<Properties merge="fuse" lock="false" name="_properties">
<String name="title" value="HR Admin Bookmarks" merge="replace" lock="false"/>
<Collection name="targets" merge="fuse" lock="false">
<String value="HR Admin home page|http://hr.acme.com" merge="replace" lock="false"/>
</Collection>
</Properties>
</Channel>
$ dpadminmerge -n "Bookmark" \
-u "uid=amAdmin,ou=People,dc=iplanet,dc=com" -w joshua \
-d "uid=hradmin,ou=people,dc=iplanet,dc=com"
<Channel name="Bookmark" provider="BookmarkProvider">
<Properties merge="fuse" lock="false" name="_properties">
<String name="title" value="HR Admin Bookmarks" merge="replace" lock="false"/>
<Collection name="targets" merge="fuse" lock="false">
<String value="Sun home page|http://www.sun.com" merge="replace" lock="false"/>
<String value="Everything you want to know about Sun ONE ...|http://www.sun.com/software/products/portal_srvr/home_portal.html" merge="replace" lock="false"/>
<String value="Sun ONE home page|http://www.sun.com/software" advanced="false" merge="replace" lock="false"/>
<String value="HR Admin home page|http://hr.acme.com" merge="replace" lock="false"/>
</Collection>
<Collection name="GlobalThemes" merge="fuse" lock="false">
<Collection name="theme1" merge="fuse" lock="false">
<String name="description" value="Sun ONE" merge="replace" lock="false"/>
...
</Collection>
</Collection>
<Collection name="locales" merge="fuse" lock="false" propagate="true" advanced="false">
<String name="en_US" value="English (United States)" merge="replace" lock="false"/>
</Collection>
<String name="docroot" value="/docs/" merge="replace" lock="false"/>
<String name="helpURL" value="desktop/usedesk.htm" merge="replace" lock="false"/>
</Properties>
</Channel>
이것은 HR Role에 할당된 hradmin 사용자에 대한 책갈피 채널의 병합된 결과입니다.
참고
merge 하위 명령의 결과는 집계된 결과로 이루어져 있습니다. 즉, 사용 가능한 모든 DP가 나열된다는 의미입니다.예를 들어 GlobalThemes 및 locales와 같은 속성은 책갈피 정의에 구체적으로 정의되지 않지만 하나 또는 여러 개의 상위 책갈피 채널로부터 병합되었기 때문에 결과에 나타납니다.
modify
설명
이 하위 명령은 기존 디스플레이 프로필 항목의 값을 변경합니다. 하나 또는 여러 개의 입력 파일이나 표준 입력(명령에 이어지는 XML 단편)을 통해 dpadmin modify 명령에 데이터가 제공됩니다.
이 XML 데이터에는 항상 적합한 XML 헤더와 수정될 디스플레이 프로필 항목을 고유하게 정의하는 이름이 필요합니다. 적합한 XML 헤더의 예:
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<!DOCTYPE DisplayProfile SYSTEM "jar://resources/psdp.dtd">
modify 하위 명령의 의미는 수정하는 디스플레이 프로필 항목의 종류에 따라 달라집니다. combine 옵션이 지정되면 디스플레이 프로필 항목의 새로운 요소 (속성 등)가 기존 요소를 대체하는 것이 아니라 함께 결합됩니다. modify 하위 명령에는 다음과 같은 변형된 형태가 있습니다.
- 속성 - 디스플레이 프로필 객체의 속성을 새로운 값으로 변경할 수 있습니다. parent 옵션에서 디스플레이 프로필 객체의 속성을 수정해야 합니다. 지정된 상위에서 지정된 이름과 일치하는 디스플레이 프로필 노드(채널 또는 컨테이너) 또는 디스플레이 프로필 공급자 항목이 검색됩니다. 발견되면 객체의 속성 항목이 새로운 디스플레이 프로필 항목으로 대체됩니다. combine 옵션이 지정되면 기존 속성이 새로운 디스플레이 프로필 항목과 결합됩니다.
- 사용 가능 또는 선택 - 컨테이너의 사용 가능 또는 선택 목록을 새로운 디스플레이 프로필 항목으로 대체할 수 있습니다. 이 유형의 디스플레이 프로필 객체를 수정하기 위해 parent 옵션이 필요합니다. 상위 이름과 일치하는 디스플레이 프로필 컨테이너가 검색됩니다. 그러면 선택 또는 사용 가능 항목이 새로운 디스플레이 프로필 항목으로 대체됩니다. combine 옵션이 지정되면 기존의 선택 또는 사용 가능 항목이 새로운 디스플레이 프로필 항목과 결합됩니다.
- 문자열, 부울, 정수, 컬렉션 또는 로켈 - 디스플레이 프로필 항목의 문자열, 부울, 정수, 컬렉션 또는 로켈 속성을 새로운 디스플레이 프로필 항목 속성으로 대체할 수 있습니다.
parent 옵션이 지정되면 지정된 이름과 일치하는 디스플레이 프로필 노드(채널 또는 컨테이너) 또는 디스플레이 프로필 공급자(이 순서로)가 검색됩니다. 발견되면 새로운 속성 이름과 일치하는 속성이 검색됩니다. 발견되면 디스플레이 프로필 항목의 속성이 새로운 디스플레이 프로필 항목 속성으로 대체됩니다.
parent 옵션이 없으면 디스플레이 프로필 루트 노드가 사용되고 속성이 루트 노드에서 대체됩니다.
combine 옵션이 지정되면 기존의 컬렉션 또는 로켈 항목이 새로운 디스플레이 프로필 항목과 결합됩니다. combine 옵션은 문자열, 부울 및 정수와 같은 원자적 디스플레이 프로필 속성에 대해 지원되지 않습니다.
문자열, 부울 및 정수와 같은 원자적 디스플레이 프로필 속성은 명명할 필요가 없습니다. 명명하지 않으면 이름이 값의 문자열 표시와 같다고 취급됩니다. 예를 들어 다음 두 디스플레이 프로필 정수 객체는 같습니다.
<Integer value="3"/>
<Integer name="3" value="4"/>
modify 하위 명령은 다음 옵션을 취합니다.
- 각각 -u 또는 --runasdn 및 -w 또는 --password 옵션을 사용하여 LDAP 데이터베이스에 액세스하기 위한 관리자의 구분 이름과 비밀번호. 이 옵션은 필수입니다.
- 전역 수준 노드의 경우에 -g 또는 --global 옵션으로 정의하거나 전역이 아닌 특정 수준의 노드가 지정된 경우 -d 또는 --dn 옵션으로 정의되는, 수정할 디스플레이 프로필 노드 항목. -g 또는 -d 옵션이 필요합니다.
- 파일 인수를 사용하여 XML 입력이 포함되는 파일의 이름. 이 인수는 옵션입니다. 사용되지 않으면 표준 입력에서 XML을 입력해야 합니다.
- -p 또는 --parent 옵션을 사용하여 수정할 디스플레이 프로필 항목 상위의 완전한 정규 이름.
- -m 또는 --combine 옵션은 디스플레이 프로필 객체의 병합을 수행합니다.
구문
$ dpadmin modify -u|--runasdn uid -w|--password password {(-g|--global)|(-d|--dn dn)} [-p|--parent parent] [-m|--combine] file|<<EOF
$ dpadmin modify -h|--help
옵션
표 14-7에는 두 개의 열이 있습니다. 첫 번째 열은 modify 하위 명령에 가능한 옵션, 인수 또는 피연산자이고 두 번째 열은 간단한 설명입니다. 다음 옵션이 지원됩니다.
예
예1
$ dpadmin modify -p TemplateTableContainer -u "uid=amAdmin,ou=people,dc=org,dc=com" -w joshua -d "dc=org,dc=com" <<EOF
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<!DOCTYPE DisplayProfile SYSTEM "jar://resources/psdp.dtd">
<Channel name="NewNews" provider="newsprovider">
<Properties>
<String name="title" value="News Channel"/>
<String name="description" value="This channel is all about news"/>
</Properties>
</Channel>
EOF
이 예에서 TemplateTableContainer 컨테이너의 NewNews라는 채널을 표준 입력에서 XML 텍스트로 지정된 값으로 수정(대체)합니다.
예2
$ dpadmin modify -p TemplateTableContainer/NewNews -u "uid=amAdmin,ou=people,dc=org,dc=com" -w joshua -d "dc=org,dc=com" farble.xml
이 예에서는 NewNews 채널에서 farble.xml 파일에서 명명된 속성을 farble.xml 파일의 새로운 항목으로 교체합니다. 여기서 farble.xml에는 다음이 들어 있습니다.
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<!DOCTYPE DisplayProfile SYSTEM "jar://resources/psdp.dtd">
<String name="welcome" value="Hi, welcome to farble land!!!!"/>
예3
$ dpadmin list -n TemplateTableContainer -u "uid=amAdmin,ou=people,dc=org,dc=comp" -w joshua -d "dc=org,dc=com"
...
<Collection name="news">
<Collection name="bar">
<String name="msg" value="hi"/>
</Collection>
</Collection>
...
$ dpadmin modify -p TemplateTableContainer -u "uid=amAdmin,dc=org,dc=com" -w joshua -d "dc=org,dc=com" -m <<EOF
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<!DOCTYPE DisplayProfile SYSTEM "jar://resources/psdp.dtd">
<Collection name="news">
<Collection name="bar">
<String name="msg2" value="woo hoo"/>
</Collection>
</Collection>
EOF
$ dpadmin list -n TemplateTableContainer -u "uid=amAdmin,dc=org,dc=com" -w joshua -d "dc=org,dc=com"
...
<Collection name="news">
<Collection name="bar">
<String name="msg" value="hi"/>
<String name="msg2" value="woo hoo"/>
</Collection>
</Collection>
...
이 예에서는 combine 옵션을 사용하여 "msg2"라는 새로운 속성이 "bar"라는 컬렉션에 추가됩니다. 기존 속성 "msg"가 계속 유지된다는 것에 주목하십시오.
예4
$ dpadmin list -n test -u "uid=amAdmin,ou=people,dc=org,dc=com" -w joshua -d "dc=org,dc=com"
<Container name="test" provider="testprovider">
<Properties>
<String name="title" value="test"/>
</Properties>
<Available />
<Selected />
<Channels>
<Channel name="test1" provider="test1provider">
<Properties>
<Collection name="news">
<String name="msg1" value="blah"/>
<Collection name="bar">
<String name="msg2" value="hi"/>
</Collection>
</Collection>
</Properties>
</Channel>
</Channels>
</Container>
$ dpadmin modify -u "uid=amAdmin,ou=people,dc=org,dc=com" -w joshua -d "dc=org,dc=com" -m <<EOF
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<!DOCTYPE DisplayProfile SYSTEM "jar://resources/psdp.dtd">
<Container name="test" provider="testprovider">
<Properties>
<String name="title" value="Test Container"/>
</Properties>
<Available>
<Reference value="test1"/>
</Available>
<Selected>
<Reference value="test1"/>
</Selected>
<Channels>
<Channel name="test1" provider="test1provider">
<Properties>
<Collection name="news">
<String name="msg1" value="123"/>
<Collection name="bar">
<String name="msg3" value="123/>
</Collection>
</Collection>
</Properties>
</Channel>
</Channels>
</Container>
EOF
$ dpadmin list -n test -u "uid=amAdmin,ou=people,dc=org,dc=com" -w joshua -d "dc=org,dc=com"
<Container name="test" provider="testprovider">
<Properties>
<String name="title" value="Test Container"/>
</Properties>
<Available>
<Reference value="test1"/>
</Available>
<Selected>
<Reference value="test1"/>
</Selected>
<Channels>
<Channel name="test1" provider="test1provider">
<Properties>
<Collection name="news">
<String name="msg1" value="123"/>
<Collection name="bar">
<String name="msg2" value="hi"/>
<String name="msg3" value="123"/>
</Collection>
</Collection>
</Properties>
</Channel>
</Channels>
</Container>
이 예에서 "title" 및 "msg1"의 값은 새 값으로 교체됩니다. Available 및 Selected 모두 Reference value 가 추가됩니다. "news" 컬렉션이 "msg3"을 추가시켰습니다. 이 예에서는 modify 하위 명령과 함께 -m 또는 -combine 옵션을 사용하여 필요에 따라 결합시키고 교체할 수 있다는 것을 보여줍니다.
예5
$ dpadmin list -n test \
-u "uid=amAdmin,ou=People,dc=iplanet,dc=com" -w joshua \
-d "dc=iplanet,dc=com"
<Channel name="test" provider="testprovider">
<Properties>
<Collection name="foo">
<String name="foo1" value="bar"/>
</Collection>
</Properties>
</Channel>
$ dpadmin modify -p test \
-u "uid=amAdmin,ou=People,dc=iplanet,dc=com" -w joshua \
-d "dc=iplanet,dc=com" -m <<EOF
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<!DOCTYPE DisplayProfile SYSTEM "jar://resources/psdp.dtd">
<ConditionalProperties condition="client" value="nokia">
<Collection name="foo">
<String name="foo1" value="nokia bar"/>
</Collection>
</ConditionalProperties>
EOF
$ dpadmin list -n test \
-u "uid=amAdmin,ou=People,dc=iplanet,dc=com" -w joshua \
-d "dc=iplanet,dc=com"
<Channel name="test" provider="testprovider">
<Properties>
<Collection name="foo">
<String name="foo1" value="bar"/>
</Collection>
<ConditionalProperties condition="client" value="nokia">
<Collection name="foo">
<String name="foo1" value="nokia bar"/>
</Collection>
</ConditionalProperties>
</Properties>
</Channel>
$ dpadmin modify -p test \
-u "uid=amAdmin,ou=People,dc=iplanet,dc=com" -w joshua \
-d "dc=iplanet,dc=com" -m <<EOF
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<!DOCTYPE DisplayProfile SYSTEM "jar://resources/psdp.dtd">
<ConditionalProperties condition="client" value="nokia">
<ConditionalProperties condition="locale" value="en">
<String name="abc" value="nokia en abc"/>
</ConditionalProperties>
</ConditionalProperties>
EOF
$ dpadmin list -n test \
-u "uid=amAdmin,ou=People,dc=iplanet,dc=com" -w joshua \
-d "dc=iplanet,dc=com"
<Channel name="test" provider="testprovider">
<Properties>
<Collection name="foo">
<String name="foo1" value="bar"/>
</Collection>
<ConditionalProperties condition="client" value="nokia">
<Collection name="foo">
<String name="foo1" value="nokia bar"/>
</Collection>
<ConditionalProperties condition="locale" value="en">
<String name="abc" value="nokia en abc"/>
</ConditionalProperties>
</ConditionalProperties>
</Properties>
</Channel>
이 예에서 Combine 옵션을 사용하여 조건적 속성을 추가합니다.
add
설명
이 하위 명령은 새로운 디스플레이 프로필 항목을 디스플레이 프로필에 추가합니다. 이 하위 명령을 사용하려면 추가할 항목이 디스플레이 프로필에 없어야 합니다. add 하위 명령은 표준 입력에서 또는 명령에 대한 인수로 지정된 하나 또는 여러 개의 파일에서 새로운 항목에 대한 데이터를 읽습니다. 새로운 항목에 대한 데이터는 XML이어야 하고 Sun ONE Portal Server 디스플레이 프로필 DTD를 따라야 합니다.
이 XML 데이터에는 항상 적합한 XML 헤더와 수정될 디스플레이 프로필 항목을 고유하게 정의하는 이름이 필요합니다. 적합한 XML 헤더의 예:
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<!DOCTYPE DisplayProfile SYSTEM "jar://resources/psdp.dtd">
참고
부록 B에 디스플레이 프로필 DTD가 실려 있습니다.
add 하위 명령의 의미는 추가하는 디스플레이 프로필 항목의 종류에 따라 달라집니다. 즉,
- 디스플레이 프로필 - 전체 디스플레이 프로필 문서를 지정된 LDAP 노드에 추가할 수 있습니다. 노드에 문서가 이미 있으면 오류가 보고됩니다. 새로운 디스플레이 프로필 문서를 추가할 때는 parent 옵션을 지정하지 말아야 합니다.
- 채널 또는 컨테이너 - 채널이나 컨테이너를 추가할 수 있습니다. parent 옵션이 있으면 주어진 이름에 대한 상위 디스플레이 프로필 항목이 찾아지고 이 상위 컨테이너에서 지정된 채널이나 컨테이너가 추가됩니다. parent 옵션이 없으면 상위 디스플레이 프로필 객체가 루트 디스플레이 프로필 항목인 것으로 취급되기 때문에 루트에서 지정된 채널이나 컨테이너 항목이 추가됩니다.
- 속성 - 모든 디스플레이 프로필 노드와 디스플레이 프로필 공급자 객체에 속성 번들이 필요하기 때문에 이는 이미 존재하며 추가할 수 없습니다. modify 하위 명령을 사용하십시오.
- 사용 가능 또는 선택 - 디스플레이 프로필 컨테이너에 사용 가능 및 선택 객체가 필요하기 때문에 이는 이미 존재하며 추가할 수 없습니다. modify 하위 명령을 사용하십시오.
- 문자열, 부울, 정수, 컬렉션 또는 로켈 - 디스플레이 프로필 항목 문자열, 부울, 정수, 컬렉션 또는 로켈 속성을 추가할 수 있습니다. 이 유형의 디스플레이 프로필 항목 속성을 추가하기 위해 parent 옵션을 지정해야 합니다. 지정된 상위에서 이름과 일치하는 디스플레이 프로필 노드(채널 또는 컨테이너) 또는 디스플레이 프로필 공급자(이 순서로)가 검색됩니다. 발견되면 주어진 디스플레이 프로필 속성이 디스플레이 프로필 노드 또는 디스플레이 프로필 공급자에 추가됩니다.
add 하위 명령은 다음 옵션을 취합니다.
- LDAP 데이터베이스에 액세스하기 위한 관리자의 구분 이름과 비밀번호(각각 -u 또는 --runasdn 및 -w 또는 --password 옵션). 이 옵션은 필수입니다.
- 추가할 디스플레이 프로필 문서 또는 항목을 추가해야 하는 디스플레이 프로필 문서 (-d 또는 --dn 옵션). 전역 수준 노드에 대한 -g 또는 --global 옵션으로 정의되는 추가할 디스플레이 프로필 항목. -g 또는 -d 옵션이 필요합니다.
- XML 입력이 포함된 파일의 이름(파일 인수).
- 디스플레이 프로필 노드 항목이 추가될 상위의 완전한 정규 이름(-p 또는 --parent 옵션).
구문
$ dpadmin add -u|--runasdn uid -w|--password password {(-g|--global)|(-d|--dn dn)} [-p|--parent parent] file|<<EOF
$ dpadmin add -h|--help
옵션
표 14-8에는 두 개의 열이 있습니다. 첫 번째 열은 add 하위 명령에 가능한 옵션, 인수 또는 피연산자이고 두 번째 열은 간단한 설명입니다. 다음 옵션이 지원됩니다.
예
$ dpadmin add -p SampleTabPanelContainer/Postal -u "uid=amAdmin,ou=people,o=sesta.com,o=isp" -w joshua -d "o=sesta.com,o=isp" <<EOF
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<!DOCTYPE DisplayProfile SYSTEM "jar://resources/psdp.dtd">
<Collection name="zipcodes">
<Integer value="98012"/>
<Integer value="98036"/>
<Integer value="94025"/>
<Integer value="95112"/>
</Collection>
EOF
이 예에서 이 명령은 표준 입력에서 지정된 "zipCodes"라는 컬렉션 속성을 SampleTabPanelContainer 컨테이너의 Postal 채널에 추가합니다.
remove
설명
이 하위 명령은 디스플레이 프로필에서 기존 디스플레이 프로필 항목을 제거합니다. 제거할 항목이 지정된 디스플레이 프로필 문서에 없으면 오류가 보고됩니다. 이 하위 명령은 type, parent 및 name 옵션을 취합니다.
type 옵션은 제거할 디스플레이 프로필 항목의 유형을 지정합니다. parent 옵션은 디스플레이 프로필 항목을 제거하려는 상위 디스플레이 프로필 객체의 완전한 정규 이름을 지정합니다. 상위 디스플레이 프로필 항목 유형은 제거하려는 디스플레이 프로필 객체의 유형에 따라 달라집니다. name 옵션은 제거할 항목의 이름을 지정합니다.
parent 및 name 옵션의 의미는 제거하려는 디스플레이 프로필 항목의 유형에 따라 달라집니다. 표 14-9에는 두 개의 열이 있으며 첫 번째 열은 유형 옵션에 가능한 값이고 두 번째 열은 정확히 무엇이 제거되는지 간단히 설명합니다.
remove 하위 명령은 다음 옵션을 취합니다.
- 각각 -u 또는 --runasdn 및 -w 또는 --password 옵션을 사용하여 LDAP 데이터베이스에 액세스하기 위한 관리자의 구분 이름과 비밀번호. 이 옵션은 필수입니다.
- -n 또는 --name 옵션을 사용하여 제거할 디스플레이 프로필 노드 항목의 이름. type=root일 때를 제외하고 이 옵션이 필요합니다.
- -d (--dn) 또는 -g (--global) 옵션을 사용하여 제거할 항목을 포함한 디스플레이 프로필 문서가 있는 LDAP 데이터베이스의 디스플레이 프로필 문서 노드. -d (--dn) 또는 -g (--global) 옵션이 필요합니다.
- -t 또는 --type 옵션을 사용하여 제거할 디스플레이 프로필 노드 항목의 유형. 이 옵션은 필수입니다.
- -p 또는 --parent 옵션을 사용하여 제거할 디스플레이 프로필 노드 항목 상위의 완전한 정규 이름.
구문
$ dpadmin remove -u|--runasdn uid -w|--password password {(-g|--global)|(-d|--dn dn)} [-n|--name name] [-p|--parent parent] -t|--type type
$ dpadmin remove -h|--help
옵션
표 14-10에는 두 개의 열이 있습니다. 첫 번째 열은 remove 하위 명령에 가능한 옵션, 인수 또는 피연산자이고 두 번째 열은 간단한 설명입니다. 다음 옵션이 지원됩니다.
예
예1
$ dpadmin remove -t property -p Bookmarks -n locations -u "uid=amAdmin,ou=people,o=sesta.com,o=isp" -w joshua -d "o=sesta.com,o=isp"
이 예에서 이 명령은 Bookmarks 라는 채널 또는 컨테이너에서 locations 속성을 제거합니다.
예2
$ dpadmin remove -t provider -n "pctest" -u "uid=amAdmin,ou=people,o=sesta.com,o=isp" -w joshua -g
전역 디스플레이 프로필에서 pctest 공급자를 제거합니다.
예3
$ dpadmin remove --type channel --parent TemplateTableContainer --name "Test" --runasdn "uid=amAdmin,ou=people,o=sesta.com,o=isp" --password joshua --dn "o=sesta.com,o=isp"
이 예에서 이 명령은 TemplateTableContainer라는 상위 컨테이너에 있는 Test 채널을 제거합니다.
예4
$ dpadmin list -n X -u "uid=amAdmin,ou=people,o=sesta.com,o=isp" -w joshua -d "o=sesta.com,o=isp"
<Container name="X" ...>
<Channels>
<Container name="Y" ...>
<Channels>
<Channel name="z" .../>
</Channels>
</Container>
</Channels>
</Container>
z 채널을 제거하기 위해 다음 명령 중 하나를 실행할 수 있습니다.
$ dpadmin remove -t channel -p X -n Y/z -u "uid=amAdmin,ou=people,o=sesta.com,o=isp" -w joshua -d "o=sesta.com,o=isp"
$ dpadmin remove -t channel -p X/Y -n z -u "uid=amAdmin,ou=people,o=sesta.com,o=isp" -w joshua -d "o=sesta.com,o=isp"
$ dpadmin remove -t channel -n X/Y/z -u "uid=amAdmin,ou=people,o=sesta.com,o=isp" -w joshua -d "o=sesta.com,o=isp"
batch
설명
batch 하위 명령은 여러 디스플레이 프로필 명령을 최적으로 처리할 수 있게 합니다. 이 하위 명령은 일괄 스크립트 파일(필수)에 있으며 순차적으로 실행됩니다. 오류가 발생하면 기본적으로 오류를 보고하고 종료합니다. -c 또는 --continue 옵션은 연속 처리 모드를 나타냅니다. 이 모드에서 오류가 발생하면 오류가 보고되고 dpadmin이 다음 하위 명령을 계속 진행합니다.
명령 일괄 스크립트는 텍스트(ASCII) 문서여야 하며 batch 하위 명령을 제외하고 dpadmin에 입력하기 위한 하위 명령의 수에 제한이 없습니다. 하위 명령은 단일 라인에서 입력해야 합니다(새로운 라인 문자는 명령의 끝을 나타냅니다). 각 하위 명령에 대해 명령줄에서 관리자의 구분 이름과 비밀번호를 지정해야 합니다. 하위 명령의 구문은 이 하위 명령을 쉘에 직접 입력했을 때와 완전히 동일합니다(dpadmin 부분 제외). 스크립트는 XML을 포함할 수 없기 때문에 XML 입력이 필요한 하위 명령은 파일에서 가져와야 합니다. 구분 이름(또는 DN)에 공백이 있는 경우, 주변에 이중 인용부호를 사용합니다.
예제 일괄 스크립트 파일(각 명령은 단일 라인에 있어야 함):
add -p PostalMailer -u uid=amAdmin,ou=People,dc=iplanet,dc=com -w joshua -d dc=iplanet,dc=com zipCodes.xml
add -p PostalStamps -u uid=amAdmin,ou=People,dc=iplanet,dc=com -w joshua -d dc=iplanet,dc=com zipCodes.xml stampRates.xml
add -p PostalRates -d "cn=hr role,dc=iplanet,dc=com" zipCodes.xml stampRates.xml
batch 하위 명령은 -c 또는 --continue 옵션을 취하며 -f 또는 --file을 사용하여 지정된 일괄 스크립트 파일의 이름이 필요합니다.
구문
$ dpadmin batch [-c|--continue] -u|--runasdn uid -w|--password password -f|--file batch-script-file
$ dpadmin batch -h|--help
옵션
표 14-11에는 두 개의 열이 있습니다. 첫 번째 열은 batch 하위 명령에 가능한 옵션, 인수 또는 피연산자이고 두 번째 열은 간단한 설명입니다. 다음 옵션이 지원됩니다.
옵션
표 14-12는 dpadmin 명령에 대한 요약입니다. 이 표는 부제목에 나열된 하위 명령별로 정리되어 있습니다. 이 표에는 두 개의 열이 있습니다. 첫 번째 열은 옵션, 인수 또는 피연산자이고 두 번째 열은 간단한 설명입니다. 다음 옵션이 지원됩니다.
par설명
par 명령은 지정된 .par 파일과 관련된 기능을 수행합니다. 채널이나 공급자를 Sun ONE Portal Server 안팎으로 내보내거나 가져오기 위해 사용할 수 있습니다.
구문
이 부분에서 par 명령 구문을 설명합니다. 한 명령줄에서 상세 이름 옵션과 단축 이름 옵션을 함께 사용하지 않는 것이 좋습니다.
단축 이름 형식
par containers -r uid -p password [-d] dn|global
par describe [-d] parfile
par export -r uid -p password [-m] [-d] -s staticdir [-v] parfile dn|global {exportfile|from=}...
par import -r uid -p password [-o] [-d] -s staticdir [-v] parfile [dn|global [op...]]
par import -r uid -p password -a [-d] -s staticdir [-v] parfile [dn|global]
상세 이름 형식
par containers --runasdn uid --password password [--debug] dn|global
par describe [--debug] parfile
par export --runasdn uid --password password [--modify] [--debug] --staticdir staticdir [--verbose] parfile dn|global {exportfile|from=}...
par import --runasdn uid --password password [--overwrite] [--debug] --staticdir staticdir [--verbose] parfile [dn|global [op...]]
par import --runasdn uid --password password --auto [--debug] --staticdir staticdir [--verbose] parfile [dn|global]
하위 명령
다음 하위 명령이 지원됩니다.
containers
설명
지정 디렉토리 서버 이름(또는 global)으로 표시된 특정 디스플레이 프로필 문서에서 사용 가능한 모든 컨테이너와 채널을 나열합니다. 다른 명령을 쉽게 만들어내기 위해 사용할 수 있습니다.
구문
par containers -r|--runasdn uid -p|--password password [-d|--debug] [-v|--verbose] dn|global
예
par containers -r "uid=amAdmin,ou=people,o=sesta.com,o=isp" -p joshua -d "o=sesta.com,o=isp"
이 예에서 이 명령은 LDAP 노드 "o=sesta.com,o=isp"에 있는 디스플레이 프로필 문서에서 사용 가능한 모든 컨테이너를 나열합니다.
describe
설명
항목과 항목에 정의된 내장 자동추출 작업을 포함하여 지정된 .par 파일의 내용을 설명합니다.
구문
par describe parfile
예
par describe myfile.par
이 예에서 myfile.par의 명령 결과 또는 설명은 다음과 같은 형태입니다.
export
설명
포털 서버에서 공급자나 채널 정보를 내보내어 지정된 .par 파일을 채웁니다. 이 명령은 .par 파일, 업데이트할 필요한 디스플레이 프로필 문서에 해당하는 디렉토리 서버 이름 인수(또는 키워드 global) 그리고 적어도 하나의 exportfile이나 from 사양을 취합니다. from 사양에는 내보내기 파일과 동일한 정보가 들어 있으며 "lines"가 세미콜론으로 구분된다는 점만 다릅니다.
-m 옵션 없이 par export 명령을 사용하면 .par 파일이 만들어집니다. -m 옵션이 있는 par export 명령은 공급자, 채널 또는 컨테이너를 정의하는 기존 .par 파일을 업데이트하거나 이 파일에 추가할 때 사용됩니다.
구문
par export -r|--runasdn uid -p|--password password [-d|--debug] -s|--staticdir staticdir [-v|--verbose] parfile dn|global {exportfile|from=}...
par export -r|--runasdn uid -p|--password password [-d|--debug] -s|--staticdir staticdir [-v|--verbose] -m|--modify parfile dn|global {exportfile|from=}...
예
par export -r "uid=amAdmin,ou=people,dc=sesta,dc=com" -p joshua mychannel.par "o=sesta.com,o=isp" myexport.txt
여기서 myexport.txt에는 다음이 들어 있습니다.
from: channel mychannel
directory: templateBaseDir . mychannel
description: this is my JSP based channel
이 예에서 이 명령은 mychannel에 대한 채널 정의와 템플리트 파일을 "dc=sesta,dc=isp" dn에서 mychannel.par로 내보냅니다. 또한 JSPProvider 채널이었던 경우 directory 라인이 로켈 버전을 포함하여 모든 .jsp 파일을 전달합니다.
import
설명
지정된 .par 파일에서 포털 서버로 객체를 가져옵니다. 이 명령은 .par 파일과 디스플레이 프로필 문서에 대한 옵션 인수를 취하여 디렉토리 서버의 지적된 디스플레이 노드(또는 키워드 global로 표시된 루트 디스플레이 프로필)로 객체와 수행할 작업을 가져옵니다. 이러한 사항들이 지정되지 않으면 par 파일에서 취해집니다. auto 옵션은 .par 파일에 들어 있는 자동추출 작업을 수행하려고 한다는 것을 나타낼 때 사용할 수 있습니다.
새 채널을 추가하려면 -o 옵션과 함께 또는 옵션 없이 par import 명령을 사용할 수 있습니다. 채널이 이미 있으면 par import 명령과 함께 -o 옵션을 사용하여 이전 채널을 완전히 교체(덮어쓰기)해야 합니다. 이 하위 명령을 사용하여 채널뿐 아니라 공급자를 내보낼 수 있습니다.
구문
par import -r|--runasdn uid -p|--password password [-o] [-d|--debug] -s|--staticdir staticdir [-v|--verbose] parfile [dn|global [op...]]
par import -r|--runasdn uid -p|--password password -a|--auto [-d|--debug] -s|--staticdir staticdir [-v|--verbose] parfile [dn|global]
예
예1
par import -r "uid=amAdmin,ou=people,o=sesta.com,o=isp" -p joshua --auto myfile.par "o=sesta.com,o=isp"
이 예에서 이 명령은 myfile.par 파일에서 채널을 추출하는 것이 myfile.par par 파일에 정의된 자동 작업이라면 이를 수행합니다.
예2
par import -r "uid=amAdmin,ou=people,o=sesta.com,o=isp" -p joshua myfile.par "o=sesta.com,o=isp" "entry=mychannel,channel=anothername,avail=topcontainer"
이 예에서 이 명령은 채널을 명시적으로 추출하여 대상 dn에 다른 이름으로 설치하여 topcontainer 컨테이너에서 이를 사용할 수 있도록 합니다.
옵션
표 14-13에는 두 개의 열이 있습니다. 첫 번째 열은 par 명령에 가능한 옵션이고 두 번째 열은 간단한 설명입니다. 이 명령은 다음 옵션을 지원합니다 (알파벳 순서로 나열).
표 14-13 par 명령 옵션
옵션
설명
-a 또는 --auto
import 명령과 함께 사용하여 .par 파일의 자동추출 작업을 적용합니다. 이 경우에 명령줄에 지정된 작업이 없어야 합니다. dn 인수도 지정할 수 있습니다. 지정하는 경우 자동추출 작업의 dn을 대체합니다. 명령줄에서 지정하는 작업은 무시됩니다.
-d 또는 --debug
오류 메시지에 대한 추가 디버깅 정보를 생성할 때 이 옵션을 지정합니다.
-m 또는 --modify
export 명령과 함께 사용하여 기존 .par 파일을 대체하지 않고 업데이트합니다. 항목에 추가되는 새로운 파일은 이전 파일을 보충하거나 대체합니다. .par 파일을 사용하여 기존 공급자나 채널에 새 파일을 추가할 때도 이 명령을 사용합니다.
-o 또는 --overwrite
import 명령과 함께 사용하여 기존 채널을 대체합니다.
-p 또는 --password
인증을 위한 비밀번호를 지정합니다. describe를 제외한 모든 하위 명령에 필요합니다. 지정하지 않으면 par 유틸리티가 이를 묻습니다.
-r 또는 --runasdn
인증을 위한 사용자의 구분 이름을 지정합니다. describe를 제외한 모든 명령에 필요합니다. 제공하지 않으면 par 유틸리티가 이를 묻습니다. 다음 형식을 사용합니다. uid=userName,ou=people,o=organizationName,o=organizationalUnit
-s 또는 --staticdir
가져오기나 내보내기에 사용될 정적 컨텐트 디렉토리의 호스트별 디렉토리를 정의합니다.
-v 또는 --verbose
작업이 실행될 때 이를 설명합니다. import 및 export 명령과 함께 사용합니다.
-V 또는 --version
버전, 법률 고지 등과 같은 유틸리티와 관련된 설명 정보와 기타 유사한 정보를 표준 출력으로 인쇄하도록 par에 이 옵션을 지정합니다. 이 옵션이 있으면 모든 하위 명령과 기타 모든 옵션이 무시됩니다.
-?
모든 하위 명령에 대한 도움말을 가져옵니다.
인수
표 14-14에는 두 개의 열이 있습니다. 첫 번째 열은 par 명령에 가능한 인수이고 두 번째 열은 간단한 설명입니다. 이 명령은 다음 인수를 취합니다.
표 14-14 par 명령 인수
인수
설명
dn
디렉토리 서버에서 액세스할 구분 노드를 지정합니다. 다음 형식을 사용합니다. "o=organizationName,o=organizationalUnit"
전역
디스플레이 프로필 문서에 액세스하도록 LDAP에서 전역 수준 노드를 지정합니다.
exportfile
이 파일들은 각각 .par 파일의 항목(공급자, 채널 또는 공급자/채널 조합)에 해당하며 단순히 지정된 .par 파일에 삽입할 데이터를 지정합니다. 정보가 명령줄에 나열하기에 너무 큰 경우 작은 파일일 수 있습니다. 자세한 내용은 내보내기 파일를 참조하십시오.
from
명령줄에 지정하면 "from" 라인을 포함하고 이어 동등("=") 부호가 오며 세미콜론(";")으로 다른 라인을 구분하는 내보내기 파일과 동일한 것으로 취급됩니다. 라인 속성에 대한 자세한 내용은 표 14-15의 from을 참조하십시오.
op
수행할 작업을 지정합니다. 자세한 내용은 작업를 참조하십시오.
parfile
작업 대상 par 파일을 지정합니다. 즉, 가져오거나 내보내거나 설명할 par 파일을 나타냅니다.
내보내기 파일
이 파일은 단순히 .par 파일에 삽입할 데이터를 지정합니다. 이 파일은 키워드를 포함하고 이어 콜론과 공백 구분 필드가 오는 라인으로 구성됩니다. 라인 "from:"은 필수이며 파일의 첫 라인이어야 합니다. "#"으로 시작되는 라인은 주석으로 처리됩니다.
표 14-15에는 두 개의 열이 있습니다. 첫 번째 열은 가능한 라인 키워드이고 두 번째 열은 간단한 설명입니다.
표 14-15 내보내기 파일 라인 속성
라인
설명
from: types name
"from"은 내보낼 실체를 나타내며 types는 "channel", "provider" 또는 "channel,provider" 및 "channel+provider"가 될 수 있습니다. name은 채널 이름 또는 공급자를 내보내는 경우 공급자 이름을 나타냅니다. 이름에 공백(+), 콤마(%2C), 콜론(%3A), 세미콜론(%3B), 더하기 기호(%2B) 또는 퍼센트 기호(%25)가 있는 경우 name은 URL로 인코딩해야 합니다.
auto: none
"auto"는 항목에 자동추출 작업을 지정합니다. op 인수를 취하며 이어 작업이 옵니다. "none"을 입력하여 자동추출이 되지 않도록 할 수도 있습니다. "auto:" 라인을 지정하지 않으면 기본 자동추출이 생성됩니다. 기본 작동은 채널 및/또는 공급자를 원래 이름으로 추출하는 것입니다.
auto: op
file: root|. path [types]
"file"은 속성 설정에 따라 파일이 포함된다는 것을 나타냅니다. 속성은 기본적으로 /etc/opt/SUNWps/desktop/desktopconfig.properties 파일에 있는 "desktop properties" 파일에서 또는 내보내거나 가져오는 항목에 대한 getProperty() 호출로 알 수 있는 디스플레이 프로필에서 가져올 수 있습니다. root는 나머지 파일의 경로를 지정합니다. root는 디렉토리에 해당하는 속성 이름입니다. root가 "."으로 주어지면 파일이 웹 서버의 doc 루트에 있는 정적 컨텐트인 것으로 취급됩니다. 파일에 연관시킬 작업의 종류를 "channel"을 기본으로 하여 지정할 수도 있습니다. types는 "channel", "provider" 또는 "channel,provider" 및 "channel+provider"가 될 수 있습니다.
class: class [types]
"class"는 클래스 파일이 항목으로 패키징된다는 것을 나타내며 옵션으로 클래스 파일이 연관될 작업의 유형을 지정할 수도 있습니다. 지정하지 않으면 "provider"가 선택됩니다. types는 "channel", "provider" 또는 "channel,provider" 및 "channel+provider"일 수 있으며 둘 모두 지정하는 경우 공백을 사용할 수 있습니다.
directory: root|. dir +|.|filter [types]
"directory"는 "files" 라인으로 입력했을 때처럼 디렉토리가 아닌 모든 파일이 포함되는 전체 디렉토리 검색을 의미합니다. 여기에는 반복적 디렉토리 검색에 있어야 하는 디렉토리 구성 요소인 "filter"를 지정하는 것이 포함됩니다. root는 디렉토리의 루트를 지정하며 또는 정적 컨텐트를 나타내기 위해 "."이 사용됩니다. dir은 검색할 루트 아래의 디렉토리이며 루트 자체에서 시작하기 위해 "."으로 주어질 수 있습니다. filter는 디렉토리에 있어야 하는 필터 구성 요소를 지정하며 반복적 하강을 함축하고 있습니다. 필터 없이 반복적 하강을 위해 "+"로 주어지거나 반복적 하강이 없는 경우(실제 디렉토리의 컨텐트)를 위해 "."로 주어질 수 있습니다. 작업의 종류를 "channel"을 기본으로 하여 지정할 수도 있습니다. types는 "channel", "provider" 또는 "channel,provider" 및 "channel+provider"가 될 수 있습니다.
entry: name
"entry" .par 파일에서 사용된 항목 이름을 지정합니다. 지정하지 않으면 "from: " 라인의 이름이 기본적으로 사용됩니다.
desc: text
여러 "desc" 라인이 나타날 수 있으며 항목으로 패키징되어 사용자가 볼 수 있는 설명으로 결합됩니다.
작업
내보내기 파일이나 명령줄에서 값을 가질 수 있는 콤마로 분리된 키워드 목록으로 각 작업(op)을 지정해야 하며 대부분 옵션입니다. 작업은 빈 또는 공백으로 구분된 목록에 있습니다. 각 작업은 다음 형식입니다.
dpnode=dn,entry=name,provider[=name],channel[=name],container=name[,av ail=name,selected]
dpnode
디렉토리 서버에서 이 작업이 대상으로 하는 디스플레이 프로필 문서에 대한 구분 이름(또는 키워드 global)을 지정합니다. 지정하고 있는 컨텍스트가 이미 이를 제공했다면 적용하지 않아도 됩니다. 예를 들어, import 하위 명령이 구분 이름을 정의하는 경우 파일의 구분 이름은 무시됩니다.
entry
.par 파일의 항목 이름을 지정합니다. 다음의 경우는 필요 없습니다.
항목이 지정되지 않으면 par 유틸리티가 파일의 첫 번째 항목을 기본적으로 사용합니다.
provider
공급자 추출이 이루어진다는 것을 나타냅니다. 이름이 없으면 .par 파일에서 공급자로 패키징된 이름이 사용됩니다.
channel
채널 추출이 이루어진다는 것을 나타냅니다. 이름이 없으면 .par 파일에서 채널에 제공된 이름이 사용됩니다.
container
채널 추출에만 적용되며 채널이 삽입될 컨테이너 채널을 나타냅니다. 생략하면 채널이 디스플레이 프로필 문서 루트에서 "channels" 요소에 삽입됩니다.
avail
채널 추출에만 적용되며 "avail" (또는 available) 목록이 새로운 채널에 대한 참조를 받을 컨테이너를 나타냅니다. 생략하면 새 채널 참조가 만들어지지 않습니다.
selected
"avail"이 사용된 경우에만 적용됩니다. "avail" 목록이 참조를 받은 컨테이너의 "selected" 목록에도 참조가 들어 있다는 것을 나타냅니다.
op 정보가 par import 명령과 .par 파일 모두에 있으면 명령 정보가 우선합니다.
Par 파일
이 부분에는 par 파일 형식에 대한 보충 정보가 들어 있습니다. 이 정보는 par 명령을 실행하는데 필요하지 않습니다.
par 파일은 채널, 공급자 및 그와 관련된 파일을 전달하기 위한 분명한 항목을 갖는 jar 파일입니다. 공급자, 채널 또는 둘 모두의 유연한 설치를 위한 것입니다. .par 파일에는 4가지 주요 파일 유형이 있습니다.
Par 파일 컨텐트
표 14-16에는 두 개의 열이 있습니다. 첫 번째 열은 필요한 전역 헤더이고 두 번째 열은 간단한 설명입니다. .par 파일에는 다음 헤더가 있어야 합니다.
표 14-16 전역 헤더
헤더
설명
PS-Version
포털 서버에 특정한 .par 파일의 버전 번호를 지정합니다. 이것이 .par 파일인지도 확인합니다.
PS-DefaultEntry
명명되지 않은 항목이 관련된 작업에 사용되는 항목의 이름을 지정합니다.
PS-DPRoot
각각 parEntry 문서, 클래스, 속성 기반 파일 및 정적 컨텐트에 대한 아카이브의 루트 디렉토리를 나타냅니다. 지정하지 않으면 해당 파일이 아카이브 맨 위에 자리합니다.
PS-ClassRoot
PS-PBFileRoot
PS-StaticRoot
.par 파일에 각 parEntry XML 파일에 대한 명명된 항목이 있어야 합니다. 표 14-17에는 두 개의 열이 있으며 첫 번째 열은 가능한 헤더이고 두 번째 열은 간단한 설명입니다. 명명된 각 항목에 대한 부분에 다음 헤더가 포함될 수 있습니다.
표 14-17 명명된 항목 헤더
헤더
설명
PS-EntryName
항목의 명령 가시적 이름을 지정합니다.
PS-AutoExtract
항목에 대한 자동추출 작업이 있으면 이를 지정합니다.
PS-Include
실제 아카이브 경로로 지정되는 콤마로 분리된 보관 파일 목록을 포함합니다. 경로는 "root" 사양에 따라 이들이 어떤 파일 유형인지를 나타냅니다. 파일에는 파일이 적용되는 작업의 유형에 해당하는 괄호 숫자가 붙습니다(공급자의 경우 1, 채널의 경우 2로 마스크). 항목과 관련된 XML 문서 이외에 파일이 없으면 이를 무시할 수 있습니다.
아무 것도 명명되지 않은 경우에 기본 항목이 사용되기 때문에 .par 파일에 하나의 항목만 있으면 파일 조작에서 이름을 지정하지 않아도 됩니다.
rwadmin설명
rwadmin 명령을 통해 관리자는 iPlanet Directory Server Access Management Edition Rewriter 서비스에서 사용할 수 있는 Rewriter 데이터를 관리할 수 있습니다.
구문
이 부분에서는 rwadmin 명령 구문을 설명합니다.
단축 이름 형식
rwadmin list -u uid -w password [-l locale] [-b] [-h]
rwadmin store -u uid -w password [-l locale] [-b] [-h] filename
rwadmin get -r rulesetname -u uid -w password [-l locale] [-b] [-h] [filename]
rwadmin remove -r rulesetname -u uid -w password [-l locale] [-b] [-h]
상세 이름 형식
rwadmin list --runasdn uid --password password [--locale locale] [--verbose] [--version] [--help]
rwadmin store --runasdn uid --password password [--locale locale] [--verbose] [--version] [--help] filename
rwadmin get --rulesetid rulesetname --runasdn uid --password password [--locale locale] [--verbose] [--version] [--help] [filename]
rwadmin remove --rulesetid rulesetname --runasdn uid --password password [--locale locale] [--verbose] [--version] [--help]
하위 명령
다음 하위 명령이 지원됩니다.
list
설명
이 명령은 사용 가능한 모든 규칙 집합 이름을 나열합니다.
구문
rwadmin list -u|--runasdn uid -w|--password password
예
rwadmin list -u "uid=amAdmin,ou=people,o=sesta.com,o=isp" -w joshua
이 예에서 이 명령은 사용 가능한 모든 규칙 집합의 이름을 표시합니다.
store
설명
이 명령은 로컬 파일 시스템에서 이용할 수 있는 규칙을 iPlanet Directory Server Access Management Edition 에 저장합니다. DefaultRuleSet을 저장하려면 다음 명령을 사용하십시오.
rwadmin store -u uid -w password /resources/DefaultRuleSet.xml
여기서 /resources/DefaultRuleSet.xml은 rewriter.jar 파일에 저장된 규칙 집합의 위치입니다. 이 명령이 실행될 때 같은 아이디를 가진 규칙 집합이 이미 존재하면 새로운 데이터가 저장되지 않습니다. 기존 아이디를 삭제하고 다시 시도하십시오.
구문
rwadmin store -u|--runasdn uid -w|--password password filename
예
rwadmin store -u "uid=amAdmin,ou=people,o=sesta.com,o=isp" -w joshua /opt/data/ExampleRuleSet.xml
이 예에서 이 명령은 /opt/data/ExampleRuleSet.xml에서 사용할 수 있는 규칙을 iPlanet Directory Server Access Management Edition 에 저장합니다.
get
설명
이 명령은 iPlanet Directory Server Access Management Edition 에서 규칙 집합을 가져옵니다. filename이 제공되면 검색된 규칙 집합이 지정 파일에 저장되고 그렇지 않은 경우는 stdout (또는 콘솔)에 표시됩니다.
구문
rwadmin get -r|--rulesetid ruleset -u|--runasdn uid -w|--password password [filename]
예
예1
rwadmin get -r "ExampleRuleSet" -u "uid=amAdmin,ou=people,o=sesta.com,o=isp" -w joshua
이 예에서 이 명령은 iPlanet Directory Server Access Management Edition 에서 ExampleRuleSet이라는 규칙 집합을 검색하여 콘솔에 표시합니다.
예2
rwadmin get -r "ExampleRuleSet" -u "uid=amAdmin,ou=people,o=sesta.com,o=isp" -w joshua /tmp/abc.xml
이 예에서 이 명령은 iPlanet Directory Server Access Management Edition에서 ExampleRuleSet이라는 규칙 집합을 검색하여 /tmp 디렉토리에 있는 abc.xml 파일에 저장합니다.
remove
설명
이 명령은 iPlanet Directory Server Access Management Edition 에서 규칙 집합을 삭제합니다. 이 명령은 경고 없이 규칙 집합을 삭제합니다.
구문
rwadmin remove -r|--rulesetid ruleset -u|--runasdn uid -w|password password
예
rwadmin remove -r "ExampleRuleSet" -u "uid=amAdmin,ou=people,o=sesta.com,o=isp" -w joshua
이 예에서 이 명령은 iPlanet Directory Server Access Management Edition 에서 이름이 ExampleRuleSet인 규칙 집합을 삭제합니다.
옵션
표 14-18은 rwadmin 명령에 대한 요약입니다. 여기에는 두 개의 열이 있습니다. 첫 번째 열은 가능한 옵션이고 두 번째 열은 간단한 설명입니다. 이 명령은 다음 옵션을 지원합니다(알파벳 순서로 나열).
표 14-18 rwadmin 명령 옵션
옵션
설명
-b 또는 --verbose
명령을 실행할 때 어떤 결과가 생기는지에 대한 자세한 정보를 제공할 때 rwadmin에 이 인수를 지정합니다.
filename
iPlanet Directory Server Access Management Edition 으로 가져올 때 규칙 집합 데이터를 가져올 파일을 나타내기 위해 store 하위 명령과 함께 이 옵션을 지정합니다. 검색된 규칙 집합 데이터를 저장해야 하는 파일을 나타낼 때 get 하위 명령과 함께 이를 지정합니다.
-h 또는 --help
간략한 도움말 페이지를 표준 출력으로 인쇄할 때 rwadmin에 이 옵션을 지정합니다. 하위 명령이 없으면 rwadmin에 대한 일반 도움말 페이지가 인쇄됩니다. rwadmin 하위 명령 중 하나가 있으면 이 하위 명령에 특정한 간략한 도움말 페이지가 인쇄됩니다.
-l 또는 --locale
모든 출력 메시지를 특정 로켈로 현지화할 때 이 옵션을 사용합니다. 지정하지 않으면 시스템 로켈이 기본적으로 사용됩니다.
-r 또는 --rulesetid
작업에 사용될 규칙 집합의 이름을 지정할 때 이 옵션을 사용합니다.
-u 또는 --runasdn
디렉토리 서버에 바인딩하기 위해 사용할 사용자의 구분 이름에 이 옵션을 지정합니다.
--version
버전, 법률 고지 등과 같은 유틸리티와 관련된 설명 정보와 기타 유사한 정보를 표준 출력으로 인쇄하도록 rwadmin에 이 옵션을 지정합니다. 이 옵션이 있으면 모든 하위 명령과 기타 모든 인수가 무시됩니다.
-w 또는 --password
디렉토리 서버에 바인딩하기 위해 사용되는 사용자의 구분 이름 비밀번호에 이 옵션을 지정합니다.
rdmgr설명
rdmgr 명령은 검색 서비스를 이용할 때 사용되는 주된 명령입니다. 관리자에게 자원 설명(RD)에서 사용되는 것과 데이터베이스 관리를 위해 사용되는 두 종류의 하위 명령이 제공됩니다. rdmgr 명령은 일반적으로 /server-instance-directory/deployment_uri 디렉토리인 검색 가능한 Portal Server 인스턴스 디렉토리에서 실행됩니다. 이는 설치 시에 선택한 배포 URI 경로입니다. 기본 Portal Server 설치를 선택한 경우는 /var/opt/SUNWps/https-servername/portal 디렉토리입니다. 여기서 servername의 값은 기본 Portal Server 인스턴스 이름입니다(Portal Server의 완전한 정규 이름).
구문
rdmgr 명령의 일반적 구문은 다음과 같습니다.
RD 하위 명령은 더 구체적으로 다음 구문을 따릅니다.
데이터베이스 관리 하위 명령은 더 구체적으로 다음 구문을 따릅니다.
-l number를 사용하여 어떤 RD 또는 데이터베이스 하위 명령에 대한 로그 수준의 수를 설정할 수 있습니다. 1을 설정(기본값)하면 모든 rdmgr 명령이 기록됩니다. 숫자가 높을수록 로그 파일에 자세한 내용이 담깁니다. 가능한 범위는 1~100입니다. 이 옵션을 지정하지 않으면 이 명령은 search.conf 파일의 debug-loglevel이 정의하는 설정을 사용합니다. 로그 파일 이름은 search.conf 파일에 있는 rdmgr-logfile로 정의됩니다.
여기서 -c search.conf 옵션은 search.conf 파일의 위치를 제공합니다. 이 옵션을 사용하지 않으면 기본값은 현재 디렉토리에 있는 config/search.conf입니다. search.conf 파일에는 설정한 모든 특정 검색 값이 나열됩니다.
-p progress를 사용하여 RD나 데이터베이스 하위 명령의 진행 상황을 나타낼 수 있습니다. -p만 입력하면 진행 상황이 stdout에 표시됩니다.
하위 명령
다음 하위 명령이 지원됩니다.
자원 설명 하위 명령
설명
RD 하위 명령을 통해 관리자는 RD를 삽입하거나 교체, 보기로 필터링한 RD 병합, 보기로 필터링한 RD 검색, RD 삭제 및 RD 카운트를 일괄 처리할 수 있습니다. 표 14-19에는 두 개의 열이 있으며 첫 번째 열에는 하위 명령을, 두 번째 열에는 간단한 설명이 있습니다.
표 14-19 rdmgr RD 하위 명령
하위 명령
설명
-u
RD를 삽입 또는 교체합니다. 아무 것도 언급되지 않은 경우 이 하위 명령이 기본 하위 명령입니다.
-m
보기로 필터링한 RD를 병합합니다.
-g
보기로 필터링한 RD를 검색합니다.
-d
RD를 삭제합니다.
-n
RD를 카운트합니다.
-U
SOIF의 데이터베이스를 stdout으로 덤프합니다.
-L
데이터베이스에서 stdout으로 선택 필드를 나열합니다. -a att 옵션이 필요합니다.
구문
# rdmgr [-umgdnUL] [-ACSTNPq] [-a att,att,...] [-b number]
[-c search.conf] [-i charset] [-o charset] [-j number] [-l number]
[-p progress] [-r number] [-s schema] [-y dbname] [filename|-Q query]
옵션
표 14-20에는 두 개의 열이 있으며 첫 번째 열에는 옵션 또는 인수를, 두 번째 열에는 간단한 설명이 있습니다. 다음 옵션이 지원됩니다.
표 14-20 rdmgr RD 하위 명령 옵션
인수/피연산자
설명
-A
기본 검색 디렉토리에 있는 config/schema.rdm 파일에서 스키마 별칭을 사용하지 마십시오. u 및 m 하위 명령과 함께 사용합니다.
-C
데이터베이스가 없는 경우 데이터베이스를 만들지 마십시오. u 및 m 하위 명령과 함께 사용합니다.
-S
시키마 점검을 비활성화시킵니다. u 및 m 하위 명령과 함께 사용합니다.
-T
분류법에서 사용됩니다. 분류법은 데이터베이스 컨텐트를 찾아보거나 분류할 때 사용되며 기본 검색 디렉토리의 config/taxonomy.rdm 파일에 있습니다. 자원 설명 명령과 함께 사용합니다.
-N
이 명령에서 지정하는 기능은 자원 설명의 비영구적 데이터에만 사용됩니다. 데이터베이스의 RD는 영구적 및 비영구적 데이터가 합쳐진 것입니다.
-P
이 명령에서 지정하는 기능은 자원 설명의 영구적 데이터에만 사용됩니다. 데이터베이스의 RD는 영구적 및 비영구적 데이터가 합쳐진 것입니다.
-q
종료 시 SOIF 입력 파일을 삭제합니다. u, m, g 및 d 하위 명령과 함께 사용합니다.
-a att,att...
속성 보기 목록을 지정합니다. att 이름은 대소문자를 구분하지 않으며 스키마에 정의되었는지 여부에 상관 없이 어떤 속성도 될 수 있습니다(예: author 또는 title). class-1, class-2 및 class-3과 같이 여러 값의 att가 있는 경우 class를 att 이름으로만 입력합니다.
-b number
인덱스 일괄 처리 크기를 이 RD 숫자로 설정합니다. u 및 m 하위 명령과 함께 사용합니다.
-c search.conf
search.conf 파일이 있는 위치를 지정합니다. 이 옵션을 사용하지 않으면 기본값은 기본 검색 디렉토리에 있는 config/search.conf 파일입니다. 그렇지 않으면 파일의 완전한 경로를 제공해야 합니다.
-i charset|-o charset
-i 옵션은 입력 SOIF 스트림의 문자 집합을 지정합니다. -o 옵션은 출력 SOIF 스트림의 문자 집합을 지정합니다. 예를 들면 ISO8859-1, UTF-8, UTF-16 등과 같습니다. ISO8859-1에서 ISO8859-15까지의 문자 집합이 지원됩니다. u, m 및 d 하위 명령과 함께 -i를 사용하십시오. g, U 및 L 하위 명령과 함께 -o를 사용하십시오.
-j number
검색 결과의 수를 제한합니다. u 하위 명령과 함께 사용합니다. 언급하지 않으면 Q 옵션(기본값 20)의 경우만 제외하고 기본값이 무제한이 됩니다.
-l number
로그 수준을 숫자로 설정합니다. 1을 설정(기본값)하면 모든 rdmgr 명령이 기록됩니다. 숫자가 높을수록 로그 파일에 자세한 내용이 담깁니다. 가능한 수준은 1~100입니다. 모든 하위 명령에서 사용할 수 있습니다.
-p {stdout|stderr|
filename}
stdout, stderr 또는 filename 파일로 진행 상황을 인쇄 또는 표시합니다. 모든 하위 명령과 함께 사용할 수 있습니다. 타이밍 정보는 초 단위로 보고됩니다.
-r number
진행 상황 옵션과 함께 사용합니다. 각 RD number마다 보고서가 생성됩니다. 기본값은 500입니다. u, m, g, d 및 U 하위 명령과 함께 사용합니다.
-s schema
스키마 정의 파일을 지정합니다. 이 옵션을 사용하지 않으면 기본값은 검색 서버 인스턴스 디렉토리에 있는 config/search.rdm 파일입니다.
-y dbname
검색 데이터베이스 이름을 지정합니다. 기본 데이터베이스 이외의 데이터베이스에서 이 명령을 실행하는 경우에 이 옵션을 사용해야 합니다. 기본 데이터베이스는 datbase-name=logicaldbname 레이블이 붙은 config/search.conf 파일에 정의된 데이터베이스입니다.
filename|-Q query
이 입력 옵션은 u, m, g 및 d 하위 명령과 함께 사용합니다.
filename은 SOIF 형식으로 기본 스키마(다른 스키마에는 -s 옵션 사용)를 사용하는 RD 파일입니다.
query는 일반 검색 쿼리입니다.
예
예1
환경 변수 LD_LIBRARY_PATH를 /opt/SUNWps/lib로 설정합니다.
/var/opt/SUNWps/https-sesta.com/portal 디렉토리에서 다음을 입력합니다.
# /opt/SUNWps/bin/rdmgr -U
이 예에서 자원 설명의 전체 기본 데이터베이스가 UTF-8 SOIF 형식으로 stdout에 인쇄됩니다.
예2
/var/opt/SUNWps/https-sesta.com/portal의 기본 검색 디렉토리에서
# /opt/SUNWps/bin/rdmgr -d -Q java
이 예에서는 어느 위치에서든 자바를 가지고 있는 모든 자원 설명이 삭제됩니다.
데이터베이스 관리 하위 명령
설명
데이터베이스 하위 명령을 통해 관리자는 검색 데이터베이스 최적화, 데이터베이스 자르기 또는 비우기, 데이터베이스 인덱스의 재구성, 데이터베이스에서 만료된 RD 삭제 그리고 데이터베이스 복구 등의 작업을 할 수 있습니다. 표 14-21에는 두 개의 열이 있으며 첫 번째 열은 하위 명령이고 두 번째 열은 간단한 설명입니다.
표 14-21 rdmgr 데이터베이스 관리 하위 명령
하위 명령
설명
-O
데이터베이스를 최적화합니다. 기본 데이터베이스 이외의 데이터베이스에서 이 하위 명령을 실행하는 경우에 -y 옵션을 사용해야 합니다. 기본 데이터베이스는 datbase-name=logicaldbname 레이블이 붙은 config/search.conf 파일에 정의된 데이터베이스입니다. 예를 들어 기본값은 datbase-name=default이고 기본 데이터베이스 디렉토리는 db/default입니다.
데이터베이스는 보통 최적화할 필요가 없습니다.
-X
데이터베이스를 자르거나 비웁니다. 기본 데이터베이스 이외의 데이터베이스에서 이 하위 명령을 실행하는 경우에 -y 옵션을 사용해야 합니다. 인덱스에 사용한 디스크 공간은 복구되지만 주 데이터베이스가 사용한 디스크 공간은 복구되지 않고 데이터베이스에 새 데이터가 추가될 때 다시 사용됩니다.
-I
데이터베이스의 인덱스를 다시 구성합니다. 기본 데이터베이스 이외의 데이터베이스에서 이 하위 명령을 실행하는 경우에 -y 옵션을 사용해야 합니다.
-E
데이터베이스에서 만료된 RF를 삭제합니다. 기본 데이터베이스 이외의 데이터베이스에서 이 하위 명령을 실행하는 경우에 -y 옵션을 사용해야 합니다.
-R
모든 데이터베이스를 복구합니다. 이 명령은 전역 명령이며 옵션이 없습니다. 이 명령을 실행하기 전에 기타 rdmgr 인스턴스와 주 검색 서버를 포함하여 모든 데이터베이스 프로세스를 중단해야 합니다.
-G
데이터베이스를 다시 분할합니다. 이 명령에는 옵션이 없습니다. 파티션은 datbase-partitions=p1,p2,p3,... 레이블이 붙은 config/search.conf 파일에서 정의됩니다. 여기서 p1, p2 및 p3은 파티션의 파일 이름입니다. 이 명령을 실행한 후에 서버를 다시 시작해야 합니다.
-B
데이터베이스를 완전히 삭제합니다. 모든 디스크 공간을 복구합니다. 이 하위 명령을 실행할 때는 인덱스 구성이 없어야 하며 포털 서버가 꺼져 있어야 합니다.
-L
데이터베이스에서 stdout으로 선택 필드를 나열합니다. -a att 옵션이 필요합니다. 기본 데이터베이스 이외의 데이터베이스에서 이 하위 명령을 실행하는 경우에 -y 옵션을 사용해야 합니다.
구문
# rdmgr [-OXIERGBL] [-ASTDVNP] [-a att,att,...] [-b number]
[-c search.conf] [-j number] [-l number] [-p progress] [-r number]
[-s schema] [-y dbname]
옵션
표 14-22에는 두 개의 열이 있으며 첫 번째 열에는 옵션 또는 인수를, 두 번째 열에는 간단한 설명이 있습니다. 다음 옵션이 지원됩니다.
표 14-22 rdmgr 데이터베이스 관리 하위 명령 옵션
인수/피연산자
설명
-A
기본 검색 디렉토리에 있는 config/schema.rdm 파일에서 스키마 별칭을 사용하지 마십시오. I 하위 명령과 함께 사용합니다.
-S
시키마 점검을 비활성화시킵니다. I 하위 명령과 함께 사용합니다.
-T
분류법에서 사용됩니다. 분류법은 데이터베이스 컨텐트를 찾아보거나 분류할 때 사용되며 기본 검색 디렉토리의 config/taxonomy.rdm 파일에 있습니다. O, X, I, E, B, U 및 L 하위 명령과 함께 사용합니다.
-D
데이터베이스만 업데이트하며 인덱스는 업데이트하지 않습니다. E 및 X 명령과 함께 사용합니다.
-V
인덱스만 업데이트하며 데이터베이스는 업데이트하지 않습니다. E 및 X 명령과 함께 사용합니다.
-N
이 명령에서 지정하는 기능은 자원 설명의 비영구적 데이터에만 사용됩니다. 데이터베이스의 RD는 영구적 및 비영구적 데이터가 합쳐진 것입니다. I, E, U 및 L 명령과 함께 사용합니다.
-P
이 명령에서 지정하는 기능은 자원 설명의 영구적 데이터에만 사용됩니다. 데이터베이스의 RD는 영구적 및 비영구적 데이터가 합쳐진 것입니다. I, E, U 및 L 명령과 함께 사용합니다.
-a att,att...
속성 보기 목록을 지정합니다. att 이름은 대소문자를 구분하지 않으며 스키마에 정의되었는지 여부에 상관 없이 어떤 속성도 될 수 있습니다(예: author 또는 title). class-1, class-2 및 class-3과 같이 여러 값의 att가 있는 경우 class를 att 이름으로만 입력합니다.
-b number
인덱스 일괄 처리 크기를 이 RD 숫자로 설정합니다. I 명령과 함께 사용합니다.
-c search.conf
search.conf 파일이 있는 위치를 지정합니다. 이 옵션을 사용하지 않으면 기본값은 기본 검색 디렉토리에 있는 config/search.conf 파일입니다. 그렇지 않으면 파일의 완전한 경로를 제공해야 합니다.
-j number
검색 결과의 수를 제한합니다. E 하위 명령과 함께 사용합니다. 언급이 없으면 기본값이 무제한입니다.
-l number
로그 수준을 숫자로 설정합니다. 1을 설정(기본값)하면 모든 rdmgr 명령이 기록됩니다. 숫자가 높을수록 로그 파일에 자세한 내용이 담깁니다. 가능한 수준은 1~100입니다. 모든 하위 명령에서 사용할 수 있습니다.
-p {stdout|stderr|
filename}stdout, stderr 또는 filename으로 진행 상황을 인쇄 또는 표시합니다. 모든 하위 명령과 함께 사용할 수 있습니다.
-r number
진행 상황 옵션과 함께 사용합니다. 각 RD number마다 보고서가 생성됩니다. 기본값은 500입니다. u, m, g, d 및 U 하위 명령과 함께 사용합니다.
-s schema
스키마 정의 파일을 지정합니다. 기본값은 기본 검색 디렉토리의 config/schema.rdm 파일입니다.
-y dbname
검색 데이터베이스 이름을 지정합니다. 기본 데이터베이스 이외의 데이터베이스에서 이 명령을 실행하는 경우에 이 옵션을 사용해야 합니다. 기본 데이터베이스에는 이 옵션을 사용하지 않아도 됩니다. 기본 데이터베이스는 datbase-name=filename 레이블이 붙은 config/search.conf 파일에 정의된 데이터베이스입니다.
예
예1
기본 검색 디렉토리에서
# /opt/SUNWps/bin/rdmgr -E -j 13 -p stdout -r 5
이 예에서는 만료된 RD를 13개까지 데이터베이스에서 제거합니다. 진행 상황 보고서에는 초 단위의 경과 시간과 5개의 자원 설명마다 지금까지 처리된 RD 수가 stdout으로 인쇄됩니다.
예2
검색 엔진이 "중단"되거나 응답하지 않습니다. 기본 검색 디렉토리에서
# /opt/SUNWps/bin/rdmgr -R
이 명령은 모든 검색 데이터베이스를 복구하고 검색 엔지를 다시 사용할 수 있게 합니다. 데이터베이스에서 효력이 없는 잠금을 풀고 불완전한 데이터 트랜잭션을 롤백할 때 이 명령을 사용하십시오. 데이터베이스 프로세스가 비정상적으로 종료되면 효력이 없는 잠금과 불완전한 트랜잭션이 생길 수 있습니다.
사용 메시지 및 버전 하위 명령
표 14-23에는 첫 번째 열에 사용 메시지를 표시하거나 버전 정보를 보여주는 하위 명령과 두 번째 열에 간단한 설명이 있습니다.
반환 코드
rdmgr 명령은 쉘에 반환 코드를 반환합니다.
0 - 성공
1 - 실패
sendrdm설명
sendrdm 명령은 CGI 또는 명령줄 기반 검색을 위한 메커니즘을 제공합니다. rdm (자원 설명 관리자) 요청은 SOIF 형식으로 검색 서버로 보내집니다. 이 명령은 일반적으로 /server-instance-directory/deployment_uri 디렉토리인 검색 가능한 Portal Server 인스턴스 디렉토리에서 실행됩니다. 이는 설치 시에 선택한 배포 URI 경로입니다. 기본 Portal Server 설치를 선택한 경우는 /var/opt/SUNWps/https-servername/portal 디렉토리입니다. 여기서 servername의 값은 기본 Portal Server 인스턴스 이름입니다(Portal Server의 완전한 정규 이름).
구문
sendrdm 명령 구문은 다음과 같습니다.
옵션
표 14-24는 sendrdm 명령에 대한 요약입니다. 여기에는 두 개의 열이 있습니다. 첫 번째 열은 가능한 옵션이고 두 번째 열은 간단한 설명입니다. 이 명령은 다음 옵션을 지원합니다(알파벳 순서로 나열).
표 14-24 sendrdm 명령 옵션
인수/피연산자
설명
-d
디버그 모드입니다. 기본값은 꺼짐입니다. 이 옵션으로 이 모드를 켭니다.
-t n
초 단위의 시간을 지정합니다. 명령은 n초 후에 시간 초과됩니다. 기본값은 300초입니다.
-u uri
가져오는 대상 서버에 대한 URI 디렉토리(전체 경로 입력)를 지정합니다.
-v
버전입니다.
RDM-in
RDM 요청 파일 이름입니다. 필수 인수입니다.
RDM-out
RDM 결과 파일 이름입니다. 기본값은 표준 출력입니다.
예
/var/opt/SUNWps/https-servername/portal 디렉토리에서 루트로
이 예는 시간 초과가 1시간으로 설정된 상태에서 /rdm/incoming을 URI로 사용하여 Compass Server 3.01x에서 가져오기를 수행합니다. rdmquery.soif의 내용은 다음과 같습니다.
코드 예제 0-1
@RDMHEADER { -
catalog-service-id{48}: x-catalog://frankie.sesta.com:89/Compass-2
rdm-type{10}: rd-request
rdm-version{3}: 1.0
rdm-query-language{8}: gatherer
}
@RDMQUERY { -
scope{3}: all
}
StartRobotStartRobot 스크립트는 관리자가 로봇을 수동으로 시작할 때 사용할 수 있습니다. 일반적으로 이 스크립트는 스케줄러가 설정된 시간에 로봇을 시작할 때 사용됩니다(cron 작업). StartRobot 명령은 /var/opt/SUNWps/https-servername/portal 디렉토리에 있습니다.
구문
# StartRobot
옵션
옵션은 없습니다.
StopRobot
StopRobot 스크립트는 관리자가 로봇을 수동으로 중단할 때 사용할 수 있습니다. 일반적으로 이 스크립트는 스케줄러가 설정된 시간에 로봇을 중단할 때 사용됩니다(cron 작업). StopRobot 명령은 /var/opt/SUNWps/https-servername/portal 디렉토리에 있습니다.
구문
# StopRobot
옵션
옵션은 없습니다.