質問編集履歴

1 誤字修正

maisumakun

maisumakun score 66957

2016/06/13 10:42  投稿

何がポートを占拠していたのか、わからない
Windows 7 x64の上でRuby on Railsの開発をしていましたが、ある時いつものように`bin/rails s`とすると、3000番ポートを開こうとしたところで「Permission Denied」となってしまいました。
これは何かが3000番ポートを占拠しているのだろうと、`netstat -nao`で確認してみると、確かに3000番で何かがLISTENしている状態でした。ところが、表示されたPIDでタスクマネージャなどからプロセスを探しても、同じPIDに対応するプロセスが見当たりませんでした。
しばらく調べるうちに、`netstat`のオプションで`-b`とすると使っているプロセス名まで出してくれるということだったので、それを使って表示してみると。
```
 プロトコル ローカル アドレス         外部アドレス       状態
(中略)
 TCP   127.0.0.1:3000        0.0.0.0:0             LISTENING
[システム]
```
と、本来は「Skype.exe」とか「svghost.exe」とプロセス名が出るところに「システム」とだけ出てきてしまいました。
と、本来は「Skype.exe」とか「svchost.exe」とプロセス名が出るところに「システム」とだけ出てきてしまいました。
とりあえず再起動したところ、3000番ポートは開いていて問題は解消したのですが、この「不明なPIDになって『システム』とだけ出てきた」ものの正体は、いったいどういうものなのでしょうか。もちろんこれだけで確定はできないでしょうから、どのような可能性があるかだけでも大丈夫です。
  • Windows 7

    413 questions

    Microsoft Windows 7は過去にリリースされたMicrosoft WindowsのOSであり、Windows8の1代前です。2009年の7月にリリースされ販売されました。Windows7の前はWindowsVistaで、その更に3年前にリリースされました。

  • TCP

    187 questions

    TCP(Transmission Control Protocol)とは、トランスポート層のプロトコルで、コネクション型のデータサービスです。

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る