erlang的启停【1】

来源:互联网 发布:光晕守护者和人工智能 编辑:程序博客网 时间:2024/04/28 11:05
安装完 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  012:24 pts/1    00:00:00 su - erlang
erlang   32174 32173  012:24 pts/1    00:00:00-bash
erlang   32218 32174  012:24 pts/1    00:00:00ps -ef
erlang   32219 32174  012: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>
然后另开一个telnet窗口上去查看
[root@sgwapp2 ~]# ps -ef|grep erlang
root     32173 32141  012:24 pts/1    00:00:00 su - erlang
erlang   32174 32173  012:24 pts/1    00:00:00-bash
erlang   32220 32174  112: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  012:29?        00:00:00/home/erlang/erlangR15B02/lib/erlang/erts-5.9.2/bin/epmd-daemon
root     32272 32239  012: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"