eDirectoryには次のLDAPツールが含まれており、これを使用してLDAPディレクトリサーバを管理できます。これらのツールは/opt/novell/eDirectory/binに格納されています。
ツール | 説明 |
---|---|
ice |
エントリをファイルからLDAPディレクトリにインポートし、ファイルのディレクトリ内のエントリを変更し、エントリをファイルにエクスポートし、ファイルの属性とクラス定義を追加します。 |
ldapadd |
LDAPディレクトリに新しいエントリを追加します。 |
ldapdelete |
LDAPディレクトリサーバからエントリを削除します。ldapdeleteツールは、LDAPサーバとの接続を開始し、エントリのバインドと削除を行います。 |
ldapmodify |
LDAPサーバとの接続を開始し、エントリのバインド、変更、追加を行います。 |
ldapmodrdn |
LDAPディレクトリサーバ内のエントリの相対識別名(RDN)を変更します。LDAPサーバとの接続を開始し、エントリのRDNのバインドと変更を行います。 |
ldapsearch |
LDAPディレクトリサーバでエントリを検索します。LDAPサーバとの接続を開始し、バインドを行い、指定されたフィルタを使用して検索を実行します。フィルタは、RFC 2254で定義されたLDAPフィルタの文字列表現に準拠している必要があります。 |
ndsindex |
インデックスの作成、一覧表示、一時停止、再開、削除を行います。 |
詳細については、『LDAP Libraries for C Guide』の「LDAP Tools」を参照してください。
LDAPツールを安全に実行するには、Linux、Solaris、AIX、およびHP-UXシステムでのeDirectory操作に関するセキュリティを確保するを参照し、安全にeDirectoryとLDAPを接続するためのコマンドラインによるLDAP操作にDERファイルを指定します。
LDAPユーティリティは、エントリの削除、変更、追加、スキーマの拡張、相対識別名の変更、エントリの新規コンテナへの異動、検索インデックスの作成、検索の実行に使用できます。
ldapaddユーティリティを使用して、新しいエントリを追加します。構文は次のとおりです。
ldapadd [-c] [-C] [-l] [-M] [-P] [-r] [-n] [-v] [-F] [-l 制限] [-M[M]] [-d デバッグレベル] [-e キーファイル名] [-D バインドDN] [[-W ]| [-w パスワード]] [-h LDAPホスト] [-p LDAPポート] [-P バージョン] [-Z[Z]] [-f ファイル]
注: NetWareサーバでは、このユーティリティはladdと呼ばれます。
-fオプションを指定すると、ldapaddにより変更がファイルから読み出されます。-fオプションを指定しない場合、ldapaddは変更をstdinから読み出します。
ヒント: ldapユーティリティからの出力はstdoutに送られます。出力が表示される前にユーティリティが存在する場合、出力はファイルにリダイレクトされます。例:ldapadd [オプション] > out.txt
すべてのLDAPツールに共通するオプションがいくつかあります。次の表は、これらのオプションを表示したものです。
/tmp/entrymodsファイルが存在すると仮定すると、次のような内容になります。
dn:cn=Modify Me, o=University of Michigan, c=US
changetype:modify
replace:mail
mail:modme@terminator.rs.itd.umich.edu
-
add:title
title:Manager
-
add:jpegPhoto
jpegPhoto:/tmp/modme.jpeg
-
delete:description
-
この場合、コマンド「ldapmodify -b -r -f /tmp/entrymods」は、コンテンツ「Modify Me entry」のメール属性を「modme@terminator.rs.itd.umich.edu」の値に置き換え、タイトル「Manager」を追加し、/tmp/modme.jpegファイルの内容をjpeg写真として追加し、属性記述を完全に削除します。
このような変更は、以下のようにldapmodifyの古い入力規則を使用して実行することもできます。
cn=Modify Me, o=University of Michigan, c=US
mail=modme@terminator.rs.itd.umich.edu
+title=Manager
+jpegPhoto=/tmp/modme.jpeg
-description
コマンドは次のようになります。
ldapmodify -b -r -f /tmp/entrymods
/tmp/newentryファイルが存在すると仮定すると、次のような内容になります。
dn:cn=Barbara Jensen, o=University of Michigan, c=US
objectClass:person
cn:Barbara Jensen
cn:B Jensen
sn:Jensen
title:Manager
mail:bjensen@terminator.rs.itd.umich.edu
uid:bjensen
この場合、/tmp/newentryファイルからの値を使用して、コマンド「ldapadd -f /tmp/entrymods」は「B Jensen」に新しいエントリを追加します。
/tmp/newentryファイルが存在すると仮定すると、次のような内容になります。
dn:cn=Barbara Jensen, o=University of Michigan, c=US
changetype:delete
この場合、コマンド「ldapmodify -f /tmp/entrymods」は「B Jensen」のエントリを削除します。
ldapdeleteユーティリティは、指定したインデックスを削除します。LDAPサーバとの接続を開始し、バインドしてから削除します。構文は次のとおりです。
ldapdelete [-n] [-v] [-c] [-r] [-l] [-C] [-M] [-d デバッグレベル] [-e キーファイル名] [-f ファイル] [-D バインドDN] [[-W]| [-w パスワード]] [-h LDAPホスト] [-p LDAPポート] [-Z[Z]] [dn]...
注: NetWareサーバでは、このユーティリティは、ldeleteと呼ばれます。
dnパラメータは、削除するエントリの識別名のリストです。
これは、-fオプションと次のように通信します。
ヒント: ldapユーティリティからの出力はstdoutに送られます。出力が表示される前にユーティリティが存在する場合、出力はファイルにリダイレクトされます。例: ldapdelete [オプション] > out.txt
注: 共通オプションについての詳細は、すべてのLDAPツールの共通オプションを参照してください。
ldapmodifyユーティリティを使用すると、既存エントリの属性を変更したり、新規エントリを追加することができます。構文は次のとおりです。
ldapmodify [-a] [-c] [-C] [-M] [-P] [-r] [-n] [-v] [-F] [-l 制限] [-M[M]] [-d デバッグレベル] [-e キーファイル名] [-D バインドDN] [[-W]|[-w パスワード]] [-h LDAPホスト] [-p LDAPポート] [-P バージョン] [-Z[Z]] [-f ファイル]
注: NetWareサーバでは、このユーティリティはlmodifyと呼ばれます。
-fオプションを指定すると、ldapmodifyにより変更がファイルから読み出されます。-fオプションを指定しない場合、変更はstdinから読み出されます。
ヒント: ldapユーティリティからの出力はstdoutに送られます。出力が表示される前にユーティリティが存在する場合、出力はファイルにリダイレクトされます。例:ldapmodify [オプション] > out.txt
注: 共通オプションについての詳細は、すべてのLDAPツールの共通オプションを参照してください。
ldapmodrdnを使用すると、エントリの相対識別名を変更できます。また、エントリを新しいコンテナに移動することもできます。構文は次のとおりです。
ldapmodrdn [-r] [-n] [-v] [-c] [-C] [-l] [-M] [-s 新規スーペリア] [-d デバッグレベル] [-e キーファイル名] [-D バインドDN] [[-W]|[-w パスワード]] [-h LDAPホスト] [-p LDAPポート] [-Z[Z]] [-f ファイル] [dn 新規RDN]
注: NetWareサーバでは、このユーティリティは<newrdn>と呼ばれます)。
ldapユーティリティからの出力はstdoutに送られます。出力が表示される前にユーティリティが存在する場合、出力はファイルにリダイレクトされます。例:ldapmodrdn [オプション] > out.txt
注: 共通オプションについての詳細は、すべてのLDAPツールの共通オプションを参照してください。
ldapsearchユーティリティは、指定された属性とオブジェクトクラスのディレクトリを検索します。構文は次のとおりです。
ldapsearch [-n] [-u] [-v] [-t] [-A] [-T] [-C] [-V] [-M] [-P] [-L] [-d デバッグレベル] [-e キーファイル名] [-f ファイル] [-D バインドDN] [[-W]| [-w バインドパスワード]] [-h LDAPホスト] [-p LDAPポート] [-b 検索基点] [-s スコープ] [-a 逆参照] [-l 時間制限] [-z サイズ制限] [-Z[Z]] filter [属性....]
注: NetWareサーバでは、このユーティリティはlsearchと呼ばれます。
ldapsearchツールはLDAPサーバとの接続を開始し、バインドを行い、フィルタを使用して検索を実行します。フィルタは、RFC 2254で定義されたLDAPフィルタの文字列表現に準拠している必要があります。
ldapsearchが1つ以上のエントリを検出すると、attrsで指定された属性が取り込まれ、エントリと値が標準出力に書き込まれます。属性がリストされない場合、すべての属性が戻ります。
ヒント: ldapユーティリティからの出力はstdoutに送られます。出力が表示される前にユーティリティが存在する場合、出力はファイルにリダイレクトされます。例: ldapsearch [オプション] filter [属性リスト] > out.txt.
注: 共通オプションについての詳細は、すべてのLDAPツールの共通オプションを参照してください。
次のコマンドを実行します。
ldapsearch "cn=mark smith" cn telephoneNumber
commonName「mark smith」のエントリのサブツリー検索(デフォルトの検索ベースを使用)を実行します。commonNameの値およびtelephoneNumberの値が取得され、標準出力に表示されます。2つのエントリが検出された場合、次のように出力されます。
cn=Mark D Smith, ou="College of Literature, Science, and the Arts", ou=Students, ou=People, o=University of Michigan, c=US
cn=Mark Smith
cn=Mark David Smith
cn=Mark D Smith 1
cn=Mark D Smith
telephoneNumber=+1 313 930-9489
cn=Mark C Smith, ou=Information Technology Division, ou=Faculty and Staff, ou=People,o=University of Michigan, c=US
cn=Mark Smith
cn=Mark C Smith 1
cn=Mark C Smith
telephoneNumber=+1 313 764-2277
コマンド:
ldapsearch -u -t "uid=mcs" jpegPhoto audio
デフォルトの検索ベースを使用して、ユーザID「mcs」のエントリのサブツリー検索を実行します。エントリのDNは、DN自体を含む行の後にわかりやすい形式で出力されます。また、Jpegの写真の値およびオーディオの値が取得され、一時ファイルに書き込まれます。要求された属性がそれぞれ1つの値をもつエントリが1つ検出された場合、次のように出力されます。
cn=Mark C Smith, ou=Information Technology Division, ou=Faculty and Staff, ou=People, o=University of Michigan, c=US
Mark C Smith, Information Technology Division, Faculty and Staff, People, University of Michigan, US
audio=/tmp/ldapsearch-audio-a19924
jpegPhoto=/tmp/ldapsearch-jpegPhoto-a19924
次のコマンドは、organizationNameが「university」で始まるすべての組織のc=USレベルで、1レベルの検索を実行します。
ldapsearch -L -s one -b "c=US" "o=university*" o description
検索結果はLDIF形式で表示されます。organizationNameの値および記述属性の値が取得され、標準出力に書き込まれます。出力結果の例は次のようになります。
dn:o=University of Alaska Fairbanks, c=US
o:University of Alaska Fairbanks
description:Preparing Alaska for a brave new yesterday.
description:leaf node only
dn:o=University of Colorado at Boulder, c=US
o:University of Colorado at Boulder
description:No personnel information
description:Institution of education and research
dn:o=University of Colorado at Denver, c=US
o:University of Colorado at D
ndsindexを使用すると、インデックスの作成、一覧表示、一時停止、再開、削除を実行できます。構文は次のとおりです。
ndsindex list [-h <ホスト名>] [-p <ポート>] -D <バインドDN> -W|[-w <パスワード>] [-l 制限] -s <eDirectoryサーバのDN> [-Z[Z]] [<インデックス名1>, <インデックス名2>.....]
ndsindex add [-h <ホスト名>] [-p <ポート>] -D <バインドDN> -W|[-w <パスワード>] [-l 制限] -s <eDirectoryサーバのDN> [-Z[Z]] <インデックス定義1> [<インデックス定義2>.....]
ndsindex delete [-h <ホスト名>] [-p <ポート>] -D <バインドDN> -W|[-w <パスワード>] [-l 制限] -s <eDirectoryサーバのDN> [-Z[Z]] <インデックス名1> [<インデックス名2>.....]
ndsindex resume [-h <ホスト名>] [-p <ポート>] -D <バインドDN> -W|[-w <パスワード>] [-l 制限] -s <eDirectoryサーバのDN> [-Z[Z]] <インデックス名1> [<インデックス名2>.....]
ndsindex suspend [-h <ホスト名>] [-p <ポート>] -D <バインドDN> -W|[-w <パスワード>] [-l 制限] -s <eDirectoryサーバのDN> [-Z[Z]] <インデックス名1> [<インデックス名2>.....]
注: NetWareサーバでは、このユーティリティはnindexと呼ばれます。
注: 共通オプションについての詳細は、すべてのLDAPツールの共通オプションを参照してください。
サーバMyHost上のインデックスを表示するには、次のコマンドを入力します。
ndsindex list -h MyHost -D cn=admin, o=mycompany -w password -s cn=MyHost, o=novell
電子メールの属性にMyIndexという名前の下位文字列インデックスを作成するには、次のコマンドを入力します。
ndsindex add -h myhost -D cn=admin, o=mycompany -w password -s cn=myhost, o=novell "MyIndex;email address;substring"
市町村の属性にMyIndexという名前の値インデックスを作成するには、次のコマンドを入力します。
ndsindex add -h myhost -D cn=admin, o=mycompany -w password -s cn=myhost, o=novell "MyIndex;city;value"
自宅電話番号の属性にMyIndexという名前の存在インデックスを作成するには、次のコマンドを入力します。
ndsindex add -h myhost -D cn=admin, o=mycompany -w password -s cn=myhost, o=novell "MyIndex;homephone;presence"
MyIndexという名前のインデックスを削除するには、次のコマンドを入力します。
ndsindex delete -h myhost -D cn=admin, o=mycompany -w password -s cn=myhost,o=novell MyIndex
MyIndexという名前のインデックスを一時停止するには、次のコマンドを入力します。
ndsindex suspend -h myhost -D cn=admin, o=mycompany -w password -s cn=myhost, o=novell MyIndex
MyIndexという名前のインデックスを再開するには、次のコマンドを入力します。
ndsindex resume -h myhost -D cn=admin, o=mycompany -w password -s cn=myhost, o=novell MyIndex