JavaScript is required to for searching.
跳过导航链接
退出打印视图
在 Oracle Solaris 11.1 中使用命名和目录服务     Oracle Solaris 11.1 Information Library (简体中文)
为本文档评分
search filter icon
search icon

文档信息

前言

第 1 部分关于命名和目录服务

1.  命名和目录服务(概述)

2.  名称服务转换(概述)

3.  管理 DNS(任务)

4.  设置 Oracle Solaris Active Directory 客户机(任务)

第 2 部分NIS 设置和管理

5.  网络信息服务(概述)

6.  设置和配置 NIS(任务)

7.  管理 NIS(任务)

8.  NIS 故障排除

第 3 部分LDAP 命名服务

9.  LDAP 命名服务介绍(概述)

10.  LDAP 命名服务的规划要求(任务)

11.  为使用 LDAP 客户机设置 Oracle Directory Server Enterprise Edition(任务)

12.  设置 LDAP 客户机(任务)

13.  LDAP 故障排除(参考信息)

14.  LDAP 命名服务(参考信息)

15.  从 NIS 转换为 LDAP(任务)

NIS 到 LDAP 转换服务概述

NIS 到 LDAP 转换工具和服务管理工具

NIS 到 LDAP 转换的目标用户

不应使用 NIS 到 LDAP 转换服务的情况

NIS 到 LDAP 转换服务对用户造成的影响

NIS 到 LDAP 转换术语

NIS 到 LDAP 转换的命令、文件和映射

支持的标准映射

从 NIS 转换为 LDAP(任务列表)

NIS 到 LDAP 转换的先决条件

设置 NIS 到 LDAP 转换服务

如何使用标准映射设置 N2L 服务

如何使用定制映射或非标准映射设置 N2L 服务

定制映射的示例

使用 Oracle Directory Server Enterprise Edition 进行 NIS 到 LDAP 转换的最佳做法

使用 Oracle Directory Server Enterprise Edition 创建虚拟列表视图索引

标准映射的 VLV

定制映射和非标准映射的 VLV

避免 Oracle Directory Server Enterprise Edition 服务器超时

避免 Oracle Directory Server Enterprise Edition 缓冲区溢出

NIS 到 LDAP 转换的限制

NIS 到 LDAP 转换的故障排除

常见的 LDAP 错误消息

NIS 到 LDAP 转换的问题

调试 NISLDAPmapping 文件

N2L 服务器超时问题

N2L 锁定文件问题

N2L 死锁问题

恢复为 NIS

如何基于旧的源文件恢复到 NIS 映射

如何基于当前的 DIT 内容恢复为 NIS 映射

词汇表

索引

请告诉我们如何提高我们的文档:
过于简略
不易阅读或难以理解
重要信息缺失
错误的内容
需要翻译的版本
其他
Your rating has been updated
感谢您的反馈!

您的反馈将非常有助于我们提供更好的文档。 您是否愿意参与我们的内容改进并提供进一步的意见?

NIS 到 LDAP 转换的故障排除

本节包括两个方面的故障排除:

常见的 LDAP 错误消息

有时,N2L 服务器会记录与内部 LDAP 问题相关的错误,并生成与 LDAP 相关的错误消息。尽管这些错误不是致命的,但是它们指明有问题需要检查。例如,N2L 服务器可能会继续工作,但是会提供过时或不完整的结果。

以下列表包括一些在实现 N2L 服务时可能遇到的常见 LDAP 错误消息。也包括错误说明、造成这些错误可能的原因和解决方案。

Administrative limit exceeded(超过管理限制)

错误号:11

原因: 执行的 LDAP 搜索大于目录服务器的 nsslapd-sizelimit 属性所允许的大小。将仅返回部分信息。

解决方法: 增大 nsslapd-sizelimit 属性的值,或者对失败的搜索实施 VLV 索引。

Invalid DN Syntax(DN 语法无效)

错误号:34

原因: 尝试写入的 LDAP 项的 DN 包含非法字符。N2L 服务器尝试对 DN 中生成的非法字符(如 + 号)转义。

解决方法: 检查 LDAP 服务器错误日志,找出写入的非法 DN,然后修改生成了非法 DN 的 NISLDAPmapping 文件。

Object class violation(对象类违规)

错误号:65

原因: 试图写入无效的 LDAP 项。通常,出现此错误是由于缺少 MUST 属性,以下任一情况都可能会导致缺少此属性。

解决方法: 对于 NISLDAPmapping 文件中的错误,检查在服务器错误日志中写入的内容,以确定问题的性质。

Can't contact LDAP server(无法联系 LDAP 服务器)

错误号:81

原因: ypserv 文件可能未正确配置,指向了错误的 LDAP 目录服务器。或者,目录服务器当前可能未运行。

解决方法: 重新配置并确认。

Timeout(超时)

错误号:85

原因: 通常,在从 DIT 更新映射时,LDAP 操作会超时。该映射当前可能包含过时的信息。

解决方法: ypserv 配置文件中增大 nisLDAPxxxTimeout 属性的值。

NIS 到 LDAP 转换的问题

运行 N2L 服务器时可能会出现以下问题。此处提供了可能的原因和解决方案。

调试 NISLDAPmapping 文件

映射文件 NISLDAPmapping 非常复杂。很多潜在的错误可能会导致映射工作不正常。请使用以下技术解决此类问题。

