安装完 erlang,ps进程的时候就发现有 epmd进程存在
erlang 32226 1 0 12:29 ? 00:00:00 /home/erlang/erlangR15B02/lib/erlang/erts-5.9.2/bin/epmd -daemon
kill掉这个进程,敲erl
-bash
-
3.
2$ erl
Erlang R15B02 (erts - 5. 9. 2) [source] [ 64 -bit] [smp : 4 : 4] [async -threads : 0] [hipe] [kernel -poll :false]
Eshell V5. 9. 2 (abort with ^G)
1 > 20 + 20
1 > .
40
2 > q().
ok
3 > -bash - 3. 2$ ps -ef |grep erlang
root 32173 32141 0 12 : 24 pts / 1 00 :00 :00 su - erlang
erlang 32174 32173 0 12 : 24 pts / 1 00 :00 :00 -bash
erlang 32218 32174 0 12 : 24 pts / 1 00 :00 :00 ps -ef
erlang 32219 32174 0 12 : 24 pts / 1 00 :00 :00 grep erlang
Erlang R15B02 (erts - 5. 9. 2) [source] [ 64 -bit] [smp : 4 : 4] [async -threads : 0] [hipe] [kernel -poll :false]
Eshell V5. 9. 2 (abort with ^G)
1 > 20 + 20
1 > .
40
2 > q().
ok
3 > -bash - 3. 2$ ps -ef |grep erlang
root 32173 32141 0 12 : 24 pts / 1 00 :00 :00 su - erlang
erlang 32174 32173 0 12 : 24 pts / 1 00 :00 :00 -bash
erlang 32218 32174 0 12 : 24 pts / 1 00 :00 :00 ps -ef
erlang 32219 32174 0 12 : 24 pts / 1 00 :00 :00 grep erlang
Eshell可以进行表达式计算,但是没有启动epmd。
执行如下命令
-bash
-
3.
2$ erl
-sname yeq
Erlang R15B02 (erts - 5. 9. 2) [source] [ 64 -bit] [smp : 4 : 4] [async -threads : 0] [hipe] [kernel -poll :false]
Eshell V5. 9. 2 (abort with ^G)
(yeq@sgwapp2) 1 >
Erlang R15B02 (erts - 5. 9. 2) [source] [ 64 -bit] [smp : 4 : 4] [async -threads : 0] [hipe] [kernel -poll :false]
Eshell V5. 9. 2 (abort with ^G)
(yeq@sgwapp2) 1 >
然后另开一个telnet窗口上去查看
[root@sgwapp2
~]
# ps -ef|grep erlang
root 32173 32141 0 12 : 24 pts / 1 00 :00 :00 su - erlang
erlang 32174 32173 0 12 : 24 pts / 1 00 :00 :00 -bash
erlang 32220 32174 1 12 : 29 pts / 1 00 :00 :00 /home /erlang /erlangR15B02 /lib /erlang /erts - 5. 9. 2 /bin /beam.smp -- -root /home /erlang /erlangR15B02 /lib /erlang -progname erl -- -home /home /erlang -- -sname yeq
erlang 32226 1 0 12 : 29 ? 00 :00 :00 /home /erlang /erlangR15B02 /lib /erlang /erts - 5. 9. 2 /bin /epmd -daemon
root 32272 32239 0 12 : 29 pts / 2 00 :00 :00 grep erlang
[root@sgwapp2 ~] #
root 32173 32141 0 12 : 24 pts / 1 00 :00 :00 su - erlang
erlang 32174 32173 0 12 : 24 pts / 1 00 :00 :00 -bash
erlang 32220 32174 1 12 : 29 pts / 1 00 :00 :00 /home /erlang /erlangR15B02 /lib /erlang /erts - 5. 9. 2 /bin /beam.smp -- -root /home /erlang /erlangR15B02 /lib /erlang -progname erl -- -home /home /erlang -- -sname yeq
erlang 32226 1 0 12 : 29 ? 00 :00 :00 /home /erlang /erlangR15B02 /lib /erlang /erts - 5. 9. 2 /bin /epmd -daemon
root 32272 32239 0 12 : 29 pts / 2 00 :00 :00 grep erlang
[root@sgwapp2 ~] #
启动起来了。
其实有更简单的步骤,直接走到erlang的bin目录,然后执行
epmd -relaxed_command_check -daemon
不需要nohup,命令执行后立即返回,它自动挂后台执行了。
relaxed_command_check参数含义见man epmd。
余峰大虾的博文
http://blog.yufeng.info/archives/539 中有介绍到它,他用的方式是:
$ erl -sname x -epmd "epmd -relaxed_command_check -daemon" |