Red Hat Training

A Red Hat training course is available for Red Hat Directory Server

13.7.6. コマンドラインから参照インデックスの削除

コマンドラインから参照インデックスまたは仮想リストビュー(VLV)インデックスを削除するには、2 つの手順を実行します。
  1. ldapdelete を使用して、参照インデックスエントリーを削除するか、既存の参照インデックスエントリー(「参照インデックスエントリーの削除」)を編集します。
  2. vlvindex スクリプトを実行して、サーバーが維持する参照インデックスの新しいセットを生成します(「vlvindex スクリプトの実行」)。または、cn=tasks,cn=config (「cn=tasks エントリーを使用した参照インデックスの作成」)で適切なタスクを起動します。
アルファベット順の参照インデックスと仮想リストビューの実際のエントリーは同じです。以下のセクションでは、参照インデックスを削除する手順を説明します。

13.7.6.1. 参照インデックスエントリーの削除

ldapdelete コマンドラインユーティリティーを使用して、インデックスエントリーの参照エントリーを削除するか、既存の参照インデックスエントリーを編集します。特定のデータベースの参照インデックスを削除するには、cn =index,cn= database_name,cn= ldbm database,cn=plugins,cn=config エントリーから参照しているインデックスエントリーを削除します。cn=database_name はデータベースの名前に対応します。
たとえば、ou=People,dc=example,dc=com エントリーで ldapsearch 操作の参照インデックスがあります。検索ベース ou=People,dc=example,dc=com で、検索フィルターは (|(objectclass=*)(objectclass=ldapsubentry)) で、スコープは 1 で、返された属性のソート順序は cngivennameoousn です。
この参照インデックスを削除するには、対応する参照インデックスエントリーを 2 つ削除します。
dn: cn=MCC ou=People dc=example dc=com,cn=userRoot,cn=ldbm database,cn=plugins,cn=config
objectClass: top
objectClass: vlvSearch
cn: MCC ou=People dc=example dc=com
vlvBase: ou=People,dc=example,dc=com
vlvScope: 1 vlvFilter: (|(objectclass=*)(objectclass=ldapsubentry))

dn: cn=by MCC ou=People dc=example dc=com,cn=MCC ou=People
dc=example dc=com,cn=userRoot,cn=ldbm database,cn=plugins,cn=config
objectClass: top
objectClass: vlvIndex
cn: by MCC ou=People dc=example dc=com
vlvSort: cn givenname o ou sn
両方のエントリーを指定して ldapdelete を実行します。
# ldapdelete -D "cn=Directory Manager" -W -p 389 -h server.example.com -x "cn=MCC ou=People dc=example dc=com,cn=userRoot,cn=ldbm database,cn=plugins,cn=config" "cn=by MCC ou=People dc=example dc=com,cn=MCC ou=People dc=example dc=com,cn=userRoot,cn=ldbm database,cn=plugins,cn=config"
2 つの参照インデックスエントリーを削除すると、参照インデックスは Example1 データベースで維持されなくなります。