DB2 V9.7 for Linux, UNIX, and Windows

启用远程命令的执行(Linux 和 UNIX)

必须使用 rsh 来更新 .rhosts 文件以执行远程命令。

关于此任务

此主题描述如何使用 rsh 来启用远程命令的执行。

您也可以使用 ssh 来启用远程命令的执行。要使用 ssh 而不希望系统提示您输入密码或口令,请参阅:

开始之前

在分区数据库系统中,每个数据库分区服务器必须具有对参与实例的所有其他数据库分区服务器执行远程命令的权限。可以通过更新实例的主目录中的 .rhosts 文件来授予此权限。因为实例的主目录在共享 DB2® 主文件系统上,所以只需要一个 .rhosts 文件。

过程

要使用 rsh 来更新 .rhosts 文件以执行远程命令,请执行以下操作:

  1. 作为具有 root 用户权限的用户登录主计算机。
  2. 在实例主目录中创建 .rhosts 文件。 例如,如果实例主目录是 /db2home/db2inst1,那么可以通过输入以下命令来使用文本编辑器创建 .rhosts 文件:
    vi /db2home/db2inst1/.rhosts
  3. 为每台计算机(包括主计算机)向 .rhosts 文件添加条目。 .rhosts 文件具有以下格式:
    hostname   instance_owner_user_name

    一些系统可能需要指定长主机名,例如:ServerA.yourdomain.com。在将主机名条目添加至 .rhosts 文件之前,请确保能够解析 /etc/hosts/etc/resolv.conf 文件中的主机名。

    INSTHOME/.rhosts 文件应该包含类似如下的条目:
    ServerA.yourdomain.com db2inst1
    ServerB.yourdomain.com db2inst1
    ServerC.yourdomain.com db2inst1
    ServerD.yourdomain.com db2inst1
    可以在 .rhosts 文件中指定以下条目,而不是分别指定每个主机名,但是此操作可能会产生安全风险,仅应在测试环境中这样做。
    + db2inst1
    如果在 db2nodes.cfg 文件中指定了高速交换机(网络名),那么还应将每台计算机的网络名条目添加至 .rhosts 文件。网络名值是在 db2nodes.cfg 文件的第四列中指定的。带有高速交换机(网络名)条目的 .rhosts 文件可能类似如下所示:
    ServerA.yourdomain.com db2inst1
    ServerB.yourdomain.com db2inst1
    ServerC.yourdomain.com db2inst1
    ServerD.yourdomain.com db2inst1
    Switch1.yourdomain.com db2inst1
    Switch2.yourdomain.com db2inst1
    Switch3.yourdomain.com db2inst1
    Switch4.yourdomain.com db2inst1

下一步做什么

如果不使用 .rhosts 文件,也可以使用 /etc/hosts.equiv 文件。/etc/hosts.equiv 文件将包含与 .rhosts 文件完全相同的条目,但是必须在每台计算机上创建它。

有关 .rhosts 文件或 /etc/hosts.equiv 文件的更多信息,请参阅操作系统文档。