【问题标题】:Erlang: starting slave nodeErlang:启动从节点
【发布时间】:2011-02-09 04:14:19
【问题描述】:

我正在尝试在集群上启动 Erlang 从节点,我收到了bash: erl: command not found 消息。虽然我有 erl 的别名。这是我实际做的:

[user@n001 ~]$ erl -rsh ssh -sname n001    
Eshell V5.7.5  (abort with ^G)
    (n001@n001)1> slave:start_link("user@n002", n002, "-rsh ssh").
    bash: erl: command not found
                                {error,timeout}
    (n001@n001)2>

也许,有什么问题吗? 谢谢。

更新:
我已将 Erlang bin 目录添加到我的 $PATH 变量中;我设置了$ERLANG_ROOT_DIR 变量;在~/erl 中创建symlink - 但没有任何改变...
我已经在~/bin/erlang dir 中安装了 Erlang...

【问题讨论】:

    标签: erlang cluster-computing


    【解决方案1】:

    问题出在 bash 中: 实际上 erlang 通过 ssh 连接到节点,在非交互模式下调用默认 sh。 但是当 bash 在非交互模式下启动时,它不会读取存储路径变量和别名的 .bashrc 。 所以我切换到zsh,现在一切正常! ;)

    【讨论】:

    • .bashrc 通常在顶部附近包含以下行: # 如果不以交互方式运行,则不要执行任何操作 [ -z "$PS1" ] && return 所以如果你定义了你的 PATH 变量在此之前,您可以使用您的自定义erl。 Bash 确实以非交互模式读取 .bashrc。
    【解决方案2】:

    我相信别名不会被尊重

    erl 需要在你的路径中

    另外,我相信您的 .bashrc 也不会执行。所以你可能需要将“erl”符号链接到 /usr/bin 或 /usr/local/bin

    【讨论】:

    • 感谢您的帮助..但是.. 我已将 erlang bin 目录添加到我的 $PATH 变量中;我已经设置了 $ERLANG_ROOT_DIR 变量;在 ~/ 到 erl 中创建了符号链接 - 但没有任何改变...顺便说一句,我已经在 ~/bin/erlang 目录中安装了 erlang...
    【解决方案3】:

    您似乎在使用a wrong format 作为 start_link/3 的 Host 字段;

    它应该是一个原子,代表应该启动节点Name(第二个参数,也是一个原子)的主机,从而产生节点Name@Host。

    所以在你的情况下是

    slave:start_link('n002', 'n002', "-rsh ssh").
    

    【讨论】:

    • 谢谢,但是 slave:start_link('n002', 'n002', "-rsh ssh")。执行结果相同 - > slave:start_link('n002', 'n002', "-rsh ssh")。 bash: erl: command not found {error,timeout}
    【解决方案4】:

    我猜是 erlang cookie。

    你能 ping n002 吗? 如果是,那么这两个节点是否有相同的cookie?

    例如,您可以尝试: erl -sname abc -rsh ssh -setcookie secretcookie

    erl> slave:start(n002, name, "-setcookie secretcookie")。 %% 所以这两个节点共享一个cookie

    【讨论】:

      【解决方案5】:

      随便用

      >ssh user@n002 erl
      

      检查 n002 上的 erl 是否正常。

      【讨论】:

        猜你喜欢
        • 2011-03-11
        • 1970-01-01
        • 1970-01-01
        • 2011-06-18
        • 2013-11-23
        • 1970-01-01
        • 2015-11-29
        • 2011-02-24
        • 2019-08-27
        相关资源
        最近更新 更多