방랑 할 수 있도록 포트 8080을 사용하는 프로세스를 어떻게 죽일 수 있습니까?
MacOSX에서는 Packer를 사용하여 Vagrant 상자를 만들고 있으므로 계속해서 꺼내서 분해해야합니다. 나는 '방랑자'를 시도하고 있으며 포트가 사용 중이기 때문에 표준 오류를 수신합니다.
"Vagrant는이 포트에서 이미 수신 대기중인 다른 응용 프로그램과 충돌 할 수 있으므로이 VM에서 지정된 포트를 전달할 수 없습니다. 8080으로 전달 된 포트는 이미 호스트 컴퓨터에서 사용 중입니다."
해결책은 간단 해 보입니다. 포트 8080을 열어두고있는 프로세스를 식별하고 해당 프로세스를 종료하면됩니다. 그렇게 쉽지는 않습니다.
명령을 실행하면 :
nmap localhost -p 8080
다음 출력을받습니다.
PORT STATE SERVICE
8080/tcp open http-proxy
다음 명령을 실행하면 :
top -o prt
1360 년에 사용 된 가장 높은 항구
다음 명령을 실행하면 :
netstat -tulpn | grep :8080
나는받는 :
netstat: n: unknown or uninstrumented protocol
다음 명령을 실행하면 :
lsof -i :8080
출력을받지 못함
컴퓨터를 다시 시작하면 이제 포트를 사용할 수 있으며 이제 '방랑'할 수 있습니다.
컴퓨터를 다시 시작하지 않고 방랑 할 수 있도록 포트 8080을 사용하는 프로세스를 어떻게 종료 할 수 있습니까?
이것은 도움이 될 수 있습니다
lsof -n -i4TCP:8080
PID는 출력의 두 번째 필드입니다.
또는 시도해보십시오.
lsof -i -P
빠르고 빠른 솔루션 :
lsof -n -i4TCP:8080
PID
두 번째 필드입니다. 그런 다음 해당 프로세스를 종료하십시오.
kill -9 PID
덜 빠르지 만 영구적 인 솔루션
/usr/local/bin/
(파인더에서 command + shift + g 사용 가능)로 이동이름이
stop
. 아래 코드를 붙여 넣으세요.
#!/bin/bash
touch temp.text
lsof -n -i4TCP:$1 | awk '{print $2}' > temp.text
pidToStop=`(sed '2q;d' temp.text)`
> temp.text
if [[ -n $pidToStop ]]
then
kill -9 $pidToStop
echo "Congrates!! $1 is stopped."
else
echo "Sorry nothing running on above port"
fi
rm temp.text
- 이 파일을 저장하십시오. 이제 터미널로 이동하여
stop 8888
(또는 임의의 포트) 쓰기
위의 답변이 작동하지 않는 경우 아래 해결 방법을 시도하십시오. 포트 8080 또는 다른 포트에 사용할 수 있습니다.
sudo lsof -i tcp:3000
3000을 원하는 포트로 바꾸십시오. 해당 프로세스를 종료하려면 아래 명령을 실행하십시오.
sudo kill -9 PID
PID는 죽이려는 프로세스 ID입니다.
다음은 Mac 터미널의 명령 출력입니다.
I needed to run this command
sudo lsof -i :80 # checks port 8080
Then i got
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
acwebseca 312 root 36u IPv4 0x34ae935da20560c1 0t0 TCP 192.168.1.3:50585->104.25.53.12:http (ESTABLISHED)
show which service is using the PID
ps -ef 312
Then I got this
UID PID PPID C STIME TTY TIME CMD
0 312 58 0 9:32PM ?? 0:02.70 /opt/cisco/anyconnect/bin/acwebsecagent -console
To uninstall cisco web security agent run
sudo /opt/cisco/anyconnect/bin/websecurity_uninstall.sh
credits to: http://tobyaw.livejournal.com/315396.html
It can be Cisco AnyConnect. Check if /Library/LaunchDaemons/com.cisco.anyconnect.vpnagentd.plist exists. Then unload it with launchctl and delete from /Library/LaunchDaemons
To script this:
pid=$(lsof -ti tcp:8080)
if [[ $pid ]]; then
kill -9 $pid
fi
The -t
argument makes the output of lsof "terse" which means that it only returns the PID.
You can also use the Activity Monitor to identify and quit the process using the port.
Run: nmap -p 8080 localhost
(Install nmap with MacPorts or Homebrew if you don't have it on your system yet)
Nmap scan report for localhost (127.0.0.1)
Host is up (0.00034s latency).
Other addresses for localhost (not scanned): ::1
PORT STATE SERVICE
8080/tcp open http-proxy
Run: ps -ef | grep http-proxy
UID PID PPID C STIME TTY TIME CMD
640 99335 88310 0 12:26pm ttys002 0:00.01 grep http-proxy"
Run: ps -ef 640
(replace 501 with your UID)
/System/Library/PrivateFrameworks/PerformanceAnalysis.framework/Versions/A/XPCServices/com.apple.PerformanceAnalysis.animationperfd.xpc/Contents/MacOS/com.apple.PerformanceAnalysis.animationperfd
Port 8080 on mac osx is used by something installed with XCode SDK
'code' 카테고리의 다른 글
Foundation Framework와 Core Foundation Framework의 차이점은 무엇입니까? (0) | 2020.11.20 |
---|---|
mvc : favicon.ico도 컨트롤러를 찾습니까? (0) | 2020.11.20 |
zeromq가 localhost에서 작동하지 않는 이유는 무엇입니까? (0) | 2020.11.19 |
PictureBox에 대한 투명한 제어 (0) | 2020.11.19 |
MySQL JOIN과 LEFT JOIN의 차이점 (0) | 2020.11.19 |