9.3. dbscan

dbscan ツールは、Directory Server データベースファイルから情報を分析して抽出します。dbscan でスキャンできるデータベースファイルは 4 種類あります。

  • id2entry.db (ユーザーデータベースの主なデータベースファイル)
  • entryrdn.db (ユーザーデータベース)
  • cn.db などのユーザーデータベースのセカンダリーインデックスファイル
  • numeric_string.db (/var/lib/dirsrv/slapd-instance/changelogdb の変更ログ)

データベースファイルの詳細は、「データベースファイル」 を参照してください。

データベースファイルは、Directory Server のバージョンに応じて、ファイル名の拡張子 .db2.db3.db4、および .db を使用します。

構文およびコマンドラインオプションの詳細は、dbscan(1) の man ページを参照してください。

以下は、dbscan を使用して Directory Server データベースを調べるさまざまな状況のコマンドラインの例です。

例9.1 エントリーファイルのダンプ

dbscan -f /var/lib/dirsrv/slapd-instance/db/userRoot/id2entry.db

例9.2 cn.db のインデックスキーの表示

dbscan -f /var/lib/dirsrv/slapd-instance/db/userRoot/cn.db

例9.3 mail.db のインデックスキーおよびキーを持つエントリーの数の表示

# dbscan -r -f /var/lib/dirsrv/slapd-instance/db/userRoot/mail.db

例9.4 sn.db のインデックスキーおよび 20 を超える ID を持つすべての ID の表示

# dbscan -r -G 20 -f /var/lib/dirsrv/slapd-instance/db/userRoot/sn.db

例9.5 objectclass.db の概要の表示

# dbscan -s -f /var/lib/dirsrv/slapd-instance/db/userRoot/objectclass.db

例9.6 VLV インデックスファイルの内容の表示

# dbscan -r -f /var/lib/dirsrv/slapd-instance/db/userRoot/vlv#bymccoupeopledcpeopledccom.db

例9.7 変更ログファイルの内容の表示

# dbscan -f /var/lib/dirsrv/slapd-instance/changelogdb/c1a2fc02-1d11b2-8018afa7-fdce000_424c8a000f00.db

例9.8 Raw モードでのインデックスファイル uid.db のダンプ

# dbscan -R -f /var/lib/dirsrv/slapd-instance/db/userRoot/uid.db

例9.9 共通名キー=hr manager を使用した entryID の表示

この例では、共通名キーは =hr managers で、等号 (=) はキーが等価インデックスであることを示します。

# dbscan -k "=hr managers" -r -f /var/lib/dirsrv/slapd-instance/db/userRoot/cn.db

=hr%20managers 7

例9.10 エントリー ID が 7 のエントリーの表示

# dbscan -K 7 -f /var/lib/dirsrv/slapd-instance/db/userRoot/id2entry.db

id 7 dn: cn=HR Managers,ou=groups,dc=example,dc=com
objectClass: top
objectClass: groupOfUniqueNames
cn: HR Manager
ou: groups
description: People who can manage HR entries
creatorsName: cn=Directory Manager
modifiersName: cn=Directory Manager
createTimestamp: 20050408230424Z
modifyTimestamp: 20050408230424Z
nsUniqueId: 8b465f73-1dd211b2-807fd340-d7f40000 parentid: 3
entryid: 7
entrydn: cn=hr managers,ou=groups,dc=example,dc=com

例9.11 entryrdn インデックスの内容の表示

# dbscan -f /var/lib/dirsrv/slapd-instance/db/userRoot/entryrdn.db -k "dc=example,dc=com"

dc=example,dc=com
  ID: 1; RDN: "dc=example,dc=com"; NRDN: "dc=example,dc=com"
C1:dc=example,dc=com
    ID: 2; RDN: "cn=Directory Administrators"; NRDN: "cn=directory administrators"
2:cn=directory administrators
    ID: 2; RDN: "cn=Directory Administrators"; NRDN: "cn=directory administrators"
P2:cn=directory administrators
    ID: 1; RDN: "dc=example,dc=com"; NRDN: "dc=example,dc=com"
C1:dc=example,dc=com
    ID: 3; RDN: "ou=Groups"; NRDN: "ou=groups"
3:ou=groups
    ID: 3; RDN: "ou=Groups"; NRDN: "ou=groups"
[...]