コンテンツにスキップ

ldapdelete

ldapdelete は DN で指定したエントリを LDAP サーバーから削除するコマンド。


Terminal window
ldapdelete \
-x \
-D "cn=admin,dc=example,dc=com" \
-W \
-H ldap://ldap.example.com/ \
-ZZ \
"uid=ldapuser,ou=people,dc=example,dc=com"

削除対象は検索フィルターではなく DN で指定する。


削除したい DN を 1 行ずつ書いたファイルを使える。

delete-dn.txt
uid=user1,ou=people,dc=example,dc=com
uid=user2,ou=people,dc=example,dc=com
Terminal window
ldapdelete \
-x \
-D "cn=admin,dc=example,dc=com" \
-W \
-H ldap://ldap.example.com/ \
-ZZ \
-f delete-dn.txt

LDAP では、子エントリを持つエントリはそのまま削除できない場合がある。

ou=people,dc=example,dc=com
└─ uid=ldapuser,ou=people,dc=example,dc=com

この状態で ou=people を削除しようとすると、配下に子エントリがあるため失敗する。先に子エントリを削除する。


オプション 意味
-f file 削除対象 DN をファイルから読む
-x Simple Bind を使う
-D DN Bind DN を指定する
-W Bind パスワードを対話入力する
-H URI LDAP サーバーの URI を指定する
-ZZ StartTLS を必須にする
-c エラーがあっても処理を続ける
-n 実際には削除せず、何をするか表示する