slapcat - SLAPD データベースからの LDIF の生成
/usr/local/sbin/slapcat [-v] [-c] [-g] [-d level] [-b suffix] [-n dbnum] [-a filter] [-s subtree-dn] [-f slapd.conf] [-F confdir] [-l ldif-file]
slapcat は、 slapd (8) データベースの内容を基に LDAP データ交換フォーマット(LDAP Directory Interchange Format: LDIF)の出力を生成するために使われる。 slapcat は、データベース番号あるいは接尾辞によって決まるデータベースを オープンし、対応する LDIF を標準入力あるいは指定のファイルに 書き出す。 オプション -g を指定していなければ、 指定したデータベースの 下位データベース( subordinate )として設定したデータベースについても出力する。
このツールで生成した LDIF は slapadd (8) で利用できるようになっている。 この LDIF のエントリはデータベース内の順序で出力されており、 上位エントリから先に出力されるわけではないので、事前に整列しておかなければ ldapadd (1) でロードできない。
slapcat -a \
"(!(entryDN:dnSubtreeMatch:=ou=People,dc=example,dc=com))"
一般に、データベースの一貫性を保証したいのであれば slapcat を実行している間は slapd (8) の実行を中断すること(少なくとも更新できないようにすること)。 一方で slapd-bdb (5) , slapd-hdb (5) , slapd-null (5) バックエンドを利用している場合に限り、slapcatは安全に実行できる。
SLAPD データベースのテキスト形式のバックアップを ldif というファイルに作成するには、次のようにコマンドを実行する。
/usr/local/sbin/slapcat -l ldif
ldap (3), ldif (5), slapadd (8), ldapadd (1), slapd (8)
"OpenLDAP 管理者ガイド" (http://www.OpenLDAP.org/doc/admin/)
OpenLDAP は OpenLDAP プロジェクト (http://www.openldap.org/) が開発/管理している。 OpenLDAP はミシガン大学の LDAP 3.3 リリースより派生した。
稲地 稔 inachi@ldap-jp.org 小田切耕司