etc

[macOS] 실행중인 포트 종료하기 (lsof, kill 명령어 옵션 설명)

shoney9254 2023. 3. 17. 10:47
반응형

급하신 분들을 위해 해결 방법부터 설명하고, 옵션에 대한 추가적인 설명을 하도록 하겠습니다.

1. 해결 방법 (포트 번호 8080 기준)

1) 터미널에서 lsof -i :8080 입력합니다. 

터미널

$ lsof -i :8080 

터미널에 lsof -i 8080 명령어를 입력하게 되면, 아래와 같이 해당 포트의 PID를 알수있습니다.

8080포트에서는 java가 실행중이고 PID는 1621인것을 알수있습니다. 

 

 

2) 터미널에서 해당 PID를 종료시키기(PID 1621기준)

터미널

$ kill -9 1621 

-9옵션은 강제 종료 옵션입니다. 뒤에 PID를 붙인 명령어를 입력해서 강제 종료합니다.

위 명령어를 입력하고 다시 lsof -i :8080으로 실행하고 있는지 조회해보면 제대로 종료 됐는지 확인할 수 있습니다.

 

 

 

2. 추가적인 옵션 설명

1) lsof (lisopen files 약자)

'lsof'는 열린 파일 목록(lisopen files)을 나타내는 명령어입니다.

다음은 macOS에서 'lsof' 명령어에 사용 가능한 옵션들입니다.

  • '-c': 프로세스 이름으로 파일을 찾습니다.
  • '-d': 파일 기술자 (file descriptor)를 찾습니다.
  • '-g': 그룹 ID로 파일을 찾습니다.
  • '-i': 네트워크 소켓을 찾습니다.
  • '-n': 호스트 이름을 IP 주소로 해석하지 않습니다.
  • '-P': 포트 번호를 숫자로 보여줍니다.
  • '-p': 지정한 프로세스 ID의 파일을 찾습니다.
  • '-u': 사용자 ID로 파일을 찾습니다.
  • '-t': 지정한 파일 타입의 파일을 찾습니다.

 

2) kill

'kill' 명령어는 다른 프로세스를 중지시키는 명령어입니다.

'kill' 명령어에는 여러 옵션이 있습니다. 일반적으로 많이 사용되는 몇 가지 옵션을 살펴보겠습니다.

  • '-9' : SIGKILL 시그널을 보내며, 프로세스를 즉시 강제 종료합니다.
  • '-15' : SIGTERM 시그널을 보내며, 프로세스에게 정상적인 종료를 요청합니다.
  • '-s' : 보낼 시그널을 지정합니다. 기본적으로 SIGTERM 시그널이 사용됩니다.
  • '-l' : 사용 가능한 시그널 목록을 보여줍니다.
  • '-u' : 프로세스의 유저 ID를 지정합니다.
  • '-c' : 프로세스의 이름을 지정합니다.
반응형