使用 Oracle® Solaris 11.2 目录和命名服务:DNS 和 NIS

退出打印视图

更新时间: 2014 年 7 月
 
 

如何添加新的从属服务器

NIS 运行后,您可能需要创建一些未包含在之前提供给 ypinit 命令的初始列表中的 NIS 从属服务器。使用以下过程添加新的 NIS 从属服务器。

  1. 成为 NIS 主服务器的管理员。

    有关更多信息,请参见在 Oracle Solaris 11.2 中确保用户和进程的安全 中的 使用所指定的管理权限

  2. 转至 NIS 域目录。
    # cd /var/yp/domainname
  3. 反汇编 ypservers 文件。
    # makedbm -u ypservers >/tmp/temp_file

    makedbm 命令会将 ypserversndbm 格式转换为临时 ASCII 文件 /tmp/temp_file

  4. 编辑 /tmp/temp_file 文件。

    将新的从属服务器的名称添加到服务器列表中。然后,保存并关闭该文件。

  5. 运行 makedbm 命令,并以 temp_fileypservers 分别作为输入文件和输出文件。
    # makedbm /tmp/temp_file ypservers

    然后,makedbm 命令会将 ypservers 重新转换回 ndbm 格式。

  6. 验证 ypservers 映射是否正确。

    因为 ypservers 没有 ASCII 文件,因此请在从属服务器上键入以下命令:

    slave3# makedbm -u ypservers

    makedbm 命令会在屏幕上显示 ypservers 中的每项。


    注 -  如果某计算机名不在 ypservers 中,则该计算机不会收到映射文件的更新,原因是 yppush 需要从此映射中查询从属服务器的列表。
  7. 成为新的 NIS 从属服务器上的管理员。

    有关更多信息,请参见在 Oracle Solaris 11.2 中确保用户和进程的安全 中的 使用所指定的管理权限

  8. 确认已设置了 NIS 域名。
    # domainname
    example.com
  9. 设置新从属服务器的 NIS 域目录。

    从主服务器复制 NIS 映射集,然后启动 NIS 客户机。运行 ypinit 命令时,请遵循提示并按优先级顺序列出 NIS 服务器。

    slave3# cd /var/yp
    slave3# ypinit -c
  10. 将此计算机初始化为从属服务器。
    slave3# /usr/sbin/ypinit –s ypmaster

    其中,ypmaster 是现有的 NIS 主服务器的计算机名。

  11. 停止作为 NIS 客户机运行的计算机。
    slave3# svcadm disable network/nis/client
  12. 确定客户机服务是否正在运行,然后根据需要启动或重新启动这些服务。
    # svcs \*nis\*
    STATE          STIME     FMRI
    online         20:32:56  svc:/network/nis/domain:default
    online         20:32:56  svc:/network/nis/client:default

    如果这些服务显示了 online 状态,则表示 NIS 正在运行。如果该服务的状态为 disabled,则表明 NIS 未运行。

    1. 如果客户机服务正在运行,请重新启动客户机服务。
      # svcadm restart network/nis/domain
      # svcadm restart network/nis/client
    2. 如果客户机服务未在运行,请启动客户机服务。
      # svcadm enable network/nis/domain
      # svcadm enable network/nis/client
  13. 确定 NIS 服务器是否正在运行,然后根据需要启动或重新启动该服务。
    # svcs network/nis/server
    STATE          STIME     FMRI
    offline        20:32:56  svc:/network/nis/server:default
    1. 如果 NFS 服务器正在运行,请重新启动该服务。
      slave3# svcadm restart network/nis/server
    2. 如果 NIS 服务器未在运行,请启动该服务。
      slave3# svcadm enable network/nis/server