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
コマンドを使用しましたが、すべてのポートを占有するすべてのサービスが表示されます。ここでは、特定のポートのみに関心があります。
二通り:
lsof -i :port -S
netstat -a | grep port
できるよ - man lsof
または man netstat
必要な情報。 port
を検索するポート番号に置き換えます。
fuser
またはlsof
を使用できます。つまり、
fuser 8453/tcp
lsof -i TCP:8453
fuser
の詳細情報が必要な場合は、-v
フラグ、つまりfuser -v 8453/tcp
その価値について... netstat
(具体的にはGNU netstat
)のバージョンに応じて、使用できます
netstat -punta | grep <port>
これは、ESTABLISHEDおよびLISTEN状態の接続を示し、UDPおよびTCPであり、UNIXローカルソケットを無視します。最終結果は、すてきな、小さな結果セットです。
-p
フラグは、そのポートを使用しているもののプロセスIDとプロセス名を提供します
-u
フラグはudpを示します
-n
フラグは数値アドレス用です
-t
フラグはtcpを示します
-a
は、リスニングソケットと非リスニングソケットを示します
Centosについて
/usr/sbin/lsof -i tcp:8453 (lsof -i protocol:port)
Ubuntuで
/usr/bin/lsof -i tcp:8453
または、フィルターを使用してnetstatの結果を絞り込みます。