2017-09-23 8 views
0

root権限が必要です。レール:ポートが使用中であるか、レール4.1.1サーバーを起動しようとしたとき、私はこのエラーを取得しています

Listening on 0.0.0.0:3000, CTRL+C to stop 
Exiting 
/Users/darrenburgess/.rvm/gems/[email protected]/gems/eventmachine-1.0.0/lib/eventmachine.rb:526:in `start_tcp_server': no acceptor (port is in use or requires root privileges) (RuntimeError) 

私は、プロセスを見つけて殺すために、以下のコマンドを試してみましたしかし、それらのどれも3000

ps ax | grep rails 
ps ax | grep ruby 
lsof -i TCP | grep LISTEN 
lsof -i :3000 

これらの上で実行されている任意のサーバを明らかにしていない、スタックオーバーフローの私の研究から、実行しているポートを発見するための利用可能な方法のすべてのように見えます。私は他のポートでレール・サーバを起動することができます

Listening on tcp://0.0.0.0:3000 
Exiting 
/Users/darrenburgess/.rvm/gems/ruby-2.3.1/gems/puma-3.7.0/lib/puma/binder.rb:269:in `initialize': Address already in use - bind(2) for "0.0.0.0" port 3000 (Errno::EADDRINUSE) 

注:私は、次のようなエラーを取得していますレール5のアプリケーションで

このエラーは、マシンを再起動しても保持されます。私は使用中の港を見つけて殺害するためにすべての道を尽くしたようだ。私は他にどんなことを試みることができますか?

UPDATE:hjpotter92 @ はランニングを示唆:

netstat -lntp | grep 3000 

オプションがp引数に必要とされる。これは、しかし、動作しません。 man netstatによれば、プロトコルリストはetc/protocolsにあります。

このファイルを調べたところ、tcpが記載されているプロトコルであることがわかりました。しかし、このコマンドは出力を返しません:

netstat -lntp tcp | grep 3000 

も、このコマンドでは、どちらか何も返さない:

netstat -lnt | grep 3000 
+0

'netstat -lntp |の出力は? grep 3000' – hjpotter92

+0

netstatにも出力がありません。質問の私の更新されたノートを見てください。 – dtburgess

答えて

0

まあ、これに対する答えはかなり分かりません。 FileMakerサーバー16のNodeインスタンスはポート3000上で実行されています。私はRails開発マシンでFileMakerサーバーを実行していました。

このコマンドは、それを発見するのに役立った:

sudo lsof -P -i :3000 

結果

node 562 fmserver 20u IPv6 0x3ef1908b38776fe5  0t0 TCP *:3000 (LISTEN) 

私はしかし、ノードのインスタンス(FileMakerのREST /データAPI)を無効にする代わりに選出され、そのプロセスを殺すことができます。

ここでのドキュメントは、FileMaker 16がそのポートを使用していることを示しています。 http://help.filemaker.com/app/answers/detail/a_id/16319

0

あなたはこのlsof -i :3000のようにポートをスキャンしようとしてからsudo kill -9 <PID>を使用してプロセスを強制終了することができます。

+0

ありがとうNirdosh。残念ながら、このコマンドは何も返しません。私は元の質問にポート活動を取得するために失敗した方法の私のリストに追加しました。 – dtburgess

関連する問題