J'essaie d'exécuter le serveur weblogic sur ma machine Linux et j'obtiens l'erreur suivante:
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)
Je pense que l'erreur signifie que le port du débogueur qui par défaut est 8453 est déjà détenu par un autre service. Comment puis-je savoir quel service fonctionne dans un numéro de port particulier?
P.S: J'ai utilisé la commande netstat
mais cela montre tous les services occupant tous les ports ..ici je ne suis intéressé que par un port particulier.
Deux façons:
lsof -i :port -S
netstat -a | grep port
Tu peux faire man lsof
ou man netstat
pour les informations nécessaires. Remplacez port
par le numéro de port que vous souhaitez rechercher.
Vous pouvez utiliser fuser
ou lsof
c'est-à-dire:
fuser 8453/tcp
lsof -i TCP:8453
Si vous souhaitez plus d'informations sur fuser
, vous pouvez également utiliser le -v
drapeau, c'est-à-dire: fuser -v 8453/tcp
pour ce que ça vaut ... selon la version de netstat
(spécifiquement GNU netstat
) que vous avez, vous pouvez utiliser
netstat -punta | grep <port>
cela vous montrera les connexions dans les états ESTABLISHED et LISTEN UDP et TCP et il ignorera les sockets locaux UNIX. le résultat final est un joli petit ensemble de résultats soigné.
le -p
flag vous donnera l'ID du processus et le nom du processus de tout ce qui utilise ce port
le -u
l'indicateur montre udp
le -n
le drapeau est pour les adresses numériques
le -t
l'indicateur montre tcp
le -a
affiche les prises d'écoute et de non-écoute
Sur les centos
/usr/sbin/lsof -i tcp:8453 (lsof -i protocol:port)
Sur ubuntu
/usr/bin/lsof -i tcp:8453
Ou, restreignez les résultats de netstat à l'aide de filtres.