运行 ypserv -ir(或 -Ir)时显示控制台消息

描述: 控制台上显示了一条简单的消息,并且服务器退出(向 syslog 中写入了一条详细描述)。

原因: 映射文件的语法可能不正确。

解决方法: 检查并更正 NISLDAPmapping 文件中的语法。

NIS 守护进程在启动时退出

描述: 运行 ypserv 或其他 NIS 守护进程时,记录了一条与 LDAP 相关的错误消息,并且守护进程退出。

原因: 这可能是下列某一原因造成的:

解决方法: 检查 LDAP 服务器上的错误日志。请参见常见的 LDAP 错误消息

NIS 操作产生意外的结果

描述: NIS 操作没有返回预期的结果,但是没有记录错误。

原因: LDAP 或 NIS 映射中可能存在不正确的项,这会导致映射无法按照预期的方式完成。

解决方法: 检查并纠正 LDAP DIT 中以及 N2L 版本的 NIS 映射中的项。

  1. 检查 LDAP DIT 中的项是否正确,并根据需要更正这些项。

    如果使用的是 Oracle Directory Server Enterprise Edition,请运行 dsadm startconsole 命令启动管理控制台。

  2. 检查 /var/yp 目录中 N2L 版本的 NIS 映射是否包含预期的项,方法是将新生成的映射与原来的映射进行比较。请根据需要更正这些项。

    # cd /var/yp/domainname
    # makedbm -u test.byname
    # makedbm -u test.byname

    检查映射的输出时请注意以下情况:

    • 在这两个文件中,各项的顺序可能不同。

      在对输出进行比较之前,请使用 sort 命令。

    • 在这两个文件中,空格的用法可能不同。

      在对输出进行比较之前,请使用 diff -b 命令。

NIS 映射的处理顺序

描述: 发生对象类违规。

原因: 当运行 ypserv -i 命令时,将读取每个 NIS 映射并将其内容写入到 DIT 中。同一个 DIT 对象的属性可以由多个映射创建。通常,通过一个映射来创建该对象的大部分属性,包括该对象的所有 MUST 属性。其他映射则负责创建其他 MAY 属性。

映射是按照 nisLDAPobjectDN 属性在 NISLDAPmapping 文件中的出现顺序来处理的。如果包含 MAY 属性的映射在包含 MUST 属性的映射之前处理,会发生对象类违规。要了解关于该错误的更多信息,请参见常见的 LDAP 错误消息中的错误 65。

解决方法: nisLDAPobjectDN 属性重新排序,以便按照正确的顺序处理这些映射。

临时解决方法是多次重新运行 ypserv -i 命令。每次执行该命令,都会增加更多的 LDAP 项。


注 - 如果映射方式会导致不能从至少一个映射创建某个对象的所有 MUST 属性,则支持以这种方式进行映射。


N2L 服务器超时问题

服务器超时。

原因: N2L 服务器在刷新映射时,可能会对 LDAP 目录进行大量访问。如果 Oracle Directory Server Enterprise Edition 的配置不正确,该操作可能会因超时而无法完成。

解决方法: 要避免目录服务器超时,请手动或者通过运行 idsconfig 命令修改 Oracle Directory Server Enterprise Edition 属性。有关详细消息,请参见常见的 LDAP 错误消息使用 Oracle Directory Server Enterprise Edition 进行 NIS 到 LDAP 转换的最佳做法

N2L 锁定文件问题

ypserv 命令启动,但未响应 NIS 请求。

原因: N2L 服务器锁文件没有正确同步对 NIS 映射的访问权限。这种情况绝对不应发生。

解决方法: 在 N2L 服务器上键入以下命令:

# svcadm disable network/nis/server:default
# rm /var/run/yp_maplock /var/run/yp_mapupdate
# svcadm enable network/nis/server:default

N2L 死锁问题

N2L 服务器死锁。

原因: 如果 hostsipnodesypserv 文件中未正确列出 N2L 主服务器和 LDAP 服务器的地址,则可能会出现死锁问题。请参见NIS 到 LDAP 转换的先决条件,了解关于 N2L 正确地址配置的详细信息。

有关死锁情况的示例,请考虑以下一系列事件:

  1. 一台 NIS 客户机试图查找一个 IP 地址。

  2. N2L 服务器发现 hosts 项已过时。

  3. N2L 服务器尝试从 LDAP 更新 hosts 项。

  4. N2L 服务器从 ypserv 获取其 LDAP 服务器的名称,然后使用 libldap 进行搜索。

  5. libldap 尝试通过调用名称服务转换,将 LDAP 服务器名称转换为 IP 地址。

  6. 名称服务转换可能会对 N2L 服务器进行 NIS 调用,而服务器死锁。

解决方法: 在 N2L 主服务器上的 hostsipnodes 文件中列出 N2L 主服务器和 LDAP 服务器的地址。必须将服务器地址列在 hostsipnodes 还是同时列在这两个文件中,取决于这些文件配置为以何种方式解析本地主机名。另外,请检查 svc:/network/name-service/switch 服务的 config/hosts 属性在查找顺序中是否将 files 列在了 nis 之前。

此死锁问题的另一种解决方案是在 ypserv 文件中列出 LDAP 服务器的地址,而不是其主机名。这意味着 LDAP 服务器地址将列在其他位置。因此,更改 LDAP 服务器或 N2L 服务器的地址会使工作量稍有增加。