DSCC를 사용하여 이 작업을 수행할 수 있습니다. 자세한 내용은 디렉토리 서비스 제어 센터 인터페이스 및 DSCC 온라인 도움말을 참조하십시오.
속성 및 해당 값을 기존 항목에 추가하거나 대체 또는 제거하려면 changetype: modify 키워드를 사용합니다. changetype: modify를 지정하는 경우 항목의 수정 방법을 나타내는 하나 이상의 변경 작업도 함께 제공해야 합니다. 아래 예에서는 가능한 LDIF 변경 작업 중 세 개를 보여줍니다.
dn: entryDN changetype: modify add: attribute attribute: value... - replace: attribute attribute: newValue... - delete: attribute [attribute: value] ... |
같은 항목에 대한 작업을 구분하려면 하이픈(-)을 사용하고 다른 항목에 대한 작업 그룹을 구분하려면 빈 줄을 사용합니다. 각 작업에 여러 개의 attribute: value 쌍을 지정할 수도 있습니다.
DSCC를 사용하여 이 작업을 수행할 수 없습니다. 이 절차에 설명된 것처럼 명령줄을 사용하십시오.
다음 예에서는 동일한 add LDIF 구문을 사용하여 여러 값을 갖는 기존 속성과 존재하지 않는 속성에 값을 추가할 수 있는 방법을 보여줍니다.
$ ldapmodify -h host1 -p 1389 -D cn=admin,cn=Administrators,cn=config -w - Enter bind password: dn: uid=bjensen,ou=People,dc=example,dc=com changetype: modify add: cn cn: Babs Jensen - add: mobile mobile: (408) 555-7844 |
다음 중 부합되는 조건이 있으면 이 작업은 실패할 수 있으며 서버에서 오류를 반환합니다.
지정된 값이 해당 속성에 이미 있는 경우
값이 속성에 정의된 구문과 일치하지 않는 경우
항목의 객체 클래스에서 속성 유형을 필요로 하지 않거나 허용하지 않는 경우
속성 유형이 여러 값을 갖지 않으며 이미 값이 있는 경우
DSCC를 사용하여 이 작업을 수행할 수 있습니다. 자세한 내용은 디렉토리 서비스 제어 센터 인터페이스 및 DSCC 온라인 도움말을 참조하십시오.
속성 ;binary 하위 유형은 실제 구문에 관계없이 속성 값이 이진 데이터로서 LDAP를 통해 전송됨을 나타냅니다. 이 하위 유형은 userCertificate와 같이 LDAP 문자열 표현이 없는 복잡한 구문에 사용되며, 이외의 용도로 사용해서는 안 됩니다.
ldapmodify 명령과 함께 사용된 경우에는 적절한 하위 유형을 모든 LDIF 명령문의 속성 이름에 추가할 수 있습니다.
이진 값을 입력하려면 LDIF 텍스트에 직접 입력하거나 다른 파일에서 읽을 수 있습니다. 아래 예에서는 파일의 값을 읽어오는 LDIF 구문을 보여줍니다.
$ ldapmodify -h host1 -p 1389 -D cn=admin,cn=Administrators,cn=config -w - Enter bind password: version: 1 dn: uid=bjensen,ou=People,dc=example,dc=com changetype: modify add: userCertificate;binary userCertificate;binary:< file:///local/cert-file |
:< 구문을 사용하여 파일 이름을 지정하려면 LDIF 명령문을 version: 1 행으로 시작해야 합니다. ldapmodify는 이 명령문을 처리할 때 속성을 지정된 파일의 전체 내용에서 읽은 값으로 설정합니다.
DSCC를 사용하여 이 작업을 수행할 수 있습니다. 자세한 내용은 디렉토리 서비스 제어 센터 인터페이스 및 DSCC 온라인 도움말을 참조하십시오.
속성의 언어 및 발음 하위 유형은 현지화된 값을 지정합니다. 속성에 언어 하위 유형을 지정하면 다음과 같이 속성 이름에 하위 유형이 추가됩니다.
attribute;lang-CC |
여기서 attribute는 기존 속성 유형이고 cc는 언어를 지정하는 두 글자 국가 코드입니다. 선택 사항으로 언어 하위 유형에 발음 하위 유형을 추가하여 현지화된 값의 발음을 지정할 수도 있습니다. 이 경우 속성 이름은 다음과 같습니다.
attribute;lang-CC;phonetic |
하위 유형이 지정된 속성에 작업을 수행하려면 해당 하위 유형을 명시적으로 일치시켜야 합니다. 예를 들어 lang-fr 언어 하위 유형이 지정된 속성 값을 수정하려면 다음과 같이 수정 작업에 lang-fr을 추가해야 합니다.
$ ldapmodify -h host1 -p 1389 -D cn=admin,cn=Administrators,cn=config -w - Enter bind password: dn: uid=bjensen,ou=People,dc=example,dc=com changetype: modify add: homePostalAddress;lang-fr homePostalAddress;lang-fr: 34, rue de la Paix |
속성 값에 비ASCII 문자가 있는 경우 UTF-8로 인코딩해야 합니다.
DSCC를 사용하여 이 작업을 수행할 수 있습니다. 자세한 내용은 디렉토리 서비스 제어 센터 인터페이스 및 DSCC 온라인 도움말을 참조하십시오.
다음 예에서는 LDIF의 replace 구문을 사용하여 속성 값을 변경하는 방법을 보여줍니다.
$ ldapmodify -h host1 -p 1389 -D cn=admin,cn=Administrators,cn=config -w - Enter bind password: dn: uid=bjensen,ou=People,dc=example,dc=com changetype: modify replace: sn sn: Morris - replace: cn cn: Barbara Morris cn: Babs Morris |
지정된 속성의 현재 값이 모두 제거되고 지정된 값이 모두 추가됩니다.
속성 값을 변경한 후에는 ldapsearch 명령을 사용하여 변경 사항을 확인할 수 있습니다.
속성 값을 수정할 때 값의 끝에 실수로 후행 공백을 추가하지 마십시오. 후행 공백으로 인해 값이 base-64로 인코딩(예: 34xy57eg)으로 표시될 수도 있습니다.
속성 값이 후행 공백으로 끝나면 후행 공백이 속성 값의 일부로 인코딩됩니다. DSCC 또는 ldapsearch 명령을 사용하여 변경 사항을 확인할 때는 보이는 값이 일반 텍스트일 수도 있으나 base-64로 인코딩된 텍스트로 표시될 수도 있습니다. 이는 사용하는 디렉토리 서버 클라이언트에 따라 다릅니다.
DSCC를 사용하여 이 작업을 수행할 수 있습니다. 자세한 내용은 디렉토리 서비스 제어 센터 인터페이스 및 DSCC 온라인 도움말을 참조하십시오.
다음 예에서는 속성을 완전히 삭제하는 방법과 여러 값을 갖는 속성의 값 하나만 삭제하는 방법을 보여줍니다.
$ ldapmodify -h host1 -p 1389 -D cn=admin,cn=Administrators,cn=config -w - Enter bind password: dn: uid=bjensen,ou=People,dc=example,dc=com changetype: modify delete: facsimileTelephoneNumber - delete: cn cn: Babs Morris |
attribute: value 쌍을 지정하지 않고 delete 구문을 사용하면 이 속성의 모든 값이 제거됩니다. attribute: value 쌍을 지정하면 해당 값만 제거됩니다.
DSCC를 사용하여 이 작업을 수행할 수 있습니다. 자세한 내용은 디렉토리 서비스 제어 센터 인터페이스 및 DSCC 온라인 도움말을 참조하십시오.
ldapmodify 명령을 사용하여 여러 값을 갖는 속성의 값 하나만 수정하려면 아래 예와 같이 두 가지 작업을 수행해야 합니다.
$ ldapmodify -h host1 -p 1389 -D cn=admin,cn=Administrators,cn=config -w - Enter bind password: dn: uid=bjensen,ou=People,dc=example,dc=com changetype: modify delete: mobile mobile: (408) 555-7845 - add: mobile mobile: (408) 555-5487 |