12.7.2. ldapmodify を使用したスキーマの再読み込み
schema-reload.pl スクリプトは、スキーマファイルを再読み込みする Directory Server インスタンスに特別なタスクエントリーを作成します。また、タスクエントリーを直接作成することでスキーマをリロードすることもできます。タスクエントリーは、
dse.ldif
ファイルの cn=tasks 設定エントリーで発生するため、ldapmodify を使用してエントリーを追加してタスクを開始することもできます。タスクが完了するとすぐに、エントリーはディレクトリーから削除されます。
スキーマ再読み込みタスクを開始するには、cn=schema reload task,cn=tasks,cn=config エントリーの下にエントリーを追加します。必要な属性は、特定タスクの
cn
のみです。
# ldapmodify -a
-D "cn=Directory Manager" -W -p 389 -h server.example.com -x
dn: cn=example schema reload,cn=schema reload task,cn=tasks,cn=config
changetype: add
objectclass: extensibleObject
cn:example schema reload
Directory Server インスタンスがスキーマを再読み込みするデフォルトのスキーマディレクトリーは、
/usr/share/dirsrv/schema
にあります。これは、schemadir
属性を使用して別のスキーマディレクトリーを指定できます。これは、schema -reload.pl の -d
オプションに似ています。
# ldapmodify -a
-D "cn=Directory Manager" -W -p 389 -h server.example.com -x
dn: cn=example schema reload,cn=schema reload task,cn=tasks,cn=config
changetype: add
objectclass: extensibleObject
cn:example schema reload
schemadir: /etc/dirsrv/slapd-instance_name/schema/
重要
Directory Server スキーマ再読み込みタスクは、
schemadir
パラメーターで指定したディレクトリーからスキーマファイルを再読み込みします。さらに、サーバーは //usr/share/dirsrv/schema
ディレクトリーからすべてのスキーマファイルを読み込みます。
タスクが完了するとすぐに、エントリーは
dse.ldif 設定から削除
されるため、同じタスクエントリーを継続的に再利用できます。
cn=schema 再読み込みタスク 設定は、『設定、コマンド、およびファイルリファレンス を参照してください』。