5

タイトルはそれをかなり要約しています。-heart を使用して Zotonic サイトを実行していますが、多くの CPU 時間を使用し、erlang シェルを取得できません。それで、vmを殺す方法はありますか? killall heart動作しkillall beam.smpていません。

この質問を見つけました: Erlang Daemon を停止しますが、実際には私の質問には答えていません。

4

3 に答える 3

3

使用するだけです:

init:stop().

心臓のプロセスとすべてのアプリケーションを強制終了します。

于 2011-08-29T18:14:55.920 に答える
2

私はこれと同じ問題を抱えていました....そして、それを殺すのは本当に大変でした. 通常のパスを試しましたが、できませんでした。だから私はこのハックをしました:

まずPIDを取得しましょう

sudo netstat -tulpn |grep 8080
tcp        0      0 0.0.0.0:8080            0.0.0.0:*               LISTEN      931/beam.smp    

したがって、PID は 931 です。

次に、そのプロセスを作成したプログラムはどれですか?

lsof -p 931 | grep txt
lsof: WARNING: can't stat() fuse.gvfs-fuse-daemon file system /home/agarcia/.gvfs
      Output information may be incomplete.
beam.smp 931 yaws  txt    REG     8,1  2053256 22793377 /usr/lib/erlang/erts-5.8.5/bin/beam.smp

したがって、プログラムは .../bin/beam.smp なので、移動するだけです

mv beam.smp old_beam.smp 

そして今、あなたはそれを殺します

kill -9 931

そして、私はついにそれを殺すことができました:-)

サービスを停止できるようにするために実際にハックする必要があることは、erlangs の信頼性の証です。

ps: 最初に yaws -I [pid] --stop を試しましたが、どちらも機能しませんでした。

于 2013-02-06T23:27:45.123 に答える