12.9.6. 既存の属性値の構文の検証
特定の状況では、既存の値の構文を手動で検証したい場合があります。以下に例を示します。
nsslapd-syntaxcheck
パラメーターで構文の検証が無効になっている場合。詳細は、「構文の検証の有効化または無効化」 を参照してください。重要Red Hat は、構文の検証を無効にしないことを推奨します。- 構文検証なしまたは無効化されたサーバーからデータを移行する場合。
(objectclass=inetorgperson)フィルターに一致する ou=people,dc=example,dc=com サブツリーのすべての値の構文を検証するタスクを作成するには、以下を実行します。
# syntax-validate.pl -D "cn=Directory Manager" -w secret \ -b "ou=people,dc=example,dc=com" -f "(objectclass=inetorgperson)" ldap_initialize( ldap://server.example.com:389 ) Successfully added task entry "cn=syntax_validate_2017_7_3_10_52_47, cn=syntax validate, cn=tasks, cn=config"
Directory Server は、結果を
/var/log/dirsrv/slapd-instance_name/errors
ファイルに記録します。以下に例を示します。
- 検証済みの値がすべて有効であれば、以下を実行します。
[28/Jun/2017:12:52:43.669867966 +0200] - ERR - syntax-plugin - syntax_validate_task_thread - Starting (base: "dc=example,dc=com", filter: "(objectclass=*)") ... [28/Jun/2017:12:52:43.696850129 +0200] - ERR - syntax-plugin - syntax_validate_task_thread - Complete. Found 0 invalid entries.
- 無効なエントリーが見つかった場合は、以下を行います。
[28/Jun/2017:12:54:05.736087520 +0200] - ERR - syntax-plugin - syntax_validate_task_thread - Starting (base: "dc=example,dc=com", filter: "(objectclass=*)") ... [28/Jun/2017:12:54:05.754195607 +0200] - ERR - syntax-plugin - syntax_validate_task_callback - Entry "cn=user,ou=People,dc=example,dc=com" violates syntax. description: value #0 invalid per syntax [28/Jun/2017:12:54:05.759905671 +0200] - ERR - syntax-plugin - syntax_validate_task_thread - Complete. Found 1 invalid entries.
注記syntax-validate.pl
スクリプトは、構文違反のみを識別します。誤った値を手動で修正する必要があります。