第1章 コマンドラインを使用したディレクトリーエントリーの管理
コマンドラインを使用して、LDAP エントリーを追加、編集、名前変更、および削除できます。
1.1. ldapadd、ldapmodify、および ldapdelete ユーティリティーへの入力の指定
ディレクトリーのエントリーまたは属性を追加、更新、または削除する場合は、ユーティリティーのインタラクティブモードを使用して LDAP Data Interchange Format (LDIF) ステートメントに入るか、LDIF ファイルを渡すことができます。
1.1.1. OpenLDAP クライアントユーティリティーのインタラクティブモード
インタラクティブモードでは、ldapadd
、ldapmodify
、および ldapdelete
ユーティリティーはコマンドラインから入力を読み取ります。インタラクティブモードを終了するには、Ctrl+D (^D) のキーの組み合わせを押して end-of-file (EOF) エスケープシーケンスを送信します。
インタラクティブモードでは、ユーティリティーは、Enter を 2 回押したときに、または EOF シーケンスを送信するときに、ステートメントを LDAP サーバーに送信します。
対話型モードを使用します。
ファイルを作成せずに LDAP Data Interchange Format (LDIF) ステートメントに入るには、以下を行います。
例1.1 ldapmodify インタラクティブモードを使用した LDIF ステートメントの開始
以下の例では、
ldapmodify
を対話モードで実行し、telephoneNumber
属性を削除して、cn=manager_name,ou=people,dc=example,dc=com
の値のmanager
属性をuid=user,ou=people,dc=example,dc=com
エントリーに追加します。最後のステートメントの後に を押して、インタラクティブモードを終了します。# ldapmodify -D "cn=Directory Manager" -W -H ldap://server.example.com -x dn: uid=user,ou=people,dc=example,dc=com changetype: modify delete: telephoneNumber - add: manager manager: cn=manager_name,ou=people,dc=example,dc=com modifying entry "uid=user,ou=people,dc=example,dc=com" ^D
別のコマンドによって出力される LDIF ステートメントをサーバーにリダイレクトするには、次のコマンドを実行します。
例1.2 リダイレクトされたコンテンツでの ldapmodify インタラクティブモードの使用
以下の例では、
command_that_outputs_LDIF
コマンドの出力をldapmodify
にリダイレクトします。対話モードは、リダイレクトされたコマンドの終了後に自動的に終了します。# command_that_outputs_LDIF | ldapmodify -D "cn=Directory Manager" -W -H ldap://server.example.com -x
関連情報
-
ldif(5)
の man ページ
1.1.2. OpenLDAP クライアントユーティリティーのファイルモード
インタラクティブモードでは、ldapadd
、ldapmodify
、および ldapdelete
ユーティリティーは、ファイルから LDAP Data Interchange Format (LDIF) ステートメントを読み取ります。このモードを使用して、より多くの LDIF ステートメントをサーバーに送信します。
例1.3 LDIF ステートメントを持つファイルを ldapmodify に渡す
LDIF ステートメントでファイルを作成します。たとえば、以下のステートメントで
~/example.ldif
ファイルを作成します。dn: uid=user,ou=people,dc=example,dc=com changetype: modify delete: telephoneNumber - add: manager manager: cn=manager_name,ou=people,dc=example,dc=com
この例では、
telephoneNumber
属性を削除し、cn=manager_name,ou=people,dc=example,dc=com
値を持つmanager
属性をuid=user,ou=people,dc=example,dc=com
エントリーに追加します。-f
パラメーターを使用して、ファイルをldapmodify
コマンドに渡します。# ldapmodify -D "cn=Directory Manager" -W -H ldap://server.example.com -x -f ~/example.ldif
関連情報
-
ldif(5)
の man ページ
1.1.3. OpenLDAP クライアントユーティリティーの連続動作モード
デフォルトでは、複数の LDAP Data Interchange Format (LDIF) ステートメントをサーバーに送信し、1 つの操作が失敗すると、プロセスが停止します。ただし、エラーが発生する前に処理されるエントリーは、正常に追加、変更、または削除されています。
エラーを無視してバッチでさらに LDIF ステートメントの処理を続けるには、-c
パラメーターを ldapadd
および ldapmodify
に渡します。
# ldpamodify -c -D "cn=Directory Manager" -W -H ldap://server.example.com -x