私のLinuxシステムでweblogicサーバーを実行しようとしていますが、次のエラーが発生します。
ERROR: transport error 202: bind failed: Address already in use
ERROR: JDWP Transport dt_socket failed to initialize, TRANSPORT_INIT(510)
JDWP exit error AGENT_ERROR_TRANSPORT_INIT(197): No transports initialized [../../../src/share/back/debugInit.c:690]
FATAL ERROR in native method: JDWP No transports initialized, jvmtiError=AGENT_ERROR_TRANSPORT_INIT(197)
このエラーは、デフォルトでは8453のデバッガポートがすでに他のサービスで使用されていることを意味すると思います。特定のポート番号でどのサービスが実行されているかを確認するには?
PS:このコマンドを使用したがnetstat
すべてのポートを占有するすべてのサービスが表示されます。ここでは特定のポートにのみ興味があります。
答え1
2つの方法:
lsof -i :port -S
netstat -a | grep port
あなたはできますman lsof
またはman netstat
必要な情報を入手してください。port
検索したいポート番号に置き換えます。
答え2
fuser
以下を使用できますlsof
。
fuser 8453/tcp
lsof -i TCP:8453
さらに情報が必要な場合は、fuser
このフラグを使用することもできます-v
。例:fuser -v 8453/tcp
答え3
それが価値がある場合...使用しているバージョンnetstat
(特にGNU netstat
)に応じて、次のものを使用できます。
netstat -punta | grep <port>
これは、ESTABLISHED および LISTEN 状態の UDP および TCP 接続を表示し、UNIX ローカル・ソケットを無視します。最終結果は素晴らしい、きちんとした小さな結果セットです。
この-p
フラグは、ポートを使用するプロセスIDとプロセス名を提供します。
フラグ-u
にudpが表示されます。
この-n
フラグは数値アドレスに使用されます。
この-t
フラグはTCPを表示します。
-a
リスニングソケットと非リスニングソケットの表示
編集 - このコマンドは最新のELディストリビューションで置き換えss
られました。netstat
答え4
セントースから
/usr/sbin/lsof -i tcp:8453 (lsof -i protocol:port)
Ubuntuから
/usr/bin/lsof -i tcp:8453
あるいは、フィルタを使用してnetstatの結果を絞り込むこともできます。