データを使用して LDAP サーバーを生成する場合、 適切な DIT およびスキーマを使用して LDAP サーバーを構成した後で、 新しい ldapaddent ツールを使用します。 このツールは、対応する /etc ファイルから LDAP コンテナ内にエントリを作成します。 このツールを使用して、次のデータタイプ用のコンテナ内にデータを生成することができます。 aliases、auto_*、bootparams、ethers、group、hosts (IPv6 アドレスを含む)、netgroup、netmasks、networks、passwd、shadow、protocols、publickey、rpc、および services。
デフォルトでは、ldapaddent は標準入力からこのデータを読み取って、コマンド行で指定されたデータベースに関連付けられた LDAP コンテナに追加します。 ただし、データを読み取る入力ファイルは、-f オプションを使用して指定できます。
エントリはクライアントの構成に基づき、ディレクトリ内に格納されるため、LDAP ネームサービスを使用するようにクライアントを構成する必要があります。
パフォーマンスを向上させるため、次の順序でデータベースをロードしてください。
passwd データベースの次に shadow データベース
networks データベースの次に netmasks データベース
bootparams データベースの次に ethers データベース
オートマウントエントリを追加する場合、データベース名は auto_* (たとえば auto_home) の形式で指定します。
別のホストの /etc ファイルを LDAP サーバーに追加する場合、それらすべてを 1 つの /etc ファイルにマージして、1 台のホスト上で ldapaddent を使用して追加できます。 あるいは、各ホストが LDAP クライアントとして構成済みであることを想定して各ホストで ldapaddent を実行することもできます。
使用するネームサービスデータが NIS サーバー上にすでに存在し、データを LDAP ネームサービス用の LDAP サーバーに移動する場合、ypcat (または niscat) コマンドを使用して NIS マップをファイル内にダンプします。 続いて、これらのファイルに対して ldapaddent を実行してデータを LDAP サーバーに追加します。
ldapaddent は LDAP クライアント上でしか実行できません。
以下の作業は、テーブルが yp クライアントから抽出されることを想定しています。
idsconfig を使用し、Sun ONE Directory Server が設定されていることを確認します。
クライアントマシン上でスーパーユーザーになります。
そのマシンを LDAP クライアントに設定します。
# ldapclient init -a profileName=new \
-a domainName=west.example.com 192.168.0.1
データを指定してサーバーを生成します。
# ldapaddent -D “cn=directory manager” -f /etc/hosts hosts
この例では、現在 ldapaddent が simple 認証方式を使用してバインドしているように、平文で directory_manager パスワードが送られます。