1.3. 使用命令行更新 LDAP 条目
修改目录条目时,请使用 changetype: modify
语句。根据更改操作,您可以添加、更改或删除条目中的属性。
1.3.1. 在 LDAP 条目中添加属性
要为 LDAP 条目添加属性,请使用 add
操作。
例如,要将带有 555-1234567
值的 telephoneNumber
属性添加到 uid=user,ou=People,dc=example,dc=com
条目,请输入:
# ldapmodify -D "cn=Directory Manager" -W -H ldap://server.example.com -x dn: uid=user,ou=People,dc=example,dc=com changetype: modify add: telephoneNumber telephoneNumber: 555-1234567
如果属性是多值值,您可以多次指定属性名称,以便在单个操作中添加所有值。例如,要将两个 telephoneNumber
属性一次添加到 uid=user,ou=People,dc=example,dc=com
中,请输入:
# ldapmodify -D "cn=Directory Manager" -W -H ldap://server.example.com -x dn: uid=user,ou=People,dc=example,dc=com changetype: modify add: telephoneNumber telephoneNumber: 555-1234567 telephoneNumber: 555-7654321
1.3.2. 更新属性值
更新属性值的流程取决于属性是单值还是多值:
更新单值属性:
更新单值属性时,请使用
replace
操作来覆盖现有的值。以下命令更新uid=user,ou=People,dc=example,dc=com
条目的manager
属性:# ldapmodify -D "cn=Directory Manager" -W -H ldap://server.example.com -x dn: uid=user,ou=People,dc=example,dc=com changetype: modify replace: manager manager: uid=manager_name,ou=People,dc=example,dc=com
更新多值属性的特定值:
要更新多值属性的特定值,首先删除您要替换的条目,然后添加新值。以下命令只更新
uid=user,ou=People,dc=example,dc=com
条目中当前设置为555-1234567
的telephoneNumber
属性:# ldapmodify -D "cn=Directory Manager" -W -H ldap://server.example.com -x dn: uid=user,ou=People,dc=example,dc=com changetype: modify delete: telephoneNumber telephoneNumber: 555-1234567 - add: telephoneNumber telephoneNumber: 555-9876543
1.3.3. 从条目中删除属性
要从条目中删除属性,请使用 delete
操作:
删除属性:
例如,要从
uid=user,ou=People,dc=example,dc=com
条目中删除manager
属性,请输入:# ldapmodify -D "cn=Directory Manager" -W -H ldap://server.example.com -x dn: uid=user,ou=People,dc=example,dc=com changetype: modify delete: manager
重要如果属性包含多个值,则此操作会删除所有值。
删除多值属性的特定值:
如果要从多值属性中删除特定值,请在 LDAP Data Interchange Format (LDIF)语句中列出属性及其值。例如,要从
uid=user,ou=People,dc=example,dc=com
条目中删除设置为555-1234567
的telephoneNumber
属性,请输入:# ldapmodify -D "cn=Directory Manager" -W -H ldap://server.example.com -x dn: uid=user,ou=People,dc=example,dc=com changetype: modify delete: telephoneNumber telephoneNumber: 555-1234567