1.2. 명령줄을 사용하여 LDAP 항목 추가
디렉터리에 새 항목을 추가하려면 ldapadd
또는 ldapmodify
유틸리티를 사용합니다. /bin/ldapadd
는 /bin/ldapmodify
에 대한 심볼릭 링크입니다. 따라서 ldapadd
는 ldapmodify -a
와 동일한 작업을 수행합니다.
상위 항목이 이미 존재하는 경우에만 새 디렉터리 항목을 추가할 수 있습니다. 예를 들어 ou=people,dc=example,dc=com
,dc=example,dc=com 상위 항목이 없는 경우 cn=user,ou=people,dc=example,dc=com
을 추가할 수 없습니다.
1.2.1. ldapadd를 사용하여 항목 추가
ldapadd
유틸리티를 사용하여 cn=user,ou=people,dc=example,dc=com
사용자 항목을 추가합니다.
ldapadd -D "cn=Directory Manager" -W -H ldap://server.example.com -x
# ldapadd -D "cn=Directory Manager" -W -H ldap://server.example.com -x
dn: uid=user,ou=People,dc=example,dc=com
uid: user
givenName: given_name
objectClass: top
objectClass: person
objectClass: organizationalPerson
objectClass: inetorgperson
sn: surname
cn: user
ldapadd
를 실행하면 변경 유형: 추가
작업이 자동으로 수행됩니다. 따라서 LDIF 문에 changetype: add
를 지정할 필요가 없습니다.
1.2.2. ldapmodify를 사용하여 항목 추가
ldapmodify
유틸리티를 사용하여 cn=user,ou=people,dc=example,dc=com
사용자 항목을 추가합니다.
ldapmodify -a -D "cn=Directory Manager" -W -H ldap://server.example.com -x
# ldapmodify -a -D "cn=Directory Manager" -W -H ldap://server.example.com -x
dn: uid=user,ou=People,dc=example,dc=com
uid: user
givenName: given_name
objectClass: top
objectClass: person
objectClass: organizationalPerson
objectClass: inetorgperson
sn: surname
cn: user
-a
매개변수를 ldapmodify
명령에 전달할 때 유틸리티는 changetype: add
작업을 자동으로 수행합니다. 따라서 LDIF 문에 changetype: add
를 지정할 필요가 없습니다.
1.2.3. 데이터베이스 접미사의 루트 항목 생성
데이터베이스 접미사(예: dc=example,dc=com
)의 루트 항목을 생성하려면 cn=Directory Manager
사용자로 바인딩하고 항목을 추가합니다. 고유 이름(DN)은 데이터베이스의 루트 또는 하위 요소의 DN에 해당합니다.
예를 들어 dc=example,dc=com
접미사를 추가하려면 다음을 입력합니다.
ldapmodify -D "cn=Directory Manager" -W -H ldap://server.example.com -x
# ldapmodify -D "cn=Directory Manager" -W -H ldap://server.example.com -x
dn: dc=example,dc=com
changetype: add
objectClass: top
objectClass: domain
dc: example
접미사당 하나의 데이터베이스가 있는 경우에만 root 오브젝트를 추가할 수 있습니다. 여러 데이터베이스에 저장된 접미사를 생성하는 경우 dsctl ldif2db
명령을 사용하여 새 항목을 보유할 데이터베이스를 설정해야 합니다.